SkinsRestorer 14.1.1

Ability to restore/change skins on servers! (Offline and Online Mode). (Bungee/Spigot/Sponge)

  1. v14 breaking api & 4 million download milestone

    Your spigot server should update automatically
    [Changelog below]
    V14 Is here together with our 4 million download milestone!
    This release is 2 months in the making with a HUGE list of changes.
    This is because of the effort of the team and our new dev @Pistonmaster
    We would like to thank you all of your continues support and v14.1 will come with a lot of API additions.

    If you do have any questions or concerns, hit us up on our discord

    This version comes with the API breaking changes, some depended plugins like Dynmap and custom plugins would need to be updated.
    See as reference or join #developement channel.


    - The BIG tweaks / cleanup after undusting some old code & comments (some not used anymore)
    - Removing copy'd projects and use them as project imports (XMaterial, duckbypass & more).
    - Merging Strings
    - Adding final's where possible.
    - Switching operators to cancel faster
    - Un "this" code for smaller and easier to read code.

    - SkinsGUI is now using same "/skin set" code to apply skin
    - Check cooldown on run
    (Since we reuse skin set code, it now also has cooldown.)
    - Respect disabled skins

    - Skins with expire 0 will never update

    - Added "/sr applyskin <player>", [PERM: skinsrestorer.admincommand.applyskin]
    (This way you can apply a skin after disableonjoinskin to allow texturepack popup)
    - Added "/sr createcustom <name> <skinurl>", [PERM: skinsrestorer.admincommand.createcustom]
    (This should allow mods to edit / create custom skins.)

    - We cut jar size by more than half

    - We now encrypt the seed, so we don't "leak" it.
    (even though you can reverse engineer any world by now)

    - A way to disable auto updates

    - RestrictSkinUrls (formerly AllowedUrls) is now (default disabled) list in which you can allowlist skinurl domains.

    - fix for saving usernames skins with special character ("*")

    - for fixing velocity again

    = Improvements =
    - New "DANGER ZONE" config section
    - Admin's can now set the skin of users with illegal names (floodgate).
    - We now give a warning about Illegal reflective access (if you use java9+)
    - Grammar mistakes were made, and fixed, for now, I hope :p.
    - Removed name validation at login (geyser).
    - Skin success empty will now not send the locale
    - Return more clear error instead of stack trace & NullPointException
    - DefaultSkins now does not go crazy when you add `` as skin
    - "/sr status" is now more compact if in working state

    = BUGS =
    - removed a bug that caused join error on velocity
    - Remove an unwanted debug messages when testing API status.
    - Fixed updater alignment

    = Code Technical stuff =
    - A lot of code moved around to reduce space
    - Added Async where missing on bungee mode
    - Earlier Async task to reduce usage on main task.
    - Using minimization during build to save huge amounts of dependency space. -> reduced size
    - Updated dependency's (bstats, spigot, bungee, sponge, mysql and much more!)
    - Proper shading / relocation to remove conflicts with other plugins
    - All sponge & veclocity files now join java/net.skinsrestorer for cleaner code
    - Fixed Color mistakes & bad message alignment
    - Better platform checker
    - Reworked skincommands
    - using more Variable to have same code around platforms
    - async was only half used on some commands in sponge & velocity platforms
    - skin update now also catch api response (timed out etc)
    - skin update username check and 1x less mojangapi check to confirm premium
    - faster code improvements (operator) & startsWith instead of contains
    - Added deprecation & unused suppression, so it's now all "in the green".
    - Using more Lombok to automate code generation.
    - Put code on back on places it needs to be (and stay there!)
    - Adding more java documentation in part of our code.
    - forgot CoolDownReset on error at SkinUrl for sponge & velocity.
    - Using paperlib to check if it's paper without trial and error.
    - Reduced nullpoint exception with human-readable response
    - Clean update error's
    - file override `enablesremountentities` is now `disablesremountplayer`
    - Fixed NoSuchMethodError on hide-/showPlayer for older versions.
    - Using more final and private where possible
    - Using GsonfromJson instead of JsonParser
    - Added bstats to Velocity
    - Better & clearer info when the API connection is offline/blocked and what to do
    - License notice in each file

    Pull requests:
    Thanks for 395:
    - Fix for Bedrock users connecting through Floodgate.
    - Better matcher to remove all whitespace & Windows / Linux forbidden characters
    - Added DisableAutoUpdateSkin config option to disable skin updates.
    - Skin with a cooldown of 0 will now not auto update

    Thanks for 420:
    - Fixed Velocity support
    - if velocity-support is enabled, Plugin will go in bungee mode.
    - adding "enableBungeeMode" & "disableBungeeMode" file override

    Thanks for 375:
    - Suggesting a better matcher for the URL's
Return to update list...