Hello! I am trying to add another dimension to Minecraft using the mod coder pack, but I am having troubles finding out where to initialize/register/etc. the dimension. To explain: I created my own dimension (its a "re-texture" of the nether, with custom generation settings. This is what I wanted, I liked the Nethers generation) and all the class files I needed were created, the dimension does load, I found this out by replacing the nether with my dimension, but I was wondering if anyone knows if it is possible to add a dimension? I'm asking because so far I was unsuccessful in adding a dimension; the dimension I created is only loadable by replacing an existing one. I do not know if it's possible, I have all of the class files, and I have added my dimension to the AnvilSaveHandler and AnvilSaveConverter classes, yet it never generates the file for saving and loading my dimension (DIM2) in the world folder.
Again, I have all the classes, and so far I added as many instances to load my dimension as I think I need. There may be some class files I do not know about yet that need modification. I can provide the code that I use to make my dimension, although I do not suspect this to cause the problem, when I used my code (the code saying to add another dimension, DIM2) in the AnvilSave class files, and set my dimension to the default Nether dimension (untouched), it still did not generate my dimension files (DIM2)
I am asking this because firstly I don't even know if it is possible, and secondly I tried looking for any more files that I need to change, but found none. Apologies if this is difficult to understand, it likely will be if you don't have the mod coder pack. Basically I saw the code Minecraft uses to create its dimensions and copied it to make one of mine, all while loading the default client and server (no outside programs, plugins, files apart from the class files I add, or mods)
tl;dr I made a custom dimension with all class files needed to get to the dimension, and did get to the dimension, within the default game (no mods, plugins, etc etc.), but I cannot add my dimension to the world without replacing an existing dimension. Thank you for any help, I figured this was the best place to put this. I am mostly using the mod coder pack and no outside mods because I want to add this dimension to a server I have, so others can see it as well without needing mods.
EDIT: If adding the dimension can't be done on the server, but still on the client, please still post what you know to fix this. Even if I cant have it on the server, I would still like to implement it on my client. I can't imagine why it couldn't be done on the client, since if Mojang wanted to add a dimension they would need to do this, but I wouldn't know much about that.
EDIT #2: Another file I have changed is DimmensionType, but I am not sure if names have any effect on if it can load, will test this out though.
I just tested some things, and apparently Minecraft limits the dimension count to 3 (overworld, end, and nether) I found this by altering the AnvilSaveHandler class, and adding my dimension, then using double slashes to ignore the nether, and then create a world. My dimension worked fine, I got to it using a nether portal, of course this replaced the nether in a way. Better explanation with the code:
else if (provider instanceof WorldProviderHell) {
File file3 = new File(file1, "DIM2");
file3.mkdirs();
return new AnvilChunkLoader(file3, this.dataFixer);
} // this is the code for a dimensions files, I make the if statement test for WorldProviderCustom, my dimension, and used //slashes to make this code be ignored. This in a way replaced the nether, but uses the files I created still. I made my //dimension id -1 which used to be the nethers, and made its id 2 as can be seen above. I tried keeping the nether loaded //with an id of 2, but its files didn't generate, proving there is a limit.
I have found the solution: the class files that need to be edited are: AnvilSaveHandler, IntegratedServer (for client), DimensionType, MinecraftServer (for a server), and I believe this should be it. Possibly AnvilSaveConverter, but I doubt that, since it converts saves using the old save format..
Hello! I am trying to add another dimension to Minecraft using the mod coder pack, but I am having troubles finding out where to initialize/register/etc. the dimension. To explain: I created my own dimension (its a "re-texture" of the nether, with custom generation settings. This is what I wanted, I liked the Nethers generation) and all the class files I needed were created, the dimension does load, I found this out by replacing the nether with my dimension, but I was wondering if anyone knows if it is possible to add a dimension? I'm asking because so far I was unsuccessful in adding a dimension; the dimension I created is only loadable by replacing an existing one. I do not know if it's possible, I have all of the class files, and I have added my dimension to the AnvilSaveHandler and AnvilSaveConverter classes, yet it never generates the file for saving and loading my dimension (DIM2) in the world folder.
Again, I have all the classes, and so far I added as many instances to load my dimension as I think I need. There may be some class files I do not know about yet that need modification. I can provide the code that I use to make my dimension, although I do not suspect this to cause the problem, when I used my code (the code saying to add another dimension, DIM2) in the AnvilSave class files, and set my dimension to the default Nether dimension (untouched), it still did not generate my dimension files (DIM2)
I am asking this because firstly I don't even know if it is possible, and secondly I tried looking for any more files that I need to change, but found none. Apologies if this is difficult to understand, it likely will be if you don't have the mod coder pack. Basically I saw the code Minecraft uses to create its dimensions and copied it to make one of mine, all while loading the default client and server (no outside programs, plugins, files apart from the class files I add, or mods)
tl;dr I made a custom dimension with all class files needed to get to the dimension, and did get to the dimension, within the default game (no mods, plugins, etc etc.), but I cannot add my dimension to the world without replacing an existing dimension. Thank you for any help, I figured this was the best place to put this. I am mostly using the mod coder pack and no outside mods because I want to add this dimension to a server I have, so others can see it as well without needing mods.
EDIT: If adding the dimension can't be done on the server, but still on the client, please still post what you know to fix this. Even if I cant have it on the server, I would still like to implement it on my client. I can't imagine why it couldn't be done on the client, since if Mojang wanted to add a dimension they would need to do this, but I wouldn't know much about that.
EDIT #2: Another file I have changed is DimmensionType, but I am not sure if names have any effect on if it can load, will test this out though.
I just tested some things, and apparently Minecraft limits the dimension count to 3 (overworld, end, and nether) I found this by altering the AnvilSaveHandler class, and adding my dimension, then using double slashes to ignore the nether, and then create a world. My dimension worked fine, I got to it using a nether portal, of course this replaced the nether in a way. Better explanation with the code:
else if (provider instanceof WorldProviderHell) {
File file3 = new File(file1, "DIM2");
file3.mkdirs();
return new AnvilChunkLoader(file3, this.dataFixer);
} // this is the code for a dimensions files, I make the if statement test for WorldProviderCustom, my dimension, and used //slashes to make this code be ignored. This in a way replaced the nether, but uses the files I created still. I made my //dimension id -1 which used to be the nethers, and made its id 2 as can be seen above. I tried keeping the nether loaded //with an id of 2, but its files didn't generate, proving there is a limit.
I have found the solution: the class files that need to be edited are: AnvilSaveHandler, IntegratedServer (for client), DimensionType, MinecraftServer (for a server), and I believe this should be it. Possibly AnvilSaveConverter, but I doubt that, since it converts saves using the old save format..
how can i make a new portal for it, also, how do i create the new dimension
and how can i make the portal limit 4 portals, not 3