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:
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:
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. |
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:
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:
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.