Railcraft

Railcraft

34M Downloads

Corrupted TileEntity

zlepper opened this issue ยท 7 comments

commented

I noticed that 2 of my steam engines broke and my itemducts just stopped working when i went to check on my wood/charcoal production, so i broke them an placed the engine down and it booted me out, now i cant login

Railcraft version 8.3.1.0

http://pastebin.com/YrhnbLEF

This is all i can tell. This happened on the server I play on.

commented

I'll add some error checking but it looks like you have a corrupted Tile Entity of some kind (the data being sent doesn't match the expected values). Your best bet for a speedy resolution is to use MCEdit to delete the block.

commented

If you set the Engines to false in the sub-blocks section of the config, it will remove only the engines. However, that will only work properly if the block has the correct tile entity, which I can't guarantee at this time. I'd also suggest setting block.hidden=0 in the config until Forge fixes a bug that affects replaceable blocks with tile entities that "might" be responsible for this.

I may be posting a hot-fix in the next couple days to address another issue, the error checking will be present if that happens.

In the mean time, feel free to give this beta version a try: https://dl.dropboxusercontent.com/u/38558957/Minecraft/Railcraft/Railcraft_1.6.4-8.3.1.1.jar

commented

I can verify this issue. Having it as well. Might be related to thermal expansion update with railcraft stuff connected to conduits. Once I updated thermal expansion to 9e instead of build 8, this started. I have no idea which might be corrupted. If I change the ID, it'll remove a lot of other blocks including tanks.

http://pastebin.com/f3VmNghq

commented

Changing block.hidden is a preventative measure to prevent future corruption caused by the Forge Replaceable TileEntity Bug.

The only possible way I can think that 15 could be sent to the client is if the server had the wrong type of TileEntity for that block. Which can be caused by the previously mentioned bug.

I'm also very surprised that it didn't crash with an EOF exception or some other thing once the AIOB was fixed. But I guess those are IOExceptions which are caught and ignore, leaving just a message in the log file: "Exception in PacketHandler.onPacketData: {0}"

I suspect the packet is sent before my TileEntity internal type validation has a chance to run, it should have converted the block into whatever block the TileEntity thinks its supposed to be. If the Forge replaceable TileEntity bug is the cause, that most likely means an Iron Tank Wall (meta 0).

commented

Changing the sub's for engines to false and block.hidden didn't work.

Your beta version did work though, thank you. I am able to login now.

commented

Simptom:
Placing a steam engine next to a fluiduct crashes the server and won't load the world again

Setup:
Railcraft_1.6.4-8.3.0.0
ThermalExpansion-3.0.0.b10a

Steps to reproduce:
Create a new world
Place one fluiduct (opaque)
Place the hobbyist steam engine adjacent to the fluiduct (break and re-place on various sides of the fluiduct)
When placed on the "correct" side, the server will shutdown. (Looks like it enters an infinite loop of block updates)

commented

@georgelus Please keep issues seperate, and without a log, you've got nothing.