Yes, I fixed this bug a while ago by switching to MinGW to compile the DLL instead of Visual Studio on Windows. Digging deeper more recently and the real reason it crashed was because I was missing a needed mutex for the multi-threading, which, when I have that, it works when compiled with Visual Studio also. Call ProcIdKill(procId) on the process ID associated with Stockfish Chess and it will be forced closed. Handling that to happen when the game crashes in particular, I'm not sure if that is possible in GameMaker. I think GameMaker added support for exceptions, is that what you'd use? I'm not sure if that would work, but it's worth trying. Keep in mind process ID's are reused by the system. It can be dangerous to call ProcIdKill(procId) because it can easily kill the wrong process, so use with caution. I recommend checking the completion status first to see if Stockfish Chess is still running.