Where it came from
Star Trek was on almost permanently in the house I grew up in, and for most of my childhood the plan was to be an astronaut. That didn't happen. Building the galaxy myself turned out to be the version of it I could reach from a desk, so in 2016 I opened GameMaker and started.
It wasn't called Solvane for most of that. It was Starim first, then Solar Pilgrimage, AstRogue, Cosmic Ruins, and eventually just Space Game Project. I still have most of those builds; the oldest is dated 18 November 2016. There's a screenshot archive of all of them on the studio site.
The early weeks were easy, which is the trap. Ships moved, asteroids broke apart, things exploded. The moment I started building systems that had to talk to each other, the actual size of game development turned up all at once. What surprised me is that it didn't put me off. Working the sanitation shift at the bakery, I'd spend hours zoned out on some problem I was stuck on, and if something occurred to me I'd type it into my phone before I forgot it. That's the thing I'd point to if someone asked whether I like this work: the job was scraping dough off concrete and I was still thinking about collision code.
A base under construction: solar arrays generating power, conduits feeding power to turrets covering the approach. The bars along the bottom are Warp Drive, Health and Energy.
What it is now
Top-down, infinite, procedurally generated. You fly out, find asteroids worth mining, and haul what you pull out of them back to a base you build yourself. That base is a factory: conduits, processing, power, and turrets to keep it alive when something comes for it. Drones are constructed to help protect the base as well as repair it. Weapons are built rather than bought, and the ship is yours to configure. Factorio and tower defense, in space, in a sidescroller-sized pixel art style.
The parts that were hard
Chunked rendering, three times over
An infinite world means deciding what exists near the player and what doesn't, and doing it without a frame-rate cliff every time you cross a boundary. I wrote a chunk system, then wrote another one, then wrote a third. Coming back after a nine-month break I found all three still in the project, two of them doing nothing, all of them tangled together closely enough that it wasn't obvious where one ended and the next started. Untangling that took longer than writing any of them.
That's where I learned to comment code, and I mean actually learned it, not read it in a style guide. Comments are a message to the person who comes back in nine months, and that person is always me.
Shaders
Fun to play with and finicky to get right. Most of the lighting and effect work in the screenshots came out of a long stretch of not quite understanding what I was doing, then understanding it.
Why it's still going
I take breaks from it, sometimes months at a time, and I always come back. Nine years of that is the honest measure of whether someone wants to do this work: not whether they can sprint at it for a weekend, but whether they're still there after the novelty has completely worn off and the code is a mess of their own making.
It's my main focus at the moment. The plan is to get it to a state I'm happy to put in front of people, and then put it on Steam.