Regarding the error:
How are you setting that variable? Are you using the Game Instance at all? One cannot just create a variable that points to an object and expect it to work. It’s like creating an integer, not setting it to a value and expecting it to be 500. It’s not, it’s 0 (or worse, uninitialised).
Here’s a primer:
The GI is a framework class that persists between levels. Providing you've set it up and are using it, you can then pull its data from any blueprint by `Get Game Instance` -> `Cast To *Your GI Class*`