Skip to content

Installation

This page covers what Verité needs to run, the optional plugins it can work alongside, and what happens the first time it starts. For the download steps and a short overview, see the home page. The material here goes deeper into requirements, dependencies, and first-run behaviour.

Requirements

Verité targets modern Minecraft servers and their common forks.

Requirement Detail
Server platform Paper, Purpur, Folia, or Spigot
Minecraft version 1.19 through 26.2
API level Built against API version 1.19
Folia Supported
Java The Java version required by your server software for your chosen Minecraft version

Verité does not ship a separate build per platform beyond the version appropriate for your server. Install the correct file for your Minecraft version and server software, place it in the plugins/ directory, and restart.

Java version

Verité follows the Java requirement of the server you run it on. Newer Minecraft versions require newer Java releases. If your server starts, Verité has the Java version it needs.

Runtime library

Verité stores its data in an embedded H2 database. H2 is declared as a plugin library in plugin.yml:

libraries:
  - com.h2database:h2:2.4.240

Your server resolves and downloads this library automatically at load onto an isolated library class loader. No manual download is required. If the library cannot be resolved, Verité disables itself rather than run without storage, so watch the console on first start.

The database runs in embedded file mode with no network socket. It is described further on the Privacy and data page.

Soft dependencies

Verité declares four soft dependencies:

softdepend: [floodgate, PlaceholderAPI, LuckPerms, Skript]

A soft dependency is never required. When one of these plugins is present, the server loads it before Verité so the matching feature can turn on. When it is absent, Verité runs normally and the feature simply does not exist.

Plugin What it enables
Floodgate Improves handling of Bedrock players who join through Floodgate.
PlaceholderAPI Exposes vanish state to other plugins as placeholders under the verite identifier. When PlaceholderAPI is absent, the placeholders are never registered.
LuckPerms Supplies group weights for rank-aware moderation, so staff cannot punish equal or higher ranks. This is controlled by use.rank.weights in the moderation section of the config. Operators are always treated as the highest rank.
Skript Makes Verité's chat-filter syntax available to scripts automatically. See the Skript integration guide.

Custom chat systems

If another plugin intercepts and delivers chat itself, Verité may never see the message to filter it. The Custom Chat Integration guide explains how to pass messages through Verité in that case.

First run

The first time Verité loads it prepares its own data folder at plugins/Verite/. During this first start it will:

  • Create the plugin data folder.
  • Open the embedded H2 database (verite.mv.db) in that folder, creating it if absent.
  • Write the default config.yml.
  • Deploy the chat-filter resources into a filter/ subfolder.
  • Register commands, listeners, and integrations for any soft dependencies that are installed.

Watch the console during this first start. Confirm that Verité loads and that no warnings or errors appear that point to a configuration or compatibility problem.

Modules

Verité is built from three modules, each toggled independently in config.yml. All three are enabled by default. Disable a module by setting its enabled flag to false; the rest of the plugin continues to run.

Module Config key Purpose
Veritédoux chat.filter.enabled Chat filtering and content checks.
Veritésauver moderation.enabled Moderation, punishments, and account intelligence.
Veritévoiler vanish.enabled Staff vanish.
chat.filter:
  enabled: true

moderation:
  enabled: true

vanish:
  enabled: true

Configuration auto-update

When Verité updates, it can append new keys to your existing config.yml so you do not lose your settings. This is controlled in the general section:

general:
  auto.update.config: true

With this enabled, new configuration keys added in a later release are merged into your file automatically. This does not bypass tokenizer updates, which are handled separately.

The chat-filter resource files (the .eve files) have their own toggle, which is off by default:

chat.filter:
  auto.update.eve: false

Custom filter entries

When auto.update.eve is enabled, the .eve files are replaced with updated versions when new entries are added, and any custom entries you added are overwritten or discarded. Leave it off if you maintain your own entries.