josephcsible Posted November 29, 2016 Posted November 29, 2016 If I have a mod with an ID that isn't all lowercase, when I port it to 1.11 (and have to change its mod ID to be all lowercase), how do I keep old worlds from losing all existed modded blocks? At https://github.com/MinecraftForge/MinecraftForge/pull/3122#issuecomment-239571965, Lex mentioned that you should write migration handlers for this, but I'm not sure what these are and Google isn't particularly helpful. Quote
jeffryfisher Posted November 29, 2016 Posted November 29, 2016 First of all, modded worlds often don't work well when ported to new versions. Block IDs can be completely scrambled (e.g. what were placed as a mod's blocks may appear as newly added vanilla blocks). Therefore, my first recommendation is to leave each modded world in whatever MC version created it. That said, there's an optional main mod class event after postInit that is designed to remap unresolved names. I think this is what you're supposed to use to replace all of the old names in a world with your new names. Jump to the declaration of the post initialization event and then look around for the other events declared nearby. PS: Mixed case mod IDs have been problematic for a long time. How did you get away with one? [Don't answer. That's just a rhetorical question.] Quote The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.
Aeronica Posted November 30, 2016 Posted November 30, 2016 Take a look at the information Mcjty compiled on his wiki for using his "CompatLayer." Here's the wiki link. He shows an example of how to use an event to remap your resource paths Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.