For the Java nerds out there, here's the steps to reproduce this update. You may also be interested in the Moniker tool all by itself or the classfile manipulation library included in its source (both in the archive, moniker & lib source is inside the jar).
TO USE THE UPDATED OPTIMINE YOU DO NOT NEED TO DO THIS. I ALREADY DID IT FOR YOU!
Determine updates from 1.3 to 1.4:
[*:2u1fnj83] Extract affected class files from vanilla 1.3 (bb, ck, h, kv, mh, oi) into a dir named vanilla_13
[*:2u1fnj83] Determine and extract associated classes in 1.4 (be, cp, lj, i, mw, ox) into a dir named vanilla_14
[*:2u1fnj83] Generate complete reference maps for both:
[*:2u1fnj83] Copy mv13.map to mc13-14.map, open it and mc14.map in an editor that supports synchro-scrolling, and update mc13-14.map to have the 1.4 names after the colon on each line. Mostly it's just classnames that change, but a few method and field names change in classes with lots of them
[*:2u1fnj83] Translate the 1.3 classes to 1.4 names:
[*:2u1fnj83] Decompile the contents of vanilla_14/*.class and mc_pseudo_14/*.class and diff the results. If you missed any name changes repeat from step 4
[*:2u1fnj83] You now have a diff showing the changes that need to be applied to optimine. This should consist of:
[*:2u1fnj83]i.a(String, double...): null checks on [tt]t[/tt], actual working string comparison, and support for "heart" particle
[*:2u1fnj83]mw: changes to nj's constructor, a call to h.q.h.a after some null checks, and changing method calls on an nj to member accesses.
[*:2u1fnj83]ox: a new method at the end of the file
Produce non-updated 1.4-renamed Optimine
[*:2u1fnj83] Generate reference map for optimine:
[*:2u1fnj83] Diff this map against the original mc13.map. Note any obfuscated MC classes that Optimine referenced that vanilla didn't. Locate their equivalents in 1.4 and add entries to mc13-14.map for them. You should now have mc13-14.map as included in the archive.
[*:2u1fnj83] Generate the first-draft 1.4 optimine:
Update it with the 1.4-changes
[*:2u1fnj83] Note the class names used in the files that actually changed between 1.3 and 1.4 that will cause problems when recompiling (keywords and single-letter names likely to conflict with fields): if, i, q, s, x. Create a map file to rename these classes to something sane. This produces the destupid.map in the archive.
[*:2u1fnj83] Run the updated optimine classes through this to produce something that can be decompiled and recompiled:
[*:2u1fnj83] Decompile the classes in optimine that need update (i, mw, and ox) and apply the changes from MC 1.3 to MC 1.4 (noted above). Make sure to use the destupided names if they show up in the changes anywhere.
[*:2u1fnj83] Extract the full MC obfuscated codebase (including net.minecraft.client.Minecraft) and run it through the destupiding process.
[*:2u1fnj83] Compile the updated optimine classes, making sure that the destupided unchanged optimine classes and minecraft codebase are on the classpath (in that order). Put these files (classi.class, mw.class, and ox.class) in a folder called optimine_patched_14_destupid.
[*:2u1fnj83] restupid the resulting updated class files
I noticed that the class files I was working from included ModLoader support. I'm not sure if ModLoader has been updated for 1.4, but if it has there's a good chance that the support included here is totally broken and the two will conflict horribly.
None of the classes conflict with the 1.4 version of modloader :biggrin.gif:
would the integrated graphics mod clash with this that could be why Its not working
I have both installed, works fine. I installed Intergrated graphics first.
Anyways, your fix is amazing inio! I can finally play on Far, Fancy, with smooth lighting, with 30fps, as oppose to like, 5. <3 :biggrin.gif:
Rollback Post to RevisionRollBack
"Do not abandon yourselves to despair. We are the Easter people and hallelujah is our song."
inio, you rock to the max of the max! It works like finding dirt on mountains! And finding creepers at your house! Heres some diamonds : Oops Sorry, LOL! Had no diamonds so heres some porkchop!
hey guys, im having a lo of trouble installing this mode, im on a Macbook, the game runs fine, but i would like it to run a little bit better, it still stutters here and there... :sad.gif:
i installed it like instructed, but then when i login past the launcher, it gets stuck on this load screen, with a green bar tht never moves... i dont know what im doing wrong, i have deleted the META folder thing, and copied the class files and everything... i do have the zombe mods pack installed, could this be the reason? please help :sad.gif: i wanna be able to play with smooth lighting.
TO USE THE UPDATED OPTIMINE YOU DO NOT NEED TO DO THIS. I ALREADY DID IT FOR YOU!
Determine updates from 1.3 to 1.4:
[*:2u1fnj83] Extract affected class files from vanilla 1.3 (bb, ck, h, kv, mh, oi) into a dir named vanilla_13
[*:2u1fnj83] Determine and extract associated classes in 1.4 (be, cp, lj, i, mw, ox) into a dir named vanilla_14
[*:2u1fnj83] Generate complete reference maps for both:
[*:2u1fnj83] Copy mv13.map to mc13-14.map, open it and mc14.map in an editor that supports synchro-scrolling, and update mc13-14.map to have the 1.4 names after the colon on each line. Mostly it's just classnames that change, but a few method and field names change in classes with lots of them
[*:2u1fnj83] Translate the 1.3 classes to 1.4 names:
[*:2u1fnj83] Decompile the contents of vanilla_14/*.class and mc_pseudo_14/*.class and diff the results. If you missed any name changes repeat from step 4
[*:2u1fnj83] You now have a diff showing the changes that need to be applied to optimine. This should consist of:
[*:2u1fnj83]i.a(String, double...): null checks on [tt]t[/tt], actual working string comparison, and support for "heart" particle
[*:2u1fnj83]mw: changes to nj's constructor, a call to h.q.h.a after some null checks, and changing method calls on an nj to member accesses.
[*:2u1fnj83]ox: a new method at the end of the file
Produce non-updated 1.4-renamed Optimine
[*:2u1fnj83] Generate reference map for optimine:
[*:2u1fnj83] Diff this map against the original mc13.map. Note any obfuscated MC classes that Optimine referenced that vanilla didn't. Locate their equivalents in 1.4 and add entries to mc13-14.map for them. You should now have mc13-14.map as included in the archive.
[*:2u1fnj83] Generate the first-draft 1.4 optimine:
Update it with the 1.4-changes
[*:2u1fnj83] Note the class names used in the files that actually changed between 1.3 and 1.4 that will cause problems when recompiling (keywords and single-letter names likely to conflict with fields): if, i, q, s, x. Create a map file to rename these classes to something sane. This produces the destupid.map in the archive.
[*:2u1fnj83] Run the updated optimine classes through this to produce something that can be decompiled and recompiled:
[*:2u1fnj83] Decompile the classes in optimine that need update (i, mw, and ox) and apply the changes from MC 1.3 to MC 1.4 (noted above). Make sure to use the destupided names if they show up in the changes anywhere.
[*:2u1fnj83] Extract the full MC obfuscated codebase (including net.minecraft.client.Minecraft) and run it through the destupiding process.
[*:2u1fnj83] Compile the updated optimine classes, making sure that the destupided unchanged optimine classes and minecraft codebase are on the classpath (in that order). Put these files (classi.class, mw.class, and ox.class) in a folder called optimine_patched_14_destupid.
[*:2u1fnj83] restupid the resulting updated class files
[*:2u1fnj83] put the resulting files together with the unchanged files (be, cp, and lj.class) into your minecraft.jar.
I will try to see if i did something wrong, but I doubt I did
If razer says it's okay to play, then that's enough for me.
(anyone who supports catgirls is okay with me)
Thanks inio!
Yes, since they both touch i.class.
If you get a black screen or hang at the logo after hitting login, it might be a conflict between mods.
would said clash make neither of them work cuz its become way more laggy then it used to lol
Anything is possible ... at ZOMBOCOM
None of the classes conflict with the 1.4 version of modloader :biggrin.gif:
I have both installed, works fine. I installed Intergrated graphics first.
Anyways, your fix is amazing inio! I can finally play on Far, Fancy, with smooth lighting, with 30fps, as oppose to like, 5. <3 :biggrin.gif:
Remember people, credit goes to Scaevolus for this actual mod. I merely updated it to 1.4.
I combined it with the FogFix someone posted earlier. (Thought they both use i.class)
Works like a charm!
mine is not working?
i installed it like instructed, but then when i login past the launcher, it gets stuck on this load screen, with a green bar tht never moves... i dont know what im doing wrong, i have deleted the META folder thing, and copied the class files and everything... i do have the zombe mods pack installed, could this be the reason? please help :sad.gif: i wanna be able to play with smooth lighting.
Did you remember to delete META-INF folder?