We’re about two weeks out from Splatter’s launch date, and with the craziness around launching a game having mostly died down I figured it would be a good time to take a look back and try to write a thorough postmortem. Every team member did short versions of this internally, but this one is designed for people who weren’t there for the whole project to read.
As of writing, Splatter has sold around 550 copies. It’s not a bad launch for a first game from a studio with little experience and even less budget. In the leadup to launch, my cautious estimate was that we’d sell between 250 and 300 copies, and we blew past that goal. We set a couple of ridiculous sales goals in our discord server - if we got to 10,000 copies sold, I promised I’d add a window head with “big naturals” and a “dump truck” - and fortunately for all of you I will not have to prove how serious I was about keeping those promises.
More importantly than sales, though, we achieved our two core goals for the project:
First, we actually shipped a game. Prior to this, Rat King had only done one other game project, and it was for a seven-day game jam. Completing a full, commercial-scale game was a major leap for us, and I’m happy to report that we were able to stick the landing. We even managed to spin up a decent marketing cycle despite our extremely limited time and budget.
Our other goal was to establish ourselves as artists and developers - to start building a community and make connections. This also went well! We’ve met and collaborated with a lot of cool people, and seeing complete strangers hop into the Discord server and tell us how much they liked the game was a deeply emotional experience. I’ve tried to be professional and calm about it on the surface but every time somebody says something nice about Splatter I go completely ape shit with joy internally.
This is probably a good point to admit that Splatter was not initially supposed to be a full-length game. The initial pitch for it was as a very short project that we could release for $5 or less in order to build up our collective’s portfolio. As development actually kicked off though, it quickly became clear that our idea for the game did not match our desired scope. Rather than cutting corners, we chose to make the game to our original specifications, and changed our release date goal from August 2021 to September 2022.
Another success here was that once we had an accurate understanding of the project’s scope, we actually called our release date fairly closely. Splatter had to be delayed once, from September 2022 to December 2022, but in the grand scheme of things that was a small bump and it wasn’t due to internal factors. We didn’t experience any major development setbacks, and were able to roll into our release window with minimal crunch and panic.
Of course, I’m not going to spend this whole article patting myself on the back. We made a good game, but it’s not perfect. Unsurprisingly, as this is our first full game release as a team, we have a lot we can improve about our development processes and general design ethos.
In an unusual twist, one of the things that we’re going to have to change moving forward is something that was actually very good for Splatter. Our development process so far has been pretty relaxed and freeform. This didn’t cause us problems stylistically, as we were working on a game that benefited strongly from having random ideas thrown out and implemented on a whim. Team members would often be tasked with coming up with a list of weird jokes, advertisements, or graffiti (there’s five different graffiti artists in the game - see if you can pick out the different styles!). The tone and aesthetic of these details often clashed, but if anything that enhanced the game’s presentation. We’re not planning on making all of our games as lol-random as Splatter, though, so one of the things we plan on doing for our next project is enhancing our pre-production phase and building more of a style guide before diving into the actual development process.
One of the initial things that drew us to Splatter as a pitch was the cool tech at its core. The “evolving” AI seemed like it would be a clean solution to our lack of character artists, and the cool blood effects looked like an excellent core visual feature to build our style around. Neither of these things were true.
Both the evolving AI and the persistent blood splatters were cool, but neither was as clean to implement as we initially hoped. We ran into performance and structural issues with both. The blood splatter system proved to be a pain for our environment art and level design processes - it piggybacked on Unity’s baked lighting system, which put a hard cap on our ability to build big levels, and required that we spend a lot of time manually setting up props to receive blood splatters.
A core principle of the evolving AI system was that we used only a single enemy that could evolve to use a variety of behaviors, which meant that our animator for that enemy was huge and unwieldy, and our sound and VFX setup for it was similarly ponderous. Also, a bug with one enemy now often affected all enemies in the game, which meant that low-priority issues became high priority ones very frequently.
Our solution to this for future projects is going to be looking at any proposed core features and asking ourselves these questions: 1) What kind of limitations and overhead will this feature enforce on our art and design team? 2) If this feature is much more complicated than we think it is, can we scrap or reduce it and still have an interesting game?
These questions alone aren’t going to stop unexpected time sinks from occurring entirely, but our hope is that they’ll help us roll with the punches better when we do run into a problem.
Beyond the technical, Splatter also has some design problems that players have been fairly consistent in pointing out since launch. The game forces you to do frustrating first-person platforming several times, and its cryptic tone and harsh difficulty curve can put players off during the early levels.
I think these issues both come from the same two sources:
The first is that Splatter is very much an “all killer, no filler” sort of project. Its horde-survival structure means that players jump from one high-intensity encounter to the next with very little downtime, and the lack of burnable resources or checkpoints means that there’s no real way for us to whittle the player’s resources down without threatening to send them back to the start of the level. This is a net positive in some ways - Splatter was designed to be the type of game you could pick up, play for five minutes, and put down feeling satisfied - but it does mean that players unprepared for the difficulty will get smacked around much more than in games with more traditional levels. It also forced us to experiment a lot more with level mechanics.
Normally, when you build a level mechanic, you’re able to iterate on it several times across a series of increasingly complex encounters. Splatter’s short, high intensity levels meant we often would use a mechanic, immediately force players to master it, and then throw it away for the rest of the game. This meant we had to build more gimmicks to compensate for the increased rate we were spending them at. This also had its upsides and downsides. I feel that Splatter’s individual levels stand out from each other very well. They all have their own flow and it’s easy to highlight a specific level by naming a feature in it that no other level shares. On the other hand, though, to avoid repeating ourselves we had to let a few less-liked mechanics slip into the finished project. There’s a significant overlap between the playerbase’s least favorite levels and the dev team’s least favorite levels - we just didn’t have the development skills to rework those levels into more appealing ones without reducing the impact of other, better parts of the game.
Splatter’s unique structure is something we’re probably not going to repeat any time soon. Our other cause for these issues, though, is something we’re going to have to actively work to avoid for our next project. Put simply, many of Splatter’s rough patches came from issues in our development and playtesting processes.
I’m going to start this section by explaining my role in this project. Splatter was a game I pitched to the collective. I served both as the primary programmer on the project and as the level and combat designer. During development this meant that new levels and mechanics would often be siloed off until I had finished fleshing them out to my tastes. We didn’t have a strong process for testing and signing off on gameplay in the same way that we did for visuals, and while it mostly worked out there were some sections that really should have been changed but just weren’t caught in time.
This is how a lot of the platforming sections slipped through - I actually really like awkward traversal sections as a way to break up the intensity in action games. There’s a part of Session 8 that’s specifically intended to mimic the Anor Londo archer sequence in Dark Souls, and I know that people don’t actually like that bit but I kinda do and because of our workflow nobody was able to stop me from making those terrible thoughts real.
The other consequence of this workflow was the overall difficulty curve. While we can put some of the blame for the game’s difficulty on its structure, the fact is that Splatter starts tough and doesn’t ever really ease up. My role as the primary playtester means that the game is calibrated for my skill level and comfort with the game, and because I’ve spent a lot of time building individual enemy behaviors and level mechanics, my level of comfort is not something most players will reach before playing for several hours at least.
We’re tackling this issue for our next project in a few ways:
First, we’re going to focus heavily on making design tools accessible to everybody in the group. I fell into the “level designer” role not because I had any preexisting level design chops, but because I knew how to use the tools we had and if I needed more features I could program my own quickly. This was fine for getting a game shipped, but we’re going to try and push our standards higher, and for us that means focusing on multiple perspectives and design sensibilities during development.
We’re also going to build a more standardized playtesting regimen. Part of this will involve some form of automated or routine builds, and part of it will involve some amount of mandatory playtesting on a regular basis. We’re also working on better systems for recording feedback and bug reports internally to make it so that our increased investment in playtesting doesn’t go to waste.
There’s a graph that makes its way around Twitter every so often that shows that most indie studios only ever release one game. This is partially due to the financial realities of indie dev - it’s very hard to make something that can recoup a studio’s costs and provide enough of a financial pad to support a new dev cycle. It’s also due to burnout. Developers often put everything they have into a project and then find themselves mentally unable to follow it up whether or not it succeeds. This isn’t great for devs or gamers - developers are chewed up and spit out by the industry, and gamers are denied experiences made with a veteran’s confidence.
My point with this is: we’re coming back for round 2. We’re gonna put out a second game, and it’s gonna kick even more ass than Splatter. We didn’t make anything that can sustain us financially until that game comes out, but we didn’t need to - Splatter was made in our spare time, with our spare money. Just think about what we can do now that it’s made us a pad of cash to cover stuff that we previously paid for out-of-pocket! Rat King Collective is only going to keep getting better, and I hope y’all are ready for us.