Page 1 of 1
[0.14.2] [Hanziq] Crash on placing specific BP with logic wires.
Posted: Thu Sep 01, 2016 5:55 pm
by Honvor
This savegame was originally created in 12.xx, I was converting my base to 13/14 style trains/stations, when I ran into a semi reproducible crash. It seems related to the powergrid, I narrowed it down to placing a single electric pole. I created the savegame to later post, continued playing (overwriting my autosaves!), and now the savegame turns out to crash on load. I have an older savegame and I know what I was doing, so if this doesn't help I can try to create a savegame which will require interaction to crash.
Re: [0.14.2] Crash on Load Game
Posted: Thu Sep 01, 2016 6:23 pm
by Loewchen
Code: Select all
0.001 2016-09-01 19:42:26; Factorio 0.14.2 (build 24403, win64, alpha)
0.001 Operating system: Windows 10
0.001 Program arguments: "C:\Games\Factorio\bin\x64\Factorio.exe"
0.001 Read data path: C:/Games/Factorio/data
0.001 Write data path: C:/Users/hans/AppData/Roaming/Factorio
0.001 Binaries path: C:/Games/Factorio/bin
0.014 Display options: [FullScreen: false] [VSync: false] [UIScale: 100%] [MultiSampling: OFF] [Screen: 255]
0.015 Available display adapters: 1
0.015 [0]: \\.\DISPLAY1 - AMD Radeon (TM) R9 390 Series {0x8080005, [0,0], 2560x1440, 32bit, 60Hz}
0.016 Create display on adapter 0. Size 1280x720 at position [630, 342].
0.195 Initialised OpenGL:[0] AMD Radeon (TM) R9 390 Series; driver: 4.5.13447 Compatibility Profile Context 20.19.0.32832
0.213 Desktop composition is active.
0.213 Graphics options: [Graphics quality: normal] [Video memory usage: high] [Light scale: 100%] [DXT: false]
0.316 Loading mod core 0.0.0 (data.lua)
0.320 Loading mod base 0.14.2 (data.lua)
0.385 Checksum for core: 1620335853
0.385 Checksum for mod base: 3867985917
0.600 Info PlayerData.cpp:45: Local player-data.json available, timestamp 1472688689
0.600 Info PlayerData.cpp:52: Cloud player-data.json unavailable
0.677 Initial atlas bitmap size is 16384
0.679 Created atlas bitmap 16384x5589
0.679 Created atlas bitmap 4096x968
0.679 Created atlas bitmap 4096x3652
13.082 Sprites loaded
13.082 Convert atlas 4096x968 to: trilinear-filtering
13.096 Convert atlas 4096x3652 to: mipmap
13.209 Loading sounds...
14.227 Custom inputs active: 0
14.227 Info Updater.cpp:749: Downloading https://updater.factorio.com/get-available-versions?username=honvor&token=<private>&apiVersion=2
14.936 0 packages available to download (experimental updates enabled).
15.007 Factorio initialised
20.624 Loading map C:\Users\hans\AppData\Roaming\Factorio\saves\old2.zip
20.705 Info Scenario.cpp:148: Map version 0.14.2-2
21.891 Error CrashHandler.cpp:135: Exception Code: c0000005, Address: 00007FF797465BAA
ModuleBase: 00007FF7972B0000, ImageSize: 01163000, RelativeAddress: 001b5baa
21.891 Error CrashHandler.cpp:145: Exception Context:
rax=0000000000000000, rbx=000001a68fdfd010, rcx=000001a68993eeb0,
rdx=0000000000000000, rsi=0000002c95ffef60, rdi=000001a68fdfcfb0,
rip=00007ff797465baa, rsp=0000002c95ffeef0, rbp=000001a68993eeb0,
r8=000001a69f9bfae0, r9=0000000000000004, r10=0000000000000000,
r11=000001a68fdd0020, r12=000001a60e2ecca0, r13=000001a63461fdf0,
r14=000001a69f9bfae0, r15=0000000000000004
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\cygwin64\tmp\factorio-t0whcv\libraries\stackwalker\stackwalker.cpp (906): StackWalker::ShowCallstack
c:\cygwin64\tmp\factorio-t0whcv\src\util\logger.cpp (332): Logger::writeStacktrace
c:\cygwin64\tmp\factorio-t0whcv\src\util\logger.cpp (386): Logger::logStacktrace
c:\cygwin64\tmp\factorio-t0whcv\src\util\crashhandler.cpp (105): CrashHandler::writeStackTrace
c:\cygwin64\tmp\factorio-t0whcv\src\util\crashhandler.cpp (155): CrashHandler::SehHandler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFA76087E1E)
00007FFA76087E1E (KERNELBASE): (filename not available): UnhandledExceptionFilter
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFA78E5D998)
00007FFA78E5D998 (ntdll): (filename not available): memset
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFA78E45B26)
00007FFA78E45B26 (ntdll): (filename not available): _C_specific_handler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFA78E59AFD)
00007FFA78E59AFD (ntdll): (filename not available): _chkstk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFA78DE4FE9)
00007FFA78DE4FE9 (ntdll): (filename not available): RtlImageNtHeaderEx
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFA78E58C0A)
00007FFA78E58C0A (ntdll): (filename not available): KiUserExceptionDispatcher
c:\cygwin64\tmp\factorio-t0whcv\src\entity\electricpole.cpp (750): ElectricPole::countOrientationTo
c:\cygwin64\tmp\factorio-t0whcv\src\entity\electricpole.cpp (738): ElectricPole::setupOrientation
c:\cygwin64\tmp\factorio-t0whcv\src\entity\electricpole.cpp (562): ElectricPole::setup
c:\cygwin64\tmp\factorio-t0whcv\src\map\map.cpp (696): Map::setupEntities
c:\cygwin64\tmp\factorio-t0whcv\src\scenario\scenario.cpp (216): Scenario::loadFactory
c:\cygwin64\tmp\factorio-t0whcv\src\scenario\parallelscenarioloader.cpp (58): ParallelScenarioLoader::doLoad
c:\program files (x86)\microsoft visual studio 14.0\vc\include\thr\xthread (247): std::_LaunchPad<std::unique_ptr<std::tuple<void (__cdecl*)(ParallelScenarioLoader * __ptr64,MapDeserialiser * __ptr64,enum InputType,InputHandler * __ptr64,MultiplayerManagerBase * __ptr64,bool),ParallelScenarioLoader * __ptr64,MapDeserialiser * __ptr64,enum InputType,InputHandler * __ptr64,MultiplayerManagerBase * __ptr64,bool>,std::default_delete<std::tuple<void (__cdecl*)(ParallelScenarioLoader * __ptr64,MapDeserialiser * __ptr64,enum InputType,InputHandler * __ptr64,MultiplayerManagerBase * __ptr64,bool),ParallelScenarioLoader * __ptr64,MapDeserialiser * __ptr64,enum InputType,InputHandler * __ptr64,MultiplayerManagerBase * __ptr64,bool> > > >::_Run
c:\program files (x86)\microsoft visual studio 14.0\vc\include\thr\xthread (210): std::_Pad::_Call_func
d:\th\minkernel\crts\ucrt\src\appcrt\startup\thread.cpp (115): thread_start<unsigned int (__cdecl*)(void * __ptr64)>
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFA78D18102)
00007FFA78D18102 (KERNEL32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFA78E0C5B4)
00007FFA78E0C5B4 (ntdll): (filename not available): RtlUserThreadStart
22.341 Error Util.cpp:77: Unexpected error occurred. If you're running the latest version of the game you can help us solve the problem by posting the contents of the log file on the Factorio forums.
Please also include the save file(s), any mods you may be using, and any steps you know of to reproduce the crash.
Re: [0.14.2] Crash on Load Game
Posted: Thu Sep 01, 2016 6:40 pm
by Rseding91
Do you know how you got the map into this state? Perhaps steps to reproduce it from a known working map?
The save file has an electric pole with a wire connection that points at nothing (which isn't valid).
Re: [0.14.2] Crash on Load Game
Posted: Fri Sep 02, 2016 8:48 am
by Honvor
I got the game in this state by trying to create a savegame which requires only one step to crash. It looks like I went to far
. The crash originally happened when I was redesigning my main unloading station. It has logic to close tracks which are unloading, and some simple overflow logic to prevent all tracks from being closed.
To reproduce this crash once the game is loaded:
- Take blueprint book
- Click to build the next two station entries
- When the bots place an electric pole in the second build, it crashes
I tried several times, it crashed 2 times on placing the second, and one time on placing the third station entry.
Re: [0.14.2] Crash on Load Game
Posted: Fri Sep 02, 2016 12:06 pm
by Loewchen
Honvor wrote:To reproduce this crash once the game is loaded:
- Take blueprint book
- Click to build the next two station entries
- When the bots place an electric pole in the second build, it crashes
I tried several times, it crashed 2 times on placing the second, and one time on placing the third station entry.
Could reproduce on the second attempt:
Code: Select all
0.003 2016-09-02 14:04:01; Factorio 0.14.2 (build 24403, win64, alpha)
0.003 Operating system: Windows 7 Service Pack 1
0.003 Program arguments: "C:\Spiele\Factorio\Factorio_0.14\bin\x64\factorio.exe"
0.003 Read data path: C:/Spiele/Factorio/Factorio_0.14/data
0.003 Write data path: C:/Spiele/Factorio/Factorio_0.14
0.003 Binaries path: C:/Spiele/Factorio/Factorio_0.14/bin
0.021 Display options: [FullScreen: true] [VSync: true] [UIScale: 95%] [MultiSampling: OFF] [Screen: 255]
0.023 Available display adapters: 1
0.023 [0]: \\.\DISPLAY1 - NVIDIA GeForce GTX 560 Ti {0x05, [0,0], 1920x1080, 32bit, 60Hz}
0.023 Create display on adapter 0. Size 1280x720 at position [310, 162].
0.083 Initialised Direct3D:[0] NVIDIA GeForce GTX 560 Ti ; driver: nvd3dumx.dll 9.18.13.4052
0.085 Video memory size (dedicated video/dedicated system/shared system/available): 977/0/3071/4041 MB
0.112 Device reset internal.
0.113 Desktop composition is active.
0.113 WARNING: You have vsync and desktop composition enabled on Direct3d. Cosider disabling vsync to increase performance on some confirgurations.
0.113 Graphics options: [Graphics quality: low] [Video memory usage: all] [Light scale: 50%] [DXT: false]
0.195 Loading mod core 0.0.0 (data.lua)
0.200 Loading mod base 0.14.2 (data.lua)
0.344 Checksum for core: 1620335853
0.344 Checksum for mod base: 3867985917
0.689 Info PlayerData.cpp:45: Local player-data.json available, timestamp 1472767967
0.689 Info PlayerData.cpp:52: Cloud player-data.json unavailable
0.891 Initial atlas bitmap size is 16384
0.892 Created atlas bitmap 16384x3814
1.113 Created atlas bitmap 4096x912
1.118 Created atlas bitmap 4096x1052
6.571 Sprites loaded
6.571 Convert atlas 4096x912 to: trilinear-filtering
6.594 Convert atlas 4096x1052 to: mipmap
6.744 Loading sounds...
8.313 Custom inputs active: 0
8.356 Factorio initialised
11.229 Loading map C:\Spiele\Factorio\Factorio_0.14\saves\old-crash_invalidWire.zip
11.273 Info Scenario.cpp:148: Map version 0.14.2-2
13.080 Checksum for script C:/Spiele/Factorio/Factorio_0.14/temp/currently-playing/control.lua: 900459546
20.801 Error CrashHandler.cpp:135: Exception Code: c0000005, Address: 000000013F765BAA
ModuleBase: 000000013F5B0000, ImageSize: 01163000, RelativeAddress: 001b5baa
20.801 Error CrashHandler.cpp:145: Exception Context:
rax=0000000000000000, rbx=0000000043b3c520, rcx=0000000048989630,
rdx=0000000000000000, rsi=000000000824ea00, rdi=0000000043b3c4c0,
rip=000000013f765baa, rsp=000000000824e990, rbp=0000000048989630,
r8=000000004bf13610, r9=0000000000000004, r10=000000000000007a,
r11=0000000000000000, r12=0000000000000003, r13=000000004898a050,
r14=000000004bf13610, r15=0000000000000004
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\cygwin64\tmp\factorio-t0whcv\libraries\stackwalker\stackwalker.cpp (906): StackWalker::ShowCallstack
c:\cygwin64\tmp\factorio-t0whcv\src\util\logger.cpp (332): Logger::writeStacktrace
c:\cygwin64\tmp\factorio-t0whcv\src\util\logger.cpp (386): Logger::logStacktrace
c:\cygwin64\tmp\factorio-t0whcv\src\util\crashhandler.cpp (105): CrashHandler::writeStackTrace
c:\cygwin64\tmp\factorio-t0whcv\src\util\crashhandler.cpp (155): CrashHandler::SehHandler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 000000007760BC00)
000000007760BC00 (kernel32): (filename not available): UnhandledExceptionFilter
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 000000007780FF88)
000000007780FF88 (ntdll): (filename not available): EtwEventSetInformation
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000777A78C8)
00000000777A78C8 (ntdll): (filename not available): _C_specific_handler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000777B7E8D)
00000000777B7E8D (ntdll): (filename not available): RtlDecodePointer
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000777A84CF)
00000000777A84CF (ntdll): (filename not available): RtlUnwindEx
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000777DBAC8)
00000000777DBAC8 (ntdll): (filename not available): KiUserExceptionDispatcher
c:\cygwin64\tmp\factorio-t0whcv\src\entity\electricpole.cpp (750): ElectricPole::countOrientationTo
c:\cygwin64\tmp\factorio-t0whcv\src\entity\electricpole.cpp (738): ElectricPole::setupOrientation
c:\cygwin64\tmp\factorio-t0whcv\src\entity\electricpole.cpp (348): ElectricPole::connectTo
c:\cygwin64\tmp\factorio-t0whcv\src\entity\electricpole.cpp (837): ElectricPole::connectNeighbours
c:\cygwin64\tmp\factorio-t0whcv\src\entity\electricpole.cpp (556): ElectricPole::setup
c:\cygwin64\tmp\factorio-t0whcv\src\surface\surface.cpp (78): Surface::addEntity
c:\cygwin64\tmp\factorio-t0whcv\src\entity\entityghost.cpp (241): EntityGhost::revive
c:\cygwin64\tmp\factorio-t0whcv\src\entity\constructionrobot.cpp (472): ConstructionRobot::update
c:\cygwin64\tmp\factorio-t0whcv\src\surface\chunk.cpp (486): Chunk::update
c:\cygwin64\tmp\factorio-t0whcv\src\surface\surface.cpp (854): Surface::update
c:\cygwin64\tmp\factorio-t0whcv\src\map\map.cpp (1128): Map::update
c:\cygwin64\tmp\factorio-t0whcv\src\game.cpp (146): Game::update
c:\cygwin64\tmp\factorio-t0whcv\src\scenario\scenario.cpp (835): Scenario::update
c:\cygwin64\tmp\factorio-t0whcv\src\mainloop.cpp (711): MainLoop::gameUpdateStep
c:\cygwin64\tmp\factorio-t0whcv\src\mainloop.cpp (581): MainLoop::gameUpdateLoop
c:\cygwin64\tmp\factorio-t0whcv\src\util\workerthread.cpp (33): WorkerThread::loop
c:\program files (x86)\microsoft visual studio 14.0\vc\include\thr\xthread (247): std::_LaunchPad<std::unique_ptr<std::tuple<void (__cdecl WorkerThread::*)(void) __ptr64,WorkerThread * __ptr64>,std::default_delete<std::tuple<void (__cdecl WorkerThread::*)(void) __ptr64,WorkerThread * __ptr64> > > >::_Run
c:\program files (x86)\microsoft visual studio 14.0\vc\include\thr\xthread (210): std::_Pad::_Call_func
d:\th\minkernel\crts\ucrt\src\appcrt\startup\thread.cpp (115): thread_start<unsigned int (__cdecl*)(void * __ptr64)>
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000775859BD)
00000000775859BD (kernel32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000777BA2E1)
00000000777BA2E1 (ntdll): (filename not available): RtlUserThreadStart
23.687 Error CrashHandler.cpp:106: Map tick at moment of crash: 35742296
23.687 Error Util.cpp:77: Unexpected error occurred. If you're running the latest version of the game you can help us solve the problem by posting the contents of the log file on the Factorio forums.
Please also include the save file(s), any mods you may be using, and any steps you know of to reproduce the crash.
Re: [0.14.2] [kovarex] Crash on placing specific BP with logic wires.
Posted: Fri Sep 02, 2016 12:44 pm
by aober93
Hmm this might be what happened to me (
viewtopic.php?f=7&t=32034&p=202035#p202035)
I also built a railway station and put wires to signals and poles ,and experimented with this a while. Suddenly the game crashed while razing this station and now my games wont load. This sux
Re: [0.14.2] [Twinsen] Crash on placing specific BP with logic wires.
Posted: Fri Sep 02, 2016 5:12 pm
by aober93
Well i replicated this. Ocasionally it works as you meantioned, possibly this is due different build order. But check out the wired signal on the diagonal rail. Occasionally it misses wires. Try to remove it ,and game crashes just like in my issue.
Anyway you can replicate this with blueprints ,if you just place a diagonal rail with many signals, wire them up with red wire. Blueprint this, and place it a few times. The wires on the signal will be missing just like with ur blueprint. They crash your game. And add a pole to the blueprint and wire this up alot. The blueprint will crash the game directly when placing, just like yours.
Re: [0.14.2] [Twinsen] Crash on placing specific BP with logic wires.
Posted: Fri Sep 02, 2016 6:09 pm
by Twinsen
Thanks for the report. I managed to reproduce it using the provided save game.
This is caused by a old ugly hack inside the rail building code. Reassigned to Hanziq
Re: [0.14.2] [Hanziq] Crash on placing specific BP with logic wires.
Posted: Fri Sep 02, 2016 7:57 pm
by Nexela
Re: [0.14.2] [Hanziq] Crash on placing specific BP with logic wires.
Posted: Mon Sep 05, 2016 4:54 pm
by HanziQ
If the fix doesn't result in some other issue (it might), this should be fixed in the next release.
Re: [0.14.2] [Hanziq] Crash on placing specific BP with logic wires.
Posted: Mon Sep 05, 2016 5:18 pm
by Twinsen
Unfortunately corrupted save games will continue to crash when loaded and you will have to use an old save game.
Re: [0.14.2] [Hanziq] Crash on placing specific BP with logic wires.
Posted: Tue Sep 06, 2016 6:07 pm
by Honvor
Tested all my known crashable loadable games with 14.4: none of them crashes anymore. Nice one. Luckily I don't have any corrupted savegames other than the one I originally found the problem with.