What's new
Mythic Dungeons 1.4.0 is here! This version fixes a ton of stability issues, introduces the dungeon difficulties system, and is the last major version before the dungeon generator!

⭐ If you're enjoying the plugin, please consider supporting us with a positive review!! ⭐

New Stuff
- **Introduced customizable dungeon difficulty levels!** See updated dungeon config on the Wiki for more info.
- Includes optional menu for letting players choose a dungeon's difficulty level!
- Scale up or down mob stats, amounts, and loot rewards
- **Introduced dungeon variables system!**
- Dungeons can now store values for later use or comparison
- Added "Moving Block" and "Moving Cluster" functions!
- Added "chance" condition for randomizing triggers
- Added "range" option to signal senders (default is 0, meaning infinite)
- Added config option for disabling party chat system.
- Added `PreventTeleportIn` dungeon rule to disallow players teleporting into an ongoing dungeon. (`false` by default.)

Bug Fixes
- **FIXED MEMORY LEAKS!!** Some memory leaks may still be caused by third-party plugins holding on to the dungeon world. *We can't fix this,* but we've solved the main issues!
- **Fixed various crashes with dungeon cleanup.**
- Fixed non-leader party members being able to start dungeons without the rest of the party.
- Fixed players being able to try to start a dungeon while waiting for another one to load.
- Fixed players with stuff mounted to them (such as invisible armorstands) not being teleported in and out of dungeons.
- Fixed DungeonsXL import not working.
- Fixed various issues with third-party party plugins and placeholders.
- Fixed being able to set your spawnpoint using beds in dungeons.

See the full changelogs here!
  • Like
Reactions: marfow
At long last, Mythic Dungeons 1.3.0 is here! Not a ton of major new features but some much need improvements!

⭐If you're enjoying the plugin, please consider supporting us with a positive review!!⭐

New Stuff
- Integrated the Dungeon Parties plugin into Mythic Dungeons! No more having to auto-download the jar to get party support.
- Implemented the official API!!
- Added party messages to lang.yml!
- Significantly improved dungeon load times and performance on some installations.
- Added dungeon config option for delaying dungeon cleanup when all players leave.
- Added a message prompting players to leave the dungeon when all players have died and are in spectator mode.
- Added locale option to `lang.yml` for formatting dates and times.
- Added a function for force-loading chunks.
- Added a function for displaying holograms.
- Added %md_dungeon_time_elapsed% placeholder.
- Added time elapsed condition for triggers.
- Added dungeon config option for auto-closing the dungeon when all players are death spectating.

Bug Fixes
- Fixed various issues with 'allow retrigger' on player distance checkers!
- Fixed weird spaces between rewards in the rewards inventory.
- Fixed some strangeness in saving and loading locations in dungeon configs.
- Fixed function labels not displaying on 1.16.5
- Fixed allowed/disallowed commands being too lenient.
  • Like
Reactions: qeqbwd
Just a quick little fix update today! Dev builds for 1.3.0 are just around the corner, so sit tight!

Bug Fixes
- Fixed worlds getting stuck and not fully unloading, causing memory leaks.
- Improved overall memory management of dungeon instances.
  • Like
Reactions: RageOfFireS
Here's a little filler update for you all with a bunch of minor new features and a slew of bugfixes! 1.3.0 is already nearly complete, so expect to see dev builds for it soon!
⭐If you're enjoying the plugin, please consider supporting us with a positive review!!⭐

New Stuff
- Added "save point" mode to checkpoint function! Allows players that reach checkpoints to start the dungeon again at that checkpoint if enabled.
- Added "KeepExpOnEnter" dungeon rule.
- Added a message informing players when all have died and are in spectator to leave the dungeon.
- Added dungeon rules for preventing durability damage to weapons, armors and tools.

Bug Fixes
- Fixed several issues with parties and the dungeon queue system.
- Fixed the dungeon bypass permissions not checking all players in parties.
- Fixed Mythic Skill function not having a @trigger target. (Not all functions will have a trigger.)
- Fixed an incompatibility with MMOItems in Mythic drop tables.
- Fixed some dungeon and trigger options not working inside meta functions.
- Fixed dungeons not loading if the ExitLocation in the dungeon's config used a world that wasn't loaded.
After a very long delay, Mythic Dungeons 1.2.0 is finally here! We have LOTS of new stuff and bug fixes, so strap in.

⭐If you're enjoying the plugin, please consider supporting us with a positive review!!⭐

REMINDER: As of version 1.1.1+, Mythic Dungeons REQUIRES ProtocolLib as a dependency!!

New Stuff
- Added permissions for bypassing various dungeon requirements.
- Added a "Leave Dungeon" trigger that fires when a player leaves (or attempts to leave) the dungeon.
- Added "AllowCommands" dungeon config option
- Added "DisallowedCommands" dungeon config list
- Added "Click Type" option to the Key Item Detector trigger.
- Added the ability to have an exit location players go to when finishing and/or leaving the dungeon.
- Added support for level ranges (i.e. 5to10) in the Mythic Mob Spawner function.
- Added "AllowBreakPlacedBlocks" dungeon config rule.
- Added dungeon rules for preventing damaging or interacting with certain entities. (Useful for Item Frames and Armor Stands)
- Keys and dungeon items will now be given to another player in the dungeon if the previous holder loses all their lives or leaves the dungeon.
- Added the function builder tool's display name and lore to lang.yml, cuz why not?
- Added "PreventExplosionBlockDamage" dungeon config rule.
- Added a `lang.yml` entry for changing the rewards GUI display name.
- Added "Function Sequencer" function. This runs a list of functions one at a time _in order_ each time it's triggered.
- **Added dungeon config option for setting a completion time limit!**
- Added `/md kick <player>` admin command for kicking players from dungeons.
- Added new rules for controlling when the access cooldown gets applied.
- Added `/party spy` to the default party system for spying on other parties' chats.
- Added a `dungeons.vanish` permission that prevents dungeon join/leave messages appearing for a player.
- Added a direction option to checkpoint functions.
- Re-added Mythic Mobs drop table support. The format has changed, so check your console for any errors and instructions to fix your mythic loot table if you were using Mythic Mobs loot tables before!
- Added "Mythic Signal" function. This sends a specified signal to a configurable set of mobs within a radius for use with the ~onSignal Mythic Mobs trigger.

Bug Fixes
- Fixed various issues with copying functions.
- Fixed issues with OR Gates not triggering.
- Fixed command sender function not recognizing Placeholders when using the console sender.
- Fixed AND and OR gate triggers not firing if another instance of the dungeon starts.
- Fixed the "BACK" button in the reward cooldown sub-menu causing an endless menu loop.
- Fixed party plugin config option being case sensitive.
- Fixed spectators and creative mode players being detected by the Player Detector trigger.
- Fixed the "SpawnMobs" dungeon rule preventing almost all mob spawns. It will now only prevent natural mob spawns.
- Fixed various issues with the block editor function.
- Fixed an error message caused by players leaving the dungeon with >20 health.
- Fixed edit mode dungeons getting stuck and not cleaning out when editor disconnect from inside the dungeon.
- Fixed some death spectator mode related exploits.
- Fixed Mythic Dungeons rolling over and dying if the wrong BetonQuest version is detected.
- Fixed function labels not updating when changing some functions' properties.
- Fixed a missing placeholder in the dungeon create command on success.
- Fixed some issues with dungeon access keys not persisting.
- Fixed the dungeon signal Mythic Mobs mechanic throwing an error when used outside of a dungeon.
- Fixed an entity null error caused with recent builds when clearing out a dungeon, causing the dungeon instance to get stuck.
  • Like
Reactions: Vandermx and Volc94
Sorry for the lack of support the last month. I have been incredibly busy with other projects and work as of late. This update is mainly dedicated to bug fixes to get Mythic Dungeons as stable as possible. Thank you all for being patient.

_IMPORTANT NOTE: Mythic Dungeons now REQUIRES ProtocolLib as a dependency!!_

New Stuff
- 1.19.3 compatibility
- Allowed multi-functions, delayed functions, and function randomizers to to change their target type.
- Added a dungeon block place and break whitelist and blacklist. [See the new config options here!](https://git.mythiccraft.io/mythiccraft/MythicDungeons/-/wikis/Dungeon-Config)

Bug Fixes
- Removed Mythic Mobs droptable compatibility due to forcing Mythic Mobs as a dependency.
- Fixed `dsignal` Mythic mechanic not using the correct skill caster.
- Fixed players not being able to join the server if the plugin errors out.
- Fixed dungeon instance maps not using the lowest available numerical ID.
- Added some missing `lang.yml` messages.
- Fixed some `lang.yml` messages.
- Fixed players not being fully removed from their parties.
- Fixed spawned NPCs not having their correct ID.
- Fixed key and item dispenser functions informing the players twice.
- Fixed memory leak issues where instance worlds were not being fully cleaned up.

Known Issues
- There appears to be an intermittent issue with deleting functions and attempting to create a new one at the same location. Haven't found a consistent pattern yet.
At long last, the compatibility update is here, fixing a slew of bugs and adding compatibility and support for many popular plugins! PlaceholderAPI, BetonQuest, a language file, dungeon access keys, and support for other party plugins are just a few of the big additions!

Check out the full changelog here!

A Word from the Developer
It's been just over 4 months since Mythic Dungeons 1.0.0 was released. I am beyond blown away by the positive reception and encouragement. I had never released a plugin to the public in my life before this, so I had no idea what to expect. Thank you all so much for being so supportive and patient with me in this process.

Having said that, if you haven't got Mythic Dungeons yet, this is the time to check it out!! The latest version is more stable than ever, and comes with a TON of major features and compatibility updates.

If you're enjoying the plugin, please consider leaving a 5-star review either on Spigot or on the MythicCraft page (both if you're feeling especially supportive)! It really helps in so many ways and encourages me to keep working hard to deliver the best possible dungeon plugin Minecraft has seen.

- Marcato
New Stuff
- Added dungeon config rules for further control over banned item behaviour. (See the wiki for the new config options.)
- Rewards functions now drop unlooted items to the ground when closed if "allow retrigger" is set to "false"
- Added a "PvP" dungeon config option to allow or deny PVP in a specific dungeon. (See the wiki for the new config options.)
- Added a "ReadyCheckOnCommand" config option. When set to "false", the party will receive no ready check when attempting to enter a dungeon.
- Added a "ReadyCheckInQueue" config option. When set to "false", the party will receive no ready check when a dungeon becomes available to them in the queue.
- Added a "LeaderOnlyQueue" config option. When set to "false", any party member can queue the party up for a dungeon.
- Added API events for when players leave dungeons and finish dungeons.

Bug Fixes
- Fixed an issue where players would get stuck in dungeons upon losing all their lives while "DeadPlayersSpectate" is set to false.
- Fixed plugin not loading on Java 8 (and consequently, some 1.16.5 installations.)
- Fixed DXL import not working when the server has a different "world container" folder set.

Known Issues
- Player data YML files are sometimes corrupted, resulting in the dungeon not loading. A bandaid fix has been applied, but it seems to still happen sometimes. If the issue is encountered, delete the `players` folder in the dungeon.
New Stuff
- Subfunctions in meta functions can now have their own triggers, using the meta function's trigger by default.
- Info about subfunctions and subtriggers in meta elements are now displayed when you hover over them.
- Added a /md setcooldown command to allow setting the access cooldown of a dungeon for a specific player manually.
- Added "max repeats" option to the function repeater.
- Dungeon start positions are now saved to config, allowing more precise spawn points.
- "Leave Dungeon" functions now work in lobbies before the dungeon has started.
- When opening a loot table rewards inventory, the positions of the rewards is now randomized.

Bug Fixes
- Fixed an issue where sending players into dungeons with /md play didn't work from console.
- Fixed an issue where certain entities were being removed when leaving an edit-mode dungeon.
- Fixed old instance worlds not being deleted on certain operating systems.
- Fixed some issues with mob spawners not re-triggering.
New Stuff
- Mob Spawner functions now have a "Mythic Mob level" option when Mythic Mobs is installed.
- Block Editor functions have have a "direction" option when placing blocks.

Bug Fixes
- Fixed an issue where the Start Dungeon trigger wouldn't fire without a dungeon lobby.
- Fixed an error caused by using the /md lives command outside of a dungeon.
- Fixed parties erroring out when a player disconnects under certain conditions.
- Fixed DXL Import not remembering whether or not lobbies were enabled in the DXL config.
- Fixed errors caused by using the /md join and /md save commands outside of dungeons.
- Fixed an issue where the loot table max items option wouldn't work.
- Fixed an issue with DXL importing [title] signs.
- Fixed DXL Import not completing the import process until after a restart under certain conditions.
- Fixed the Block Detector trigger preventing players from breaking the block placed when it's the incorrect type.

Thank you everyone for the OVERWHELMING support this first week. This has vastly exceeded my release expectations and I am beyond ecstatic about the reception. In response, I'll be working hard to provide new features for you all.

The first major feature update will by the compatibility update (1.1.0), adding compatibility with various plugins such as Citizen, BetonQuest, and more. In the meantime, I'll continue to fix bugs and add basic features.