Configuration
DragonMineZ is configured through JSON files that server owners, singleplayer hosts and add-on authors can edit. Most of them live in the config/dragonminez folder of the game or server instance and are generated the first time DMZ boots; story, wish and NPC data lives inside each world save instead. The server sends its config files to every player who joins, so on a server everyone plays with the server's values.
This section of the wiki documents every config file, the gamerules and permission nodes DMZ adds, and how to apply and keep your changes safely.
Where config lives
The config/dragonminez/ folder belongs to the instance, not to a world: every world played on that instance uses the same files. Except for the client-only files marked below, the server sends every file in this folder to joining clients.
| File | What it holds | Documented on |
|---|---|---|
general-server.json |
Server-wide gameplay settings: progression, TP, world generation, the story, racial skills, Dynamic Growth, gravity, world bosses, storage. | General Server Config |
general-user.json |
Client-only. Personal client settings, never sent by the server. | General User Config |
hud_layout.json |
Client-only. HUD style and element layout, written by the HUD editor. | HUD |
radial_layout.json |
Client-side order of the entries in the radial menus, saved when you reorder them. | |
combat.json |
Combat tuning values. | Combat Config |
skills.json |
Skill costs and eligibility, and which master offers which skill. | Skills Config |
techniques.json |
Ki attack, strike and evasion technique tuning. | Skills Config |
training.json |
Training minigame tuning. | Training Points and Mastery |
entities.json |
Base stats per entity and saga transformation defaults. | Entities Config |
races/<race>/character.json |
Race identity and appearance defaults. | Custom Races |
races/<race>/stats.json |
Race base stats and scaling per class. | Custom Races |
races/<race>/forms/*.json |
Forms that belong only to that race. | Custom Forms |
forms/*.json |
Shared stack forms layered on top of a race's own forms. | Custom Forms |
raids/*.json |
Raid definitions. | Raids |
tournaments/*.json |
Tournament definitions. | Tournaments |
oldBackup/ |
Copies of config files DMZ upgraded or regenerated, in the same relative layout (for example oldBackup/races/saiyan/stats.json). DMZ never reads them back. |
How to JSON |
The default races generated in races/ are human, saiyan, namekian, frostdemon, bioandroid, majin and glind. Any other folder under races/ is loaded as a custom race.
Gameplay rules that aren't JSON files are covered on Gamerules (ki-griefing and arena building) and Permissions (who can run each command). The per-world folders (sagas, quests, side quests, wishes, dialogues, NPC placements and JSON player data) are listed on Locating Specific Folders.
How config reaches the clients
- When a player joins, the server sends them every file under
config/dragonminezexceptgeneral-user.jsonandhud_layout.json. While connected, the client uses the server's values for everything those files control. - The server sends the files as they are on disk. After editing a file, always run
/dmzreload config; until you do, the server keeps running the old values while players who join afterwards already receive the edited file. /dmzreload configand/dmzconfigresend the files to everyone online.- On disconnect, the client drops the server's copy and goes back to its own local files.
Editing config safely
- Keep the files valid JSON. A file with a syntax error is never overwritten: DMZ runs on that file's defaults for the session and reports the file, line and column in the log (and in chat on login).
- Don't edit
configVersion. DMZ uses it to upgrade the file after a mod update: the old file is moved tooldBackup/, new defaults are written, and the values you changed are merged back in. - Comments and notes inside the files are removed whenever DMZ rewrites them, so keep your notes elsewhere.
- Take your own backup before bulk edits on a live server.