BG-Software-LLC / SSB-SlimeWorldManager

An addon for SuperiorSkyblock2 that adds SlimeWorldManager support for worlds management!
18 stars 17 forks source link

Trying to replace world/island breaks island #36

Closed DuneSciFye closed 6 months ago

DuneSciFye commented 7 months ago

Minecraft's Version

Current: git-SlimeWorldManager-13 (MC: 1.20.2)*

Plugin's Version

SuperiorSkyblock2 version 2023.3

Describe the bug

I'm trying to restore a player's old island from a slime world, and trying to clone said slime world as the player's SS2 island world works, but if you restart the server, the island no longer functions as an island. If you do /is go, you'll go to it, but things such as island border, upgrades, settings, don't work.

To Reproduce

  1. Create an island
  2. Go to spawn
  3. Unload island world
  4. Delete island world
  5. Clone old island world to new island world name
  6. Run /is go, goes to island with the old island world.
  7. Restart server
  8. Go to island
  9. Things no longer work

Additional Information

I've also tried directly changing the island world name in the database, but the exact same issue arises.

DuneSciFye commented 7 months ago

This might help:

I tried doing /is disband, it opened up the confirmation menu, clicking the confirm button did nothing and no errors in console, but doing /is admin disband worked, however it gave this error in console:

`DuneSciFye issued server command: /island delete

Console 19:06:57

at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2251) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$20(ServerGamePacketListenerImpl.java:2235) ~[?:?] at net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:59) ~[?:?] at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[slimeworldmanager-1.20.2.jar:git-SlimeWorldManager-13] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1366) ~[slimeworldmanager-1.20.2.jar:git-SlimeWorldManager-13] at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:193) ~[slimeworldmanager-1.20.2.jar:git-SlimeWorldManager-13] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1343) ~[slimeworldmanager-1.20.2.jar:git-SlimeWorldManager-13] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1336) ~[slimeworldmanager-1.20.2.jar:git-SlimeWorldManager-13] at net.minecraft.util.thread.BlockableEventLoop.runAllTasks(BlockableEventLoop.java:114) ~[?:?] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1452) ~[slimeworldmanager-1.20.2.jar:git-SlimeWorldManager-13] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1192) ~[slimeworldmanager-1.20.2.jar:git-SlimeWorldManager-13] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[slimeworldmanager-1.20.2.jar:git-SlimeWorldManager-13] at java.lang.Thread.run(Thread.java:833) ~[?:?] Caused by: java.lang.IllegalArgumentException: Chunk must be within the island boundaries. at com.google.common.base.Preconditions.checkArgument(Preconditions.java:143) ~[guava-32.1.2-jre.jar:?] at com.bgsoftware.superiorskyblock.island.SIsland.markChunkEmpty(SIsland.java:2526) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.nms.v1_20_2.NMSChunksImpl.lambda$deleteChunks$2(NMSChunksImpl.java:164) ~[SuperiorSkyblock2.jar:?] at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?] at com.bgsoftware.superiorskyblock.nms.v1_20_2.NMSChunksImpl.deleteChunks(NMSChunksImpl.java:164) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.island.IslandUtils.deleteChunks(IslandUtils.java:264) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.island.SIsland.resetChunks(SIsland.java:1144) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.island.SIsland.disbandIsland(SIsland.java:1571) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.commands.admin.CmdAdminDisband.execute(CmdAdminDisband.java:78) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.commands.IAdminIslandCommand.execute(IAdminIslandCommand.java:23) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.commands.ISuperiorCommand.execute(ISuperiorCommand.java:18) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.commands.player.CmdAdmin.execute(CmdAdmin.java:82) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.commands.ISuperiorCommand.execute(ISuperiorCommand.java:18) ~[SuperiorSkyblock2.jar:?] at com.bgsoftware.superiorskyblock.commands.CommandsManagerImpl$PluginCommand.execute(CommandsManagerImpl.java:285) ~[SuperiorSkyblock2.jar:?] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168) ~[slimeworldmanager-api-1.20.2-R0.1-SNAPSHOT.jar:?] ... 33 more`

and said "An internal error occured..." in game

DuneSciFye commented 7 months ago

And now it seems that I can no longer create an island hmm

DuneSciFye commented 7 months ago

So this is no longer exclusive to my steps, random player's island's no longer become island's, doing /is info doesn't say I'm at an island, their island border is gone, island settings don't work, however they can go to their island and I can visit their island just fine.

OmerBenGera commented 6 months ago

Seems like the island is corrupted for that player. You can disband it using /is admin disband or by modifying the database directly.

Nothing related to SlimeWorldManager, closing this.

DuneSciFye commented 6 months ago

Do you know what inside the database I would need to change to fix their island?