Locating Specific Folders

From DragonMineZ Wiki
Revision as of 05:52, 13 October 2026 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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

Configured in: General Server Configgameplay

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

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