Use game instance, game state, or game mode for single player RPG data?

Should I use game instance, game state, or game mode for single player RPG data?

I was just using game instance and resetting it at the start menu. Some things were not working correctly in my packaged standalone project so I was thinking it was because of the nature of a game instance. So now I moved all my calculate functions to game state and have the same data in game instance as in game state but just use game instance to load my game and then once in the main level place the data into game state which is where the data gets updated from actions of the player. My game still doesn’t work correctly when not played in the editor and I was thinking I should put all the calculations and data in the game mode. Is my implementation fine and a completely different problem like the sequence of events and data/actors/uobjects not being initialized/constructed or deconstructed/destroyed correctly?

I checked the Robo Recall mod. The Robo Recall team didn’t put and data or logic into game state at all, they only put it into game mode. There was hardly anything in game instance but for my case since I want to pass a bunch of data from one level (world level) to another (battle scene level) I would think I would be passing data from game instance to game mode to another kind of game mode. I should look more into passing data from level to level and working with data in Unreal some more.