EoD
Members-
Posts
14 -
Joined
-
Last visited
Converted
-
Gender
Undisclosed
-
Personal Text
I am new!
EoD's Achievements
Tree Puncher (2/8)
0
Reputation
-
[SOLVED] Is there any tool to update obfuscation mapping for mod codes?
EoD replied to herbix's topic in Modder Support
I created a bash script which takes care of the renaming: https://github.com/EoD/mcp-tools/tree/master/mapping-updater I hope someone else finds this useful, too. -
[SOLVED] Is there any tool to update obfuscation mapping for mod codes?
EoD replied to herbix's topic in Modder Support
Thanks guys, but I am neither new to coding, nor to minecraft modding. I am looking for a tool which uses a mapping list (like the MCP Mapping table) and updates all obfuscation mapping variable, methods, classes in my code to the readable ones from the list. -
[SOLVED] Is there any tool to update obfuscation mapping for mod codes?
EoD replied to herbix's topic in Modder Support
I have exactly the same problem as the original author of this topic and I wanted to know if he was able to create some script which helps with the problem. -
[SOLVED] Is there any tool to update obfuscation mapping for mod codes?
EoD replied to herbix's topic in Modder Support
Thank you, Lex. This may be what I'm looking for. Seems I should look at Forge repositories before I asked here. And thanks to all who replied me. I am looking for something like this to update some mods. Were you able to create some easier-to-use tool to update minecraft mod source? -
Like I asked before. "How?" Also: "In which event would I try to figure out the version of my mod in the savegame?"
-
What's so bad on doing it during loading a savegame? It does feel pretty wrong to add a recipe when loading a chunk. Is there really no way to put a flag independent on chunks?
-
Yeah, it seemed quite ugly to me too. I decided the whole idea is much too much hassle for a non-critical bug. In which event would I try to figure out the version of my mod in the savegame? I could then add give those metadata blocks a texture and add a compatbility recipe to convert them to the proper blocks. I guess I can also put a flag in the savegame such that I can load those textures/compatibility recipes again during the next loading. How would I do that?
-
If I get this right, then this will be execute every single time a chunk is loaded. I only want to remove the block from savegames which have version "<= 1.5.6" and don't care about it in later versions of the mod. As far as I understand, I would put unnecessary load on the server if I catch and work with the ChunkLoadEvent. I tried to mess around with FMLServerStartingEvent, but I can only find loaded tiles and not every tile. I am pretty new to modding, so I would appreciate some more concrete pointers
-
If I shouldn't use worlds, how can I achieve that? By more low level, do you mean that I should not compare the block object but just it's ID and metadata?
-
If I understand aright, you don't think there is anything wrong with a manual search&replace. How would I achieve that? I guess I have to catch the "FMLServerAboutToStartEvent", find the world file, search all chunks for appearances of the block + search all inventories for appearances of its item and replace all of them? What are the methods I can use to load the world, get my mod info and replace items? Something along the way @EventHandler public void preServerStart(FMLServerAboutToStartEvent event) { for(int i = 0; i<event.getServer().worldServers.length; i++) { for(x) { for(y) { for(z) { block = event.getServer().worldServers[1].getBlock(x, y, z); if( block == badblock) event.getServer().worldServers[1].setBlock(x, y, z, goodblock); } } } } }
-
That doesn't sound like a good option for a mod. Is it at least possible to check if this block already exists in the savegame? I could add the deprecated metadata 1,2 if an old savegame is loaded and don't initialise them if the mod wasn't present on this save before (on a new world).
-
If neither are possible, is it possible to see if a savegame contains an older version of the mod? Additionally, is it possible to execute a "search & replace" in the world file afterwards?
-
Is it possible to add a new block and map it to the old block metadata 3-15 while mapping the old block metadata 1,2 to another one?
-
I got a kind of weird issue. The mod has a blocked called "chisel:sandstone" with metadata blocks 1-15. A patch of mine removes the blocks with metadata 1 and 2. On loading an old savegame, I would like to replace "chisel:chisel.tile.sandstone:1" (block "chisel.tile.sandstone", metadata 1) with "minecraft:sandstone:1" ("Smooth Sandstone"). But I also want to keep the "chisel:chisel.tile.sandstone" metadata blocks 3-15. How would I do that? I tried "GameDataManipulator.replaceItem(arg0, arg1);" without success and I don't really have a clue on how to achieve that. In case someone needs the code: https://github.com/Pokefenn/Chisel/blob/master/src/main/java/info/jbcs/minecraft/chisel/ChiselBlocks.java