DungeonsXL icon

DungeonsXL -----

[1.8.8-1.18.2] Create custom dungeons and adventure maps with ease!




This build fixes
  • door signs that were broken in the latest development build
  • the creation of main world signs in 1.20+.

Note that the current compatibility problems with legacy versions is mostly a thing of ItemsXL on whose forward compatibility I'll rely for the time being before a patch in the forseeable future will update it thoroughly to the new versions. This build was only tested to fix problems with Spigot 1.20.2 and might not work well with other versions.
----------, Sep 28, 2023

I planned not to release development builds anymore, but I figured this was important because a release candidate for DXL 0.18 might take a bit longer and the last build wasn't compatible with Paper on the latest MC version. This build isn't the step in development I've wanted for the next release yet, but it should be as stable as the last pre release at least, and it contains some fixes for some other issues as well.

Some news regarding DXL development
  • First of all, I'm sorry for my inactivity during the last two months. Even though the new semester is about to begin, I think I'll be able to spend some more time on development in the next few weeks and months. This will mostly benefit IXL once the most urgent problems regarding 1.18.2 and Paper are fixed.
  • As of now, IXL and DXL will focus on Paper rather than Spigot, and support for some old versions will be dropped or their priority lowered.
  • This means old versions might, modern Spigot servers will still be able to run IXL & DXL, but I plan to make use of Paper-only and latest-version-only features that just won't be implemented in older versions, and all detailed testing will be done on Paper servers. This might include features that have worked before but need to be changed for new versions or Paper. - Spigot servers will have to run an additional plugin that adds libraries Paper has but Spigot doesn't have.
  • The old versions that are dropped will be 1.8 to something between 1.13.x and 1.16.x with exceptions for 1.8.8 and 1.12.2. Even if 1.8.8 & 1.12.2 are still supported, I'd like to emphasize once more that the Forge mod servers that commonly use this version might work with DXL but have never been supported.
  • I won't (thoroughly) test IXL & DXL with 1.8.8 and 1.12.2-1.18.1 anymore but you may report bugs. If they are too hard to fix, old versions might be dropped rather than fixed.
Changelog
  • Updated to Caliburn 1.1
  • DXL now doesn't shade DRECommons anymore, but uses Bedrock instead which is included in ItemsXL
  • Fixed Citizens mob signs
  • Fixed armor stand mobs
  • Fixed protections in non-instance worlds that aren't loaded on startup
  • Fixed /dxl reload when a map is being saved
----------, Apr 4, 2022

This build fixes "breakBlocks: placed" and mob triggers not working with external mobs.

1st Pre-Release update notes:

This update means DungeonsXL 0.18 is, after two years of development, finally feature-ready. Some bug reports are still open and some features still need more testing for the final version of 0.18.

Updating needs some config changes this time. First and foremost, there used to be game rules like timeToNextPlayAfterFinish that were in substance requirements, but predated the requirement API. These have all been replaced with better, more powerful requirements that send expressive messages when the player does not fulfill them.

The building rules have been merged:

Code (Text):
# If players can destroy blocks in this world.
# (The following rule can be either a boolean, "placed" or a whitelist of blocks to break.)
breakBlocks: false
# OR: Players may break blocks they placed themselves, but no other blocks.
breakBlocks: placed
# OR: A whitelist of breakable blocks.
breakBlocks:
  # A material value and a list of all tools that can destroy this block
  SPONGE: ["IRON_PICKAXE", "STICK"]
  # Dirt blocks can be destroyed with any tool
  DIRT: []

# If blocks may be placed.
# (The following rule can be either a boolean or a whitelist of blocks to place.)
placeBlocks: true
# OR: A whitelist of placeable blocks.
placeBlocks:
  - SPONGE
Game rules that depend on a certain game goal (timeToFinish, initialScore, scoreGoal) have been fixed and are now part of the game goal (see here).

Multi floor dungeons have proven to be especially error prone and not very performant. They will not be included in the range of function of DungeonsXL 0.18. I have not yet decided when, how or if they will be readded. If you've used them until now, I advise to copy all floors into a new map with WorldEdit. DXL signs copied by WE won't be functional, but can be updated with the stick tool. The behavior of when the next floor is reached can be imitated with a teleport, checkpoint & title sign. If you still want to use MFDs, add the system property XLDevMode to the server's startup script (e.g. "java -DXLDevMode -jar spigot.jar").

Dungeon announcements have been removed, since their code was outdated and I haven't heard of them being used for ages.

Changelog:
----------, Oct 24, 2021

This update means DungeonsXL 0.18 is, after two years of development, finally feature-ready. Some bug reports are still open and some features still need more testing for the final version of 0.18.

Updating needs some config changes this time. First and foremost, there used to be game rules like timeToNextPlayAfterFinish that were in substance requirements, but predated the requirement API. These have all been replaced with better, more powerful requirements that send expressive messages when the player does not fulfill them.

The building rules have been merged:

Code (Text):
# If players can destroy blocks in this world.
# (The following rule can be either a boolean, "placed" or a whitelist of blocks to break.)
breakBlocks: false
# OR: Players may break blocks they placed themselves, but no other blocks.
breakBlocks: placed
# OR: A whitelist of breakable blocks.
breakBlocks:
  # A material value and a list of all tools that can destroy this block
  SPONGE: ["IRON_PICKAXE", "STICK"]
  # Dirt blocks can be destroyed with any tool
  DIRT: []

# If blocks may be placed.
# (The following rule can be either a boolean or a whitelist of blocks to place.)
placeBlocks: true
# OR: A whitelist of placeable blocks.
placeBlocks:
  - SPONGE
Game rules that depend on a certain game goal (timeToFinish, initialScore, scoreGoal) have been fixed and are now part of the game goal (see here).

Multi floor dungeons have proven to be especially error prone and not very performant. They will not be included in the range of function of DungeonsXL 0.18. I have not yet decided when, how or if they will be readded. If you've used them until now, I advise to copy all floors into a new map with WorldEdit. DXL signs copied by WE won't be functional, but can be updated with the stick tool. The behavior of when the next floor is reached can be imitated with a teleport, checkpoint & title sign. If you still want to use MFDs, add the system property XLDevMode to the server's startup script (e.g. "java -DXLDevMode -jar spigot.jar").

Dungeon announcements have been removed, since their code was outdated and I haven't heard of them being used for ages.

Changelog:
----------, Oct 23, 2021

  • Fixed that players couldn't play dungeons after disconnecting while in a game
  • Fixed maps could be edited again before they were saved
----------, Jul 8, 2021

This build requires IXL 1.0.2 or higher to work ( not 1.0.1).

Changelog:
  • Updated to Minecraft 1.17.1
  • Code improvements
  • Bugfixes:
    • Fixed MFDs
    • Game doesn't start for all groups if there are groups that can't enter
  • Removed features:
    • Dungeon items for versions < 1.16.5
----------, Jul 6, 2021

Please note that this build requires ItemsXL 1.0 to run.
----------, Apr 25, 2021

This build resolves some of the most critical bugs. Before updating, make sure armor stand / item frames not being protected by default even if breakBlocks is false cannot be abused on your server. Adding the following to the default section of the main config should prevent issues in any case:
Code (Text):
default:
  damageProtectedEntities:
  - ARMOR_STAND
  - ITEM_FRAME
  - PAINTING
  interactionProtectedEntities:
  - ARMOR_STAND
  - ITEM_FRAME
Newly generated main config files will contain these rules by default, but existing default sections are not altered.

Note that this build has only been tested with Paper 1.16.5.

  • Changes:
    • Null values in collection / map game rules are now removed automatically
    • Armor stands, paintings and item frames are now by default no longer protected but by default added to the protection rules in the main config default section
  • Bugfixes:
    • Fixed /dxl reload
    • Fixed game rule inheritance system
    • Fixed command signs
----------, Apr 7, 2021

  • Changes:
    • Vanilla items now also refer to custom items that are based on these vanilla items (see here)
    • Rewrote code to start games
  • Bugfixes:
    • Fixed some issues with chat plugins
    • ResourceWorldInstantiateEvent and GroupCreateEvent are now called correctly
    • All group names now have an ID tag and are guaranteed to be unique
    • Fixed attribute persistence
  • Removed features:
    • /dxl reload command (temporarily, didn't work)
The build isn't tested thoroughly with multi floor dungeons and might cause issues with them due to the rewrite of the dungeon game system.
----------, Feb 27, 2021

  • Updated to MC 1.16.4
  • Fixed bStats integration
  • Minor language file fixes (if you're using default English, French or German, delete your languages folder)
----------, Nov 4, 2020

  • New features:
    • Implemented the remaining events
  • Changes:
    • Game goals are now actually used - that means, if you're using game rules like timeToFinish, the game won't end unless the game goal is TIME_SCORE or TIME_SURVIVAL; end signs are ignored if the game goal is not END (the default value). REACH_SCORE and LAST_MAN_STANDING had already been implemented.
    • Libraries are relocated again (might fix an issue with bStats)
  • Bugfixes:
    • Fixed portal checks ignoring worlds
    • Fixed fix of /dxl rename
    • Fixed worldEnvironment setting
I haven't looked into 1.16.4 yet, but I don't expect it to break anything.
----------, Nov 3, 2020

  • New features:
    • Saving an edit world by unloading it now prints a countdown until it is saved
    • Added InstanceWorldPostUnloadEvent
  • Bugfixes:
    • Groups now can't use multiple group signs anymore
    • Groups in a tutorial aren't all called "Tutorial" (which prevents multiple groups having the same name)
    • /dxl rename now updates the registry
----------, Oct 31, 2020

  • Bugfixes:
    • Fixed /dxl msg command
    • Fixed error with ready signs if a group member is not in the dungeon
    • Fixed removeWhenPlayed and floorCount MFD settings
----------, Oct 29, 2020

  • DungeonsXL now saves and restores all attributes when a player enters the dungeon. More control over this is planned.
  • Fixed an NPE while disabling the plugin.
----------, Oct 28, 2020

Updated to Caliburn v1.0-RC-03, which resolves bugs when lists of items are deserialized and that all mob armor items were put into the helmet slot.

/dxl reload -c now reloads the custom content from the Caliburn folder. Note that this unloads all Caliburn items that are not registered through a script in the folder (which is only possible if Caliburn plugins other than IXL and DXL are used).

The plugin now does not load anymore if an outdated ItemsXL version is used that would lead to errors.
----------, Oct 27, 2020

Bugfixes:
  • Fixed PlayerGroupJoinEvent#getPlayer() returning null if the group isn't new
  • Fixed rocker / windup sign NPE
  • Loot is dropped again if the inventory is closed
  • PAPI group_members placeholder doesn't cut off the last letter anymore
  • Fixed timeUntilKickOfflinePlayer game rule
  • Script signs are now set to air if the last sign in the script is usually set to air
Update policy
This build is a development build. That means that it is not only not as stable as release builds but also that its features are always subject to change. Features in development builds might be removed or changed without automatical data converters in a following build. The builds posted here are only builds from the master branch.
----------, Oct 24, 2020

  • Changes:
    • The default value of resetClassInventoryOnRespawn is now false
    • Piglins don't zombify automatically anymore
  • Bugfixes:
    • Updated GUI library - this resolves the bug where shift clicking was forbidden in all inventories
----------, Oct 21, 2020

An overhauled version of ItemsXL has been released. The update includes entirely new formats for custom items, mobs and loot tables. Custom item stacks in hand and spawned mobs can now easily be registered with a single command (/ixl registerItem and /ixl registerMob) under an ID that allows the item to be referenced by it. A similar command to make loot tables in game (/ixl lootTable) has been added as well, but may be still a bit wonky since my GUI library is still WIP.

That means you can e.g. have a custom item from any plugin, put it in your hand slot, register it with /ixl ri MyItem and then use "MyItem" as if it were a Vanilla material in DungeonsXL and all other Caliburn/ItemsXL plugins.

This build updates DungeonsXL to work with these changes. (This is the build promised in Discord for the next few days, my tests worked better than expected.)

This also finally concludes the update to Minecraft 1.14+ (except for the chat color changes in 1.16).
  • New features:
    • Unsupported useNativeCitizensRegistry game rule that allows to spawn Citizens into the plugin's own registry. This may be more compatible with addons but bumps ID numbers endlessly.
  • Removed features:
    • Legacy custom mob system
  • Changes:
    • Updated to Caliburn 1.0 RC 2 (IXL 0.6)
----------, Oct 19, 2020

This build isn't tested that much, so don't update production environments without testing.

Same as always: Read the last changelogs for more information.
----------, Jun 28, 2020

Hey again :)

This dev build adds a new trigger called "presence" (in short "P") trigger that works exactly like the distance trigger but fires every time a player is in range.

A possible use-case is the checkpoint sign that would only trigger for the first player if a distance trigger was used, or perhaps an action bar sign that should show its message every time the player gets close to it.

Besides that, the build fixes several critical bugs.


See the older 0.18 dev builds for more information and a complete changelog since v0.17.7.

This build is perhaps the last one for a bit more than a month since my exam period is about to begin. Please use the issue tracker to report problems.
----------, Jun 22, 2020

  • New features:
    • /dxl announce command
    • resetClassInventoryOnRespawn
  • Changes:
    • Permissions are now unregistered when the plugin is unloaded
  • Bugfixes:
    • Fixed an announcer NPE
    • Fixed overkill damage bug
    • Trigger signs now start with ID 0 again
    • Interact signs now generate IDs if the ID is left empty like trigger signs
    • Erroneous MFD configs don't cause exceptions anymore
The italic features have been added by Goh Wei Wen - thanks for this!

See the older 0.18 dev builds for more information.
----------, Jun 16, 2020

  • Changes:
    • Redstone signs will now require the attached block to be powered if they are wall signs
  • Bugfixes:
    • Command signs are now registered properly
    • Fixed two possible NPEs
    • interactionBlacklist now works
    • Added lobbyContainersEnabled config value that forbids users to use containers before the game has started
See the other snapshot changelogs for more information.
----------, Jun 2, 2020

Trapdoors and fence gates may now be used with door signs. Also contains a minor performance improvement with triggers.

See the other snapshot changelogs for more information.
----------, May 6, 2020

Fix: When a mob sign spawns its last mob, the sign's counter is reset. If the sign is triggered again, it will once more spawn n mobs instead of just 1.

See the other snapshot changelogs for more information.
----------, May 6, 2020

This makes the plugin ignore the fireTick gamerule in 1.8-1.12. I didn't realize Bukkit's API wasn't added before 1.13.

Please read the changelog of #958 for further information.
----------, May 3, 2020

This build is a bugfix build that resolves a few of the most important problems since the implementation of the new API, including world loading problems, the "Removing entity while ticking!" thing and trigger signs. I hope that this can finally end the schism between 0.17.7, #771, #819 and latest build users - but note that especially the new sign system also included intended changes, so make sure to read the last changelogs (especially #893) if you update.

From the last dev build that was published a few hours ago:

This build resolves a few problems with world loading / unloading. Because of this, the Paper check on startup has been removed.

The most important new features in this build are the escape/finishLocation game rule and the timeframe requirement:


Code (Text):
# Where the player respawns when he leaves the dungeon without finishing the game.
escapeLocation: "spawnworld,49.5,65.0,598.5,29.0,-84.4"
# Where the player respawns when he finishs the game.
finishLocation: "spawnworld,49.5,65.0,598.5"

# Dungeon can only be played on a friday and from sunday to tuesday respectively at 15-16 o'clock.
# Note that the week in the Java Calendar API begins with sunday, so SATURDAY-SUNDAY does not work.
requirements:
  timeframe:
  - "FRIDAY"
  - "SUNDAY-TUESDAY"
  - "15-16"

Changelog

  • Fixed #getDungeonMob() NPE
  • Instance IDs now use a static counter
  • Fixed "Removing entity while ticking!" bug
  • Fixed an NPE when a played instance is played again
  • Fixed some exceptions with Citizens
  • Fixed trigger signs
These changes were posted a few hours ago:

0.18
0.17.8

Update policy
This build is a development build. That means that it is not only not as stable as release builds but also that its features are always subject to change. Features in development builds might be removed or changed without automatical data converters in a following build. The builds posted here are only builds from the master branch.

Support for Minecraft 1.14 / 1.15

The current development builds come with technical support for Minecraft 1.14.x-1.15.x. This means technical inclusion and consideration of 1.14.x-1.15.x features are present.

The the item library Caliburn hasn't been updated yet. This is intentional.
----------, May 2, 2020

In the last two months, I've worked very hard to get as close as possible to the release of DungeonsXL 0.18 which I've been working on for about a year now. As a result, it is now almost feature-complete and the stability of running it with Paper and Minecraft 1.14+ has been improved a lot. Unfortunately, there are still (especially gameplay related) bugs I couldn't work on yet. The new semester has begun and I will most likely not have much time to work on DXL. My current estimation is that I'll be able to release the first RC in September.

This build resolves a few problems with world loading / unloading. Because of this, the Paper check on startup has been removed.

The most important new features in this build are the escape/finishLocation game rule and the timeframe requirement:
Code (Text):
# Where the player respawns when he leaves the dungeon without finishing the game.
escapeLocation: "spawnworld,49.5,65.0,598.5,29.0,-84.4"
# Where the player respawns when he finishs the game.
finishLocation: "spawnworld,49.5,65.0,598.5"

# Dungeon can only be played on a friday and from sunday to tuesday respectively at 15-16 o'clock.
# Note that the week in the Java Calendar API begins with sunday, so SATURDAY-SUNDAY does not work.
requirements:
  timeframe:
  - "FRIDAY"
  - "SUNDAY-TUESDAY"
  - "15-16"

Changelog since build #911
Please read the changelogs since build #893 for more information.
----------, May 1, 2020

This build doesn't fix all known issues either. If you're already on a build >819, update, if not, test which one works best for you.

This build is supposed to make game initialization more robust. If a sign has a bug, DXL used to stop the initialization of a game somewhere in the middle of the process, which obviously used to lead to weird behavior and error messages because the assumed state was never reached.

There are probably more bugs than the script sign NPE I fixed at one go, but they will at least no longer prevent working parts of the game from working. If a sign throws an exception, it is now marked as erroneous like signs that are set up wrongly and a message in the console asks you to report it to me.

Changelog since the last build:
  • Bugfixes:
For more information, please read the last changelogs.
----------, Apr 15, 2020

Again, this build doesn't fix all known issues. If you're already on a build >819, update, if not, test which one works best for you.
  • New features:
    • Requirement event API
  • Changes:
    • Hologram signs now use "<br>" instead of "/" as a line separator
  • Bugfixes:
    • Fixed button sign behavior, which made it appear like multiple trigger types didn't work
    • Fixed redstone trigger behavior

Please read the last changelog for more information.
----------, Apr 14, 2020

Since the latest build published here turned out to work worse than expected, I've decided to publish this new build early. It fixes most, but not all known bugs. If you're on #893 or #900, update as soon as possible.

This build also overhauls requirements and adds two long requested new features: Explicit requirement messages if they are not fulfilled and requirement checks before the instance loads. Requirements that are fees are still paid when the ready sign is triggered sothat players can decide not to pay when their party members turned out not to be as solvent as them.

Since build #893

0.18
0.17.8

Since the code base is almost finished for the next major update, the next builds will mostly be bugfixes, stability improvements and content additions. Please make sure to update as often as possible.

~Regards, Sataniel
----------, Apr 11, 2020

In the last weeks, I've spend a lot of time on the implementation of the new API. While this will mostly make the lives of developers easier, it also means major improvements for dungeon builders. This build contains quite a few breaking changes, so please read the changelog carefully.

This build might introduce new bugs due to many code changes, but it also contains many fixes of old bugs. Please test before updating and use the build that matchs your needs on your server best.

New sign system
Most notably, the new sign system changes how dungeon signs behave. In the past, each sign more or less had its own implementation and the behavior when it was triggered was based on assumptions how users would most likely want them to behave.

For example: When a message sign was triggered with a distance trigger in DXL 0.17.7, it remembered every player that triggered it and sent a message to each one. A mob sign just remembered it was triggered and spawned mobs one time, no matter who triggered it and how often players would come close to it. This was neither standardized nor documented, but it worked relatively well because it is hard to think of a use-case where different behavior could be needed.

The problems began when the behavior of a sign couldn't easily be guessed. For instance, if a command sign executes a command that raises the lava level for some kind of sudden death like in Worms, you'd want it to execute it one time; if it executes a command to open a shop GUI, it should execute it for the player as often as it is triggered; and if the command is supposed to heal the player who triggered it, multiple possibilities make sense. Some signs didn't even have implementations for all triggers.

The new sign system standardizes the behavior of signs, which makes
  • A Button sign performs its specific action every time it is triggered. It can have, but typically does not have a state.
  • A Passive sign is a sign that does not do anything on its own. Its function is mostly to mark locations or blocks, like lobby or bed signs.
  • A Rocker sign has a deactivated and an activated state and can switch between these two. For example, if a door sign is activated, the door opens - if it is deactivated, the door closes. The state may be set for the whole game world or for the player who triggered the sign depending on the context.
  • Windup signs work similarly to rockers, but they have an attached task that does actions in a set interval n times, like a mob or drop sign that spawns n entities. Windup signs deactivate themselves when their task is finished.
More information can be found here. I'll update the site ASAP with a list of signs and their type.

These changes are in some cases breaking. Test your dungeons before updating the production environment.

By the way, while the trigger system rewrite is scheduled for the 0.19 update where a trigger API and many more built-in triggers will be added to make use of this system, distance triggers have been changed to disable themselves after they are triggered, so mob signs triggered by distance triggers aren't activated anew every time a player comes close to them.

Sign syntax changes
In addition, the syntax of hologram, title and action bar signs changed. Their text is now taken from the "messages" game rule just like the messages of chat message signs have always been.

Command signs now don't use CommandsXL anymore but a new, internal system. The syntax stays the same.

Caliburn
As you might have heard, this is the name of DXL's item wrapper library. Nothing changed here yet, but I'm very close to finishing a major rewrite of this software that will change the way item scripts work. Please don't waste too much work on new scripts for the legacy system ;)

Support for 1.14.x and 1.15.x
Is still not guaranteed, but I hope that some of my latest changes help getting closer to full support. The thing mentioned as "world loading performance" improvements" in the changelog hopefully also avoids a bug in Paper. DungeonsXL now refuses to load if Paper's asynchronous chunk loading is enabled in 1.14+. This is because some crash bugs are possibly caused by this. It is not supposed to stay, but I'd like to get some feedback if this helps.

Changelog
  • Removed features:

0.18
0.17.8

Since the code base is almost finished for the next major update, the next builds will mostly be bugfixes, stability improvements and content additions. Please make sure to update as often as possible.

~Regards, Sataniel
----------, Apr 8, 2020

Hotfix for a syntax error in a language file in the jar.

Changelog:
0.18
0.17.8

Update policy
This build is a development build. That means that it is not only not as stable as release builds but also that its features are always subject to change. Features in development builds might be removed or changed without automatical data converters in a following build. The builds posted here are only builds from the master branch.

The reason why the old branch (0.17) wasn't updated is that the changes made to the project setup in order to support Minecraft 1.14 are rather far reaching, and they coincidenced with the API updates for 0.18. 0.18 is supposed to become a major feature update once it's ready that was and is developed independently of Minecraft updates - that means even if there is this early dev build, it will still take a while until it is finished.

Support for Minecraft 1.14 / 1.15

The current development builds come with technical support for Minecraft 1.14.x-1.15.x. This means technical inclusion and consideration of 1.14.x-1.15.x features are present.

The the item library Caliburn hasn't been updated yet. This is intentional.
----------, Feb 9, 2020

It's been a while since the last development build has been uploaded here, but development hasn't slowed down. About 50 commits have been pushed to DungeonsXL and about 30 more to its included libraries. The reason why this build still changes relatively few things is that a lot of these commits were related to the new API, a feature that isn't really visible to users. This build is supposed to a final build for a lot of old code structures that are going to be tidied out when the new API is implemented in the very next steps and might be the most stable for some time.

Delete your language files before updating!

Changelog:
Since the last published build:

0.18
0.17.8

Update policy
This build is a development build. That means that it is not only not as stable as release builds but also that its features are always subject to change. Features in development builds might be removed or changed without automatical data converters in a following build. The builds posted here are only builds from the master branch.

The reason why the old branch (0.17) wasn't updated is that the changes made to the project setup in order to support Minecraft 1.14 are rather far reaching, and they coincidenced with the API updates for 0.18. 0.18 is supposed to become a major feature update once it's ready that was and is developed independently of Minecraft updates - that means even if there is this early dev build, it will still take a while until it is finished.

Support for Minecraft 1.14 / 1.15

The current development builds come with technical support for Minecraft 1.14.x-1.15.x. This means technical inclusion and consideration of 1.14.x-1.15.x features are present.

The the item library Caliburn hasn't been updated yet. This is intentional.
----------, Feb 8, 2020

This build resolves the issue where old game instances were kept in memory as long as the server was running. I'm still not entirely sure if this was a bug of Bukkit or DungeonsXL, but it should work now.

The build is forward compatible to 1.14.3 and 1.14.4. Note that there are still issues with 1.14.

Changelog
Since the last published build:

0.18
0.17.8:

Update policy
This build is a development build. That means that it is not only not as stable as release builds but also that its features are always subject to change. Features in development builds might be removed or changed without automatical data converters in a following build. The builds posted here are only builds from the master branch.

The reason why the old branch (0.17) wasn't updated is that the changes made to the project setup in order to support Minecraft 1.14 are rather far reaching, and they coincidenced with the API updates for 0.18. 0.18 is supposed to become a major feature update once it's ready that was and is developed independently of Minecraft updates - that means even if there is this early dev build, it will still take a while until it is finished.

Support for Minecraft 1.14
The current development builds come with technical support for Minecraft 1.14.x. This means technical inclusion and consideration of 1.14.x features are present, but the current performance of Spigot 1.14.x (regardless if it's Spigot's or Mojang's problem) if it comes to world loading and crash bugs make it impossible to guarantee the same quality as with 1.13.x in practice.

If you'd like to try it out, please let me know how your experience with performance in 1.14 is and if there are any issues and how frequent they are.
----------, Jul 28, 2019

Just like the latest one, this build includes a fix of a severe bug and updating is highly recommended.

The build is forward compatible to 1.14.3. bStats says about 15% of you guys are already running DXL with Minecraft 1.14.x, so I'd like to stress once more that this is a bad idea, at least for production environments. I'm not putting disclaimers here to protect myself against complaints but because my test results proved that it simply doesn't work well enough.

These were admittedly made with by now outdated Spigot builds, but that's still the current state.

Changelog
Since the last published build:

0.18:
  • Removed features:
    • Everything related to chunk loading
0.17.8:

Update policy
This build is a development build. That means that it is not only not as stable as release builds but also that its features are always subject to change. Features in development builds might be removed or changed without automatical data converters in a following build. The builds posted here are only builds from the master branch.

The reason why the old branch (0.17) wasn't updated is that the changes made to the project setup in order to support Minecraft 1.14 are rather far reaching, and they coincidenced with the API updates for 0.18. 0.18 is supposed to become a major feature update once it's ready that was and is developed independently of Minecraft updates - that means even if there is this early dev build, it will still take a while until it is finished.

Support for Minecraft 1.14
The current development builds come with technical support for Minecraft 1.14.x. This means technical inclusion and consideration of 1.14.x features are present, but the current performance of Spigot 1.14.x (regardless if it's Spigot's or Mojang's problem) if it comes to world loading and crash bugs make it impossible to guarantee the same quality as with 1.13.x in practice.

If you'd like to try it out, please let me know how your experience with performance in 1.14 is and if there are any issues and how frequent they are.
----------, Jun 25, 2019

This build includes a fix of a severe bug, updating is highly recommended.

Changelog
Since the last published build:

0.18:
  • Removed features:
    • Everything related to chunk loading
0.17.8:

Update policy
This build is a development build. That means that it is not only not as stable as release builds but also that its features are always subject to change. Features in development builds might be removed or changed without automatical data converters in a following build. The builds posted here are only builds from the master branch.

The reason why the old branch (0.17) wasn't updated is that the changes made to the project setup in order to support Minecraft 1.14 are rather far reaching, and they coincidenced with the API updates for 0.18. 0.18 is supposed to become a major feature update once it's ready that was and is developed independently of Minecraft updates - that means even if there is this early dev build, it will still take a while until it is finished.

Support for Minecraft 1.14
The current development builds come with technical support for Minecraft 1.14.x. This means technical inclusion and consideration of 1.14.x features are present, but the current performance of Spigot 1.14.x (regardless if it's Spigot's or Mojang's problem) if it comes to world loading and crash bugs make it impossible to guarantee the same quality as with 1.13.x in practice.

If you'd like to try it out, please let me know how your experience with performance in 1.14 is and if there are any issues and how frequent they are.
----------, Jun 17, 2019

Support for Minecraft 1.14
[​IMG]

As promised, this is the first development build with technical support for Minecraft 1.14.x. This means technical inclusion and consideration of 1.14.x features are present, but the current performance of Spigot 1.14.x (regardless if it's Spigot's or Mojang's problem) if it comes to world loading and crash bugs make it impossible to guarantee the same quality as with 1.13.x in practice.

I had to add a workaround for a bug where portals in 1.14 sometimes loaded instances twice, and it took >20 seconds on my machine to load a tiny, simple flat world with nothing but a ready and end sign - >20 seconds where a server would be entirely frozen. Fortunately, a new performance improvement makes this at least a bit less bad in 1.14 and actually good in the older versions. I'm also sounding out some alternatives like asynchronous world loading (which used to be a feature in DungeonsXL until the method I used to use broke) or programming a custom world loader where some performance is gained by leaving out features that are not necessary in dungeons, but the best bet is to hope for performance improvements in 1.14.3.

If you'd like to try it out, please let me know how your experience with performance in 1.14 is and if there are any issues and how frequent they are.

Update policy
This build is a development build. That means that it is not only not as stable as release builds but also that its features are always subject to change. Features in development builds might be removed or changed without automatical data converters in a following build. The builds posted here are only builds from the master branch.

The reason why the old branch (0.17) wasn't updated is that the changes made to the project setup in order to support Minecraft 1.14 are rather far reaching, and they coincidenced with the API updates for 0.18. 0.18 is supposed to become a major feature update once it's ready that was and is developed independently of Minecraft updates - that means even if there is this early dev build, it will still take a while until it is finished.

Donations
Thank you once more very much to those who donated - I received more than ever before within the last weeks and it was a huge motiviation C:

Changelog
0.18:

  • New features:
    • Updated to Minecraft 1.14.2
    • World loading performance improvements
    • Improved directions util (support for e.g. NNE for north-northeast)
  • Changes:
    • DungeonsXL now depends on the Spigot API, not Bukkit
    • Updated to Commons 6
    • Switched GUI library to Vignette
    • New legacy support system
    • Code improvements and modernizations for 1.13 and 1.14
  • Bugfixes:
    • Fixed worlds being loaded twice at the same time (1.14)
  • Removed features:
    • Everything related to chunk loading
0.17.8:
----------, Jun 16, 2019

Fixed door signs in 1.13+.
----------, Mar 20, 2019

DungeonsXL now supports PlaceholderAPI. See here for more information. An occasionally happening bug when players die in a dungeon that was introduced in 0.17.5 has also been fixed.

Changelog
----------, Mar 19, 2019

[​IMG]
It's time for a new DXL patch. This one includes mainly bug fixes, but also minor additions and code improvements.

One noticeable change is that "Chest" signs have been renamed to "RewardChest" signs sothat they aren't confused with the new "DungeonChest" signs. Old "Chest" signs continue to work, and the other changes are not breaking either.

Some issues have not yet been resolved, but no new ones are known. As always, if you notice anything or need help, please open an issue.

Changelog

----------, Feb 26, 2019

Updated the item library, Caliburn, to its latest version (0.5.4). This resolves multiple problems in 1.13.2 - including the ready sign issues.

I'm aware that some unrelated issues are left unresolved at the moment and hope to find some time to work on them in the upcoming holidays.
----------, Dec 16, 2018

  • Fixed keepInventory killing playersafter they leave the dungeon even if not necessary
----------, Oct 29, 2018

  • Updated to Minecraft 1.13.2
  • Removed NoReload
  • Fixed mob trigger ID issues
----------, Oct 27, 2018


This update unfortunately doesn't introduce the three big new features I am working on, namely the game rule API, mob wave and trigger rework. I however had a bunch of new features stable and ready to be released, so I decided not to wait any longer, especially since the new semester is about to start. Have fun ;)

Changelog

----------, Oct 6, 2018

This update fixes just a few things for the stable 0.16.x version. Work on new features has already begun on the 0.17.x branch (see the dev builds if you're intersted in them!) These changes will be rebased to 0.17.x sooner or later. Another update with full support for 1.13.1 will follow as soon as possible after there is a Spigot build.

@Raigna despite what I said, I did find a few hours to work on it. Hope that helps ;)

Changelog
  • New features:
    • Reimplemented timeToNextLoot game rule
  • Bugfixes:
    • Fixed /dxl lives NPE if the sender is not in a dungeon
Edit: These changes are merged into the 0.17 branch as of build #674 and higher.
----------, Aug 25, 2018

A minor update without breaking changes.

Changelog

----------, Aug 15, 2018

This update focuses on bug fixes and code reduction.

The only breaking change is the removal of MythicMobs signs. To clarify, MythicMobs signs are NOT [ExternalMob] signs with an MM mob provider parameter but the old [MythicMobs] signs that hadn't been in the wiki for at least two years. If you still had any (though I highly doubt that), replace them before updating.

Another change, though not a breaking one, is that [ExternalMob] and [Mob] signs have been merged. That means you are supposed to use [Mob] for mobs spawned through external mob providers like Citizens, MythicMobs or whatever in the first line as of now. Example:

Old:
[ExternalMob]
SkeletalKnight
3,10,MM
D 5

New:
[Mob]
SkeletalKnight
3,10,MM
D 5

tl;dr; ExternalMob are replaced by an optional parameter of normal Mob signs.

Old ExternalMob signs continue to work.

It's the same with floor signs that are replaced by optional parameters added to end signs.

The wiki will be updated within the next few days.

Changelog

  • Changes:
    • Merged external mob signs and mob signs. This reduces duplicated code and hopefully resolves problems with multiplied amounts of mobs spawned. See here and here
    • Merged floor and end signs to reduce duplicated code
  • New features:
    • Reworked tutorials, also. They now support MFDs, are less error prone and don't depend on deprecated methods anymore
  • Bugfixes:
    • Fixed max instances setting
  • Removed features:
    • Removed MythicMobs signs (have been deprecated in favor of ExternalMob signs a long time ago)
    • Removed unsafe performance tweaks
----------, Aug 10, 2018

Changelog:

Since RC#4:

  • Full support for Spigot 1.13-final (the changes since the pre release builds broke DXL)
  • Updated /dxl status

0.16

0.15.7 (this update has not been posted on SpigotMC.org)

What's coming next?
DungeonsXL 0.17 will focus on improving the wave and mob spawning system. A list of issues that have been added to this milestone can be seen here. Bugfixes are supposed to be released in running 0.16.x releases.

This update might take a lot of time because I plan to concentrate on FactionsXL, ItemsXL and my own server more now that DungeonsXL is in a state that I'd call close to being finished and to being as stable as it can possibly become without more profound testing in a production environment.

Thank you for all of the bug reports and ideas to improve DungeonsXL. My first contribution was nothing but a change of a few lines to get it updated to 1.8, and without so much encouragement, I'd never have considered to dedicate this much time to it.
----------, Jul 22, 2018

This update is the first one with more than "guessed" support for 1.13 thanks to SpigotMC's new preview build. However, it targets the final version 1.13, so don't mind warnings like "[WARNING] Caliburn has a representation of the material DEAD_HORN_CORAL_WALL_FAN that does not exist in Bukkit" - that's just because I'm slightly ahead of Bukkit. Thanks to @Tiplish, I was also able to fix a bug where dungeon portals teleported players into the nether.

Depending on your feedback and whatever Mojang might still do to Minecraft 1.13, this build might be promoted to release status.

Also, please contribute to the discussion about the future of mob signs and waves. This is likely to be the main improvement of v0.17.

Changelog since the third release candidate:

Changelog since 0.15.x:
----------, Jul 17, 2018

This update keeps track of the changes in the 1.13 previews and contains fixes for all known, confirmed bugs. However, some more are reported and need to be reviewed. I'll try to include as many more as possible in the final 0.16 build.

Mojang revealed that MC 1.13 will be released on 18th July, and I'm aiming to get the new version of DungeonsXL finished within 24 hours after the release of a compatible Spigot build.

Changelog since the second release candidate:

Changelog since 0.15.x:
----------, Jul 13, 2018

This is the second release candidate of DXL Beta 0.16. The new features might not be too impressive, but this update is supposed to be a huge step towards production environment stability, so if you notice any bugs, inconsistencies, typos or other problems of any kind, please post them.

Changelog since the first release candidate:
Changelog since 0.15.x:
----------, Jun 20, 2018

It's been a while... :)

This update contains the changes and fixes of more than a year. It improves the stability and overall experience a lot.

Some things have changed a lot, such as the item deserialization system and the syntax of group and game signs. Please make a backup and read the wiki carefully.
----------, May 31, 2018

This update doesn't change DungeonsXL itself but it adds a module for 1.11-1.11.2 support to ResourcepackAPI, because inventivetalent doesn't intend to update it in the forseeable future. That being said, [Resourcepack] signs are now working with CraftBukkit 1.9-1.11.2.
----------, Jan 4, 2017

Just kidding, it still contains dozens of bugs.

Updating
You might want to let your players know that the /dxl play command works differently, now, in case you let them use it: The [dungeon/map] parameter has been removed. DungeonsXL will check automatically if the name parameter matchs a map or a dungeon.

The language files changed a bit; an updated version of the French language file is available. I also added a file for German translations, which is unglücklicherweise not finished at the moment.

Changelog
  • New features:
    • /dxl test now works in edit worlds
  • Code changes:
    • Recoded /dxl play command
    • Recoded floor / finish system (should be more reliable now)
    • Compiled against BRCommons 1.0.6
  • Bugfixes:
    • The console may now execute /dxl kick; dxl.kick node now works as it should
    • Fixed some bugs with multi floor dungeons
    • Fixed dungeon config initialization bug
    • Fixed /dxl test command
    • Game types without rewards now don't give rewards anymore
    • ...and a few minor things
----------, Dec 27, 2016

Changelog
New features:
  • ActionBar sign
  • Title sign
Suggestions by @titidelaff
----------, Dec 26, 2016

Updating
One message has been added (Cmd_Reload_Players). Besides that, everything should work as is. Have a Merry Christmas :)

Changelog

----------, Dec 24, 2016

Updating
This update doesn't change much and therefore doesn't break much. Note that there are still a few unaddressed issues and further hotfixes are about to be released.

Changelog
----------, Dec 3, 2016

Updating
This new Beta release addresses many issues, the most important ones are the compatibility fixes for 1.11 from BRCommons 1.0.3 and the config file auto fix. It also includes a tiny new feature suggested by @Chimera; explanations have been added to the wiki.

This is the first of a few bugfix releases. DXL grew a lot in the last year, and even though I do like to add more features (and I still appreciate all requests), I feel it's time to focus on making it a stable, reliable plugin that you can count on. That being said, there'll be a few more "minor" 0.15.x updates that you shouldn't ignore in the forseeable future.

Note that the resource pack feature still does not work with 1.11.

Changelog
Thank you...
...to all of you who help me testing this plugin, you're doing me a great favor. I received a lot of useful issue reports in the last days. Please keep on doing so and don't be shy :)
----------, Dec 1, 2016

Updating
There are quite a few new features. The wiki will get some updates as soon as possible. Please report bugs if you notice any.

If you're updating from 0.14.x or lower, regenerate your main config.

If you're using ItemsXL, make sure that you're running the latest version (0.2.2) to avoid problems especially if you intend to update to 1.11.

Changelog

----------, Nov 17, 2016

Updating
If you use ItemsXL, make sure to update to v0.2 or higher.

Please read the 0.14 updating information and the warning if you update from an even older build as they are quite important this time.

The wiki has been updated with an example of the new loot table system.

Changelog
----------, Jul 24, 2016

Updating
If you use ItemsXL, make sure to update to v0.2 or higher.

Please read the 0.14 updating information and the warning if you update from an even older build as they are quite important this time.

The wiki has been updated with an example of the substantially enhanced item deserialization system.

Changelog
  • Code changes:
    • Compiled against Caliburn 0.2
  • New features:
    • Disabled block burning in instances (except because of flint and steel)
  • Bugfixes:
    • Create .raw only when needed
----------, Jul 23, 2016

Updating
There are no breaking changes, but please read the 0.14 updating information and the warning if you update from an even older build as they are quite important this time.

Changelog

----------, Jul 16, 2016

Updating:
There are no breaking changes, but please read the 0.14 updating information and the warning if you update from an even older build as they are quite important this time.

Changelog:
----------, Jul 12, 2016

Warning
This version contains noticeable performance improvements if you enable the tweaks in the config (such as no more freezing when a world is instantiated), but please take this warning serious. The asynchronous copying and world loading are not tested thoroughly, yet, and it is possible that they cause chunk or world corruption. Besides that, there are (again) major code changes, this time concerning the world system. Things might not work as intended, so please report errors you experience and console stacktraces without any noticeable issues.

Updating
There should not be any breaking changes except some translation improvements you don't get if you don't regenerate the language file.

Changelog

  • Code changes:
    • Created fake registry sothat to resolve Citizens save file spam and ID bumping
    • Recoded world system
    • Compiled against BRCommons 1.0.1 for Minecraft 1.10.2
    • Minor changes to the command system
    • Experimental performance tweaks
      • Files are now copied asynchronously in many cases
      • Instances are now loaded asynchronously
      • Tweaks can be enabled / disabled in the main config
    • Switched to multi module project setup
    • Compiled against Caliburn and IXL 0.1.8
  • New features:
  • Bugfixes:
    • Fixed ClassCastException with WaveTrigger
    • Teleport signs now work correctly with scripts
    • Fixed message sign and secure objects
    • Fixed ItemsXL integration
    • ...and more
----------, Jul 11, 2016

Updating
If you update from 0.12, make sure to remove your language file as some messages might have changed.

Changelog

  • Code changes
    • Improved trigger code
  • New features
    • Signs:
    • Permission requirement
    • Signs now also accept right clicks instead of sending a message that the player has to left-click the sign
  • Bugfixes:
    • Compiled against Caliburn 0.1.6 (resolves classes bug)
    • Fixed game sign exception
    • Fixed a few exceptions
The wiki will be updated with detailed explanations for this features, soon.
----------, Jun 22, 2016

Updating
If you update from 0.11, make sure to remove your language file as some messages might have changed. This update also breaks the class system and the built-in custom mob system. Have a look at this wiki page for more information.

Changelog

----------, Jun 18, 2016


Bugfixes:
  • Fixed dungeon entering issues.
----------, May 15, 2016

Bugfixes:
  • Forbid some abusable group commands while in dungeon
  • Fixed death console error
----------, May 15, 2016

  • Fixed the placeholders with /dxl lives. Old language files will not get adjusted automatically.
  • Contains BRCommons 0.5.2 with support for Minecraft 1.9.4.
----------, May 10, 2016

Updating
If you update from 0.10, make sure to remove your language file as some messages might have changed. You data.yml will need some minor fixes, too.

Changelog

  • Code changes:
  • New features:
    • Metrics integration
    • Command white / blacklist in dungeon
    • Advanced groups:
      • Different groups in one dungeon
      • Advanced group support for signs
      • Group command
      • Group names
      • Group captains
      • Enter command
    • Advanced game types:
      • Adventure
      • Adventure - Time is Running
      • Apocalypse - Last Man Standing
      • Apocalypse - Limited Mobs
      • Apocalypse - Time is Running
      • Player versus Environment - Last Man Standing
      • Player versus Environment- Limited Mobs
      • Player versus Environment- Time is Running
      • Player versus Player - Last Man Standing
      • Player versus Player - Factions Battlefield
      • Quest
      • Quest - Time is Running
      • Test
      • Tutorial
      • Default
    • Block modification and gamemode rules
    • PvP rules
    • Reworked test command
    • Secure mode
    • Time is running mode
    • Title messages can now be disabled through the main config
    • Level requirements and rewards
    • Wave trigger and sign
    • External mob sign
    • Integrations:
      • Citizens
      • Integration with any custom mob plugin that provides a spawn command with world and coordinates (built-in: MythicMobs, InsaneMobs & CustomMobs)
    • Progress trigger
  • Bugfixes:
    • Fixed chest signs
    • Fixed /dxl play|test bug when the map isn't saved yet
    • Fixed /dxl list bug if no floor config exists
    • Fixed DXL data save bug
    • Fixed exception if no DXL data file exists
    • Fixed /dxl edit not working without permission even if the player is invited
    • Fixed keepInventoryOnDeath
    • Fixed /dxl test requirement check
    • Fixed that only wall signs worked as DXL signs
    • Fixed lives in tutorial and test mode
    • Fixed inventory bugs
    • Fixed error handling when dungeons are set up incorrectly
    • Fixed loot inventory bug
    • Fixed M trigger for MythicMobs
    • Fixed natural mob spawning in edit / game worlds
  • Removed or deprecated features:
    • Deprecated the MythicMobs sign (=> use the ExternalMob sign instead)
    • Deprecated the /dxl deleteportal command (=> use /dxl break instead)
----------, May 6, 2016

Please make sure that you did the following things before you updated from 0.9.x to prevent issues:
  • Regenerate your language file (by default: DungeonsXL/languages/en.yml)
  • Rename the "DungeonsXL/dungeons" folder to "DungeonsXL/maps".

Changes:
  • Major part of a major code cleanup
    • Variable, class and package names
    • Package structure
    • Replace static fields with variables of an instance of the main class
    • Replace field references with getters and setters
    • Replace if { if { if { blocks with returns
  • Command signs with CommandsXL
  • Rewrite sign system with an API to add custom signs
  • Use SuperPerms instead of Vault when possible
  • Rewrite lives system
  • Link maps together to create dungeons with multiple floors
  • Added permission node "dxl.bypass" to use beds, enderchests, commands etc. in dungeons
  • Rewrote the message system
  • Config files (config.yml and languages/en.yml) now generate automatically on server start
  • Floor signs to join the next floor
  • Beautified a lot:
    • Command system rewrite (similar to ItemsXL)
    • Send screen messages containing dungeon and floor
  • Fix DSavePlayer inventory bug (fixed it provisionally, enough for a Beta build :p )
  • Added /dxl break command sothat it's finally possible to get rid of DXL signs and portals outside dungeons
  • Deprecated /dxl deleteportal command. It'll get removed sooner or later
  • ...and more :)
----------, Dec 31, 2015

Another minor fix.
----------, Sep 20, 2015

Minor bugfixes.
----------, Sep 20, 2015

Users cannot use beds to teleport into an old dungeon world anymore.
----------, Sep 7, 2015

Fixed ClassCastException e.g. when arrows are fired at mobs spawned with a MythicMobs sign.
----------, Sep 6, 2015

This update adds economy support and improves many of the recently added features.

Money as a reward

Add one line to your [chest] sign that contains a number.
Money fees
All you need to do: Put "fee: [amount]" to your dungeon config.
Optimization for 1.8.8
Nothing noticable.
Command to play dungeons without portal
/dxl play
Split keepInventory to keepInventoryOnEnter, OnEscape, OnFinish and OnDeath
keepInventoryOnEscape means whether or not you keep your inventory if you leave the dungeon without an end sign, e.g. with /dxl leave. The old "keepInventory" still works, it contains Enter, Escape and Finish.
Added MythicMobs support to mob trigger
Just use the same name that you put into your MM config file.
Bugfixes
No motivation to list them :p
----------, Aug 29, 2015

Added MythicMobs support
Added a new sign that works exactly like the [Mobs] sign, but it spawns MythicMobs.
Fixed edit mode
Players didn't get creative mode in edit mode.
----------, Jul 28, 2015

Some more UUID compatibility
Forgot about some situations where player data is stored. Fixed it.

Fixed portal bug
DXL portals are now usable, again!
----------, Jul 21, 2015

Deprecated code updated
Some deprecated code has been replaced, but there is still a lot to do.
UUID support
DXL stores invited players that were added using this version by there UUID, not by there name like in 0.9.1 and lower. However, it is still able to read player names from file sothat you do not have to reinvite everyone.
All in one!
I coded a handler to support multiple versions. As of now, all 1.8.x versions are fully supported in one Jar file! 1.7.9 and 1.7.10 work as well, but there is one small caveat if you use one of this versions I cannot fix because the API changed: /dxl deleteportal doesn't work. If you want to delete a portal using 1.7.x, look into the data.yml and delete it there. I can't create a workaround :(
----------, Jul 16, 2015

Resource Information
Author:
----------
Total Downloads: 169,705
First Release: Jul 14, 2015
Last Update: Sep 28, 2023
Category: ---------------
All-Time Rating:
132 ratings
Find more info at dre2n.github.io...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings