Site layout is made for desktop screens, 1080p or more!
Check back in fullscreen!
Rift Frigate was a space sim made by myself and a programmer between 2015 and 2020.
It was supposed to be a 1-month project, it got taken over by scope creep and sunk under it's own weight.
5 years from the fact, here's my assessment- where we did good, where it went bad, and what them scars are worth.
Hindsight of 2020.
It's mid-June 2020, we got a Steam page with a trailer up, a demo out...
And a gargantuan slew of problems to fix, and no more energy to handle it all.
I gave myself the biggest burnout that ate at my health and relationships. I was sapped.
2015. Start.
It's mid-2015 and our first indiedev project, Spirit Tactic, hit a creative wall.
We realized that we were essentially remaking Dota2, severely diminished.
We had no direction, but what we did have was drive and momentum.
We decided to take a creative detour to refresh- a micro side project.
07 Sep 2015- I receive a brainstorm document containing some ideas.
One of them tickles my fancy, a top-down endless space-runner.
Enter Galaxy Shift.
Proof of concept - Alpha.0.0
The first screenshots that made it to social media showcased quite a simple art style.
Fixed camera with a limited frustrum, easy pre-made modules, additive plane flares- simple and efficient.
Looking back, this iteration could have made the market.
The camera constraint meant I only had to fill the space.
Everything here was sustainable to the very end.
Only one thing standing in the way: indie ambition.
Sprint. Alpha.0.1
Within 6 months we had something with a nugget of identity.
Blocky ships, colorful backgrounds, ship editing, FPS guns.
Game loop: Pilot ship, explore, combat other ships, collect resources, replace/ improve ship, repeat.
Build loop: each ship has a set of modules, the only essential one is the Pilot module which also acts as a small engine;
Engines add speed, weapons add firepower, utils tractor beam, shield, heatsink, flares.
Combat loop: user chooses how to deal with enemies, de-power them by desstroying their weapons, immobilize them by destroying their engines, destroy the ship by destroying the Pilot module.
Early 2016 we put a demo out.
Lukewarm reception.
Not bad, but not exciting either.
Spiral. Alpha.0.2
With higher velocity our focus got proportionally looser. We had some navigation problems and some snags in our core loop.
The single-plane movement meant a finite area to steer the raft on, and we interpreted that constraint as a net negative.
That constraint could have been approached more creatively; it didn't have to be removed outright, just slightly expanded.
Sweetspot. Alpha.0.3
So far so good. We've just unlocked the vertical plane for navigation and it feels good.
Guns hold up alright, the basic cannon needs a rework and the laser needs a volumetric range cone.
It wasn't bad at all for a game made by 1 programmer and 1 artist. Lacked some juice, but was solid.
This here would have been the optimal point to lock the shipbuilding and start hammering levels out.
The core gameplay loop was there but it needed some variety and tightening up in terms of design.
We knew something was missing but couldn't figure it out. Spoiler: it was solid game design.
Due to not having the right design and strategy skills, we took refuge in what we knew- tech.
This was the crossroads where we took the wrong turn.
Voxels
One of our influences was Robocraft, where we saw a very advanced level of building vehicles. Lots of modules and options.
We thought that would add a whole extra dimension to our own ship building. It did, but it also brought a virus of complexity.
We were both very technically-oriented people. Whenever a problem would crop up, we'd focus on solving the problem, we were less good at cutting to the root of it or challenging it's merits. We were all about implementation, which was our downfall.
Voxel Engine Overview
It looked awesome. The ships had really cool physics and destructibility, it was way above anything other indie games were offering. It was flashy and impressive.
Key Issues and Technical cost
• Granularity destroyed ships' visual coherence
• Minuscule modules were hard to target
• Destruction caused physics problems
• Excessive numbers for too little return
• Gameplay balance was harder to maintain
• Untold number of edge cases in the editor
│ A lower resolution would have
│ fixed most of these issues.
│ Fewer colliders & calculations,
│ blocky but solid ships,
│ easier to balance.
╯
One solution woulda been asking the hard question:
do we really need the advanced shipbuilding? Is it worth it?
Sure, it'd give players something to fiddle with, but also bring a myriad of edge cases to fix, straining the timeline more.
The other solution woulda been to multiply the voxel scale 4x.
Lost in space
Unlocking the camera and 6DOF movement gave us incredible freedom. Pitch, yaw, roll, movement on all axes. Heaven.
Also gimbal lock problems, nauseating spins, and a camera that could go anywhere and see anything. Absolute hell.
6DOF Overview
The initial iteration of the full unlock had the ship controlled independently from the camera. It turned the "rafts-in-space" feel to a really dynamic one and it brought the possiblity of having guns placed anywhere on the ship.
Key Issues and Technical cost
• Camera getting into all nooks and crannies
• Skybox had to be spherical and seamless
• Disorientation was common, spins got you lost
• Distances were hard to judge, tedious to cross
• Ships no longer had definite tops and bottoms
• Ships became small compared to the world
│ A.0.3 got something right:
│ a vertical space with a horizon.
│ The yaw axis was the only one
│ that was really necessary.
│ Easy to balance and control.
╯
The solution here was to lock the camera to the ship;
it solved the gimbal lock and the disorientation to a degree,
but flying now felt sluggish. That was solved with boosts (dashes).
We were modeling Descent and Freelancer, trying to reinnovate the wheel.
Thinking now, we could have compromised where the ship roll could go 50% before the camera would start to roll too.
Switching to voxels and 6DOF were the decisions that would blow the scope of the project.
Both added layers of complexity that we could barely contain, let alone manage.
“Your scientists were so preoccupied with whether they could, they didn’t stop to think if they should.” - Ian Malcolm, Jurassic Park
But let's digress for a moment from the technical to the creative.
Good things also happened. Exploration, experimentation and experience.
Fun with Fractals
Early on I was fascinated with fractals, but also stumped as to how to port them to a video game setting.
Generating them is a very intensive task, so the only way to have fractal stuff was to render them to textures.
Refactor roundabout
With experience and growth, the visuals slithered out of the voxel sandbox dark days into the final look.
It was only in the 11th hour that I managed to figure out an art style and a direction to take it in.
Steam Greenlight, IndieDB & socials
Greenlight was Valve's popular vote system that vetted which indie games would make it to Steam.
Since it was popular vote-based, we had to keep a social media pulse, which meant I often had to create new shit on the fly to avoid repetition. I found myself crafting posts instead of hunkering down and knocking the game out. TONS OF MISPLACED EFFORT.
We had no idea what an absolute fucking drain this would be.
Psychologically, the whole wishlist-counting and presumptive wishlist-to-sales conversion math took valuable attention that could have been spent on execution.
Come 2017, Greenlight was replaced with Steam Direct, a platform that charged 100$ submission fee to separate valid submissions from the noise. We didn't quite make Greenlight, but coincidentally the last Greenlight submission ever was a different game from Romania.
Whatever traction we got on Greenlight, IndieDB, Steam, Twitter and whatever else cost WAY more than it was worth. We were on a hamster wheel of shitty useless metrics. Likes, shares, follows, wishlists - aside from ego stroking, none of these moved the needle a bit.
The only metrics that shoulda mattered were tasks and milestones done.
Characters
Along the way we developed a story for an episode, featuring friends, foes and mercenaries. I whipped up some concepts.
Thinking in terms of only pilot portraits, I didn't push past the headshots. Seeing these now, I feel I was way too conservative.
Star Trek syndrome - way too many humanoid faces. Relatability is fine, but surprise and curiosity is better.
Thinking in terms of only pilot portraits, I didn't push past the headshots. Seeing these now, I feel I was way too conservative.
Organics
Aliens and monsters were to be an important part of the story.
Like everything else, regrettably, they got sidelined by technical fires.
Tech tidbits.


Enter the dungeon
For a chunk of the development we focused on creating a dungeon location.
It would serve as an optional Interest Point and a break from the main mission.
Shaders
In 2015 I couldn't make sense of shaders, and writing them in ShaderLab was tedious and frustrating. Neverming HLSL.
By chance I found Amplify Shader Editor, and it's node-based logical workflow set me free. I could SEE what I'm doing.
Creative process
Everything materialized by way of roughs → concepts → blockouts → models → materials → shaders → vfx.
Being the only artist meant I could hold the idea in mind and streamline the execution, 1:1 flow, frictionless.
“Having lost sight of our objectives, we redoubled our efforts.” - Walt Kelly, cartoonist
MUCI
MUCI was the Mothership that you had to protect and escort throughout the prequel episode.
The acronym stands for "Matter of Universe Chemical Interconnector", and completely coincidentally means "snot" in romanian.
Light Cruiser
MUCI was escorted by two Light Cruisers that were the last line of defense.
Weird shit.
One of the Unique Selling Points of the game would have been a very lively universe. Space games usually shy away from alien stuff, which makes for a very sterile experience. I tried to stretch.
Blockouts
One of the biggest missteps in terms of environment was thinking in Unity set dressing instead of simple hotspotted geometry.
I had seen Prodeus do it and Bram Eulaers had made a functional Blender plugin for it mid-2017. Applied it too late though.
Logos
I knew I wanted a large and imposing logo that's an image in and of itself, not just a weaksauce logotype. The logotype font is Furore.
There were two early batches of attempts that were so abysmal they're not worth showing even for laughs.
Final iteration. 1.0
On it's best day, with all lightmaps baked and postprocessing cranked, this is what it was.
Hindsight is 20/20
Mid-June 2020. Steam page is set up. Trailer goes up.
Demo goes live. I'm oddly apathetic towards it all.
Derek Lieu is doing trailer reviews on his Twitch Stream. Out of curiosity, Adrian passes him the link. We get a cold shower.
Couple of people play our game and don't seem too thrilled. It's boring. The worst part? I can't even disagree.
Making the trailer burnt me out and left me reeling, so I took a break from development to recover.
Days turned to weeks, months, to a year. I healed up, but by the time I did... I didn't miss the grind at all.
I guess you could say I... ran outta Steam.
Capsule image for the Steam listing.
Now just a time capsule. Adios!
Reflecting versus Reacting
"We cannot solve our problems with the same thinking we used when we created them." - Albert Einstein
One thing that we were lacking is strategic thinking. We were so caught up in day-to-day that we assumed that any forward motion would be in the right direction. We were moving forward alright, but in spirals. Just a tad better than those goofy kids in the Blair Witch movie.
Instead of scrutinizing decisions and having a vetting system, we just greenlit everything on sight.
It's 2025 and shipping this game is outside the realm of possibility.
Both assets and tech are now 5 years outdated, and any salvage effort would end up in refactoring.
But I figured I wouldn't leave this on a gloomy note, so here's a daydream to brighten things up.
Say some investor gets unexplicably excited or a crowdfund goes gangbusters and we get like 100 grand to put this thing out there in a year.
Knowing what I know now, how would I approach a "revival"?
First and foremost, decide on the aim.
I'd see two viable directions:
Gameplay-forward
"Robocraft builds, Freelancer action- in space"
Unique Selling Point:
Gotta look out for:
Challenge:
Story-forward
"Strike Suit Zero with eldritch space monsters"
Unique Selling Point:
Gotta look out for:
Coda.
Ultimately what sealed this project's fate was blown-up scope and lack of focus.
Too many elements, too many systems, too many mechanics. Spread too thin.
On my side, I was also way outside my Circle of Competence.
Tragically, the mindset that could make all the right decisions was matured precisely from this failure.
Lessons learned. No regrets. Case closed.
Software:
Apophysis
Mandelbulb3D