[boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

This subforum contains all the issues which we already resolved.
Giacint
Manual Inserter
Manual Inserter
Posts: 3
Joined: Sat Jun 27, 2020 2:10 pm
Contact:

[boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by Giacint »

Game crush when I save it or when autosave.
It happens only after I place rail signal on bridge of 'Cargo Ship' mod.

Saves was successfull many times in this game before.
Nothing strange happens at the moment of placing the signal, only in next saving (manual or autosave)

After crush the save file is corrupted

Error BuildCheckResult.cpp:94: Build check failed: 2, cant-build-reason.entity-in-the-way(entity-name.rail-signal), name=rail-signal, type=rail-signal, position={321.5000000000, 849.5000000000}, setup=true, owned-by-ghost=false, simulation=false.
Attachments
_autosave3.tmp.zip
(3.71 MiB) Downloaded 180 times
screenshot.jpg
screenshot.jpg (374.93 KiB) Viewed 7897 times
factorio-current.log
(16.17 KiB) Downloaded 189 times
Loewchen
Global Moderator
Global Moderator
Posts: 9548
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: [0.18.34] Crash on saving, supposedly because of 'Cargo Ship' mod

Post by Loewchen »

The log does not show a crash.
Post the latest loadable save file. Can you reproduce the crash with that file?
Giacint
Manual Inserter
Manual Inserter
Posts: 3
Joined: Sat Jun 27, 2020 2:10 pm
Contact:

Re: [0.18.34] Crash on saving, supposedly because of 'Cargo Ship' mod

Post by Giacint »

Sorry, It was wrong log
Here is new one with error and good save

If you will add signal to any bridge and try to save - game will crush
Crash always recurs under these conditions
Attachments
_autosave3.zip
(6.23 MiB) Downloaded 173 times
factorio-current.log
(18.79 KiB) Downloaded 203 times
User avatar
Reika
Filter Inserter
Filter Inserter
Posts: 583
Joined: Tue May 19, 2015 1:56 am
Contact:

Re: [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by Reika »

I just got an error which seems like the same issue, from my having just added rail chain signals as technical entities to add glow to plants (which worked in a testing save, no less):

It also corrupted the save, though it appears to have put the corruption in a "tmp" file instead, with the original zip remaining functional, which I attached.

Code: Select all

Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\cygwin64\tmp\factorio-build-blwuai\src\entity\railsignalbase.cpp (381): RailSignalBase::checkConsistency
c:\cygwin64\tmp\factorio-build-blwuai\src\entity\railsignalbase.cpp (67): RailSignalBase::save
c:\cygwin64\tmp\factorio-build-blwuai\src\entity\railchainsignal.cpp (48): RailChainSignal::save
c:\cygwin64\tmp\factorio-build-blwuai\src\surface\chunk.cpp (93): Chunk::save
c:\cygwin64\tmp\factorio-build-blwuai\src\surface\surface.cpp (907): Surface::save
c:\cygwin64\tmp\factorio-build-blwuai\src\map\map.cpp (1520): Map::save
c:\cygwin64\tmp\factorio-build-blwuai\src\scenario\scenario.cpp (1005): Scenario::saveMap
c:\cygwin64\tmp\factorio-build-blwuai\src\scenario\scenario.cpp (901): Scenario::saveAs
c:\cygwin64\tmp\factorio-build-blwuai\src\scenario\parallelscenariosaver.cpp (99): ParallelScenarioSaver::doSave
c:\program files (x86)\microsoft visual studio\2017\buildtools\vc\tools\msvc\14.15.26726\include\thr\xthread (230): std::_LaunchPad<std::unique_ptr<std::tuple<void (__cdecl RazerChromaController::*)(void),RazerChromaController *>,std::default_delete<std::tuple<void (__cdecl RazerChromaController::*)(void),RazerChromaController *> > > >::_Go
c:\program files (x86)\microsoft visual studio\2017\buildtools\vc\tools\msvc\14.15.26726\include\thr\xthread (209): std::_Pad::_Call_func
minkernel\crts\ucrt\src\appcrt\startup\thread.cpp (115): thread_start<unsigned int (__cdecl*)(void * __ptr64)>
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000076CD556D)
0000000076CD556D (kernel32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000076E3385D)
0000000076E3385D (ntdll): (filename not available): RtlUserThreadStart
Stack trace logging done
6088.949 Error RailSignalBase.cpp:381: connection.rail->segment->hasSignal(this) was not true
Logger::writeStacktrace skipped.
6088.949 Error CrashHandler.cpp:189: Map tick at moment of crash: 16290176
Image
Attachments
new-0.18-save-launch-strikes-.40-tech-uncappedrefinery-2-artillerymove-wastemove-reactor-secondoil-.42-newtrains-oilmodules-posttech-dropoffupgrade-volcanic-labs.zip
(56.73 MiB) Downloaded 243 times
factorio-current.log
(218.25 KiB) Downloaded 168 times
Image
User avatar
boskid
Factorio Staff
Factorio Staff
Posts: 3273
Joined: Thu Dec 14, 2017 6:56 pm
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by boskid »

Ok its "fixed" for 1.1.0. Rails logic is not happy when there are multiple rail signals binding to the same rail end on the same side. I am just adding the check to prevent multiple rail signals from being defined that do not collide with each other.

Code: Select all

  10.333 Error ModManager.cpp:1510: entity prototype "invisible_chain_signal" (rail-chain-signal) collision mask does not collide with entity "buoy" (rail-signal).
rail signal collision masks must collide with all other rail signals.
invisible_chain_signal modifications: Cargo Ships
buoy modifications: Cargo Ships
User avatar
Reika
Filter Inserter
Filter Inserter
Posts: 583
Joined: Tue May 19, 2015 1:56 am
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by Reika »

boskid wrote: Mon Oct 19, 2020 10:10 am Ok its "fixed" for 1.1.0. Rails logic is not happy when there are multiple rail signals binding to the same rail end on the same side. I am just adding the check to prevent multiple rail signals from being defined that do not collide with each other.

Code: Select all

  10.333 Error ModManager.cpp:1510: entity prototype "invisible_chain_signal" (rail-chain-signal) collision mask does not collide with entity "buoy" (rail-signal).
rail signal collision masks must collide with all other rail signals.
invisible_chain_signal modifications: Cargo Ships
buoy modifications: Cargo Ships
Can they still be made to not collide with anything else? If not, this will break all these "technical lights".
Image
User avatar
boskid
Factorio Staff
Factorio Staff
Posts: 3273
Joined: Thu Dec 14, 2017 6:56 pm
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by boskid »

Reika wrote: Mon Oct 26, 2020 7:39 pm Can they still be made to not collide with anything else? If not, this will break all these "technical lights".
Only restrictions are with rail signals themselves. They are still allowed to be made to not collide with other entities. I am reusing the same logic that is applied between rails (have to collide with other rails) and as for rolling stocks (have to collide with other rolling stocks).

-- edit:
Just in case look also at other restrictions that will be new in 1.1: 82623
User avatar
Reika
Filter Inserter
Filter Inserter
Posts: 583
Joined: Tue May 19, 2015 1:56 am
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by Reika »

boskid wrote: Mon Oct 26, 2020 7:44 pm
Reika wrote: Mon Oct 26, 2020 7:39 pm Can they still be made to not collide with anything else? If not, this will break all these "technical lights".
Only restrictions are with rail signals themselves. They are still allowed to be made to not collide with other entities. I am reusing the same logic that is applied between rails (have to collide with other rails) and as for rolling stocks (have to collide with other rolling stocks).

-- edit:
Just in case look also at other restrictions that will be new in 1.1: 82623
This does mean using one of those "unnamed" collision layers, though, and forcibly making every rail signal use that layer, while having your own technical signal only be that layer.
Image
User avatar
boskid
Factorio Staff
Factorio Staff
Posts: 3273
Joined: Thu Dec 14, 2017 6:56 pm
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by boskid »

Reika wrote: Tue Oct 27, 2020 4:11 pm This does mean using one of those "unnamed" collision layers, though, and forcibly making every rail signal use that layer, while having your own technical signal only be that layer.
Yes, rail signals now have one extra layer added taken from those unnamed.
User avatar
Reika
Filter Inserter
Filter Inserter
Posts: 583
Joined: Tue May 19, 2015 1:56 am
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by Reika »

boskid wrote: Tue Oct 27, 2020 5:57 pm
Reika wrote: Tue Oct 27, 2020 4:11 pm This does mean using one of those "unnamed" collision layers, though, and forcibly making every rail signal use that layer, while having your own technical signal only be that layer.
Yes, rail signals now have one extra layer added taken from those unnamed.
I forsee exhausting those layers, or having a collision with another mod using it for another purpose.

I only use the "fake" rail signals as light sources; is there another entity-based way you would recommend? LuaRendering is not an option because of how it chokes on large quantities of lights.
Image
User avatar
boskid
Factorio Staff
Factorio Staff
Posts: 3273
Joined: Thu Dec 14, 2017 6:56 pm
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by boskid »

Reika wrote: Thu Oct 29, 2020 7:23 pm I forsee exhausting those layers, or having a collision with another mod using it for another purpose.
Nope:
https://forums.factorio.com/viewtopic.php?p=518171#p518171 wrote:Changed collision mask 'layer-11' to 'rail-layer'. Increased the total number of collision masks from 14 to 55.
Rseding91
Factorio Staff
Factorio Staff
Posts: 14594
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by Rseding91 »

Reika wrote: Thu Oct 29, 2020 7:23 pm ... is there another entity-based way you would recommend? LuaRendering is not an option because of how it chokes on large quantities of lights.
You can configure lamps to require no power and always be on.
If you want to get ahold of me I'm almost always on Discord.
User avatar
Reika
Filter Inserter
Filter Inserter
Posts: 583
Joined: Tue May 19, 2015 1:56 am
Contact:

Re: [boskid] [0.18.34] Crash on saving (Build check failed) after adding train signal to 'Cargo Ship' bridge

Post by Reika »

Rseding91 wrote: Thu Oct 29, 2020 9:37 pm
Reika wrote: Thu Oct 29, 2020 7:23 pm ... is there another entity-based way you would recommend? LuaRendering is not an option because of how it chokes on large quantities of lights.
You can configure lamps to require no power and always be on.
True, that is now a thing with the void power source.
Image
Post Reply

Return to “Resolved Problems and Bugs”