[Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
-
- Long Handed Inserter
- Posts: 96
- Joined: Sun Mar 25, 2018 5:34 am
- Contact:
[Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
Fast replace pipe-to-ground crash.
Steps:
1.) Load mod and map
2.) Find this:
3.) Fast replace with item "1-to-3 Forward Pipe"
4.) ???
5.) Profit!!
Steps:
1.) Load mod and map
2.) Find this:
3.) Fast replace with item "1-to-3 Forward Pipe"
4.) ???
5.) Profit!!
- Attachments
-
- MOD TEST.zip
- (3.28 MiB) Downloaded 119 times
-
- factorio-dump-current.dmp
- (803.04 KiB) Downloaded 110 times
-
- factorio-current.log
- (9.74 KiB) Downloaded 132 times
-
- underground-pipe-pack_0.16.66.zip
- (5.35 MiB) Downloaded 115 times
Last edited by Staplergun on Fri Mar 15, 2019 2:16 am, edited 1 time in total.
-
- Long Handed Inserter
- Posts: 96
- Joined: Sun Mar 25, 2018 5:34 am
- Contact:
Re: [0.17.12] Crash after pipe-to-ground fast replace
Game also crashes if you freshly place the pipe without the other one under it:
- Attachments
-
- factorio-dump-current.dmp
- (790.6 KiB) Downloaded 126 times
-
- factorio-current.log
- (9.69 KiB) Downloaded 126 times
-
- Long Handed Inserter
- Posts: 96
- Joined: Sun Mar 25, 2018 5:34 am
- Contact:
Re: [0.17.12] Crash after pipe-to-ground fast replace/regular place
Removing the pipe on the right, then placing the pipe on the left, then the pipe on the right allows it to work without crashing.
-
- Long Handed Inserter
- Posts: 96
- Joined: Sun Mar 25, 2018 5:34 am
- Contact:
Re: [0.17.12] Crash after pipe-to-ground fast replace/regular place
Fast replacing the original pipe (1-to-2) with the pipe (1-to-3) without the pipe on the right does not crash.
Rotating the above pipe shown in the image causes an instant process termination to desktop without bug report.
Rotating the above pipe shown in the image causes an instant process termination to desktop without bug report.
Re: [0.17.12] Crash on rotate again with underground pipes
I have narrowed down a scenario which reproduces part of the problem.
But note that my example here seems to be SEPARATE from the pure rotation bug where you get a crash by rotating a connection 3 times. Anyway, I have a very simple example below which you should be able to reproduce easily and reliably.
First, set up the following items.
Next, CTRL-R to rotate the underground connections of the 1-2 pipe to ground, in order that it connects to both of the other items.
The situation here is that we have an underground connection flowing along all three items. And the middle pipe has an above-ground connection facing south.
Next, place a 1-3 pipe to ground as illustrated below. This will crash the game. Crash Log
What is going on here is that the 1-3 pipe is severing the existing connection between the center and the south pipes and simultaneously creating a new connection between the 1-3 pipe and the southern pipe WHILE ALSO joining with the pipe whose connection it severed.
I think this is the key because if the aboveground connection was not simultaneously made, it does not crash the game. As seen below.
Also, if you do not have the existing connection to the south pipe before placing the 1-3 aboveground connected pipe, and THEN rotate the south pipe so that it makes the connection to the 1-3 pipe, it does not crash the game. See below.
Note that the final picture above is the exact scenario which WILL crash the game if the 1-3 pipe is placed last. If I were to pick up the 1-3 pipe right now and then replace it again where it was, the game would crash. This is because picking up the pipe reestablishes the original pre-crash scenario with the south pipe connection, which is then broken once I place the 1-3pipe back down.
Note ALSO that if I fast-replace the 1-3 pipe with a Tier 2 1-3 pipe, which is identical except for its maximum length, that it DOES crash the game. I have tested this, and it may account for why Staplergun is getting a fast-replace crash bug in this report.
What is very odd that I don't understand is the fact that if you put a single normal pipe as a buffer, the crash never happens
But note that my example here seems to be SEPARATE from the pure rotation bug where you get a crash by rotating a connection 3 times. Anyway, I have a very simple example below which you should be able to reproduce easily and reliably.
First, set up the following items.
Next, CTRL-R to rotate the underground connections of the 1-2 pipe to ground, in order that it connects to both of the other items.
The situation here is that we have an underground connection flowing along all three items. And the middle pipe has an above-ground connection facing south.
Next, place a 1-3 pipe to ground as illustrated below. This will crash the game. Crash Log
What is going on here is that the 1-3 pipe is severing the existing connection between the center and the south pipes and simultaneously creating a new connection between the 1-3 pipe and the southern pipe WHILE ALSO joining with the pipe whose connection it severed.
I think this is the key because if the aboveground connection was not simultaneously made, it does not crash the game. As seen below.
Also, if you do not have the existing connection to the south pipe before placing the 1-3 aboveground connected pipe, and THEN rotate the south pipe so that it makes the connection to the 1-3 pipe, it does not crash the game. See below.
Note that the final picture above is the exact scenario which WILL crash the game if the 1-3 pipe is placed last. If I were to pick up the 1-3 pipe right now and then replace it again where it was, the game would crash. This is because picking up the pipe reestablishes the original pre-crash scenario with the south pipe connection, which is then broken once I place the 1-3pipe back down.
Note ALSO that if I fast-replace the 1-3 pipe with a Tier 2 1-3 pipe, which is identical except for its maximum length, that it DOES crash the game. I have tested this, and it may account for why Staplergun is getting a fast-replace crash bug in this report.
What is very odd that I don't understand is the fact that if you put a single normal pipe as a buffer, the crash never happens
Re: [Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
Oh well, ok. Honestly it has never occurred to me and probably not to anyone that it would be possible to replace different types of pipes to ground
Thanks for the detailed reports
I found some base game bug I found now but I will get back to this soon.
Thanks for the detailed reports
I found some base game bug I found now but I will get back to this soon.
Re: [Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
Excellent. Keep us posted!
Also, I don't think "replace with different type of pipe" is the issue, since in my example, the game can crash with nothing being replaced.
Re: [Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
Yes. Which is great. One less level of complexity.
But from what I have seen so far, the problem can be very tricky, it fails in a low level place where problems normally don't occur.
Re: [Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
That sounds ominous.
I hope the fix doesn't have too many serious ripple effects if it's deep in the code in places you all thought were solid.
Re: [Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
Muhehehee it looks like the complicated fix of the other issue solved this one too.
So positive ripple effects. Nice, but rare thing.
So positive ripple effects. Nice, but rare thing.
Re: [Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
When did that fix get deployed because I had a similar issue in 0.17.79
I replaced a stone pipe to ground I had marked for upgrade to a ceramic pipe to ground with said ceramic pipe to ground. The game froze and then crashed. Log and dump attached. I tried to attach the most recent save but the server returned a parse error. I have made a local copy of the save in case this is new issue.
- Attachments
-
- factorio-dump-current.dmp
- (870.72 KiB) Downloaded 97 times
-
- factorio-current.log
- (188.18 KiB) Downloaded 107 times
Re: [Dominik][0.17.12][Mod] Crash after pipe-to-ground fast replace/regular place
If you can reproduce this with the latest version of the game make a new report please.Miiohau wrote: ↑Wed Mar 25, 2020 12:58 amWhen did that fix get deployed because I had a similar issue in 0.17.79
I replaced a stone pipe to ground I had marked for upgrade to a ceramic pipe to ground with said ceramic pipe to ground. The game froze and then crashed. Log and dump attached. I tried to attach the most recent save but the server returned a parse error. I have made a local copy of the save in case this is new issue.