That was surprisingly easy to implement, leveraging mostly the unembedder, so I started exploring GGUFs.
First I built a simple GGUF that could compute the position of a point in a limited grid, using 4 directional tokens as input. All weights are "hand crafted", no training involved. Of course, being ollama stateless, it needs to compute everything from scratch each time from the whole conversation.
Then (with the help of coding agents) I used it as the base to build a "complete" game of snake: it can only play 57 turns (it can be fixed though) and the position of food is computed using a hash, without checking if the new position is under the snake. But it works.
Since the obvious evolution would be to run Doom on ollama, I at least got a first person roaming demo working, where the frontend only knows about the input it gives, the map comes from the GGUF.
Even if it's completely useless, it has been fun to look into how this can be done, given the obvious limitations.
Both can be played at https://ggufun.grokked.it