BlazeBans/Configuration

Config files

Eight files plus a messages folder, all in `plugins/BlazeBans/`. This page covers what each one owns and how reloading and updates work. The individual files have their own pages.

The files

FileControlsPage
settings.ymlAlmost everything: server identity, permissions behaviour, command names, privacy, limitssettings.yml
database.ymlStorage backend and credentialsDatabase
templates.ymlPunishment templates and laddersTemplates and ladders
messages/en_us.ymlEvery player-facing string, plus the colour schemeMessages and theming
menus.ymlEvery in-game menu: items, lore, titles, soundsMenus
automod.ymlChat filtering rulesAutoMod
discord.ymlWebhook integrationDiscord webhooks
import.ymlConnection details for migrating from other pluginsImporting

Additional languages ship as messages/de_de.yml, es_es.yml, fr_fr.yml, ja_jp.yml, and ru_ru.yml.

Reloading

minecraft
/blazebans reload
/blazebans reload settings.yml
/blazebans reload messages:en_us.yml

Needs blazebans.command.reload.

With no argument, everything reloads. With a filename, only that file does. Message files use a colon: messages:en_us.yml, not a slash. Tab completion lists every reloadable file in the right form.

Reload reports what actually changed, naming the file, the line, the key, and the old and new values. That is more useful than a success message, because it tells you whether the change you meant to make is the one that landed.

When a reload fails

A file with an error in it is never applied. BlazeBans checks the new configuration first, and if anything is wrong it keeps running on the settings it already had. You get an error naming the file, the line, and what it expected to find there.

So a typo cannot take your punishment system down mid-reload. Fix the file and reload again.

Warnings are separate from errors. A warning means the file loaded but something in it looks wrong, such as a value outside its usable range.

What needs a restart

One thing: command names and aliases under commands: in settings.yml. Those register with the server at startup and cannot be re-registered live.

Everything else applies on reload, including templates, messages, menus, AutoMod rules, Discord settings, and the storage backend.

After a templates.yml reload, tab completion refreshes for online players automatically, so new templates appear without anyone relogging.

How updates are merged

Every file has a meta.version:

yaml
meta:
  version: "1.0.7"

On start, BlazeBans compares that to the version it ships. If the shipped version is newer, it adds the keys that are new and leaves everything you have edited alone.

Your configuration is never overwritten by an update. New settings arrive with their defaults, with the comments explaining them, and you can ignore them if the defaults are fine.

Do not edit meta.version by hand. It is how BlazeBans knows which keys you have already been offered.

Missing files

BlazeBans only writes a default file when one is absent. Delete a file and it comes back at the next start with shipped defaults; edit one and it is left alone.

That gives you a reset: delete the file, restart, and you have the current defaults. Keep a copy first if you have changes worth keeping.

Missing keys

A key missing from your file falls back to the shipped default rather than erroring. That is why an old configuration keeps working across updates.

Message files fall back per key to English. A translation missing one string shows that one string in English rather than showing nothing.

Editing safely

YAML is indentation-sensitive. Spaces, never tabs. A single misplaced space is the most common cause of a failed reload.

Quote anything ambiguous. Values with colons, #, or leading zeros need quotes. Hex colours especially: "#ff650d" unquoted starts a comment.

Use an editor that knows YAML. VS Code, Notepad++, or anything that will underline a syntax error before you upload it.

Reload after every change, not after ten. When something breaks, you want one candidate rather than ten.

Credentials

database.yml, discord.yml, and import.yml hold passwords and webhook URLs.

BlazeBans redacts anything whose key contains password, token, secret, key, or webhook-url from diagnostics, so /blazebans dump is safe to share. That protection covers dumps, not your file manager. Do not paste raw config into a public channel, and do not commit these files to a public repository.

Diagnostics

minecraft
/blazebans dump

Needs blazebans.command.dump. Writes a file to plugins/BlazeBans/dumps/ recording version, platform, storage backend, JVM arguments, and loaded configuration, with sensitive values stripped.

This is the file to attach when asking for support. It answers most of the first round of questions before anyone asks them.

Per-staff preferences

minecraft
/blazebans settings

Needs blazebans.command.settings. Opens a menu where a staff member turns their own notifications on and off: alt alerts, muted chat alerts, and staff punishment alerts.

These are per-account preferences, not server configuration. Public broadcasts are always shown regardless.