Need insight in why Grim Dawn decides to freeze black

While i test and attempt to mod, Grim Dawn always decides to freeze into a black screen, and i have to task manager it off. Looking for the information inside the minidump file (as shown below)

It seems that the physics engine is to blame. It attempts to read information from a null pointer. Although i’d now like to know why this happens, and how to fix it.

The cause of it is simple: i altered the devastation spell to have almost a global range of 150 meters, and a duration of 1200 seconds. The idea is to conceptualize and test for an toggleable passive skill that causes a slow meteor drop around the player/in the entire map. Variance or not, this meteor drop causes the black freeze sometimes right away, sometimes only after 2 minutes. Considering that the minidump points a null pointer and a physics engine, i wonder:
-Does this game have memory caps in-built like Skyrim and Minecraft (the cause of many crashes with mods in said games)? And if so, how can i increase or remove those caps?
-Are the meteor projectiles hitting some object it shouldn’t, or hasn’t loaded, therefore creating a null pointer on the physics engine? If so, how would i go about making a spell cast only in the loaded area?
-Are the meteor projectiles hitting the “out-of-map” void area of the world and that makes the game crash? If so, how would i make sure the spell can only cast on the physical areas of the world?

1-Interestingly enough, increasing the range of the spell to 4 hundred thousand made it take a lot longer to crash, so im leaning towards option 2. Considering this, i would appreciate it if someone could enlighten me on how map is loaded in grim dawn.

2-Starting to wonder if this might be the fault of my AMD graphics card.

3-No matter the targetradius or dropradius combination, if at least one of these is large enough, it quickly causes a crash, even when the drop height is vastly increased, meaning the game crashes before a projectile has time to hit any possible target. It is upon the creation of a projectile that the game crashes.

4-There seems to be a very annoying behaviour with how Devastation was programmed. Casting devastation and moving away from the spell until it is out of view seems to create a strange silence as if the spell wasn’t even happening close by (why do sounds not have a larger radius/muffle with distance/trigger from areas off-screen? seems like a major flaw). Upon re-entering the area where the spell happened, a multitude of sounds of the impact of the projectiles can be heard, even tho the projectiles are no longer falling or hitting the ground. This being an unrealistic and annoying behaviour apart, i wonder if this is what causes a very large version of Devastation to crash the game?

Today while further testing i manage to replicate it more precisely, although without full certainty yet, but i am starting to believe that if a projectile drops on a unloaded part of the map, it crashes the physics engine by pointing to a memory address that isnt valid.

With a smaller area of effect version of my devastation spell, i cast it in an area and then walk away. Once i’m far enough, the game freezes to a black screen.

The question remains: how do i prevent the game from crashing when a spell hits an unloaded part of the map? How do i make a spell dispell if the map is unloaded? How do i make a spell only activate within boundaries of the loaded world?


4/3/2021 - i tried today with the skyshard spell too, same thing: increase range to something like 400. It crashes everytime, same error. But with a spell like Calidor’s tempest, setting the range to 500 doesnt crash the game. I think the only difference between these spells is that one generates projectiles with physics to them, and the other doesn’t? Will try to remove physics from the projectiles and see what happens.