Master Tick Manager - Override GEngine or use GameInstance?

Hello!

I have a possibly unusual topic, at least it’s very hard to research. I’ve been digging into the source code to figure out how Unreal Engine ticks (updates) the engine loop, and each of the tick categories (TG_PrePhysics, etc)

I originally was going to use a GameInstance with FTicker::GetCoreTicker().AddTicker() on initialization but I realized that the coreticker here is toward the end of a frame after all the other groups have executed I believe. It occurs **after **GEngine->Tick but **before **GEngine->TickDeferredCommands in LaunchEngineLoop.cpp

I would prefer to have my GameInstance tick at the beginning of a frame, but I suppose it doesn’t really matter if its at the end of a frame either? I think it would work fine but I’m not certain. I noticed that GEngine could be inherited and override the main Tick function since it’s virtual, but I can’t find where I could specify what type of engine it should initialize the the pointer to.

Any suggestions on how to get my GameInstance to tick at the beginning of a frame or how I can specify GEngine?

Just to be explicit this is 4.26