Journal

15 July 2026 · Jonathan · gamesgodotelixireggoxstory

Two games, two engines, and a world I want to build

I love games. And not just playing them - making them. Before Eggox, before Escape the Reef, before any of the studio work, there was just a kid who wanted to know how the games on his computer were made.

Where it started

When I finished elementary school I had a huge love for digital design. My mother is a painter and an artist, and she let me chase it: I moved across the country to Grenaa, to a two-year education called 3D College, on their game development line.

I learned 3D Studio Max. Modelling, skinning, drawing, texturing, Photoshop, Unity, Unreal Engine. And when I slept, I dreamt of creating games like the ones I played.

But with the limited coding knowledge I had, I chased the graphical side - and I never truly mastered it. I graduated at 18, I’m 28 now, and a few clips from back then are still on YouTube: here, here and here. That was the level of 3D I reached. Not very high, but I was 18, and none of it ever made it out into the world. It still taught me what a game is made of.

The Playmaker unlock

Later, in my high school years, I would sit in the back of class making small games on my laptop. I had found a plugin for Unity called Playmaker, where you drag and drop blocks of logic instead of writing code. And it was Playmaker that taught me the fundamentals of how a game actually works, because for the first time I could build the logic myself.

Take a jump. A character has a collision box, and the ground has one too - but upward momentum (a jump) should only be allowed while you’re standing on something. So you put a small box at the character’s feet, and only when that little box touches the ground is the jump allowed. And so on and so on. A game is thousands of small mechanisms like that, chained together. When that clicked, something unlocked for me.

I wanted more, so I tried to graduate from blocks to real programming: YouTube tutorials, courses I bought online. But back then I could never get further in my own code than the blocks let me go - Playmaker was always easier for me to understand and build with. So I went a different way. I started making websites! (That’s a blog post for another day.) And it turned out to be a corner of programming I never left, because the options are endless.

Finally learning to code

At university the wall came down for real. I learned the fundamentals properly - C, Java, JavaScript, and all the theory underneath them. At one point we even built our own programming language! That goes much deeper than I would ever need, but it did the one thing I had been chasing since those Playmaker days: it gave me the creative ability of actually knowing how to code. From that point the question was no longer “can I build it?” - it was “what should I build first?”

One project at a time

The next chapter was a startup: a game server hosting solution, which I built together with my buddy Karl-Emil. It taught me about the cloud, about scalability - and at some point it taught me that anything I could think of, I knew I could make real, just given enough time.

But time is really the big player. Back then, Karl-Emil and I had to pour everything into one single project to see it become reality. One! That was the price of building something real.

And that startup taught me something else, something I didn’t understand the value of until much later: the implementation didn’t really matter. Whether it was me or my business partner who built a feature, the product came out right as long as we had the same goal in mind. Hold on to that thought.

The heavy lifting changed

Fast forward to today, and I work on multiple, completely different projects at the same time - a launcher, rental sites, two games. As long as I keep the overview and the product vision, the AI does the heavy lifting and writes the actual code. And it is exactly the feeling from the startup again: it doesn’t matter who implements it, as long as we share the same goal. My business partner just happens to be a model now.

I started out with ChatGPT. But when Opus 3 came out I switched fast, and I spent a lot of tokens in Anthropic’s workbench, copying long, long files back and forth and asking it to change specific functions or add what was missing. It was very good at that. And now, with Claude Code, it all just happens - I don’t even have to think about the files anymore.

My whole setup is remote: everything runs, builds and happens on a server. I can work from my laptop, close the lid, go to the toilet and check up on how things are going - then come home to my stationary and see where the status is. It’s the way I always wanted building to feel.

Why the browser keeps pulling me back

That workflow works best for web projects. The iOS apps and the games I’ve worked on, I haven’t fully figured out how to port into it yet - and that is exactly why I love Godot, and the fact that it can compile to just about anything.

But it’s also why the browser keeps pulling me back. Think about the games: Habbo, Club Penguin, the Facebook games like Restaurant City and Ninja Wars 2, Dark Orbit. Even the first editions of Minecraft ran in the browser - I remember this vividly! And all the y8 games I played as a kid. What they had in common was the thing that made them magic: you could reach them from anywhere in the world.

Two games, two engines

Which brings us to now, because I’m making two games, and they could not be more different.

Escape the Reef is small and hand-made: a 2D pixel game in Godot, a love letter to the classics that made me fall for games in the first place. It started as an experiment to learn the engine and quietly became something I want to finish. Godot is a joy for this - open source, fast to iterate, gets out of the way.

Eggox is the opposite of small.

The world I keep trying to build

Because here’s the thing: my truest love in games has always been the massive multiplayer ones. Worlds full of real people, where the game is really the players.

For years I’ve wanted to build one particular thing: a single persistent world that thousands of people share at the same time, in the same space, in the browser. Not shards that split friends onto different servers. Not instances. One world, always on, running on a server mesh that could bring the whole world together in one place - where people claim land, build their own objects and characters, and script their own functionality. A fully player-made ecosystem. Something I have always dreamt of being able to create.

I tried before. My first attempt was a tick-based MMO server written in Go, and it taught me a lot - mostly that the model I wanted was fighting the tools. Every time I imagined a crowd of players piling into one square, the architecture groaned.

Why Elixir

Then I properly sat with Elixir, and it clicked.

Elixir runs on the BEAM, a runtime built decades ago to keep phone networks up: millions of tiny independent processes, each doing one small thing, passing messages, never taking each other down. That is almost exactly the shape of a virtual world. Every player, every object, every room can be its own lightweight process. When a space gets crowded, the world doesn’t hit a wall and kick people out - it bends. Time slows a touch and everyone stays. And because the BEAM can hot-reload code while it runs, the world never has to go offline to change. It just keeps evolving while people are inside it.

It’s the closest thing I’ve found to a runtime that was designed, by accident, for the exact thing I want to make.

Full circle

And here’s the part I love the most. Eggox is both halves of my story at once: the backend is mostly Elixir (Phoenix doing the heavy lifting), and the frontend is the browser itself - JavaScript and websockets, the web skills from that “different way” I went in high school. A world you reach from anywhere, like the games I grew up on. The kid who drew game characters in Grenaa and the guy who ran off to build websites finally ended up on the same project. It only took ten years!

And you already know why it finally feels reachable for a studio of basically one: I keep the vision, and the heavy lifting is no longer the bottleneck. Eggox started in June 2026 and it’s the most ambitious thing I’ve ever attempted.

I have no idea if I’ll pull it off. That’s part of why it’s worth doing. And if you’ve read this far, you probably get it - I have love for games. I always have.

Eggox has its own page, and I’ll write more here as it takes shape.