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.