PneumaticCraft: Repressurized

PneumaticCraft: Repressurized

43M Downloads

Game Breaking Crash with Amadron Tablet

dannydjdk opened this issue ยท 11 comments

commented

Minecraft Version

1.12.2

Forge Version

14.23.5.2768

Mod Version

1.12.2-0.11.5-371

Describe your problem, including steps to reproduce it

Server crashed when attempting to set up a player trade. Server continues to crash on reboot. Even more strangely, same crash occurs even after restoring the world to a backup prior to the incident.

Crash Report: https://pastebin.com/G5jjBccU
Video of incident: https://www.twitch.tv/videos/502983975 at 4:09:00

commented

I was able to fix the problem by removing the custom trade from the config file.

commented

As soon as I saw my trade in the config file and figured out why restoring from backup didn't fix the problem, I removed it and stupidly saved the file without backing it up. Immediately afterwards, it occurred to me that I should have saved a copy for you. :/
I'll see if I can reproduce the problem in the same world when no one else is playing.

commented

OK, thanks! Also, build 373 https://jenkins.k-4u.nl/job/PneumaticCraft-Repressurized/373/ has the extra code in there (and will log a message in the server log with some extra info instead of crashing). Would also be good if you could try that version and let me know what you see in the log (look for the text "retrieveOrderItems: got empty itemstack list").

commented

The custom trades are stored separately from the world data, which explains why a world restore wouldn't help.

Do you have a copy of the bad trade config that I can look at? The trace suggests it was added with an item amount outside the 1-64 range, which shouldn't ever happen (but clearly did!). Would be good to see what value turned up there...

commented

And probably not what you want to hear, but I can't reproduce the problem (using exactly the same trade, and also testing with a dedicated server).

I can add some code to prevent a crash although it might not get the trade working for you. Alternatively if it's some kind of race condition where the Amadron drone spawned too soon and tried to collect an empty consignment (i.e. 0 cold resistance potions), that might actually help. Hard to say when I can't reproduce the actual problem... :)

commented

Just to mention the latest mod release (0.11.7) has this workaround code now. Any feedback on that appreciated :)

commented

Thanks for the update! Sorry, I haven't had a chance to test this yet. Since it's a public server, I have to get the public pack updated with the latest release before I can update the server and then try to reproduce the bugged trade. I hope to have something for you later this week.

commented

I wasn't able to reproduce the bug. The trade was successfully added without any issues...well, mostly.
A drone took my items for trade, and when a player traded with me, his payment was taken by the drone, and the items were delivered. However, I did not receive the payment.
I suspect this is a completely different issue though. Let me know if I should open a new issue.

commented

Yeah, that could use a new issue. I've had a look at this and I can't reproduce it in a dev environment (which isn't realistic anyway because this needs two or more players to test properly). Could be a tricky one to track down, but I'll see what I can do...

commented

Hey Danny, think I may have found why the payments aren't getting delivered (happened across a bug while rewriting the Amadron system for 1.14...)

Anyway can you try out build 382 from https://jenkins.k-4u.nl/job/PneumaticCraft-Repressurized/ and let me know how it goes? Thanks!

commented

It works!
However, we did run into another problem. :P I'll put it in a different issue though.