Schall Artillery


Adds various artillery shells. Currently includes cluster artillery shell, napalm artillery shell, poison artillery shell, atomic artillery shell, mine scattering artillery shells (of various land mines). (Locale: English, Deutsch, 正體中文, 简体中文, Português Brasileiro, Español, Русский)

Content
2 years ago
0.17 - 1.1
11.9K
Combat

b [Solved] Shooting napalm artillery twice crash the game

4 years ago

to reproduce:

put down artillery turret in range of several big biter nests, give it enough napalm shells, watch how game crash on second napalm shell hit the ground

https://i.dbotthepony.ru/2019/05/18/factorio_21-32-51-b93eda7.png

4 years ago

I have just tested in my game. I feed napalm artillery shells to my three artillery turrets and fire together. They made much more than 12 shots each (12x3=36) and the game is still running. (Although a bit slow down on my 5-yrs old potato laptop because of fire. So should be still fine to other players who do not have a good PC.) My screenshot can show how dense is the flame:

Can you first disable all other mods (except Schall Tank Platoon and Schall Artillery), and see if the crash still happens?

I see your shortcut menu has a long list, which hints to long list of mods. Maybe one of them did some changes.

4 years ago

with minimum mods enabled crash is still present:
https://i.dbotthepony.ru/2019/05/19/factorio_17-58-34-2d85025.png
https://i.dbotthepony.ru/2019/05/19/factorio_17-57-30-acbd486.png

crash C++ stacktrace:
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\cygwin64\tmp\factorio-build-ftwfl1\libraries\stackwalker\stackwalker.cpp (924): StackWalker::ShowCallstack
c:\cygwin64\tmp\factorio-build-ftwfl1\src\util\logger.cpp (383): Logger::writeStacktrace
c:\cygwin64\tmp\factorio-build-ftwfl1\src\util\logger.cpp (534): Logger::logStacktrace
c:\cygwin64\tmp\factorio-build-ftwfl1\src\util\logging.cpp (96): Logging::logAndAbortOrThrow
c:\cygwin64\tmp\factorio-build-ftwfl1\src\surface\chunk.cpp (690): Chunk::Chunk
c:\cygwin64\tmp\factorio-build-ftwfl1\src\surface\surface.cpp (847): Surface::getTile
c:\cygwin64\tmp\factorio-build-ftwfl1\src\entity\fireflame.cpp (334): FireFlame::addFuel
c:\cygwin64\tmp\factorio-build-ftwfl1\src\trigger\createfiretriggereffectitem.cpp (41): CreateFireTriggerEffectItem::applyInternal
c:\cygwin64\tmp\factorio-build-ftwfl1\src\trigger\triggereffect.cpp (32): TriggerEffect::apply
c:\cygwin64\tmp\factorio-build-ftwfl1\src\trigger\directtriggeritem.cpp (27): DirectTriggerItem::apply
c:\cygwin64\tmp\factorio-build-ftwfl1\src\entity\projectile.cpp (201): Projectile::hit
c:\cygwin64\tmp\factorio-build-ftwfl1\src\entity\projectile.cpp (143): Projectile::update
c:\cygwin64\tmp\factorio-build-ftwfl1\src\surface\chunk.cpp (567): Chunk::updateActiveEntities
c:\cygwin64\tmp\factorio-build-ftwfl1\src\surface\chunk.cpp (624): Chunk::updateEntities
c:\cygwin64\tmp\factorio-build-ftwfl1\src\surface\surface.cpp (1366): Surface::update
c:\cygwin64\tmp\factorio-build-ftwfl1\src\map\map.cpp (1458): Map::updateEntities
c:\cygwin64\tmp\factorio-build-ftwfl1\src\game.cpp (201): Game::update
c:\cygwin64\tmp\factorio-build-ftwfl1\src\scenario\scenario.cpp (1211): Scenario::update
c:\cygwin64\tmp\factorio-build-ftwfl1\src\mainloop.cpp (1155): MainLoop::gameUpdateStep
c:\cygwin64\tmp\factorio-build-ftwfl1\src\mainloop.cpp (1022): MainLoop::gameUpdateLoop
c:\cygwin64\tmp\factorio-build-ftwfl1\src\util\workerthread.cpp (42): WorkerThread::loop
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 MapGenerationHelper::)(void),MapGenerationHelper >,std::default_delete<std::tuple<void (__cdecl MapGenerationHelper::)(void),MapGenerationHelper > > > >::_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: 00007FFECB067974)
00007FFECB067974 (KERNEL32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFECD44A271)
00007FFECD44A271 (ntdll): (filename not available): RtlUserThreadStart
Stack trace logging done
39.840 Error Chunk.cpp:690: Trying to make chunk at unreasonable position [262131, -9]

4 years ago

From the error log, I "guess" it may be related to empty chunks. Maybe the error comes from when the game trying to create flame on unexplored chunks.
Can you make the following test to confirm it?
Shoot nests where NO unexplored (black) chunks are nearby. Either explore those chunks first (like shooting other artillery shells, by radar, or walk near) or pick another nests cluster.

If this is the case, then it is a game bug, which needs fixing by devs. The bug report needs to go official forum bug report subforum.

4 years ago
(updated 4 years ago)

You should try this to do in "sandbox" scenario mode, with all technologies unlocked, im pretty sure you would be able to reproduce the crash.

after quick analyze of your source files i got to point that crash is on Factorio's side (since you only define prototypes). But it is strange that you can't reproduce this crash.

4 years ago
(updated 4 years ago)

Thanks for testing, but sorry not getting the cause right.
I am sorry I cannot help much here, and I guess this needs fixing from dev side. Please post a bug report on official forum.
Please use "[0.17.41] Crash: Trying to make chunk at unreasonable position" or some text appropriate as post title, and include the error log file and save file as attachments. Include the link to this page and your screenshots may be useful as well.
(The readme of bug report maybe useful to you.)

EDIT: I do not have any save in sandbox mode. So just start a new game in sandbox mode, and try shooting napalm artillery shell around on nests. But everything is fine. I cannot reproduce the crash.

4 years ago
(updated 4 years ago)

They seem to fixed the crash in .42 without my report (was about to report it), might be caused by bad build/changes done to Factorio's code (prior to .41 and fixed in .42) OR automatic crash reporter did the job.

4 years ago

It is good to hear that, although do not know how that being fixed.
Be sure to notice me if the crash happens again.

PS: Yes, it could be the automatic crash log uploading, if you have allowed that in options.

New response