Gamebuino tends to run out of memory to run CircuitPython.
CircuitPython works by loading scripts into memory. So keep in mind that comments also consume memory. And. Certainly OOP will consume more memory. Therefore, you need to be careful not to create classes that you do not need.
For example, how is this? I made a class only for players and apples. These actually work!