Spigot DeluxeMenus 1.13.3

The all in one GUI menu plugin!

  1. SlimeDog

    Moderator Patron

  2. On the example you gave, it supports both. Do not all heads provide both?
     
  3. SlimeDog

    Moderator Patron

    I have not been able to make it work. If a head is loaded directly into Minecraft.net, there is no base64 value, only the Minecraft-URL value. Normally, the Minecraft.net head texture can be retrieved by player name, but in these cases -- custom heads loaded as a player, then the player reverts to their real skin -- the head cannot be retrieved by the player name (that will return the players current head). It can be retrieved with the Minecraft-URL value, which is provided when the head is created, but that value is not accessible otherwise (that I can find). So I know the Minecraft-URL texture value (see below), but I see no way for DM to use it, or for it to be converted to base64.

    I believe I tried all of the head-item cases. If you can make it work with this value
    c7b187e38b407feabaf190879d98a67f4c7052f3201f72e44571f537ea89d4c7
    that would be excellent. It should return a black 3D luckyblock.

    Alternatively, if you can convert that value to base64, and verify that it returns the correct head, that would also be useful.
     
    #2843 SlimeDog, May 10, 2021
    Last edited: May 10, 2021
  4. Would you like to try out this jar for me? http://glare.dev/static/DeluxeMenus-Textures.jar

    You should be able to do "texture-c7b187e38b407feabaf190879d98a67f4c7052f3201f72e44571f537ea89d4c7" for the material.
    [​IMG]
     
  5. SlimeDog

    Moderator Patron

    I tried it with several different textures from our list. It works great! Thanks.
     
  6. Glad to hear. I had to make some internal changes since that last jar. If you get the time, could you test this copy as-well? I just need to know that the new thing I implemented still works along with the regular "basehead-" stuff. http://glare.dev/static/DeluxeMenus-Textures-2.jar

    Thanks.
     
  7. SlimeDog

    Moderator Patron

    I tested Textures-2 with both materials: basehead and texture. It seems to work fine. I observed -- once -- an issue where /dm reload did not pick up the change, but I was unable to replicate it in repeated attempts, so I'm not sure what was happening there.
     
  8. If you enable debug mode, it should throw an error if there was a problem with the texture stuff itself.
     
  9. SlimeDog

    Moderator Patron

    Yeah, I turned on debug-mode after the first-and-only anomaly. I have tested the switching between basehead and texture approximately 50 times since then, with no errors.
     
  10. Sounds good. Thanks.

    I guess the only thing left to do is figure out how I document this addition to help users understand the difference between "texture-" and "basehead-".
     
    • Funny Funny x 1
  11. SlimeDog

    Moderator Patron

    How's this for a start?

    basehead- is for content from the minecraft-heads.com database. It can be use for all heads in that database. The correct value may be found at the bottom of each page at minecraft-heads.com, listed as Other Value. It is encoded base64, and will look something like
    texture- is for content from the textures.minecraft.net database. Only heads registered as part of Minecraft player skins will be found there. They will be either current player heads, or custom heads that a player registered before reverted to their current player head. The value may be found at the bottom of minecraft-heads.com pages, listed as Other Minecraft-URL. It will look something like
    Both of the values shown above represent the same head. So
    Code (YAML):
       material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzcxOTMwMjc4ZjAyOWM1Nzc4Yzg1YzA0NzVhMzdmYWM4YWNkMzg1MDc0MmFhZTZhMzU0MmFjZGU0NDg3ZDYzIn19fQ==
    and
    Code (YAML):
       material: texture-33f2cd9f81a2772bdc4864472e833362310485c8a6bc0b76b81703390a9b032e
    are legal values for DeluxeMenus.
     
    #2851 SlimeDog, May 12, 2021
    Last edited: May 12, 2021
    • Like Like x 1
  12. SlimeDog

    Moderator Patron

    Updated the texture- paragraph, adding the reference to Minecraft-URL on the minecraft-heads.com pages.
     
  13. SlimeDog

    Moderator Patron

    Here is some information about encoding/decoding between base64 and MC textures.

    At https://www.base64encode.org, one can convert in either direction, provided you know the appropriate value.

    converts to and vice versa.
     
  14. Beautiful. Thanks so much!
     
    • Agree Agree x 1
  15. SlimeDog

    Moderator Patron

    DM b109 works great! Thanks.
     
    • Like Like x 1
  16. SlimeDog

    Moderator Patron

    Testing Java 16, which will apparently be required for MC 1.17.

    CentOS Linux release 7.9.2009 (Core)
    Java 16.0.1
    Paper 1.16.5-669
    ProtocolLib 4.6.1-b501
    DeluxeMenus 1.13.4-b110

    The following errors on server start-up:
    Code (Text):
    [11:29:38] [Server thread/INFO]: [DeluxeMenus] Enabling DeluxeMenus v1.13.4-DEV-110
    [11:29:38] [Server thread/INFO]: [DeluxeMenus] Hooked into PlaceholderAPI!
    [11:29:38] [Server thread/ERROR]: Error occurred while enabling DeluxeMenus v1.13.4-DEV-110 (Is it up to date?)
    java.lang.NullPointerException: Cannot invoke "javax.script.ScriptEngine.put(String, Object)" because "com.extendedclip.deluxemenus.requirement.JavascriptRequirement.engine" is null
            at com.extendedclip.deluxemenus.requirement.JavascriptRequirement.<init>(JavascriptRequirement.java:19) ~[?:?]
            at com.extendedclip.deluxemenus.config.DeluxeMenusConfig.getRequirements(DeluxeMenusConfig.java:993) ~[?:?]
            at com.extendedclip.deluxemenus.config.DeluxeMenusConfig.loadMenuItems(DeluxeMenusConfig.java:818) ~[?:?]
            at com.extendedclip.deluxemenus.config.DeluxeMenusConfig.loadMenu(DeluxeMenusConfig.java:412) ~[?:?]
            at com.extendedclip.deluxemenus.config.DeluxeMenusConfig.loadMenuFromFile(DeluxeMenusConfig.java:285) ~[?:?]
            at com.extendedclip.deluxemenus.config.DeluxeMenusConfig.loadGUIMenus(DeluxeMenusConfig.java:228) ~[?:?]
            at com.extendedclip.deluxemenus.DeluxeMenus.onEnable(DeluxeMenus.java:88) ~[?:?]
            at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:380) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:483) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.craftbukkit.v1_16_R3.CraftServer.enablePlugin(CraftServer.java:501) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.craftbukkit.v1_16_R3.CraftServer.enablePlugins(CraftServer.java:415) ~[patched_1.16.5.jar:git-Paper-669]
            at net.minecraft.server.v1_16_R3.MinecraftServer.loadWorld(MinecraftServer.java:592) ~[patched_1.16.5.jar:git-Paper-669]
            at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:281) ~[patched_1.16.5.jar:git-Paper-669]
            at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1066) ~[patched_1.16.5.jar:git-Paper-669]
            at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:290) ~[patched_1.16.5.jar:git-Paper-669]
            at java.lang.Thread.run(Thread.java:831) [?:?]
    [11:29:38] [Server thread/INFO]: [DeluxeMenus] Disabling DeluxeMenus v1.13.4-DEV-110
    [11:29:38] [Server thread/WARN]: [RequiredPlugins] DeluxeMenus is a required plugin!
    [11:29:38] [Server thread/ERROR]: Error occurred while disabling DeluxeMenus v1.13.4-DEV-110 (Is it up to date?)
    java.lang.NullPointerException: Cannot invoke "java.util.Map.clear()" because "this.itemHooks" is null
            at com.extendedclip.deluxemenus.DeluxeMenus.onDisable(DeluxeMenus.java:197) ~[?:?]
            at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:415) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:516) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:384) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:483) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.craftbukkit.v1_16_R3.CraftServer.enablePlugin(CraftServer.java:501) ~[patched_1.16.5.jar:git-Paper-669]
            at org.bukkit.craftbukkit.v1_16_R3.CraftServer.enablePlugins(CraftServer.java:415) ~[patched_1.16.5.jar:git-Paper-669]
            at net.minecraft.server.v1_16_R3.MinecraftServer.loadWorld(MinecraftServer.java:592) ~[patched_1.16.5.jar:git-Paper-669]
            at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:281) ~[patched_1.16.5.jar:git-Paper-669]
            at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1066) ~[patched_1.16.5.jar:git-Paper-669]
            at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:290) ~[patched_1.16.5.jar:git-Paper-669]
            at java.lang.Thread.run(Thread.java:831) [?:?]
    As you know, Paper has announced that they will drop support for Java below 16 when Paper 1.17 is released. I expect Spigot will do the same, since Mojang has announced that MC 1.17 will run only on Java 16.
     
    #2857 SlimeDog, May 12, 2021
    Last edited: May 14, 2021

  17. yes we are aware. This is the same on java 15. A new javascript engine will probably be added but until then there is a development build in the #general-plugins channel of HelpChat. Its quite a bit old now so doesn't have all the features build-110 has.
     
  18. SlimeDog

    Moderator Patron

    I do not Discord (I assume that is a Discord channel). And I need the b110 features (one of them was requested specifically by me).
     
  19. Then you'll have to wait until we figure out what JS engine we want to use for Java 15 and above.
     
    • Agree Agree x 1