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.
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
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:
New features:
Updated to DRECommons 6.3.1
New requirements that replace and improve old game rules:
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:
New features:
Updated to DRECommons 6.3.1
New requirements that replace and improve old game rules:
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:
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
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.
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.
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.
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.
This build isn't tested that much, so don't update production environments without testing.
Changes:
Compiled against Spigot API 1.16.1 (this does not mean the plugin has been "updated" to 1.16.x)
Updated to DRECommons 6.2: This technically allows to use the MiniMessage format in language files and elsewhere. Should also improve forward compatibility
Increased teleport listener priority: This hopefully makes it harder for outsiders to teleport into instance worlds
The minimum range for distance triggers is now 2. If 0, 1 or a negative value is set, 2 will automatically be used.
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.
New features:
Presence trigger that works just like a distance trigger but doesn't remove itself after being triggered one time
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.
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.
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:
New features:
API module
All old events in the implementation module have been replaced with API events except for the trigger events
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.
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
New features:
API module
All old events in the implementation module have been replaced with API events except for the trigger events
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.
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 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.
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.
Renamed "timeLastPlayed" to "timeLastPlayedRequiredDungeons"
Game rules are now "dungeon rules" which means they are known before the game is initialized
Message and similar signs are now initialized when the world loads instead of when the game starts
Signs similar to the message sign now take their text from the same game rule as message signs
Renamed "message" game rule to "messages"
Removed features:
The feature where every container can be a reward / dungeon chest has been removed for versions up to 1.12.1 as the Container API didn't exist back then. Chests of course still work.
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.
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.
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:
New features:
API module (not yet implemented)
Official support for French and German language
Place signs now take a numeric parameter that fires a sign trigger with it as the ID when the block is placed
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.
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.
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.
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:
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.
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.
Support for Minecraft 1.14 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)
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.
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.
Added a legacy sign type check to prevent sign types that have been replaced but still exist for compatibility from being used for new signs
Changes:
"Chest" signs have been renamed to "RewardChest" signs. Older signs are still supported
Reward and dungeon chest signs now work without a chest attached. They set a chest automatically where they stand and fill it with the contents of their loot table.
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
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.
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)
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.
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.
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.
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:
Code changes:
Updated to Caliburn 0.4.2 and DRECommons 4.2.1
Improved stability of instantiation system
New features:
Erroneous signs now print debug output at least in some cases
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.
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.
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
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.
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
Code changes:
Compiled against BRCommons 1.0.3 and Caliburn 0.2.3
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
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
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.
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:
Bugfixes:
Made some classes public to allow JavaDoc generation
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
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.
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:
Events: Created and implemented a whole bunch of events
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
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.
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