Spigot & BungeeCord 1.17 & 1.17.1

Discussion in 'News and Announcements' started by md_5, Jun 11, 2021.

  1. How long have I dreamed of declaring libraries in a plugin, rather than embedding them in a plugin.
    I hope later it will be possible to make repositories as well.
    Thank you so much for your work
     
  2. That sounds really interesting :eek:
     
    • Like Like x 3
    • Agree Agree x 1
  3. TIP:
    If you want to use the Java version of Minecraft launcher and use it as a serverversion too, you can go to
    Code (Text):
    C:\Program Files (x86)\Minecraft Launcher\runtime\java-runtime-alpha\windows-x64\java-runtime-alpha
    and use this version instead.

    But a question. As far as I've seen we have NMS changes but the packages do not contain the version number anymore. This would be pretty stupid to add support for other versions if they came out. Did you forget it to add, md_5?
     
    • Agree Agree x 2
  4. Thank you, wonderful work :D
     
  5. [10:21:56] [Server thread/ERROR]: Couldn't load chunk [12, -6]
    java.lang.ArrayIndexOutOfBoundsException: Index 16 out of bounds for length 16
    at net.minecraft.world.level.chunk.storage.ChunkRegionLoader.loadChunk(ChunkRegionLoader.java:110) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.level.PlayerChunkMap.lambda$20(PlayerChunkMap.java:561) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1764) ~[?:?]
    at net.minecraft.util.thread.IAsyncTaskHandler.executeTask(SourceFile:151) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.level.ChunkProviderServer$a.executeTask(ChunkProviderServer.java:603) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.util.thread.IAsyncTaskHandler.executeNext(SourceFile:125) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.level.ChunkProviderServer$a.executeNext(ChunkProviderServer.java:614) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.level.ChunkProviderServer.runTasks(ChunkProviderServer.java:322) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.bg(MinecraftServer.java:1133) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.executeNext(MinecraftServer.java:1117) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.util.thread.IAsyncTaskHandler.executeAll(SourceFile:110) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.sleepForTick(MinecraftServer.java:1100) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1030) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:307) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at java.lang.Thread.run(Thread.java:831) [?:?]
    [10:21:56] [Server thread/ERROR]: Couldn't load chunk [13, -6]
    java.lang.ArrayIndexOutOfBoundsException: Index 16 out of bounds for length 16
    at net.minecraft.world.level.chunk.storage.ChunkRegionLoader.loadChunk(ChunkRegionLoader.java:110) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.level.PlayerChunkMap.lambda$20(PlayerChunkMap.java:561) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1764) ~[?:?]
    at net.minecraft.util.thread.IAsyncTaskHandler.executeTask(SourceFile:151) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.level.ChunkProviderServer$a.executeTask(ChunkProviderServer.java:603) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.util.thread.IAsyncTaskHandler.executeNext(SourceFile:125) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.level.ChunkProviderServer$a.executeNext(ChunkProviderServer.java:614) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.level.ChunkProviderServer.runTasks(ChunkProviderServer.java:322) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.bg(MinecraftServer.java:1133) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.executeNext(MinecraftServer.java:1117) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.util.thread.IAsyncTaskHandler.executeAll(SourceFile:110) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.sleepForTick(MinecraftServer.java:1100) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1030) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:307) ~[paper.jar:3106-Spigot-191e497-a3df386]
    at java.lang.Thread.run(Thread.java:831) [?:?]
     
    • Agree Agree x 1
  6. Does Java use the Windows Path environment variable? I see people using multiple Java version on Windows by changing the Path variable.
     
  7. Brilliant thank you all for the hard work and effort put in to release a 1.17 build - very much appreciated
     
  8. Craftbukkit is still using versioned packages. You can use those classes to determine whether or not a version is supported if you're dependent on package name.
     
  9. I already saw that, thanks.
    But this isn't an argument for me. If you are using abstraction for adding multi-version support, 1.17 and above are the ultimate kill for it.
    You have basically the same package names with the same class names which the IDE automatically overwrites and you can only see one of them. You can take a look separately with decompiler, that's true, but you may get compiling errors because of as I said same packages & names are being overwritten if a tons (min: 2) of it is being added. In the end it is too much work for us.
    That's the reason why it got added before 1.17.

    I already updated my NickAPI to 1.17 but I am unsure whether I should release it or not because of I'm sure it was not intended to remove the version numbers. I don't like to post multiple updates.
     
    • Agree Agree x 1
  10. This may just be me but this seems like a paper jar, make sure it's replicatable on spigot and then report it on JIRA or if paper exclusive, report to paper
     
    • Optimistic Optimistic x 1
  11. What do you mean? Are you not using separate modules per version? Your IDE should not be suggesting things from dependencies that aren't declared for the module.
     
  12. Yes, when just writing "java" in a terminal, it will use the one specified in the Path variable. Applications may also look there, or the JAVA_HOME variable is also a popular place for specifying the java directory for applications. If you change the Path variable to point to a different Java version, launching the server will use that new location.

    I personally just keep my Path to the latest version and if I ever need a specific version I just write out the full path name, instead of changing the Path variable each time, but either approach works.
     
  13. Thank you very much!!
     
    • Like Like x 1
  14. So if you invoke Java by using the full path, the contents of the Path variable itself doesn't matter. Thanks.
     
  15. Thanks for all your hard work MD!!
     
  16. It looks like ProtocolLib isn't working, even the latest dev build (505).
     
  17. not gonna lie, i've worked hard in 2020 to walk away from that. I no longer need it.