Game literally unplayable due to this new NPC on fire crash

I started two games in a row, both Really Bad Day, and each one crashes as soon as the NPC catches fire! Is there any fix for this? This is kind of ridiculous given that half a year ago the game was more stable.

Or is the only option to disable NPCs, both random and static?

I think this fixes it, but I haven’t done enough testing to confirm it.

Well I can certainly test it since my current save seems to have it happen 100% of the time. How do I apply this fix to an existing installation?

You will have to compile it yourself with the changes made to player.cpp and then copy your saves/mods etc over to the new custom build.

Is there a step-by-step process of what to download and how to do it?
Do I just download Cataclysm-DDA-0.6.zip, edit the parts that fix tells me to edit, and compile?

If you’re on Windows I can share my compiling setup since the instructions in COMPILING.md didn’t work for me, or if you want to I can just give you the custom build I use, but it also has some other PRs in it (rebalanced fire and neutral traits) + a small personal edit that disables the kickstarter backer names.

@vassock Don’t download 0.6. Download a .zip from https://github.com/RadHazard/Cataclysm-DDA/tree/fix-clothes-dropping using the green “clone or download” button.

I got the file using the green button, extracted it, and made the two changes listed in the fix.

I also installed Git.

How do I compile it?

Assuming you’re on Windows and already got git-bash (in case you don’t: git for windows) I downloaded MinGW-w64 - for 32 and 64 bit Windows, pkg-config-lite and then got the four SDL libraries:

https://www.libsdl.org/release/SDL2-devel-2.0.8-mingw.tar.gz
https://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-devel-2.0.14-mingw.tar.gz
https://www.libsdl.org/projects/SDL_image/release/SDL2_image-devel-2.0.3-mingw.tar.gz
https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-devel-2.0.2-mingw.tar.gz

Finally you will need this edited makefile.

  1. Extract MinGW to C:\ or wherever you want.
  2. Extract the contents (bin, include, lib, share folders etc) of the various SDL libraries in the i686-w64-mingw32 (32bit) or x86_64-w64-mingw32 (64bit) folders to the MinGW folder.
  3. Extract the bin and share folder from pkg-config-lite to the MinGW folder.
  4. Extract the makefile to the CDDA source folder.
  5. Open git bash in the CDDA source folder (right click on folder - Git Bash here).
  6. Type export PATH=$PATH:/c/mingw32/bin where /c/mingw32/bin is where you extracted MinGW.
  7. Type mingw32-make -j4 NATIVE=win32 RELEASE=1 DYNAMIC_LINKING=1 TILES=1 SOUND=1 LOCALIZE=0 BACKTRACE=0 and wait for up to an hour depending on your system. You can change win32 to win64 if you’re on 64bit.
  8. When it’s done you should have an .exe in your CDDA source folder.
  9. You will now have to paste all the SDL .DLL files (from i686-w64-mingw32\bin\ or x86_64-w64-mingw32\bin\) into your CDDA source folder. Note that SDL above 2.0.5 causes weird black lines for all the mshock based tilesets. If you want to use those tilesets, you will have to get SDL 2.0.5, SDL_mixer 2.0.1 and SDL_image 2.0.1 as well and use their .DLLs instead.

Note that this build will not include LUA or localization support. If you want those features you will have to get the required libraries for those.

1 Like

narc0tiq has a dependency bundle named WinDepend-MSVC.zip here: http://dev.narc.ro/cataclysm/

There aren’t even any executables in that folder spelled “migw32-make”

So I compiled using this tutorial:

But I got the text, not tiles version and it crashes when minimized. Since I only changed two lines, is it possible to just copy from the compiled version one or two files to the bugged official version?

I’ve been going back and forth between instruction pieces, starting from scratch each time, and I keep running into roadblocks, like missing .h files (they’re there, but minGW stupidly doesn’t search in those directories, which raises the question of why the folder structures are there to begin with as MinGW finds the files if they are in the include dir without a folder). Even when I hunt down all the files, I then get errors with the compiler or like I mentioned I get a non-tiles version that crashes.

The executables are in the mingw32\bin folder, which is what you setup to use with export PATH=$PATH:/c/mingw32/bin. mingw32-make is the program used to compile using the makefile.

I also remembered that I forgot to include that you need to make some changes to the makefile. I’ve uploaded the makefile here: https://drive.google.com/open?id=1GOSr1_qBik8yslWU43Q02et4vR0TVGIP

There is no “git bash” if I install it that way. I just get a mingw folder with the only executables being a shortcut and a .bat file. Running the bat file just opens cmd which doesn’t recognize export.

Git bash should be included when you install git for windows, which I thought you already did. Here’s the one I got otherwise: https://github.com/git-for-windows/git/releases

I encountered same issue, downloaded and compiled source from https://github.com/RadHazard/Cataclysm-DDA/tree/fix-clothes-dropping but the bug still persists. What could be the problem? I’m on ubuntu 16.04 x64, did compilation following this guide https://github.com/CleverRaven/Cataclysm-DDA/blob/master/COMPILING.md#linux-native-sdl-builds

Alternate fix to the same problem in here by Maeyanie. If this doesn’t work the burning crash bug might not be related to the item dropping crash bugs.

Edit:
It seems like there might be two different bugs at play here. One is the crash that is related to NPCs dropping their items and the other has to do with how the game destroys items inside fires.


Thanks! The solution from Maeyanie worked.

1 Like

OK, and that has no such file in the install dir.

Cloest I see are
x86_64-w64-mingw32-agrep.exe
x86_64-w64-mingw32-deflatehd.exe
x86_64-w64-mingw32-inflatehd.exe