To use these features, you need to be constantly connected to the process. then there cause a stop in the right place. Through a software or hardware breakpoint. And then watch the registers. There is another option with step by step run.
This is how gdb works.
GG does not constantly trace the process. GG connected, searched and disconnected. And that's all.
Therefore, it cannot be a breakpoint debugger.
And you can now write trampolines, through scripts, as you described it.
And when gg ptrace process it is stop on random location so get registers is usually useless.
If you try throw trap without ptrace process - it will be killed by system in most cases.
If GG try ptrace all time process game can easly detect it. Also it is slow down game and have some other side effects.
Also GG memory editor, not debugger. It is connect to random thread of execution. You trap can never be catched if you place it in wrong place. For example you trace thread1, but trap happens in thread2.
You need handle all threads or procces died with uncatched trap. Handle all threads it is not easy. And so on.
It is only few exists problem. Use gdb, where such problems already solved.