Configuration
Every file the plugin writes, what belongs in it, reloading, and what an update does to your files.
The plugin writes its files into plugins/uxmKotl/ on first start; the folder is shown in
Installation. Every file is HOCON. Run /uxmkotl reload
(uxmkotl.admin.reload) after an edit; the few keys that need a restart say so on their page.
| Page | What it holds |
|---|---|
| config.conf | Language, storage, the crown, the outline, the plate push, the stick, rewards, economy, boards, menu sounds, moments |
| Arena files | arenas/<arena>.conf: one arena each |
| commands.conf | The name, aliases and switch of every command |
| Menu files | menus/*.conf: the four windows, and every key a window file takes |
| Messages | messages/messages_<language>.conf: every line a player reads |
| Languages | The seven shipped languages, adding one, and how a player's language is chosen |
| theme.conf | The colours, glyphs and small capitals every UXM plugin shares |
HOCON in two minutes
| Rule | Example |
|---|---|
| A block opens and closes with braces | crown { claim-cooldown-ms = 1500 } |
= or : between key and value; a block needs neither | slot = 0, stick { ... } |
Text in quotes, numbers and true/false without | type = "sqlite", pool-size = 4 |
| Lists in square brackets, commas between | periods = [ alltime, weekly ] |
A comment starts with # | # the default is 1500 |
| Two blocks of the same name merge | a crown { } at the end adds to the one at the top |
A file that does not parse stops the reload, keeps the configuration that worked, and the console names the file
and the line. It is almost always a missing } or quote.
Reloading
/uxmkotl reload reads config.conf, the messages, theme.conf, the window files, the menu sounds and every arena
file again, and starts the crown rings again for the arenas that are on. The configuration is swapped in one go, so
nothing runs on half a file. A value that is wrong, such as a stick slot of 9, stops the reload with
admin.reload-failed and the reason in the console, and the server keeps running on the last configuration that
worked. The reply says how many milliseconds the reload took.
| Needs a restart | Why |
|---|---|
commands.conf | The server builds its command tree once, at start |
leaderboard.refresh-seconds | The board timer is started once |
storage | The database is opened once |
Players already in an arena keep the arena as it was when they got in until they leave.
What an update does
You never replace your files after an update. On the start after a new jar:
- Every file the jar ships that is missing is written.
- A key the release added is written into your
config.confwith the comment that explains it, at its default. - A value you set is never changed.
- Your file as it was goes to
backups/<file>-<date>.conf; the last five copies of each file are kept. - The database moves forward on its own.
The file is written again from what it holds, so your own formatting, such as alignment inside a block, may move. A key you deleted comes back with its default, which is why every switch says in its comment what turning it off means. The arena files are yours and an update never writes them.
Related: config.conf, Installation
Was this page helpful?