Command /simpledimensions delete <DIM> not working, posting no error
nitefang opened this issue ยท 21 comments
The command "/simpledimensions delete DIM" in which DIM is replaced by a valid Dimension ID such as "30000" is not functioning. No errors are posted, no confirmation of command is given and no dimension is deleted. Unable to diagnose any possible cause or mod conflict given the lack of any sort of error message in server log or chat. The commands for creating a new dimension and listing all dimensions work fine.
Using an invalid DIM ID will return an error message "The dimension associated with that id is not from the SimpleDimensions mod"
I'm having the same issue. Initially had it on the 1.10.2 version but am now using the 1.12.2 version and the bug still persists.
Some mods make persistent chunks that prevent the world from unloading.
This is fixed by forcing the world to unload instead of letting forge put it in the unload queue, basically copying the functionality of the DimensionManager.unloadWorld method without checking for persistent chunks (Shouldn't matter if the world is about to be deleted)
Fixed in: https://github.com/MelonLord145/Simple-Dimensions
The reason the mod doesn't output an error or say anything at all is it assumes the completion of the dimension unload, only continuing once it receives the world unload event. This however, never happens if the world unload is canceled because of persistent chunks.
@MelonLord145
[18:10:24] [Server thread/FATAL] [minecraft/MinecraftServer]: Error executing task
java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Failed to register dimension for id 30004, One is already registered
at java.util.concurrent.FutureTask.report(Unknown Source) ~[?:1.8.0_191]
at java.util.concurrent.FutureTask.get(Unknown Source) ~[?:1.8.0_191]
at net.minecraft.util.Util.func_181617_a(SourceFile:47) [h.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:723) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:397) [nz.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_191]
Caused by: java.lang.IllegalArgumentException: Failed to register dimension for id 30004, One is already registered
at net.minecraftforge.common.DimensionManager.registerDimension(DimensionManager.java:134) ~[DimensionManager.class:?]
at lumien.simpledimensions.dimensions.DimensionHandler.createDimension(DimensionHandler.java:90) ~[DimensionHandler.class:?]
at lumien.simpledimensions.network.handler.HandlerCreateDimension$1.run(HandlerCreateDimension.java:27) ~[HandlerCreateDimension$1.class:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[?:1.8.0_191]
at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:1.8.0_191]
at net.minecraft.util.Util.func_181617_a(SourceFile:46) ~[h.class:?]
... 5 more
[18:10:59] [Server thread/FATAL] [minecraft/MinecraftServer]: Error executing task
java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Failed to register dimension for id 30004, One is already registered
at java.util.concurrent.FutureTask.report(Unknown Source) ~[?:1.8.0_191]
at java.util.concurrent.FutureTask.get(Unknown Source) ~[?:1.8.0_191]
at net.minecraft.util.Util.func_181617_a(SourceFile:47) [h.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:723) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:397) [nz.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_191]
Caused by: java.lang.IllegalArgumentException: Failed to register dimension for id 30004, One is already registered
at net.minecraftforge.common.DimensionManager.registerDimension(DimensionManager.java:134) ~[DimensionManager.class:?]
at lumien.simpledimensions.dimensions.DimensionHandler.createDimension(DimensionHandler.java:90) ~[DimensionHandler.class:?]
at lumien.simpledimensions.network.handler.HandlerCreateDimension$1.run(HandlerCreateDimension.java:27) ~[HandlerCreateDimension$1.class:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[?:1.8.0_191]
at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:1.8.0_191]
at net.minecraft.util.Util.func_181617_a(SourceFile:46) ~[h.class:?]
... 5 more
[18:11:51] [Server thread/FATAL] [minecraft/MinecraftServer]: Error executing task
java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Failed to register dimension for id 30004, One is already registered
at java.util.concurrent.FutureTask.report(Unknown Source) ~[?:1.8.0_191]
at java.util.concurrent.FutureTask.get(Unknown Source) ~[?:1.8.0_191]
at net.minecraft.util.Util.func_181617_a(SourceFile:47) [h.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:723) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:397) [nz.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_191]
Caused by: java.lang.IllegalArgumentException: Failed to register dimension for id 30004, One is already registered
at net.minecraftforge.common.DimensionManager.registerDimension(DimensionManager.java:134) ~[DimensionManager.class:?]
at lumien.simpledimensions.dimensions.DimensionHandler.createDimension(DimensionHandler.java:90) ~[DimensionHandler.class:?]
at lumien.simpledimensions.network.handler.HandlerCreateDimension$1.run(HandlerCreateDimension.java:27) ~[HandlerCreateDimension$1.class:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[?:1.8.0_191]
at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:1.8.0_191]
at net.minecraft.util.Util.func_181617_a(SourceFile:46) ~[h.class:?]
... 5 more
@P3rf3ctXZer0 It looks like another mod is registering the dimension, what other mods do you have installed?
Okay no other mod is writing dimensions. This started after restarting the server.
It looks like the client and the server are out of sync on how many worlds there are, try restarting your client.
I have tried all none code methods of fixing things. It happens on client and server. Singleplayer and Multiplayer.
That has already been tested ... what about adding a check before trying to make a dimension or manually allowing a specific id like /simpledimensions (optional) id (integre here) create
Then regardless to checks this makes sure that no id is overwritten. Even if you don't agree something is broken adding this allows me to manually fix it.