Page 1 of 1

[boskid][2.0.34] Crash when trying to place a ghost of rail chain signal over existing signal to be upgraded

Posted: Mon Feb 17, 2025 8:43 pm
by Muche
While playing around with 126917 Ghosting rail signal over other signal triggers error sound I found this:

Have a piece of rail track with rail signal. Place a ghost of rail chain signal over the rail signal. This results in an upgrade order.
CrashDoubleGhostsOfRailSignals.jpg
CrashDoubleGhostsOfRailSignals.jpg (38.58 KiB) Viewed 619 times
Trying to place a ghost again results in a crash.

Code: Select all

C:\Users\build\AppData\Local\Temp\factorio-build-vz79VJ\src\Entity\BuildCheckResult.cpp(141): BuildCheckResult::abortIfNotBuildable
C:\Users\build\AppData\Local\Temp\factorio-build-vz79VJ\src\Entity\RailSignalBase.cpp(409): RailSignalBase::checkConsistency
C:\Users\build\AppData\Local\Temp\factorio-build-vz79VJ\src\Entity\EntityGhost.cpp(629): EntityGhost::checkConsistency
C:\Users\build\AppData\Local\Temp\factorio-build-vz79VJ\src\Map\ConsistencyScraper.cpp(41): ConsistencyScraper::step
C:\Users\build\AppData\Local\Temp\factorio-build-vz79VJ\src\Game.cpp(175): Game::update
C:\Users\build\AppData\Local\Temp\factorio-build-vz79VJ\src\Scenario\Scenario.cpp(1130): Scenario::updateStep
C:\Users\build\AppData\Local\Temp\factorio-build-vz79VJ\src\MainLoop.cpp(1419): MainLoop::gameUpdateStep
C:\Users\build\AppData\Local\Temp\factorio-build-vz79VJ\src\MainLoop.cpp(1214): MainLoop::gameUpdateLoop
...
Error BuildCheckResult.cpp:145: Build check failed: 3, cant-build-reason.entity-in-the-way(entity-name.rail-signal), entity[[name=rail-chain-signal, type=rail-chain-signal(RailChainSignal), position={9.500, 2.500}, direction=West, force=player, surface=nauvis, setup=false, owned-by-ghost=true, to-be-deconstructed=false, to-be-upgraded=false, simulation=true]], collider[[name=rail-signal, type=rail-signal(RailSignal), position={9.500, 2.500}, direction=West, force=player, surface=nauvis, setup=true, owned-by-ghost=false, to-be-deconstructed=false, to-be-upgraded=true, simulation=false]].
Error CrashHandler.cpp:643: Received 22
Info ConsistencyScraper.cpp:83: queued check: entity [name=entity-ghost, type=entity-ghost(EntityGhost), position={9.500, 2.500}, direction=West, force=player, surface=nauvis, setup=true, owned-by-ghost=false, to-be-deconstructed=false, to-be-upgraded=false, simulation=false]
Similarly for having a rail chain signal and placing a ghost of rail signal twice.

Requires consistency-scraper to be true.

Re: [2.0.34] Crash when trying to place a ghost of rail chain signal over existing rail signal -> rail chain signal upgr

Posted: Wed Feb 19, 2025 12:41 pm
by boskid
Thanks for the report. This issue should now be fixed for 2.0.35.