Niestrat99 / AT-Rewritten

GNU General Public License v3.0
35 stars 16 forks source link

[BUG] Bug with homes on Folia #120

Closed roggy666 closed 1 year ago

roggy666 commented 1 year ago

I use a data-pack to load "lobby" world, and this plugin doesn't work. I know that plugin in Alpha now for folia, but would be great if you fix it.

[20:22:37 INFO]: GZsupport issued server command: /home

org.bukkit.command.CommandException: Unhandled exception executing command 'home' in plugin AdvancedTeleport v6.0.0-alpha+folia.2 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:155) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_20_R1.CraftServer.dispatchCommand(CraftServer.java:1048) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at org.bukkit.craftbukkit.v1_20_R1.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:265) ~[folia-1.20.1.jar:?] at net.minecraft.commands.Commands.performCommand(Commands.java:324) ~[?:?] at net.minecraft.commands.Commands.performCommand(Commands.java:308) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2378) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$16(ServerGamePacketListenerImpl.java:2338) ~[?:?] at io.papermc.paper.threadedregions.EntityScheduler.executeTick(EntityScheduler.java:173) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1524) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:360) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:385) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:525) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at java.lang.Thread.run(Thread.java:833) ~[?:?] Caused by: java.lang.IllegalStateException: World mismatch: expected world_server_lobby_maker__vanila_lobby but got world at net.minecraft.world.level.Level.getCurrentWorldData(Level.java:282) ~[?:?] at net.minecraft.world.level.Level.getBlockState(Level.java:813) ~[?:?] at net.minecraft.world.entity.player.Player.findRespawnPositionAndUseSpawnBlock(Player.java:1554) ~[?:?] at org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer.getBedSpawnLocation(CraftPlayer.java:1451) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at io.github.niestrat99.advancedteleport.api.ATPlayer.getBedSpawn(ATPlayer.java:524) ~[AdvancedTeleport-Bukkit-6.0.0-alpha+folia.2-all.jar:?] at io.github.niestrat99.advancedteleport.commands.home.HomeCommand.onCommand(HomeCommand.java:105) ~[AdvancedTeleport-Bukkit-6.0.0-alpha+folia.2-all.jar:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:?] ... 14 more

roggy666 commented 1 year ago

Caused by: java.lang.IllegalStateException: World mismatch: expected world_server_lobby_maker__vanila_lobby but got world

Thatsmusic99 commented 1 year ago

It seems to be with beds specifically rather than homes set in the plugin from what I've been able to test - still a weird quirk, I'll have to see if it can work around it.

roggy666 commented 1 year ago

image

roggy666 commented 1 year ago

It seems to be with beds specifically rather than homes set in the plugin from what I've been able to test - still a weird quirk, I'll have to see if it can work around it.

Homes does not work at all, I use /sethome 1, but plugin does not create it at all (without errors in console)

Thatsmusic99 commented 1 year ago

Does it appear after a server restart? It may also be worth noting that the alpha.2 build is not fully up to date with the base v6 code, but the Github Action build is.

That being said, the error you originally posted is still an issue in that build, I did speak to the PaperMC team about it and it looks like they would need to figure out a way of working around the error. However, I've been told to go with an alternative approach in the meantime which I'm currently struggling to test, so it's taking a bit longer than usual.

Thatsmusic99 commented 1 year ago

Well it finally worked when I complained, the dev build that fixes the original error will be available here: https://github.com/Niestrat99/AT-Rewritten/actions/runs/5943261229?pr=105

I wasn't able to reproduce the sethome issue you mentioned so please see if it persists on the new dev build.

roggy666 commented 1 year ago

Thank you!

roggy666 commented 1 year ago

I will test

roggy666 commented 1 year ago

[22:46:44 INFO]: GZsupport issued server command: /home

org.bukkit.command.CommandException: Unhandled exception executing command 'home' in plugin AdvancedTeleport v6.0.0-rc.3 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:155) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_20_R1.CraftServer.dispatchCommand(CraftServer.java:1048) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at org.bukkit.craftbukkit.v1_20_R1.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:265) ~[folia-1.20.1.jar:?] at net.minecraft.commands.Commands.performCommand(Commands.java:324) ~[?:?] at net.minecraft.commands.Commands.performCommand(Commands.java:308) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2378) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$16(ServerGamePacketListenerImpl.java:2338) ~[?:?] at io.papermc.paper.threadedregions.EntityScheduler.executeTick(EntityScheduler.java:173) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1524) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:360) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:385) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:525) ~[folia-1.20.1.jar:git-Folia-"f6e91e9"] at java.lang.Thread.run(Thread.java:833) ~[?:?] Caused by: java.lang.NoSuchMethodError: 'net.minecraft.server.level.ServerPlayer org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer.getHandle()' at io.github.niestrat99.advancedteleport.utilities.NMSUtilities.getRespawnLocation(NMSUtilities.java:23) ~[AdvancedTeleport-Bukkit-6.0.0-rc.3-dev-all.jar:?] at io.github.niestrat99.advancedteleport.api.ATPlayer.getBedSpawn(ATPlayer.java:626) ~[AdvancedTeleport-Bukkit-6.0.0-rc.3-dev-all.jar:?] at io.github.niestrat99.advancedteleport.commands.home.HomeCommand.onCommand(HomeCommand.java:136) ~[AdvancedTeleport-Bukkit-6.0.0-rc.3-dev-all.jar:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:?] ... 14 more

roggy666 commented 1 year ago

And same issue with /sethome saving

Thatsmusic99 commented 1 year ago

This is unfortunately the exact reason I hate using NMS, lol

I have tried a different method but not too sure if it'll work - did you compile Folia using ./gradlew reobfJar? It seemed to work without any issues on my end

roggy666 commented 1 year ago

I used this repo, https://github.com/Slackadays/FoliaToGo/actions

roggy666 commented 1 year ago

lobby-1.19.4-plus.zip You can test with this data pack

roggy666 commented 1 year ago

I use it to create separate spawn world

Thatsmusic99 commented 1 year ago

Ah glorious, turned out that I was storing the wrong jar file in the artifact run

The correct jar file is now in https://github.com/Niestrat99/AT-Rewritten/actions/runs/5943900419 but has a bunch of wrong ones bundled with it (mainly because it's harder to single them out), AdvancedTeleport-Bukkit-6.0.0-rc.3.jar is the right one.