Update Dungeon Config with options for the new dungeon maps feature. authored by MarcatoSound's avatar MarcatoSound
Every dungeon has its own unique config file that lets you further customize the dungeon's behaviour when played. This includes entry requirements, blocking certain potential out-of-bounds abuse (enderpearls, chorus fruit, etc), and reward cooldowns. General:
# Do not change! Used to track the config version when major updates happen.
You can also modify the `default-config.yml` in the `maps` folder to change the default settings of a brand new dungeon. Version: 1
DungeonType: CLASSIC
_An in-game editor for this config is planned for the future, but for now, you'll have to manually edit the config file._ # The generator to use for chunks in this dungeon. These can also be provided by other plugins.
# natural = Default superflat.
**NOTE: Gamerules are stored on the map itself and can be changed in-game with the standard /gamerule command while in edit mode.** # mythicdungeons:void = Classic void generator, provided by Mythic Dungeons.
# mythicdungeons:block.[BLOCKTYPE] = Generates entire chunks of a specific block. (For example, mythicdungeons:block.STONE would generate chunks at full height of all stone.)
--- ChunkGenerator: natural
# The pretty name of this dungeon that'll appear when it's finished and started.
Here is current default config provided by the plugin for your reference. _This file is kept up to date with changes and MAY contain features exclusive to dev builds, so check back here for new dungeon options!_ DisplayName: "&bA Dungeon"
```yml # Whether to show the display name above in a title message to the players when the dungeon begins.
General: ShowTitleOnStart: false
# Do not change! Used to track the config version when major updates happen. Lobby:
Version: 1 Enabled: false
DungeonType: CLASSIC # Where the player appears after leaving the dungeon via the "Finish Dungeon" function. (Use the /md setexit <dungeon> command.)
# The generator to use for chunks in this dungeon. These can also be provided by other plugins. ExitLocation: null
# natural = Default superflat. # Whether to use the exit location for any time the player leaves instead of just when they finish the dungeon.
# mythicdungeons:void = Classic void generator, provided by Mythic Dungeons. AlwaysUseExit: false
# mythicdungeons:block.[BLOCKTYPE] = Generates entire chunks of a specific block. (For example, mythicdungeons:block.STONE would generate chunks at full height of all stone.) # What game mode the players will be in while in the dungeon.
ChunkGenerator: natural Gamemode: SURVIVAL
# The pretty name of this dungeon that'll appear when it's finished and started. # How many times the player can die before being unable to respawn. 0 will give the player infinite lives.
DisplayName: "&bA Dungeon" PlayerLives: 0
# Whether to show the display name above in a title message to the players when the dungeon begins. # Should players be shown minecraft's death screen when they die?
ShowTitleOnStart: false InstantRespawnPlayers: false
Lobby: # Whether players who lose all their lives get put into spectator. If this is set to false, the player will instead be kicked from the dungeon.
Enabled: false # NOTE: Spectators cannot use the spectator menu to exit the dungeon.
# Where the player appears after leaving the dungeon via the "Finish Dungeon" function. (Use the /md setexit <dungeon> command.) DeadPlayersSpectate: true
ExitLocation: null # Whether to close the dungeon when all players are spectating. If this is set to false, the dungeon will remain open until all players have left.
# Whether to use the exit location for any time the player leaves instead of just when they finish the dungeon. # If set to false, players must use /md leave to exit the dungeon.
AlwaysUseExit: false # NOTE: This option only works if DeadPlayersSpectate is set to true.
# What game mode the players will be in while in the dungeon. CloseDungeonWhenAllSpectating: true
Gamemode: SURVIVAL # Whether players keep their inventory upon entering the dungeon.
# How many times the player can die before being unable to respawn. 0 will give the player infinite lives. KeepInventoryOnEnter: true
PlayerLives: 0 # Whether players keep their current health upon entering the dungeon.
# Should players be shown minecraft's death screen when they die? # (Otherwise,they will be restored to full health upon entry, and set back to their previous health upon exit.)
InstantRespawnPlayers: false KeepHealthOnEnter: false
# Whether players who lose all their lives get put into spectator. If this is set to false, the player will instead be kicked from the dungeon. # Whether players keep their current food level upon entering the dungeon.
# NOTE: Spectators cannot use the spectator menu to exit the dungeon. # (Otherwise, they will be restored to full food upon entry, and set back to their previous food level upon exit.)
DeadPlayersSpectate: true KeepFoodOnEnter: false
# Whether to close the dungeon when all players are spectating. If this is set to false, the dungeon will remain open until all players have left. # Whether players keep their current potion effects upon entering the dungeon.
# If set to false, players must use /md leave to exit the dungeon. # (Otherwise, they will have all potion effects cleared upon entry.)
# NOTE: This option only works if DeadPlayersSpectate is set to true. KeepPotionEffectsOnEnter: false
CloseDungeonWhenAllSpectating: true # Whether players keep their current EXP and level upon entering the dungeon.
# Whether players keep their inventory upon entering the dungeon. KeepExpOnEnter: true
KeepInventoryOnEnter: true # Whether to kick players who disconnect during the dungeon.
# Whether players keep their current health upon entering the dungeon. KickOfflinePlayers: true
# (Otherwise,they will be restored to full health upon entry, and set back to their previous health upon exit.) # How long to wait in seconds after a disconnect before kicking the player from the dungeon.
KeepHealthOnEnter: false KickOfflinePlayersDelay: 300
# Whether players keep their current food level upon entering the dungeon. # The maximum number of backups the plugin will save before deleting old backups.
# (Otherwise, they will be restored to full food upon entry, and set back to their previous food level upon exit.) MaxBackups: 7
KeepFoodOnEnter: false # The maximum number of instances there can be of this dungeon at a time.
# Whether players keep their current potion effects upon entering the dungeon. MaxInstances: 5
# (Otherwise, they will have all potion effects cleared upon entry.) # How long in minutes until the dungeon is automatically ended and the players are kicked out. 0 will disable the time limit.
KeepPotionEffectsOnEnter: false TimeLimit: 0
# Whether players keep their current EXP and level upon entering the dungeon. # How long in ticks to wait before cleaning up a dungeon when all players have left it. 0 will clean up the dungeon instantly.
KeepExpOnEnter: true CleanupDelay: 0
# Whether to kick players who disconnect during the dungeon. # The maximum number of players that can be in this dungeon. Used by the CONTINUOUS dungeon type.
KickOfflinePlayers: true MaxPlayers: 0
# How long to wait in seconds after a disconnect before kicking the player from the dungeon.
KickOfflinePlayersDelay: 300 # When set to 'true', when players take items from reward functions, they'll be put in a rewards list.
# The maximum number of backups the plugin will save before deleting old backups. # Upon finishing the dungeon, the players will be given the rewards.
MaxBackups: 7 GiveLootAfterCompletion: false
# The maximum number of instances there can be of this dungeon at a time. # Loot Cooldown makes it so that players can't loot chests they've already looted recently.
MaxInstances: 5 # Reward functions can be configured individually, or use the default values provided in this section.
# How long in minutes until the dungeon is automatically ended and the players are kicked out. 0 will disable the time limit. LootCooldown:
TimeLimit: 0 Enabled: false
# How long in ticks to wait before cleaning up a dungeon when all players have left it. 0 will clean up the dungeon instantly. # Whether or not the cooldown is per-chest or dungeon-wide. !!NOT CURRENTLY WORKING!!
CleanupDelay: 0 PerReward: true
# The maximum number of players that can be in this dungeon. Used by the CONTINUOUS dungeon type. # Setting this to TIMER will make it so the player can't get loot again until their cooldown is up.
MaxPlayers: 0 # Options like HOURLY, DAILY, WEEKLY, and MONTHLY will let you configure a set time for loot to be reset.
CooldownType: DAILY
# When set to 'true', when players take items from reward functions, they'll be put in a rewards list. # If type is set to TIMER, this is how many minutes until the player can acquire loot again.
# Upon finishing the dungeon, the players will be given the rewards. # Otherwise, this is the time of day when the reset occurs in hours.
GiveLootAfterCompletion: false CooldownTime: 0
# Loot Cooldown makes it so that players can't loot chests they've already looted recently. # If type is set to WEEKLY, ResetDay determines what numbered day of the week the reset occurs.
# Reward functions can be configured individually, or use the default values provided in this section. # "Sunday" would be 1, "Monday" is 2, "Tuesday" is 3, etc.
LootCooldown: # If type is set to MONTHLY, ResetDay determines what day of the month the reset occurs.
Enabled: false # Doesn't do anything if CooldownType is set to "TIMER"
# Whether or not the cooldown is per-chest or dungeon-wide. !!NOT CURRENTLY WORKING!! ResetDay: 1
PerReward: true
# Setting this to TIMER will make it so the player can't get loot again until their cooldown is up. # Access cooldown is used to limit how quickly a player can play this dungeon again after playing it.
# Options like HOURLY, DAILY, WEEKLY, and MONTHLY will let you configure a set time for loot to be reset. # NOTE: Be wary using this, as this can result in players being unable to play with each other if one of them has already run the dungeon recently!
CooldownType: DAILY # The "LootCooldown" section should be used instead to avoid this.
# If type is set to TIMER, this is how many minutes until the player can acquire loot again. AccessCooldown:
# Otherwise, this is the time of day when the reset occurs in hours. Enabled: false
CooldownTime: 0 # Whether to apply the cooldown when the player finishes the dungeon (via a "Finish Dungeon" function.)
# If type is set to WEEKLY, ResetDay determines what numbered day of the week the reset occurs. CooldownOnFinish: true
# "Sunday" would be 1, "Monday" is 2, "Tuesday" is 3, etc. # Whether to apply the cooldown when the player leaves the dungeon by any means.
# If type is set to MONTHLY, ResetDay determines what day of the month the reset occurs. CooldownOnLeave: false
# Doesn't do anything if CooldownType is set to "TIMER" # Whether to apply the cooldown when the player loses all their lives.
ResetDay: 1 CooldownOnLoseLives: false
# Whether to apply the cooldown when the player starts the dungeon. If you have a lobby enabled, it won't apply the cooldown until a Start Dungeon function is activated.
# Access cooldown is used to limit how quickly a player can play this dungeon again after playing it. CooldownOnStart: false
# NOTE: Be wary using this, as this can result in players being unable to play with each other if one of them has already run the dungeon recently! # Setting this to TIMER will make it so the player can't get run this dungeon again until their cooldown is up.
# The "LootCooldown" section should be used instead to avoid this. # Options like HOURLY, DAILY, WEEKLY, and MONTHLY will let you configure a set time for access to be reset.
AccessCooldown: CooldownType: DAILY
Enabled: false # If type is set to TIMER, this is how many minutes until the player can player the dungeon again.
# Whether to apply the cooldown when the player finishes the dungeon (via a "Finish Dungeon" function.) # Otherwise, this is the time of day when the reset occurs in hours.
CooldownOnFinish: true CooldownTime: 0
# Whether to apply the cooldown when the player leaves the dungeon by any means. # If type is set to WEEKLY, ResetDay determines what numbered day of the week the reset occurs.
CooldownOnLeave: false # "Sunday" would be 1, "Monday" is 2, "Tuesday" is 3, etc.
# Whether to apply the cooldown when the player loses all their lives. # If type is set to MONTHLY, ResetDay determines what day of the month the reset occurs.
CooldownOnLoseLives: false ResetDay: 1
# Whether to apply the cooldown when the player starts the dungeon. If you have a lobby enabled, it won't apply the cooldown until a Start Dungeon function is activated.
CooldownOnStart: false Requirements:
# Setting this to TIMER will make it so the player can't get run this dungeon again until their cooldown is up. # A list of permissions the player must have.
# Options like HOURLY, DAILY, WEEKLY, and MONTHLY will let you configure a set time for access to be reset. Permissions: []
CooldownType: DAILY MinPartySize: 1
# If type is set to TIMER, this is how many minutes until the player can player the dungeon again. MaxPartySize: 4
# Otherwise, this is the time of day when the reset occurs in hours. # A list of dungeons the player must have completed. Note: "Finished" means the "Finish Dungeon" function was used in the required dungeon.
CooldownTime: 0 DungeonsComplete: []
# If type is set to WEEKLY, ResetDay determines what numbered day of the week the reset occurs. # If a Vault-based economy is installed, it costs this much to play the dungeon.
# "Sunday" would be 1, "Monday" is 2, "Tuesday" is 3, etc. Cost: 0
# If type is set to MONTHLY, ResetDay determines what day of the month the reset occurs. # Set to "true" if you only want to consume the above cost from the party leader.
ResetDay: 1 LeaderOnlyCost: false
Requirements: AccessKeys:
# A list of permissions the player must have. # Whether to consume keys when players enter the dungeon using the key.
Permissions: [] Consume: true
MinPartySize: 1 # Set to "true" if you only want to consume the key from the party leader.
MaxPartySize: 4 LeaderOnly: false
# A list of dungeons the player must have completed. Note: "Finished" means the "Finish Dungeon" function was used in the required dungeon. # A list of itemstacks that are valid key items. NOTE: It is not recommended adding keys from here. Use the `/md addkey <dungeon>` command instead.
DungeonsComplete: [] # Mythic items are supported and will default to the latest version of the Mythic item (based on its namespace).
# If a Vault-based economy is installed, it costs this much to play the dungeon. KeyItems: []
Cost: 0
# Set to "true" if you only want to consume the above cost from the party leader. Difficulty:
LeaderOnlyCost: false # Whether or not to enable difficulty levels for dungeons.
AccessKeys: EnableDifficultyLevels: false
# Whether to consume keys when players enter the dungeon using the key. # Whether or not to show a difficulty selection menu to the player when playing. Requires the above to ALSO be true.
Consume: true EnableDifficultyMenu: false
# Set to "true" if you only want to consume the key from the party leader. # A list of difficulty options and how they affect the dungeon. You can name them whatever you want and have as many as you like!
LeaderOnly: false # Useful in combination with the "Dungeon Difficulty" condition.
# A list of itemstacks that are valid key items. NOTE: It is not recommended adding keys from here. Use the `/md addkey <dungeon>` command instead. Levels:
# Mythic items are supported and will default to the latest version of the Mythic item (based on its namespace). HARD: # EXAMPLE
KeyItems: [] # An icon item that will represent this difficulty in the difficulty menu
Difficulty: Icon:
# Whether or not to enable difficulty levels for dungeons. Material: DIAMOND
EnableDifficultyLevels: false #CustomModelData: 1
# Whether or not to show a difficulty selection menu to the player when playing. Requires the above to ALSO be true. Display: "&cHard"
EnableDifficultyMenu: false Lore:
# A list of difficulty options and how they affect the dungeon. You can name them whatever you want and have as many as you like! - "&cOnly for the truest gamers."
# Useful in combination with the "Dungeon Difficulty" condition. # How much to increase the mobs health by (1.2 would be +20%)
Levels: MobHealth: 1.5
HARD: # EXAMPLE # How much to increase the amount of mobs coming from spawner functions (1.2 would be +20%)
# An icon item that will represent this difficulty in the difficulty menu MobAmounts: 1.5
Icon: # How much to increase the amount of damage mobs do by (1.2 would be +20%)
Material: DIAMOND MobDamage: 1.25
#CustomModelData: 1 # How much to increase all Mythic Mobs' levels by
Display: "&cHard" BonusMythicLevels: 1
Lore: # A range of how much bonus loot to add to loot table and random rewards functions.
- "&cOnly for the truest gamers." # WARNING: Only works on Mythic Dungeons loot tables and 'random rewards' functions!
# How much to increase the mobs health by (1.2 would be +20%) # Mythic Mobs drop tables do not get bonus drops. Instead, use the `dungeondifficulty` mythic condition in your mythic drop table!
MobHealth: 1.5 BonusLoot: 1-3
# How much to increase the amount of mobs coming from spawner functions (1.2 would be +20%)
MobAmounts: 1.5 # Allows configuring a "map" item the players can get that displays the surrounding dungeon area.
# How much to increase the amount of damage mobs do by (1.2 would be +20%) Map:
MobDamage: 1.25 # Gives the players the map when they join. Effectively enables use of the map.
# How much to increase all Mythic Mobs' levels by GiveOnJoin: false
BonusMythicLevels: 1 # How fast the blocks on the map should fade out as the player rises higher.
# A range of how much bonus loot to add to loot table and random rewards functions. MaxRenderDepth: 10
# WARNING: Only works on Mythic Dungeons loot tables and 'random rewards' functions! # Displays a floor label in the corner of the map based on the Y value the player is at. Useful for procedural dungeons.
# Mythic Mobs drop tables do not get bonus drops. Instead, use the `dungeondifficulty` mythic condition in your mythic drop table! DisplayFloors: false
BonusLoot: 1-3 # How many blocks along the Y axis the player must travel before we consider the player to be on a different floor.
Rules: FloorDepth: 3
SpawnMobs: false # Whether to show icons for other players on the map instead of just the player holding the map.
SpawnAnimals: false ShowAllPlayers: true
SpawnMonsters: false
AllowBreakBlocks: false Rules:
AllowPlaceBlocks: false SpawnMobs: false
AllowSpawnEggs: true SpawnAnimals: false
AllowEnderpearl: false SpawnMonsters: false
AllowChorusFruit: false AllowBreakBlocks: false
AllowBucket: false AllowPlaceBlocks: false
# Limits placing things that don't count as blocks like boats. AllowSpawnEggs: true
AllowPlaceEntities: false AllowEnderpearl: false
# Effectively sets RandomTickSpeed to 0 inside the dungeon, preventing blocks from spreading, plants from growing, ice from melting, etc. AllowChorusFruit: false
DisableRandomTick: true AllowBucket: false
PreventPlantGrowth: true # Limits placing things that don't count as blocks like boats.
PreventExplosionBlockDamage: false AllowPlaceEntities: false
PvP: false # Effectively sets RandomTickSpeed to 0 inside the dungeon, preventing blocks from spreading, plants from growing, ice from melting, etc.
HideDeathMessages: false DisableRandomTick: true
# Prevents players outside the dungeon from teleporting in. Admins can bypass with the `dungeons.bypassjoin` permission. (Or `dungeons.bypassjoin.[dungeon_name]`) PreventPlantGrowth: true
PreventTeleportIn: false PreventExplosionBlockDamage: false
# Whether to allow all commands in the dungeon. PvP: false
AllowCommands: false HideDeathMessages: false
# A list of commands that can still be used, even when "AllowCommands" is set to false. # Prevents players outside the dungeon from teleporting in. Admins can bypass with the `dungeons.bypassjoin` permission. (Or `dungeons.bypassjoin.[dungeon_name]`)
AllowedCommands: PreventTeleportIn: false
- party # Whether to allow all commands in the dungeon.
- dparty AllowCommands: false
- p # A list of commands that can still be used, even when "AllowCommands" is set to false.
- dungeon leave AllowedCommands:
- md leave - party
- leave - dparty
# A list of commands that CAN'T be used, even when "AllowCommands" is set to true. - p
DisallowedCommands: [] - dungeon leave
# Vanilla Minecraft item materials to ban. (Must be a valid Spigot material.) - md leave
BannedItems: [] - leave
# A list of more detailed items to ban from the dungeon. (Recommended to use the /md banitem command instead of modifying this directly.) # A list of commands that CAN'T be used, even when "AllowCommands" is set to true.
CustomBannedItems: [] DisallowedCommands: []
# Toggles whether banned items can be picked up if they are on the ground in the dungeon. # Vanilla Minecraft item materials to ban. (Must be a valid Spigot material.)
AllowPickupBannedItems: false BannedItems: []
# Toggles whether banned items can be crafted while inside the dungeon. # A list of more detailed items to ban from the dungeon. (Recommended to use the /md banitem command instead of modifying this directly.)
AllowCraftBannedItems: false CustomBannedItems: []
# Toggles whether banned items can be placed in or removed from storage in the dungeon. # Toggles whether banned items can be picked up if they are on the ground in the dungeon.
AllowStorageBannedItems: false AllowPickupBannedItems: false
# A list of blocks that are allowed to be PLACED in this dungeon, regardless of the "AllowPlaceBlocks" rule. # Toggles whether banned items can be crafted while inside the dungeon.
# Remove the [] and add the blocks like a list as show in the comments. AllowCraftBannedItems: false
BlockPlaceWhitelist: [] # Toggles whether banned items can be placed in or removed from storage in the dungeon.
# - DIAMOND_ORE AllowStorageBannedItems: false
# - GOLD_ORE # A list of blocks that are allowed to be PLACED in this dungeon, regardless of the "AllowPlaceBlocks" rule.
# A list of blocks that are allowed to be BROKEN in this dungeon, regardless of the "AllowBreakBlocks" rule. # Remove the [] and add the blocks like a list as show in the comments.
BlockBreakWhitelist: [] BlockPlaceWhitelist: []
# A list of blocks that are NOT allowed to be PLACED in this dungeon, regardless of the "AllowPlaceBlocks" rule. # - DIAMOND_ORE
BlockPlaceBlacklist: [] # - GOLD_ORE
# A list of blocks that are NOT allowed to be BROKEN in this dungeon, regardless of the "AllowBreakBlocks" rule. # A list of blocks that are allowed to be BROKEN in this dungeon, regardless of the "AllowBreakBlocks" rule.
BlockBreakBlacklist: [] BlockBreakWhitelist: []
# Whether to let players break any blocks they've placed in this dungeon. Useful when "AllowPlaceBlocks" is true, but "AllowBreakBlocks" is false. # A list of blocks that are NOT allowed to be PLACED in this dungeon, regardless of the "AllowPlaceBlocks" rule.
# OVERRIDES THE ABOVE RULES!! BlockPlaceBlacklist: []
AllowBreakPlacedBlocks: false # A list of blocks that are NOT allowed to be BROKEN in this dungeon, regardless of the "AllowBreakBlocks" rule.
# A list of Spigot entities that cannot be damaged. BlockBreakBlacklist: []
DamageProtectedEntities: [] # Whether to let players break any blocks they've placed in this dungeon. Useful when "AllowPlaceBlocks" is true, but "AllowBreakBlocks" is false.
# A list of Spigot entities that cannot be interacted with. Useful for protecting Item Frames and Armor Stands. # OVERRIDES THE ABOVE RULES!!
InteractProtectedEntities: [] AllowBreakPlacedBlocks: false
# When set to true, prevents armor, weapons and/or tools from losing durability while in the dungeon # A list of Spigot entities that cannot be damaged.
PreventDurabilityLoss: DamageProtectedEntities: []
Armor: false # A list of Spigot entities that cannot be interacted with. Useful for protecting Item Frames and Armor Stands.
Weapons: false InteractProtectedEntities: []
Tools: false # When set to true, prevents armor, weapons and/or tools from losing durability while in the dungeon
``` PreventDurabilityLoss:
\ No newline at end of file Armor: false
Weapons: false
Tools: false
\ No newline at end of file