Modifying existing minidungeons
Based on popular request, this page goes over the basics of modifying existing Minidungeons. This is not a step-by-step guide, but a wider look at how the systems need to be modified. You will have to read the wiki pages on Custom Bosses and Custom Items in order to modify those values.
Prerequisites
Before modifying minidungeons, you should:
- Have a basic understanding of YAML syntax and file formatting
- Always back up your dungeon files before making modifications
- Know that you need to restart your server or use
/em reloadafter making changes
Dungeon File Structure
Minidungeons are composed of multiple file types across different folders:
contentpackages/[dungeon_name]/- Main dungeon package configurationcustombosses/[dungeon_name]/- Boss configuration filescustomitems/[dungeon_name]/- Custom item definitionscustomtreasurechests/[dungeon_name]/- Treasure chest configurationsnpcs/[dungeon_name]/- NPC definitionsworlds/[world_name]/- World files for the dungeon
When modifying a dungeon, you may need to edit files across multiple folders depending on what you want to change.
Understanding Minidungeon Components
Minidungeons consist of multiple interconnected components:
- Dungeon package configuration - The main configuration file that controls dungeon-level settings like difficulty, party size, teleportation, and protection
- Custom bosses - Individual boss configurations stored in the
custombosses/folder - Custom items - Loot and equipment definitions in the
customitems/folder - Treasure chests - Additional loot sources configured in
customtreasurechests/folder - NPCs - Non-player characters for quests or flavor
- World files and schematics - The actual dungeon terrain and structures
Modifying Dungeon Package Settings
Locating Dungeon Configuration Files
Minidungeons are configured through package files located in the contentpackages/ folder. Each dungeon has a main configuration file (usually named after the dungeon) that controls dungeon-level settings.
Modifying Basic Dungeon Settings
Example dungeon package values you may want to modify:
contentLevel: 20
dungeonSizeCategory: DUNGEON
minPlayerCount: 1
maxPlayerCount: 5
dungeonLockoutMinutes: 60
protect: true
contentLevel: Overall dungeon difficulty tierdungeonSizeCategory: Size classification (LAIR, DUNGEON, RAID, SANCTUM)minPlayerCount/maxPlayerCount: Party size restrictionsdungeonLockoutMinutes: Cooldown before re-entry (0 for no lockdown)protect: Enable WorldGuard protection for the dungeon area
Modifying Dungeon Difficulty Settings
For instanced dungeons, you can configure multiple difficulty levels:
difficulties:
- name: normal
levelSync: 25
- name: hard
levelSync: 50
- name: mythic
levelSync: 100
This allows players to choose their challenge level when entering.
Modifying Dungeon Protection and Mechanics
Protection Settings
Control how the dungeon environment behaves:
protect: true
allowExplosions: false
allowLiquidFlow: true
protect: Enable WorldGuard region protectionallowExplosions: Allow TNT and creeper explosions to damage blocksallowLiquidFlow: Allow water and lava to flow
Modifying Dungeon Entry and Teleportation
Teleport Configuration
Control where players spawn:
teleportLocation: world_name,100,64,100,0,0
The format is: world,x,y,z,yaw,pitch
Permission Requirements
Restrict access to the dungeon:
permission: elitemobs.dungeon.mydungeon
Players will need this permission node to enter the dungeon.
Modifying Boss Difficulty
There are several ways to modify the difficulty of dungeon bosses:
Modifying the damage/health multipliers of the bosses
This is the easiest modification to do. If you think that the bosses deal too little or too much damage, or that they have too little or too much health, you can modify the values associated to these modifiers in the boss files contained in the custombosses folder.
Example of values you would want to modify:
healthMultiplier: 0.5
damageMultiplier: 0.5
More about boss stats here.
Please keep in mind that many powers have fixed damage values or percentage-based damage that ignores the damageMultiplier setting. To modify power damage, you may need to edit the power configuration files themselves or choose different powers.
Modifying the powers of bosses
The main difficulty of EliteMobs is dealing with the various powers that bosses may have. Higher level bosses tend to have more and harder powers, and lower level bosses tend to have fewer and easier powers. Certain powers used together on the same boss make fights easier, and other powers put together can make the fight significantly harder.
Example of values you would want to modify:
powers:
- invulnerability_fire.yml
- invulnerability_arrow.yml
More about boss powers here.
EliteMobs includes 60+ powers across multiple categories:
Defensive Powers:
- invulnerability_arrow.yml
- invulnerability_fall_damage.yml
- invulnerability_fireworks.yml
- invulnerability_knockback.yml
- channel_healing.yml
- shield_wall.yml
Offensive Powers:
- arrow_fireworks.yml
- arrow_rain.yml
- attack_fireball.yml
- attack_lightning.yml
- bullet_hell.yml
- meteor_shower.yml
- firestorm.yml
- flamethrower.yml
Summoning Powers:
- zombie_friends.yml
- zombie_parents.yml
- summon_embers.yml
Since there are too many power combinations to list here, you will have to learn how the powers work and playtest your encounters in order to find the sweet spot for what you think is an encounter that is neither too hard nor too easy.
Modifying the level of the bosses
This is the most frequently asked question, and while it is possible to do it, it takes a few steps in order to make sure that you are adequately scaling your bosses up or down.
Example of values you would want to modify:
level: 21
More about boss levels here.
This takes a combination of both what is said about the damage / health multipliers, as bosses at lower / higher levels might need slightly different health and damage multipliers to make the fight feel right.
However, the most important aspect to consider here is the powers on the boss. Lower level and higher level bosses tend to have fairly different power sets depending on how hard the fight is meant to be. Having the same set of powers for a level 10 boss and a level 200 boss usually results in fights whose difficulty feels drastically different. Again, the only way to really find the sweet spot is to learn how the powers of the plugin work and playtesting them.
Modifying Boss Behavior
Beyond powers, bosses have behavioral flags that affect how they act:
frozen: false
neutral: false
frozen: If true, prevents boss movement (boss becomes stationary)neutral: If true, boss won't attack unless provoked
Modifying Boss Equipment
Change what armor and weapons bosses wear:
helmet: custom_helmet.yml
chestplate: custom_chestplate.yml
leggings: custom_leggings.yml
boots: custom_boots.yml
mainHand: custom_sword.yml
offHand: custom_shield.yml
These fields reference item configuration files in the customitems/ folder.
Modifying Boss Loot
And last, but not least! You will probably want to tweak the custom loot. Most bosses in EliteMobs have custom loot, and if you are switching the level of the boss around, odds are that you will want to change the nature of the loot it drops.
Example of loot configuration options:
uniqueLootList:
- filename: mob_drop_boots.yml
chance: 0.05
amount: 1
filename: The item configuration filechance: Drop probability (0.0 to 1.0, where 1.0 = 100%)amount: Quantity to drop (optional, defaults to 1)
More about loot drops here.
Treasure Chest Modifications
Minidungeons can include treasure chests with custom loot tables. Chest configurations are stored in the customtreasurechests/ folder.
To modify chest locations, edit the package configuration:
relativeTreasureChestLocations:
- 10,5,10
- 25,8,30
These coordinates are relative to the dungeon's anchor point.
Crediting / publishing modified content
Under EliteMobs you are free to post the dungeons you create on the appropriate channels to do so (Discord). However, if your creation is just a modification of an existing dungeon, your submission may be removed, especially if it's only a small tweak or if it contains or is derived from premium content (for obvious reasons).
You are free and welcome to modify any content that you have purchased or otherwise downloaded to adjust it to your server's needs for use within your own network, however for obvious reasons this does not provide you with redistribution rights.
We reserve the right to take down community submissions for any reason and at any time, though we would hate to actually have to do that.
Further info
If you believe that this page should be further expanded upon, leave a suggestion on Discord saying what should be added to it. More info about the various systems mentioned here are present in the other wiki pages.