Jump to content

Decompile Mod


HenryRichard

Recommended Posts

I'm trying to decompile Embers to fix a duplication bug in the latest release of 1.10.2 (which the developer no longer supports). I was able to fix it in the source on GitHub; but the latest 1.10.2 version there is outdated. I tried to use CFR to decompile it, but since Minecraft's source is obfuscated I got a bunch of methods that I can't understand - I guess I could go through and try to fix each individual one but that would probably take longer than actually rewriting the mod from scratch. I also briefly looked at BON2, but I didn't see any documentation on it and I couldn't get it to work. Does anyone here know how I could do this? I have a feeling some of these things could potentially work if I actually knew how to use them better, but if there are programs that work I'm completely willing to use them.

I'll put something here when I have something of value I need to put at the end of every post. For now it's this mostly pointless text.

Link to comment
Share on other sites

Just now, shadowfacts said:

Why are you trying to decompile it? Embers is open source.

Like I said, I downloaded the latest 1.10.2 version I could find, but it was outdated. I'd love it if it was that simple, but I don't think it is. If that's the only way possible I can use the outdated version, but I'd rather not if at all possible.

I'll put something here when I have something of value I need to put at the end of every post. For now it's this mostly pointless text.

Link to comment
Share on other sites

As long as you have permission of the author (which you seem like you have), you should decompile it using BON2. I think it does require you to have a Forge dev environment already setup for it to find the MCP mappings.

 

Edited by larsgerrits

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

Link to comment
Share on other sites

17 minutes ago, larsgerrits said:

As long as you have permission of the author (which you seem like you have), you should decompile it using BON2. I think it does require you to have a Forge dev environment already setup for it to find the MCP mappings.

 

Alright - how do I get it to work? I tried running the Embers mod file through it and then decompiling it using CFR, but the same problem I had originally persists. BON2 is in my MDK folder, though I noticed that it only gives me an option for forge 1.8 - I assume I need to add Forge 1.10.2 but I have no idea how.

 

It does seem like a few methods were fixed, so I'm on the right track I'm sure.

Edited by HenryRichard

I'll put something here when I have something of value I need to put at the end of every post. For now it's this mostly pointless text.

Link to comment
Share on other sites

Well, if you want to decompile the mod for 1.10.2, you should have a 1.10.2 workspace setup to use.

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

Link to comment
Share on other sites

8 minutes ago, larsgerrits said:

Well, if you want to decompile the mod for 1.10.2, you should have a 1.10.2 workspace setup to use.

I do - BON2 is only giving me an option for 1.8 though.

 

EDIT: I just found a version on Jenkins that has an option for 1.10.2 - will post results in a second.

 

EDIT 2: Same issue again - didn't fully deobfuscate.

Edited by HenryRichard

I'll put something here when I have something of value I need to put at the end of every post. For now it's this mostly pointless text.

Link to comment
Share on other sites

Why are you still trying to download it? It's published on GitHub, including the 1.10.2 version of the source code. GitHub allows you to download the contents of the repository from a specific commit. You'll want the one from right before the 1.11 upgrade. Here's a link.

Don't make mods if you don't know Java.

Check out my website: http://shadowfacts.net

Developer of many mods

Link to comment
Share on other sites

19 hours ago, shadowfacts said:

Why are you still trying to download it? It's published on GitHub, including the 1.10.2 version of the source code. GitHub allows you to download the contents of the repository from a specific commit. You'll want the one from right before the 1.11 upgrade. Here's a link.

Like I said twice before, that version is outdated. Alchemy is unfinished, and there is no ashen armor. That's why I wanted to decompile the latest version from CurseForge. I already fixed the bug in the version from GitHub before realizing it was old.

Edited by HenryRichard

I'll put something here when I have something of value I need to put at the end of every post. For now it's this mostly pointless text.

Link to comment
Share on other sites

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • 0 I have recently started with Java and the implementation of Minecraft mods. I am currently working on a mod for 1.20.4-49.0.31 I'm trying to get the content of each slot in the console to be displayed when the inventory is opened, which works. In addition, I wanted to do the same with chests (in this case containers). However, I get in the output that there is Air at every slot of the chest, even if the chest is filled. Does anyone have experience with similar problems and could help me? package net.kaan.sortingmod; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen; import net.minecraft.client.gui.screens.inventory.InventoryScreen; import net.minecraft.client.gui.screens.inventory.ContainerScreen; import net.minecraft.client.gui.screens.inventory.FurnaceScreen; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.inventory.InventoryMenu; import net.minecraft.world.item.ItemStack; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.client.event.ScreenEvent; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; @Mod(SortingMod.MODID) public class SortingMod { public static final String MODID = "sortingmod"; public SortingMod() { // Register the client setup method FMLJavaModLoadingContext.get().getModEventBus().addListener(this::doClientStuff); // Register this class for Forge events MinecraftForge.EVENT_BUS.register(this); } private void doClientStuff(final FMLClientSetupEvent event) { // Any client-side setup can be done here } @SubscribeEvent public void onScreenOpen(ScreenEvent.Opening event) { Screen screen = event.getScreen(); if (screen instanceof InventoryScreen) { System.out.println("Player opened their inventory."); assert Minecraft.getInstance().player != null; printInventoryItems(Minecraft.getInstance().player); } else if (screen instanceof ContainerScreen) { System.out.println("Player opened a chest."); printContainerItems((ContainerScreen) screen); } } private void printInventoryItems(Player player) { AbstractContainerMenu menu = player.inventoryMenu; for (int i = 0; i < menu.slots.size(); i++) { ItemStack stack = menu.getSlot(i).getItem(); if (!stack.isEmpty()) { System.out.println("Slot " + i + ": " + stack.getCount() + "x " + stack.getHoverName().getString()); } } } private void printContainerItems(ContainerScreen screen) { AbstractContainerMenu menu = screen.getMenu(); System.out.println(menu.slots.size()); for (int i = 0; i < menu.slots.size(); i++) { ItemStack stack = menu.getSlot(i).getItem(); System.out.println("Slot " + i + ": " + stack.getCount() + "x " + stack.getHoverName().getString()); } } }  
    • I am wanting to add an axe to my mod though I do not want it to have a recipe, the reason for this being that I want you to only be able to find it in a structure. I have looked on both here and elsewhere on the internet and have found nothing... How would this be done?    (Video for reference.)    
    • file log:file:///C:/Users/natal/AppData/Roaming/.minecraft/logs/latest.log   Aternos log: https://mclo.gs/kzPaflO
    • Hi guys, having a bit of trouble finding out which mod causes trouble. My pack was working until I accidentally pressed update all mods on Curseforge. Cant use pastebin atm, my pastes keep going under moderation. paste.ee still waiting for verification email. Crash - https://mclo.gs/UKHjD92 Log - https://mclo.gs/WOXzoL6 64GB RAm Processor 13th Gen Intel(R) Core(TM) i9-13900K, 3000 Mhz, 24 Core(s), 32 Logical Processor(s) Name NVIDIA GeForce RTX 3090
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.