Game crashed whilst sleeping
made some noise cancelling headphones, wore them and slept, error message was thrown on screen
sleep/wake up/eat breakfast/kill zeds
not applicable
0.d-11748-g36402aa
build 10274
Mods:
Dark days ahead
More locations
Fuji's more buildings
Urban Development
Graphical overmap
Graphical overmap More locations
Graphical overmap Fuji's more buildings
Graphical overmap Urban Development
Crashlog as follows:
10:19:23.918 ERROR : (error message will follow backtrace)
#0
(dbghelp: @0x7c6e26[cataclysm-tiles.exe+0x3c6e26]),
(libbacktrace: Z21debug_write_backtraceRSo+0x56@0x7c6e26),
(libbacktrace: 0x7c6e26 [unknown src]:0 [unknown func]),
#1
(dbghelp: @0x7c78ba[cataclysm-tiles.exe+0x3c78ba]),
(libbacktrace: Z8DebugLog10DebugLevel10DebugClass+0x34a@0x7c78ba),
(libbacktrace: 0x7c78ba [unknown src]:0 [unknown func]),
#2
(dbghelp: @0x7ca5d6[cataclysm-tiles.exe+0x3ca5d6]),
(libbacktrace: Z12realDebugmsgPKcS0_S0_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x76@0x7ca5d6),
(libbacktrace: 0x7ca5d6 [unknown src]:0 [unknown func]),
#3
(dbghelp: @0x7bc7f2[cataclysm-tiles.exe+0x3bc7f2]),
(libbacktrace: ZN16Creature_tracker10update_posERK7monsterRK8tripoint+0x872@0x7bc7f2),
(libbacktrace: 0x7bc7f2 [unknown src]:0 [unknown func]),
#4
(dbghelp: @0xf29088[cataclysm-tiles.exe+0xb29088]),
(libbacktrace: ZN7monster6setposERK8tripoint+0x58@0xf29088),
(libbacktrace: 0xf29088 [unknown src]:0 [unknown func]),
#5
(dbghelp: @0xf09430[cataclysm-tiles.exe+0xb09430]),
(libbacktrace: ZN7monster7move_toERK8tripointbf+0x1b0@0xf09430),
(libbacktrace: 0xf09430 [unknown src]:0 [unknown func]),
#6
(dbghelp: @0xf0cf73[cataclysm-tiles.exe+0xb0cf73]),
(libbacktrace: ZN7monster7stumbleEv+0x3a3@0xf0cf73),
(libbacktrace: 0xf0cf73 [unknown src]:0 [unknown func]),
#7
(dbghelp: @0xf0e6b6[cataclysm-tiles.exe+0xb0e6b6]),
(libbacktrace: ZN7monster4moveEv+0x1426@0xf0e6b6),
(libbacktrace: 0xf0e6b6 [unknown src]:0 [unknown func]),
#8
(dbghelp: @0x9521f1[cataclysm-tiles.exe+0x5521f1]),
(libbacktrace: ZN4game7monmoveEv+0x221@0x9521f1),
(libbacktrace: 0x9521f1 [unknown src]:0 [unknown func]),
#9
(dbghelp: @0x954f5c[cataclysm-tiles.exe+0x554f5c]),
(libbacktrace: ZN4game7do_turnEv+0x96c@0x954f5c),
(libbacktrace: 0x954f5c [unknown src]:0 [unknown func]),
#10
(dbghelp: IMG_LoadWEBP_RW+0x8c93ac@0x1e9d52c[cataclysm-tiles.exe+0x1a9d52c]),
(libbacktrace: main+0x10fc@0x1e9d52c),
(libbacktrace: 0x1e9d52c [unknown src]:0 [unknown func]),
#11
(dbghelp: @0x4013ed[cataclysm-tiles.exe+0x13ed]),
(libbacktrace: _tmainCRTStartup+0x23d@0x4013ed),
(libbacktrace: 0x4013ed /home/narc/src/mxe/tmp-gcc-x86_64-w64-mingw32.static/gcc-5.4.0.build_/mingw-w64-v5.0.2/mingw-w64-crt/crt/crtexe.c:336 __tmainCRTStartup),
#12
(dbghelp: @0x4014fb[cataclysm-tiles.exe+0x14fb]),
(libbacktrace: WinMainCRTStartup+0x1b@0x4014fb),
(libbacktrace: 0x4014fb /home/narc/src/mxe/tmp-gcc-x86_64-w64-mingw32.static/gcc-5.4.0.build_/mingw-w64-v5.0.2/mingw-w64-crt/crt/crtexe.c:186 WinMainCRTStartup),
#13
(dbghelp: BaseThreadInitThunk+0x14@0x7ffba1657bd4[KERNEL32.DLL+0x17bd4]),
(backtrace_syminfo failed: errno = -1, msg = no symbol table in PE/COFF executable),
(backtrace_pcinfo failed: errno = -1, msg = no debug info in PE/COFF executable),
#14
(dbghelp: RtlUserThreadStart+0x21@0x7ffba2c4ced1[ntdll.dll+0x6ced1]),
(backtrace_syminfo failed: errno = -1, msg = no symbol table in PE/COFF executable),
(backtrace_pcinfo failed: errno = -1, msg = no debug info in PE/COFF executable),
Backtrace emission took 1 seconds.
src/creature_tracker.cpp:127 [bool Creature_tracker::update_pos(const monster&, const tripoint&)] update_zombie_pos: wanted to move the zombie to 126,59,-1, but new location already has the zombie
Looks similar to #35560 and #37392
I couldn't reproduce the error using your steps; I was able to sleep a night in a house basement with noise cancelling headgear and unpulped zombies upstairs. Do you get the error every time you sleep in that spot?
In this same game since that error, I have had it happen on a number of occasions. I have been sleeping in the same spot whenever it happens. The creatures it reports are different though.
Log is as follows:
12:50:08.399 ERROR : (error message will follow backtrace)
#0
(dbghelp: @0x7c6e26[cataclysm-tiles.exe+0x3c6e26]),
(libbacktrace: Z21debug_write_backtraceRSo+0x56@0x7c6e26),
(libbacktrace: 0x7c6e26 [unknown src]:0 [unknown func]),
#1
(dbghelp: @0x7c78ba[cataclysm-tiles.exe+0x3c78ba]),
(libbacktrace: Z8DebugLog10DebugLevel10DebugClass+0x34a@0x7c78ba),
(libbacktrace: 0x7c78ba [unknown src]:0 [unknown func]),
#2
(dbghelp: @0x7ca5d6[cataclysm-tiles.exe+0x3ca5d6]),
(libbacktrace: Z12realDebugmsgPKcS0_S0_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x76@0x7ca5d6),
(libbacktrace: 0x7ca5d6 [unknown src]:0 [unknown func]),
#3
(dbghelp: @0x7bc7f2[cataclysm-tiles.exe+0x3bc7f2]),
(libbacktrace: ZN16Creature_tracker10update_posERK7monsterRK8tripoint+0x872@0x7bc7f2),
(libbacktrace: 0x7bc7f2 [unknown src]:0 [unknown func]),
#4
(dbghelp: @0xf29088[cataclysm-tiles.exe+0xb29088]),
(libbacktrace: ZN7monster6setposERK8tripoint+0x58@0xf29088),
(libbacktrace: 0xf29088 [unknown src]:0 [unknown func]),
#5
(dbghelp: @0xf09430[cataclysm-tiles.exe+0xb09430]),
(libbacktrace: ZN7monster7move_toERK8tripointbf+0x1b0@0xf09430),
(libbacktrace: 0xf09430 [unknown src]:0 [unknown func]),
#6
(dbghelp: @0xf0cf73[cataclysm-tiles.exe+0xb0cf73]),
(libbacktrace: ZN7monster7stumbleEv+0x3a3@0xf0cf73),
(libbacktrace: 0xf0cf73 [unknown src]:0 [unknown func]),
#7
(dbghelp: @0xf0e964[cataclysm-tiles.exe+0xb0e964]),
(libbacktrace: ZN7monster4moveEv+0x16d4@0xf0e964),
(libbacktrace: 0xf0e964 [unknown src]:0 [unknown func]),
#8
(dbghelp: @0x9521f1[cataclysm-tiles.exe+0x5521f1]),
(libbacktrace: ZN4game7monmoveEv+0x221@0x9521f1),
(libbacktrace: 0x9521f1 [unknown src]:0 [unknown func]),
#9
(dbghelp: @0x954f5c[cataclysm-tiles.exe+0x554f5c]),
(libbacktrace: ZN4game7do_turnEv+0x96c@0x954f5c),
(libbacktrace: 0x954f5c [unknown src]:0 [unknown func]),
#10
(dbghelp: IMG_LoadWEBP_RW+0x8c93ac@0x1e9d52c[cataclysm-tiles.exe+0x1a9d52c]),
(libbacktrace: main+0x10fc@0x1e9d52c),
(libbacktrace: 0x1e9d52c [unknown src]:0 [unknown func]),
#11
(dbghelp: @0x4013ed[cataclysm-tiles.exe+0x13ed]),
(libbacktrace: _tmainCRTStartup+0x23d@0x4013ed),
(libbacktrace: 0x4013ed /home/narc/src/mxe/tmp-gcc-x86_64-w64-mingw32.static/gcc-5.4.0.build_/mingw-w64-v5.0.2/mingw-w64-crt/crt/crtexe.c:336 __tmainCRTStartup),
#12
(dbghelp: @0x4014fb[cataclysm-tiles.exe+0x14fb]),
(libbacktrace: WinMainCRTStartup+0x1b@0x4014fb),
(libbacktrace: 0x4014fb /home/narc/src/mxe/tmp-gcc-x86_64-w64-mingw32.static/gcc-5.4.0.build_/mingw-w64-v5.0.2/mingw-w64-crt/crt/crtexe.c:186 WinMainCRTStartup),
#13
(dbghelp: BaseThreadInitThunk+0x14@0x7ffba1657bd4[KERNEL32.DLL+0x17bd4]),
(backtrace_syminfo failed: errno = -1, msg = no symbol table in PE/COFF executable),
(backtrace_pcinfo failed: errno = -1, msg = no debug info in PE/COFF executable),
#14
(dbghelp: RtlUserThreadStart+0x21@0x7ffba2c4ced1[ntdll.dll+0x6ced1]),
(backtrace_syminfo failed: errno = -1, msg = no symbol table in PE/COFF executable),
(backtrace_pcinfo failed: errno = -1, msg = no debug info in PE/COFF executable),
Backtrace emission took 0 seconds.
src/creature_tracker.cpp:127 [bool Creature_tracker::update_pos(const monster&, const tripoint&)] update_zombie_pos: wanted to move the rattlesnake to 126,59,-1, but new location already has the zombie
13:04:03.805 ERROR : (error message will follow backtrace)
#0
(dbghelp: @0x7c6e26[cataclysm-tiles.exe+0x3c6e26]),
(libbacktrace: Z21debug_write_backtraceRSo+0x56@0x7c6e26),
(libbacktrace: 0x7c6e26 [unknown src]:0 [unknown func]),
#1
(dbghelp: @0x7c78ba[cataclysm-tiles.exe+0x3c78ba]),
(libbacktrace: Z8DebugLog10DebugLevel10DebugClass+0x34a@0x7c78ba),
(libbacktrace: 0x7c78ba [unknown src]:0 [unknown func]),
#2
(dbghelp: @0x7ca5d6[cataclysm-tiles.exe+0x3ca5d6]),
(libbacktrace: Z12realDebugmsgPKcS0_S0_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x76@0x7ca5d6),
(libbacktrace: 0x7ca5d6 [unknown src]:0 [unknown func]),
#3
(dbghelp: @0x7bc7f2[cataclysm-tiles.exe+0x3bc7f2]),
(libbacktrace: ZN16Creature_tracker10update_posERK7monsterRK8tripoint+0x872@0x7bc7f2),
(libbacktrace: 0x7bc7f2 [unknown src]:0 [unknown func]),
#4
(dbghelp: @0xf29088[cataclysm-tiles.exe+0xb29088]),
(libbacktrace: ZN7monster6setposERK8tripoint+0x58@0xf29088),
(libbacktrace: 0xf29088 [unknown src]:0 [unknown func]),
#5
(dbghelp: @0xf09430[cataclysm-tiles.exe+0xb09430]),
(libbacktrace: ZN7monster7move_toERK8tripointbf+0x1b0@0xf09430),
(libbacktrace: 0xf09430 [unknown src]:0 [unknown func]),
#6
(dbghelp: @0xf0cf73[cataclysm-tiles.exe+0xb0cf73]),
(libbacktrace: ZN7monster7stumbleEv+0x3a3@0xf0cf73),
(libbacktrace: 0xf0cf73 [unknown src]:0 [unknown func]),
#7
(dbghelp: @0xf0e6b6[cataclysm-tiles.exe+0xb0e6b6]),
(libbacktrace: ZN7monster4moveEv+0x1426@0xf0e6b6),
(libbacktrace: 0xf0e6b6 [unknown src]:0 [unknown func]),
#8
(dbghelp: @0x9521f1[cataclysm-tiles.exe+0x5521f1]),
(libbacktrace: ZN4game7monmoveEv+0x221@0x9521f1),
(libbacktrace: 0x9521f1 [unknown src]:0 [unknown func]),
#9
(dbghelp: @0x954f5c[cataclysm-tiles.exe+0x554f5c]),
(libbacktrace: ZN4game7do_turnEv+0x96c@0x954f5c),
(libbacktrace: 0x954f5c [unknown src]:0 [unknown func]),
#10
(dbghelp: IMG_LoadWEBP_RW+0x8c93ac@0x1e9d52c[cataclysm-tiles.exe+0x1a9d52c]),
(libbacktrace: main+0x10fc@0x1e9d52c),
(libbacktrace: 0x1e9d52c [unknown src]:0 [unknown func]),
#11
(dbghelp: @0x4013ed[cataclysm-tiles.exe+0x13ed]),
(libbacktrace: _tmainCRTStartup+0x23d@0x4013ed),
(libbacktrace: 0x4013ed /home/narc/src/mxe/tmp-gcc-x86_64-w64-mingw32.static/gcc-5.4.0.build_/mingw-w64-v5.0.2/mingw-w64-crt/crt/crtexe.c:336 __tmainCRTStartup),
#12
(dbghelp: @0x4014fb[cataclysm-tiles.exe+0x14fb]),
(libbacktrace: WinMainCRTStartup+0x1b@0x4014fb),
(libbacktrace: 0x4014fb /home/narc/src/mxe/tmp-gcc-x86_64-w64-mingw32.static/gcc-5.4.0.build_/mingw-w64-v5.0.2/mingw-w64-crt/crt/crtexe.c:186 WinMainCRTStartup),
#13
(dbghelp: BaseThreadInitThunk+0x14@0x7ffba1657bd4[KERNEL32.DLL+0x17bd4]),
(backtrace_syminfo failed: errno = -1, msg = no symbol table in PE/COFF executable),
(backtrace_pcinfo failed: errno = -1, msg = no debug info in PE/COFF executable),
#14
(dbghelp: RtlUserThreadStart+0x21@0x7ffba2c4ced1[ntdll.dll+0x6ced1]),
(backtrace_syminfo failed: errno = -1, msg = no symbol table in PE/COFF executable),
(backtrace_pcinfo failed: errno = -1, msg = no debug info in PE/COFF executable),
Backtrace emission took 0 seconds.
src/creature_tracker.cpp:127 [bool Creature_tracker::update_pos(const monster&, const tripoint&)] update_zombie_pos: wanted to move the shriekling to 126,59,-1, but new location already has the zombie
13:17:31.319 ERROR : (error message will follow backtrace)
#0
(dbghelp: @0x7c6e26[cataclysm-tiles.exe+0x3c6e26]),
(libbacktrace: Z21debug_write_backtraceRSo+0x56@0x7c6e26),
(libbacktrace: 0x7c6e26 [unknown src]:0 [unknown func]),
#1
(dbghelp: @0x7c78ba[cataclysm-tiles.exe+0x3c78ba]),
(libbacktrace: Z8DebugLog10DebugLevel10DebugClass+0x34a@0x7c78ba),
(libbacktrace: 0x7c78ba [unknown src]:0 [unknown func]),
#2
(dbghelp: @0x7ca5d6[cataclysm-tiles.exe+0x3ca5d6]),
(libbacktrace: Z12realDebugmsgPKcS0_S0_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x76@0x7ca5d6),
(libbacktrace: 0x7ca5d6 [unknown src]:0 [unknown func]),
#3
(dbghelp: @0x7bc7f2[cataclysm-tiles.exe+0x3bc7f2]),
(libbacktrace: ZN16Creature_tracker10update_posERK7monsterRK8tripoint+0x872@0x7bc7f2),
(libbacktrace: 0x7bc7f2 [unknown src]:0 [unknown func]),
#4
(dbghelp: @0xf29088[cataclysm-tiles.exe+0xb29088]),
(libbacktrace: ZN7monster6setposERK8tripoint+0x58@0xf29088),
(libbacktrace: 0xf29088 [unknown src]:0 [unknown func]),
#5
(dbghelp: @0xf09430[cataclysm-tiles.exe+0xb09430]),
(libbacktrace: ZN7monster7move_toERK8tripointbf+0x1b0@0xf09430),
(libbacktrace: 0xf09430 [unknown src]:0 [unknown func]),
#6
(dbghelp: @0xf0cf73[cataclysm-tiles.exe+0xb0cf73]),
(libbacktrace: ZN7monster7stumbleEv+0x3a3@0xf0cf73),
(libbacktrace: 0xf0cf73 [unknown src]:0 [unknown func]),
#7
(dbghelp: @0xf0e6b6[cataclysm-tiles.exe+0xb0e6b6]),
(libbacktrace: ZN7monster4moveEv+0x1426@0xf0e6b6),
(libbacktrace: 0xf0e6b6 [unknown src]:0 [unknown func]),
#8
(dbghelp: @0x9521f1[cataclysm-tiles.exe+0x5521f1]),
(libbacktrace: ZN4game7monmoveEv+0x221@0x9521f1),
(libbacktrace: 0x9521f1 [unknown src]:0 [unknown func]),
#9
(dbghelp: @0x954f5c[cataclysm-tiles.exe+0x554f5c]),
(libbacktrace: ZN4game7do_turnEv+0x96c@0x954f5c),
(libbacktrace: 0x954f5c [unknown src]:0 [unknown func]),
#10
(dbghelp: IMG_LoadWEBP_RW+0x8c93ac@0x1e9d52c[cataclysm-tiles.exe+0x1a9d52c]),
(libbacktrace: main+0x10fc@0x1e9d52c),
(libbacktrace: 0x1e9d52c [unknown src]:0 [unknown func]),
#11
(dbghelp: @0x4013ed[cataclysm-tiles.exe+0x13ed]),
(libbacktrace: _tmainCRTStartup+0x23d@0x4013ed),
(libbacktrace: 0x4013ed /home/narc/src/mxe/tmp-gcc-x86_64-w64-mingw32.static/gcc-5.4.0.build_/mingw-w64-v5.0.2/mingw-w64-crt/crt/crtexe.c:336 __tmainCRTStartup),
#12
(dbghelp: @0x4014fb[cataclysm-tiles.exe+0x14fb]),
(libbacktrace: WinMainCRTStartup+0x1b@0x4014fb),
(libbacktrace: 0x4014fb /home/narc/src/mxe/tmp-gcc-x86_64-w64-mingw32.static/gcc-5.4.0.build_/mingw-w64-v5.0.2/mingw-w64-crt/crt/crtexe.c:186 WinMainCRTStartup),
#13
(dbghelp: BaseThreadInitThunk+0x14@0x7ffba1657bd4[KERNEL32.DLL+0x17bd4]),
(backtrace_syminfo failed: errno = -1, msg = no symbol table in PE/COFF executable),
(backtrace_pcinfo failed: errno = -1, msg = no debug info in PE/COFF executable),
#14
(dbghelp: RtlUserThreadStart+0x21@0x7ffba2c4ced1[ntdll.dll+0x6ced1]),
(backtrace_syminfo failed: errno = -1, msg = no symbol table in PE/COFF executable),
(backtrace_pcinfo failed: errno = -1, msg = no debug info in PE/COFF executable),
Backtrace emission took 0 seconds.
src/creature_tracker.cpp:127 [bool Creature_tracker::update_pos(const monster&, const tripoint&)] update_zombie_pos: wanted to move the zombie to 126,83,-1, but new location already has the zombie
13:17:32.803 ERROR : src/creature_tracker.cpp:127 [bool Creature_tracker::update_pos(const monster&, const tripoint&)] update_zombie_pos: wanted to move the zombie to 121,86,0, but new location already has the zombie
It seems that there is more to repro this issue than just noise cancelling headphones, as I also could not reproduce it. I tried sleeping on a floor adjacent to many monsters, as well as in a basement below a group of monsters, with noise cancelling headphones on, and could not reproduce.
I have seen a similar error in fairly recent experimental builds just while fighting enemies, so I suspect there is some edge case with movement code. I wasn't using noise cancelling headphones at the time, so it seems possible the headphones are a red herring?
it seems possible the headphones are a red herring?
Seems likely to me. I just reproduced this by accident while driving through a town. Running a debug build on linux so the backtrace is a little nicer to read.
-----------------------------------------
10:51:00.382 : Starting log.
10:51:00.382 INFO : Cataclysm DDA version 0.D-12235-g3a8c5fb920
10:51:00.530 WARNING : opendir [./mods/] failed with "No such file or directory".
10:51:05.867 WARNING : opendir [./save/Shaw Island/mods] failed with "No such file or directory".
10:53:15.971 WARNING : opendir [./save/Shaw Island/mods] failed with "No such file or directory".
10:58:22.212 ERROR : (error message will follow backtrace)
./cataclysm(_Z21debug_write_backtraceRSo+0x38) [0x564fadb7ef6b]
./cataclysm(_Z8DebugLog10DebugLevel10DebugClass+0x303) [0x564fadb7f931]
./cataclysm(_Z12realDebugmsgPKcS0_S0_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x5e) [0x564fadb82004]
./cataclysm(_ZN16Creature_tracker10update_posERK7monsterRK8tripoint+0x6ee) [0x564fadb74fd6]
./cataclysm(_ZN4game17update_zombie_posERK7monsterRK8tripoint+0x10) [0x564fadd83d9c]
./cataclysm(_ZN7monster6setposERK8tripoint+0x4f) [0x564fae6f9205]
./cataclysm(_ZN7monster7move_toERK8tripointbf+0x284) [0x564fae6eb5a8]
./cataclysm(_ZN7monster7stumbleEv+0x522) [0x564fae6ef646]
./cataclysm(_ZN7monster4moveEv+0x1ad5) [0x564fae6f113d]
./cataclysm(_ZN4game7monmoveEv+0xd00) [0x564faddc6830]
./cataclysm(_ZN4game7do_turnEv+0x103b) [0x564faddea1eb]
./cataclysm(main+0x12c2) [0x564fae2f98a3]
/usr/lib/libc.so.6(__libc_start_main+0xf3) [0x7f60e7e3c023]
./cataclysm(_start+0x2e) [0x564fad5f71be]
Attempting to repeat stack trace using debug symbols…
debug_write_backtrace(std::ostream&)
…/src/debug.cpp:760
DebugLog(DebugLevel, DebugClass)
…/src/debug.cpp:926
realDebugmsg(char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
…/src/debug.cpp:110
void realDebugmsg<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int const&, int const&, int const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(char const*, char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, int const&, int const&, int const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)
…/src/debug.h:79
Creature_tracker::update_pos(monster const&, tripoint const&)
…/src/creature_tracker.cpp:125
game::update_zombie_pos(monster const&, tripoint const&)
…/src/game.cpp:4685
monster::setpos(tripoint const&)
…/src/monster.cpp:162
monster::move_to(tripoint const&, bool, float)
…/src/monmove.cpp:1488
monster::stumble()
…/src/monmove.cpp:1767
std::vector<tripoint, std::allocator<tripoint> >::clear()
/usr/include/c++/9.2.1/bits/stl_vector.h:1496
monster::move()
…/src/monmove.cpp:930
game::monmove()
…/src/game.cpp:4127
game::do_turn()
…/src/game.cpp:1525
main
…/src/main.cpp:688
__libc_start_main
??:?
_start
??:?
Backtrace emission took 1 seconds.
src/creature_tracker.cpp:125 [bool Creature_tracker::update_pos(const monster&, const tripoint&)] update_zombie_pos: wanted to move the zombie dog to 106,63,-1, but new location already has the zombie
See #37392 for a save file just after this debugmsg
I thought this was caused by having too many monsters in an area trying to cross paths? I come across it fairly normally when approaching areas densely populated with monsters.
I thought this was caused by having too many monsters in an area trying to cross paths? I come across it fairly normally when approaching areas densely populated with monsters.
That could very well be what's causing this bug to trigger, do you have a way to 100% reproduce this? My attempts haven't been very reliable so far.
That could very well be what's causing this bug to trigger, do you have a way to 100% reproduce this? My attempts haven't been very reliable so far.
Not off-hand but I have the whole of tomorrow off so I can dive into it to try and pin it down. I just sort of assumed it was a well known path finding error that had a fallback since it only throws a warning without actually crashing. I’ve been getting it for at least a few months, normally when going through large cities. Reminds me of the error that got thrown when a mob tried to spawn where another mob was moving to.
Can't seem to reproduce today, put the game through some stress testing, increased spawn rates, tried to spawn overmap specials that spawned a lot of creatures, no cigar. Even tried getting in a car and just driving past cities at high speed, nada on latest.
I would look for code that tries to setpos() a monster directly, without first checking if it can move there.
Perhaps zombies shoving other zombies or similar? ( just guessing here )
Allright I had a thorough look into this. It seems that monsters stumbling around stairs causes this message - in combination with stairs-teleportation.
The stumble() code looks for any tiles around the monster to have them move around. The stumbling code sets the move_to 'force' parameter true, forcing a move even if something is blocking the way.
https://github.com/CleverRaven/Cataclysm-DDA/blob/9c45bda51007a3550635ea65887054e95f1134b7/src/monmove.cpp#L1732-L1773
However when performing the move_to, there's this special part of the code that teleports zombies up and down stairs.
https://github.com/CleverRaven/Cataclysm-DDA/blob/9c45bda51007a3550635ea65887054e95f1134b7/src/monmove.cpp#L1395-L1414
So the stumbling code does not check if the tiles are free that move_to will bring up when teleporting the creature.
Big question is how to fix this properly. I'm not sure why the stumbling code forces the zombie to move. But setting that force parameter to false avoids the problem.
Alternatively, having the zombies not stumble "downwards" (L1752) also fixes the problem.
But ultimately this comes down to the pretty dirty way that monsters are teleported around stairs.
Bonus: having a glance at #37392 , zombies (or fungals in that case) stumbling into a teleporter can also cause this problem.
Just got a "wanted to move" error with #38497 applied on my local branch. Looking at the stack-trace, it was probably from a nearby portal:
Attempting to repeat stack trace using debug symbols…
debug_write_backtrace(std::ostream&)
??:?
DebugLog(DebugLevel, DebugClass)
??:?
realDebugmsg(char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
??:?
void realDebugmsg<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int const&, int const&, int const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(char const*, char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, int const&, int const&, int const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)
??:?
Creature_tracker::update_pos(monster const&, tripoint const&)
??:?
monster::setpos(tripoint const&)
??:?
teleport::teleport(Creature&, int, int, bool, bool)
??:?
trapfunc::telepad(tripoint const&, Creature*, item*)
??:?
trapfunc::portal(tripoint const&, Creature*, item*)
??:?
trap::trigger(tripoint const&, Creature*, item*) const
??:?
monster::move_to(tripoint const&, bool, float)
??:?
monster::stumble()
??:?
monster::move()
??:?
game::monmove()
??:?
game::do_turn()
??:?
main
??:?
__libc_start_main
/build/glibc-Cl5G7W/glibc-2.23/csu/../csu/libc-start.c:325
_start
??:?
Backtrace emission took 1 seconds.
src/creature_tracker.cpp:127 [bool Creature_tracker::update_pos(const monster &, const tripoint &)] update_zombie_pos: wanted to move the small blob to 125,110,2, but new location already has the small blob
I'm curious if a teleporting monster should be telefragging the occupying monster/player (or itself) if the destination of the teleport is being occupied. Either that or the teleport should refuse to work.
Most helpful comment
Allright I had a thorough look into this. It seems that monsters stumbling around stairs causes this message - in combination with stairs-teleportation.
The stumble() code looks for any tiles around the monster to have them move around. The stumbling code sets the move_to 'force' parameter true, forcing a move even if something is blocking the way.
https://github.com/CleverRaven/Cataclysm-DDA/blob/9c45bda51007a3550635ea65887054e95f1134b7/src/monmove.cpp#L1732-L1773
However when performing the move_to, there's this special part of the code that teleports zombies up and down stairs.
https://github.com/CleverRaven/Cataclysm-DDA/blob/9c45bda51007a3550635ea65887054e95f1134b7/src/monmove.cpp#L1395-L1414
So the stumbling code does not check if the tiles are free that move_to will bring up when teleporting the creature.
Big question is how to fix this properly. I'm not sure why the stumbling code forces the zombie to move. But setting that force parameter to false avoids the problem.
Alternatively, having the zombies not stumble "downwards" (L1752) also fixes the problem.
But ultimately this comes down to the pretty dirty way that monsters are teleported around stairs.
Bonus: having a glance at #37392 , zombies (or fungals in that case) stumbling into a teleporter can also cause this problem.