It's finally here! The full re-write of PWI is complete and ready to go. This version of the plugin is written in the Kotlin language instead of Java. There are a lot of architectural improvements and changes; fully backwards compatible with older data while removing some bad ideas had in the past.
A lot of the changes are behind-the-scenes, and thus not very glamorous to many of you, so instead I will try to just list important changes for the users. There are still a bunch of items, so I'll try to remember as many as I can.
There are a handful of new commands in this version for managing and configuring your world groups. All commands and permissions can be found at the Wiki page.
Cache and Saving Improvements
One of the big things is that when a player teleports to another world, their information is saved to the disk immediately, but still remains cached in memory for a few minutes (configurable). This helps eliminate errors when saving and handling cached data, without sacrificing performance.
When converting data from MV-I, data is now converted in batches instead of all at once. This allows very large sets of data to be converted without bringing the server to its knees.
Improvements When Managing GameModes
The process for loading a player's data when `manage-gamemodes` is enabled is much improved. Before, the data for the GameMode they were currently in was loaded, and then we had to load everything again when it changed. Instead, we do a little bit of predicting so we only have to load things once.
- Improvements in handling economy changes
- New logging level options
- Less permission checking overhead
- Improved and consistent file handling
- Group default loadouts have been removed; regular defaults applied instead