Updating Waterfall + Core to always emit the PlayerUUIDOverrideEvent, even when there is no override (containing the genuine uuid as the "profile")
Updating GUI to delay automatic opening of the profile selector (when disableMojangProfile = true) until after the PlayerUUIDOverrideEvent has been received
This version removes a previously-unknown dependency on mmocore (I thought it was fully removed but it wasn't), and it fixes some version specific bugs with generating the hidden metadata for the gui.
This version isn't very well tested and may have some bugs
With preferCachedPlaceholders=false (the default), the placeholders will be generated with the OfflinePlayer object returned by Bukkit.getOfflinePlayer() in real-time. This is more reliable in general, less likely to break placeholders, and should be more consistent. But, it is incompatible with some plugins (most notably, MMOCore)
With preferCachedPlaceholders=true, the placeholders will be generated when the user has logged into a certain profile, and saved to the DB. The Profile GUI will pull the placeholders from the DB
Fixed a bug where the user couldn't open the profile manually with /profiles after the user dies with the menu open
If you have a Spigot/Paper in your network that you don't want profiles on, add ProfilesPaperCore and ProfilesPaperDisabler to that server. The Disabler plugin will listen for UUID change events, and force players to reconnect to that server with only their genuine UUID.
Adding `/profilesadmin reload` to reload the config. Checks permission `profiles.admin`
Adding `/profiles [username|uuid]` to open the profile dialog for someone else. Requires the permission `profiles.user-others`. Good for console usage or integration with other plugins
Allowing any material to be used as background slots in dialogs
This release adds a flag, `options.disableMojangProfile`, which will omit the mojang profile from the profile list, and force users on the mojang profile to have the profile menu open.
Huge /profile command rewrite
Server admins can now configure the layout of the profile menu, and all of the text with custom placeholders. Previous version was horribly broken with placeholders because the Profile command implementation relied on the item lore to contain exclusively the UUID.
Profiles displayed in the profile menu pull text dynamically from the config file.
This text supports Placeholder API. Placeholder API requires us to pass in a player. We do not pass in the currently selected player profile, but instead pass in the relevant player object. Eg, `%player_uuid%` will show the profile uuid for each profile instead of the current user's uuid.
Fixing support for Spigot
Fixing support for Bungeecord
Writing the config file before attempting to connect to mysql.
Fixing an inconsistent "end of zip file" exception on initialization.