Sign in to follow this  
Jelato Foot

3.1.3 Reported issues and possible fixes

Recommended Posts

I'm not sure if this is the right board to be posting this in but here goes I guess, in this thread I'm gonna post the solutions I have used for some of the reported issues with the 3.1.3 dev build, hopefully it will help some people out that are having these issues until the technic guys can get everything fixed up. This thread however will not contain drag and drop fixes for your server as I don't want to step on any toes by distributing modified versions of other people's code/mods without permission.

Issue: java.lang.RuntimeException: java.lang.NoSuchMethodException (IC2)

Cause: Issue in the port, some package references remain as net.minecraft.src

Solution(s): Replace occurrences of "net.minecraft.src" with "net.minecraft.server" in ic2.api.ElectricItem ic2.api.NetworkHelper ic2.common.EnergyNet

Issue: java.lang.NoSuchFieldError: energyStored / java.lang.NoSuchMethodError: buildcraft.api.PowerProvider.receiveEnergy(I)V

Cause: Railcraft update contains a newer buildcraft API which is conflicting with the version of buildcraft running

Solution(s): Remove the new buildcraft API from the updated railcraft jar and then change the TileEntityRockCrusher's 2 references to the new API so they conform to the old API (simply changing the args from floats back to ints) (second part not actually required for functional rock crusher, but is required if you want to port the rock crusher to buildcraft2 and require an energy input for it)

Issue: java.lang.IllegalArgumentException (to do with ComputerCraft) after merging 3.1.3 with 3.1.2 files

Cause: Server tries to load 2 versions of ComputerCraft, in 3.1.2 the CC mod is a directory called ComputerCraft in the mods folder, in 3.1.3 the CC mod is a zip file

Solution(s): Delete "ComputerCraft" directory inside the mods directory

Issue: java.lang.RuntimeException: java.lang.NoSuchMethodException: ic2.common.TileEntityNuclearReactor.tickRate()

Cause: Mismatch between IC2 nuclear reactor API and old version of IC2 Nuclear Control mod

Solution(s): Updating to the new version of the nuclear control mod SHOULD work, however it's been reported that it doesn't, in which case you need to change the ic2.api.IReactor interface function getTickRate() back to tickRate() and also do the same in ic2.common.TileEntityNuclearReactor

Issue: [WARNING] Could not retrieve Forestry item identified by: ...

Cause: Railcraft is trying to interface with forestry container items, which don't exist because tekkit doesn't run forestry

Solution(s): Ignore it, it's not an error and won't cause any problems

These are all I really know of atm, I'll try and keep the thread updated with any more that I come across in my testingz, for those of you who don't know how to do some of the code changes required for some of the fixes, google around for how to decompile java classes, it's incredibly simple stuff just make sure you backup your world ;)

Share this post


Link to post
Share on other sites

Issue: java.lang.NoSuchFieldError: energyStored / java.lang.NoSuchMethodError: buildcraft.api.PowerProvider.receiveEnergy(I)V

Cause: Railcraft update contains a newer buildcraft API which is conflicting with the version of buildcraft running

Solution(s): Remove the new buildcraft API from the updated railcraft jar and then change the TileEntityRockCrusher's 2 references to the new API so they conform to the old API (simply changing the args from floats back to ints)

This would have to be done on client aswell as on the server right? In which case its not really a fix thats useful, but thanks anyway :)

Share this post


Link to post
Share on other sites

Actually, after taking a closer look at the rock crusher class, the functions which would be broken by removing the newer buildcraft API from railcraft won't ever be called because railcraft will only try to use them if buildcraft 3 is installed, which it's not. Fixing that code however means the possibility of making the rock crusher require buildcraft power from buildcraft2.

Share this post


Link to post
Share on other sites

Issue: java.lang.RuntimeException: java.lang.NoSuchMethodException: ic2.common.TileEntityNuclearReactor.tickRate()

Cause: Mismatch between IC2 nuclear reactor API and old version of IC2 Nuclear Control mod

Solution(s): Updating to the new version of the nuclear control mod SHOULD work, however it's been reported that it doesn't, in which case you need to change the ic2.api.IReactor interface function getTickRate() back to tickRate() and also do the same in ic2.common.TileEntityNuclearReactor

What about the rest of us mortals who don't have all the cool Java decompilers and tools installed? Can you upload your patches? This is what I'm getting right now.

Very useful thread, btw. Many diamonds iridium ores to you!

Share this post


Link to post
Share on other sites

can you post that patch that fixes:

2012-11-17 21:19:29 [sEVERE] java.lang.RuntimeException: java.lang.NoSuchMethodException: ic2.platform.NetworkManager.initiateTileEntityEvent(net.minecraft.src.TileEntity, int, boolean)

2012-11-17 21:19:29 [sEVERE]    at ic2.api.NetworkHelper.initiateTileEntityEvent(NetworkHelper.java:62)

2012-11-17 21:19:29 [sEVERE]    at ic2.advancedmachines.TileEntityAdvancedMachine.q_(TileEntityAdvancedMachine.java:130)

2012-11-17 21:19:29 [sEVERE]    at net.minecraft.server.World.tickEntities(World.java:1189)

2012-11-17 21:19:29 [sEVERE]    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:559)

2012-11-17 21:19:29 [sEVERE]    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:457)

2012-11-17 21:19:29 [sEVERE]    at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)

2012-11-17 21:19:29 [sEVERE] Caused by: java.lang.NoSuchMethodException: ic2.platform.NetworkManager.initiateTileEntityEvent(net.minecraft.src.TileEntity, int, boolean)

2012-11-17 21:19:29 [sEVERE]    at java.lang.Class.getMethod(Class.java:1622)

2012-11-17 21:19:29 [sEVERE]    at ic2.api.NetworkHelper.initiateTileEntityEvent(NetworkHelper.java:49)

2012-11-17 21:19:29 [sEVERE]    ... 5 more

2012-11-17 21:19:29 [sEVERE] Unexpected exception

java.lang.RuntimeException: java.lang.NoSuchMethodException: ic2.platform.NetworkManager.initiateTileEntityEvent(net.minecraft.src.TileEntity, int, boolean)

        at ic2.api.NetworkHelper.initiateTileEntityEvent(NetworkHelper.java:62)

        at ic2.advancedmachines.TileEntityAdvancedMachine.q_(TileEntityAdvancedMachine.java:130)

        at net.minecraft.server.World.tickEntities(World.java:1189)

        at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:559)

        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:457)

        at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)

Caused by: java.lang.NoSuchMethodException: ic2.platform.NetworkManager.initiateTileEntityEvent(net.minecraft.src.TileEntity, int, boolean)

        at java.lang.Class.getMethod(Class.java:1622)

        at ic2.api.NetworkHelper.initiateTileEntityEvent(NetworkHelper.java:49)

        ... 5 more

Share this post


Link to post
Share on other sites

To fix the IC2 Nuclear Control incompatibility, do the following:

1. On the server side, remove the existing mod_IC2NuclearControl-1.1.10b zip file from the mods folder

2. Add v1.1.11 from here: IC2 NuclearControl Bukkit Port 1.1.11 (this link comes from the bukkit port thread for this mod)

3. On the client side, remove IC2 Nuclear Control 1.1.10b mod from the mods folder in your .technicLauncher folder

4. Install the 1.1.11 (previous version to match the bukkit port) IC2 NC client mod from here: IC2 Nuclear Control Client 1.1.11. (this link comes from the 2nd post showing previous versions in the IC2 NC mod thread at the industrial craft forum)

Note that all clients will have to match the server install and the clients will get a message telling them which version of the mod they need to have installed if it is not already installed.

That's it. Server should work and client should be in sync. However, an Advanced Machine tweak is still required per the above poster(s).

Share this post


Link to post
Share on other sites

Well...I got tired of waiting for an official fix, so attached to this post are modified versions of the 3 IC2 classes with the minor interface conflict fixes, as follows: ElectricItem.class, EnergyNet.class, NetworkHelper.class

I have uploaded the 3 classes in a tiny zip file here:

ic2 api class fix

There is nothing dangerous about these files - they merely change the path and are just a patch (not the whole ic2 mod).

To fix the IC2 Tekkit 3.1.3 crashing, do the following:

1. Stop your Tekkit 3.1.3 server (if not already stopped...or crashed ^_^ )

2. Go to your Tekkit server mods folder

2. Find the file called: "industrialcraft2-1.103-mcpc1.2.5r2.zip"

3. Open the zip file and go into the ic2/api directory (no need to decompress it - just edit directly)

4. Delete ElectricItem.class, EnergyNet.class, and NetworkHelper.class

5. Download the class fix .zip in the above link

6. Copy the 3 classes from the downloaded zip and paste them into ic2 zip api folder where you just deleted the others

7. Close your ic2 zip and start your server. It should no longer crash relating to this specific interface fix. (It may crash for other reasons, however.)

[NOTE: This change is only for 3.1.3 installs, not 3.1.2]

My server seems to be stable on 3.1.3 with the Nuclear Control update and the attached fixed ic2 classes, including with working Rotary Macerator, etc. I didn't have to delete any advanced machines, downgrade, or reinstall. Also, I haven't really been screwing around with RailCraft, so I can't comment on that issue. I just wanted my automated quarries to work and for the server to be stable.

Finally, my feedback to the Tekkit team on the 3.1.3 release would be that, even though this is an IC2 mod issue, 3.1.3 isn't really a viable "final release". As we have all seen, 3.1.3 doesn't work and there should have been more due diligence and integration testing before pushing it to the public (such as including working Nuclear Control client/server mods which were already released). The upgrade was, no doubt, disappointing for many Tekkit users who wanted to try to upgrade from 3.1.2. Also, it is far beyond the average user ability to be able to install IDEs, decompile and recompile java files, or even set up the required mod build environment with MCP and all the necessary includes (or even understand what was happening to cause the crash in the first place). So, it is in the best interest of all concerned to do a little bit better review, especially given the complicated and diverse mod synchronization and interactions involved in any intended release.

Hope these posts help get most of you up-and-running on 3.1.3. Thanks to Jelato above who saved me some time and no offense to the IC2 modders. (But, it would be nice to have an official MC1.2.5-based fix for 3.1.3. Or, maybe someone wants to rev the 3.1.3 Tekkit client/server installers to 3.1.4 with modifications posted to this thread, perhaps with a RailCraft fix, as required.)

Share this post


Link to post
Share on other sites

Well...I got tired of waiting for an official fix, so attached to this post are modified versions of the 3 IC2 classes with the minor interface conflict fixes, as follows: ElectricItem.class, EnergyNet.class, NetworkHelper.class

I have uploaded the 3 classes in a tiny zip file here:

ic2 api class fix

There is nothing dangerous about these files - they merely change the path and are just a patch (not the whole ic2 mod).

To fix the IC2 Tekkit 3.1.3 crashing, do the following:

1. Stop your Tekkit 3.1.3 server (if not already stopped...or crashed ^_^ )

2. Go to your Tekkit server mods folder

2. Find the file called: "industrialcraft2-1.103-mcpc1.2.5r2.zip"

3. Open the zip file and go into the ic2/api directory (no need to decompress it - just edit directly)

4. Delete ElectricItem.class, EnergyNet.class, and NetworkHelper.class

5. Download the class fix .zip in the above link

6. Copy the 3 classes from the downloaded zip and paste them into ic2 zip api folder where you just deleted the others

7. Close your ic2 zip and start your server. It should no longer crash relating to this specific interface fix. (It may crash for other reasons, however.)

[NOTE: This change is only for 3.1.3 installs, not 3.1.2]

My server seems to be stable on 3.1.3 with the Nuclear Control update and the attached fixed ic2 classes, including with working Rotary Macerator, etc. I didn't have to delete any advanced machines, downgrade, or reinstall. Also, I haven't really been screwing around with RailCraft, so I can't comment on that issue. I just wanted my automated quarries to work and for the server to be stable.

Finally, my feedback to the Tekkit team on the 3.1.3 release would be that, even though this is an IC2 mod issue, 3.1.3 isn't really a viable "final release". As we have all seen, 3.1.3 doesn't work and there should have been more due diligence and integration testing before pushing it to the public (such as including working Nuclear Control client/server mods which were already released). The upgrade was, no doubt, disappointing for many Tekkit users who wanted to try to upgrade from 3.1.2. Also, it is far beyond the average user ability to be able to install IDEs, decompile and recompile java files, or even set up the required mod build environment with MCP and all the necessary includes (or even understand what was happening to cause the crash in the first place). So, it is in the best interest of all concerned to do a little bit better review, especially given the complicated and diverse mod synchronization and interactions involved in any intended release.

Hope these posts help get most of you up-and-running on 3.1.3. Thanks to Jelato above who saved me some time and no offense to the IC2 modders. (But, it would be nice to have an official MC1.2.5-based fix for 3.1.3. Or, maybe someone wants to rev the 3.1.3 Tekkit client/server installers to 3.1.4 with modifications posted to this thread, perhaps with a RailCraft fix, as required.)

Funny thing is it's not even a recommended build. It's just "latest". I don't know what their logic was here. It shows up as a normal client update and server download on the website is for 3.1.3. I'm not hating on the Tekkit team. How could I? They literally gave my life a purpose (foreveralone.jpg). I won't lose a bit of respect for them if they dun goofed this once by accidentally sitting on the Release to Public button, but I'd sure like to know if there's a reason for this.

Share this post


Link to post
Share on other sites

I also have no axe to grind and just wanted to get my server working, but it's kind of problem when thousands of people update to a broken build.

Below is the announcement I was referring to with respect to "final":

3.1.3 Finalized Announcement 15 Nov 2012

Tekkit 3.1.3 is still Minecraft 1.2.5! This version is basically finalizing our 1.2.5 builds so we can completely focus on the next version of Tekkit.

NooOOOOOope. Chuck Testa.

ps. My server still seems to be up-and-running with various advanced machines: rotary macerators, MFSUs, mass fabricators, etc. Not seeing any issues.

Share this post


Link to post
Share on other sites

Any ideas on this error...

I've applied Tekkitopotamus's fix but still get the below errors.

24.11 02:14:14 [server] SEVERE Unexpected exception

24.11 02:14:14 [server] SEVERE at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)

24.11 02:14:14 [server] SEVERE at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:457)

24.11 02:14:14 [server] SEVERE at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:559)

24.11 02:14:14 [server] SEVERE at net.minecraft.server.World.tickEntities(World.java:1189)

24.11 02:14:14 [server] SEVERE at buildcraft.transport.TileGenericPipe.q_(TileGenericPipe.java:156)

24.11 02:14:14 [server] SEVERE at buildcraft.transport.pipes.PipePowerWood.updateEntity(PipePowerWood.java:67)

24.11 02:14:14 [server] SEVERE java.lang.NoSuchFieldError: energyStored

Thanks :-)

Share this post


Link to post
Share on other sites

@Andew Nederhoff : Glad it's working. Mine too. Like you, I thought more would have tried it by now. I ran a large quarry through macerators, etc. and have seen no issues so far. Maybe others are skeered of the zip file. ^_^ If so, again, it was just a minimal compatibility change, and the file only contains the 3 classes that need replacing.

@Chillers : There is obviously an API conflict. Looks like the Railcraft vs. BuildCraft API issue per the first post in this thread by the excellent Jelato Foot. It appears to be coming from use of conductive wooden pipes. Tekkit 3.1.3 server uses RailCraft 5.4.7 and the client is 5.4.7b - these were the last 1.2.5 releases, since RailCraft 6.0+ moved to MC1.3.2. Anyway - remove the BuildCraft API from the RailCraft mod. Just open the mod zips and you will see a folder called "buildcraft" that contains an "api" folder. That's what you want to delete...and n.b. the note on Rock Crusher powering.

Share this post


Link to post
Share on other sites

So, upon further checking, it looks like the 5.4.7 MCPC mod for RailCraft explicitly states that if it is being used with BC2.2.14, that the BC API folder must be deleted from the zip file. The last MC1.2.5 version of BuildCraft is 2.2.14 for SMP, and 3.1.5 for SSP, where the API in RailCraft is only intended for 3.1.5/SSP (!). So, deleting the BC API folder from RailCraft on the server side is the expected action.

However, as an experiment, I took the related API files from the BuildCraft 2.2.14 server mod and put them into RailCraft 5.4.7 MCPC and was able to set up a functional rock crusher without any errors, powered as follows:

Geothermal Generator -> EnergyLink -> Wooden Conductive Pipe -> Rock Crusher

Works great,

So...while there may be other issues related to inserting the API files from BC2.2.14 into RailCraft, using Wooden Conductive Pipes doesn't appear to be one of them, and this reverse tweak may fix the most common class of error with Wooden Conductive Pipes.

Note: If you are having trouble pasting files into the mod zips, try using 7zip in 2 window mode (open 7zip, hit F9, open the source file on the left (ie. BuildCraft 2.2.14), open the destination file on the right (ie. RailCraft 5.4.7 MCPC), select the file you want to copy, and hit F5 then OK the transfer.

@Chillers : see if this fixes your issue.

Share this post


Link to post
Share on other sites

3.1.3 to me looks like a knee-jerk reaction to FTB being released. Foolish of the Tekkit team to push this release out. I know one person who updated, had his server crash immediately (probably a rotary macerator running somewhere) and had to make a new world back on 3.1.2 to get his server running again. Now he's a big dummy - I had the same problem but removed the advanced machines with MCEdit - but obviously not all server owners are tech savy enough for fixing errors when their server won't start. I know they say it's a development build but it's the file that's linked to when you go to the Tekkit tab on the main site.

Share this post


Link to post
Share on other sites

Hopefully, at this point, there shouldn't be any reason to have remove the Advanced Machines with 3.1.3. They seem to work fine with the replaced classes in IC2 mentioned earlier in this thread along with other chnages. And, in my case, even when there were console errors, the stop command still worked, which usually helps prevent world corruption. Your friend may be able to salvage his world (?) by following instructions in this thread. Also, my world now seems to be fine, despite upgrading to 3.1.3 and then (initially) not working. I noticed the recommendation in another thread to downgrade and remove all advanced machines and thought that was a little extreme. Anyway, once I patched my server, everything was operational without any world/MCEdit, etc. modifications. Hope the patch and other 3.1.3 related info helps you out.

Share this post


Link to post
Share on other sites

I can vouch that BuildCraft seems to be working fine. There is a slight issue though, in that the rock crusher actually needs no power going to it for it to actually work. Wooden conductive pipes do work though, I tested them by using this setup: HV Solar Array -> MFSU -> Energy Link -> Quarry. The energy link and quarry were connect by wooden and gold conductive pipes.

Share this post


Link to post
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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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.

Sign in to follow this