Locating Specific Folders
Locating Specific Folders maps where DragonMineZ keeps its editable data. The files are split across a few different roots, depending on who owns the data and when it is read. Knowing which root you need saves a lot of confusion, especially since some folders only appear after you have run the server or the client at least once.
Mod config folder
config/dragonminez/ holds the mod config. It belongs to the game instance, not to a world, and it is generated the first time DragonMineZ starts. This is where you tune balance and stats, and add custom races, forms and entities. Except for the two client-only files marked below, the server sends every file in this folder to joining clients (see Reloading and Updating Changes).
| Path | Purpose |
|---|---|
config/dragonminez/general-server.json |
Server-wide gameplay toggles (see General Server Config). |
config/dragonminez/general-user.json |
Client only. Personal client settings, never sent by the server (see General User Config). |
config/dragonminez/hud_layout.json |
Client only. HUD style and element layout (see HUD). |
config/dragonminez/radial_layout.json |
Client-side order of the entries in the radial menus, saved when you reorder them. |
config/dragonminez/combat.json |
Combat tuning values (see Combat Config). |
config/dragonminez/skills.json |
Skill costs, cooldowns and eligibility, and the skills each race and master offers; both live in this one file (see Skills Config). |
config/dragonminez/training.json |
Tuning of the TP training minigames (see Training Points and Mastery). |
config/dragonminez/techniques.json |
Ki attack and strike attack tuning (see Skills Config). |
config/dragonminez/entities.json |
Base stats of each entity and the saga transformation defaults (see Entities Config). |
config/dragonminez/races/<race>/character.json |
Race identity and appearance defaults (see Custom Races). |
config/dragonminez/races/<race>/stats.json |
Race base stats and scaling for each class. |
config/dragonminez/races/<race>/forms/*.json |
Forms that belong only to that race. |
config/dragonminez/forms/*.json |
Shared stack forms, layered on top of a race's own forms (see Custom Forms). |
config/dragonminez/raids/*.json |
Raid definitions (see Raids). |
config/dragonminez/tournaments/*.json |
Tournament definitions (see Tournaments). |
config/dragonminez/oldBackup/ |
Copies of the config files DragonMineZ upgraded or regenerated, in the same relative layout (for example oldBackup/races/saiyan/stats.json). DragonMineZ never reads them back.
|
The default races generated here are human, saiyan, namekian, frostdemon, bioandroid, majin and glind. Any other folder under races/ is loaded as a custom race.
Source: ConfigManager.java (loadGeneralConfigs, loadAllRaces, createOrLoadStackForms, loadRaids, loadTournaments).
World save folder
<world save>/dragonminez/ lives inside the world save, so its content belongs to one world, not to the whole instance. This is why quest and saga changes don't show up until you edit the right save folder:
- Singleplayer:
saves/<world>/dragonminez/ - Server:
<server>/<level-name>/dragonminez/ - Development environment:
run/saves/<world>/dragonminez/
| Path | Purpose |
|---|---|
dragonminez/sagas/ |
Saga manifests (the questFolder pointer and the saga metadata).
|
dragonminez/quests/<questFolder>/ |
Quest files for one saga, loaded in alphabetical order (01_...json, 02_...json, ...).
|
dragonminez/sidequests/ |
Standalone side quests, loaded when side quests are enabled. |
dragonminez/wishes/*.json |
Wish list of each dragon (shenron.json, porunga.json, ...; see Custom Wishes).
|
dragonminez/dialogues/*.json |
NPC dialogue trees (see NPC Dialogue). An _example.json is written the first time; files whose NPC id starts with _ are not loaded.
|
dragonminez/npcs/placements.json |
Spawn positions of master and trainer NPCs (see NPC Placement and Alignment). |
dragonminez/npcs/alignment_rules.json |
Alignment and hostility thresholds of each NPC (see NPC Placement and Alignment). |
dragonminez/playerdata_json/<uuid>.json |
Player save data, only used when storageType is JSON.
|
dragonminez/oldBackup/ |
Copies of default quest, saga and side quest files taken before DragonMineZ upgraded them, in the same relative layout. |
dragonminez/quest_update_report.txt |
Summary of the last upgrade of the quest defaults: values updated, and conflicts kept as your edits. |
Source: QuestRegistry.loadAll(server), WishManager.loadWishes(server), DialogueRegistry.loadAll(server).
Default story files
gameplayDragonMineZ writes its default saga, quest and side quest files only when they are missing and the default-generation toggles are on in general-server.json (storyModeEnabled and createDefaultSagas for sagas and saga quests, createDefaultSideQuests for side quests). With autoUpdateQuests on (the default), the files DragonMineZ generated are upgraded in place when a new DragonMineZ version changes them: your edits are kept, and a copy goes to dragonminez/oldBackup/ first. Files you created yourself are never touched. See Reloading and Updating Changes.
World data files
Some DragonMineZ state is stored as vanilla "saved data": .dat files in the world's data/ folder, or in a dimension's own data/ folder. These files are binary and not meant to be edited by hand: dragon_balls_data (Dragon Ball positions), dragonminez_mutants, dragonminez_parties, dragonminez_pothala_pairs, dragonminez_raids, dragonminez_raid_sites, dragonminez_structure_plan, dragonminez_worldbosses, dragonminez_npc_placements, dragonminez_tournaments and dragonminez_otherworld_tournament.
Dragon Ball pack folder
<game dir>/dragonballs/ sits next to your worlds and instance (not inside the world save). It holds external, distributable Dragon Ball definitions: ball sets, radars, dragons and their wishes. Each add-on pack can be a plain folder or a .zip file. DragonMineZ also checks a dragonballs folder in the current working directory and in the parent of the game directory. The packs are loaded by DragonBallPackManager; see Custom Wishes.
Rhythm chart cache
<game dir>/dragonminez/rhythm_charts/ is created on the client by the Rhythm training minigame for the charts it generates from music. It is a cache, not configuration.
Datapacks
Some systems are plain Forge or vanilla reload listeners. They follow the normal datapack rules (data/<namespace>/...) instead of living in config/ or in the world save:
spacepod/*.json: the Space Pod destination list (see Space Pod Destinations).weapon_attributes/*.json: weapon attribute definitions (see Weapon Attributes).structure_npcs/*.json: NPCs placed inside DragonMineZ structures (see NPC Placement and Alignment).rhythm_charts/*.json: charts for the Rhythm training minigame.
These are picked up by the vanilla /reload, not by /dmzreload. Dragon Ball and wish definitions are not read from datapacks: use an add-on pack in <game dir>/dragonballs/ or the world's dragonminez/wishes/ folder instead. See Reloading and Updating Changes for the full breakdown.
Resource pack assets
Models, textures and animations referenced by config (the customModel fields) live under the normal resource pack namespace, for example:
assets/dragonminez/geo/entity/races/assets/dragonminez/lang/en_us.json(the source language file)
These need a resource reload (F3 + T on the client) or a restart. See Reloading and Updating Changes and Custom Models and Assets.
Quick decision guide
- Tuning stats, damage or costs, or adding a race, form, entity or raid:
config/dragonminez/ - Adding or editing story content, wishes, dialogue or NPC placement for this world:
<world save>/dragonminez/ - Shipping a distributable Dragon Ball pack:
<game dir>/dragonballs/ - Space Pod destinations, weapon attributes, rhythm charts: a datapack
- Adding a model, texture or animation:
assets/dragonminez/...in a resource pack