DevLog #32 – Skycliffs one-year anniversary postmortem analysis
My new project Destroy The Monoliths should be just out, but let’s talk today about my first game: Skycliffs. It was released on Steam in Early Access one year ago, on November 3rd, 2022. Also, I recently launched it again to play a run. I did well as you can see on the screenshot below!
So I figured it was a good opportunity to do some postmortem analysis of the game. I already talked about what happened in a devlog where I announced putting Skycliffs on hold (and it will stay on hold, no change of plan here). But today, one year after the release, let’s analyze things with a bit more hindsight. I will share the mistakes I made, but also the good habits I built and still use today.
What went wrong
Let’s start with what went poorly and the lessons learned.
This is a big one. Choosing a price tag for a game is always hard, and I got it very wrong. The game launched at $15, which is on par with other games of the same genre as Enter The Gungeon or Voidigo. But genre, quality and content are not the only determinant factors when choosing a price tag. One thing I overlooked is popularity.
Well-known publishers or developers with an already significant backing up community can afford to put a higher price tag because there is some existing trust. If you are completely unknown, people have no guarantee about the quality of your work and are thus more reticent to give it a try. So you have to put your price tag a bit lower (but not too much!). The price tag of your game doesn’t define its value as an art piece (many cheap games are great, and many expensive ones are bad), but it will define whether people give it a shot and get a chance to at least see the passion you put into it.
Not getting feedback early enough
Sharing about your game early on is daunting, especially if you have social anxiety. But it is necessary. The best is to start very early in development. As soon as you have a playable pre-apha build, upload it on itch.io and start to contact some content creators on YouTube. Small channels will be happy to cover your game, and you can learn a lot by watching them play. You can also post on social media. This can be a great way to gather suggestions or to showcase recent work. But be wary with feedback. What matters most is what people say when they get to play the game for real. Not what they think after seeing a 6 seconds video or GIF.
For Skycliffs, I waited for the game to be polished a lot before showing it. I realized afterward it was not wise at all. With my following project, I did differently and asked for feedback very early on. That led to interesting iterations and better game mechanics in the end. So don’t wait for flashy graphics to ask for feedback. Your community (and your wishlist count) will not build in a few days, but rather steadily grow over an extended period of time. So better start early.
Genre is an interesting question. And Chris Zukowski from the How To Market A Game blog has plenty to say about it. Long story short: it is a crucial factor for sales. If your goal is to make a living from indie game development, you have to balance your creative vision with the reality of the market. The best is to pick a genre you really enjoy (this is important: you will play your game so much you will get sick of it at times) and that also has the potential to be commercially viable.
Skycliffs is a classic dungeon-crawler is the same vein as Enter The Gungeon or Nuclear Throne. This genre has lost a lot of its appeal in recent years, and has mostly been overtaken by arena survivor and bullet heaven games. Working on a genre that is not very popular also means it will be harder to be covered by content creators. So better think twice before settling for a genre.
Combining clashing mechanics
From the appeal of 2.5D…
The hook of Skycliffs was to combine the multi-height platforming of CrossCode with the fast-paced shooting action of Enter The Gungeon. This gives a unique gameplay, but has its downsides. The top-down platforming inherently leads to visibility issues, where you can’t really know at which altitude are entities and bullets. This is fine when used in the context of exploration (and puzzles to some extent) because some imprecision is not that punishing. This is why multi-height platforming is so enjoyable in CrossCode, or more recently in Sea of Stars. The top-down 2.5D really constitutes a strength in these games.
… to the trap of 2.5D
But in Skycliffs, the platforming is omnipresent during fights. In the context of bullet hell combat, players need to dodge attacks very precisely to avoid wasting their precious health points. This clashes with the visual imprecision of the platforming. I was well aware of this during development, and I did my best at mitigating the issue with some visual tricks to help perceive the depth correctly. It becomes a lot easier the more you play, and some people even told me it gets enjoyable past a certain point. But the underlying issue remains and harms the game accessibility. I believe that explains why the demo has a very low median playtime. With so many new games releasing each week, players need to be able to quickly jump in. Easy to learn, but hard to master. This is what I am trying to aim for now.
When I started working on Skycliffs, I was wondering why so many dungeon-crawlers were so flat. Now I know. Keeping things flat may be unrealistic and visually boring, but at least it doesn’t hinder the gameplay. Using top-down 2.5D appeal to a lot of developers (I regularly see posts about it), probably because it feels fresh and modern (and also because it is a big technical challenge to get it working properly). But I recommend being wary about it and evaluating carefully whether it brings something to the table.
Making secret content
I spent a lot of time adding secret places and a true last boss to Skycliffs. I absolutely love this kind of things in Enter The Gungeon or Spelunky, so I wanted my game to have that. But in the end, probably nobody has ever seen this secret content except me, since nobody is even playing the visible part of the game in the first place. I would recommend to not waste time with secret content when you’re not sure how played your game will be. As a solo developer, time is my most precious resource, so I have to constantly evaluate if things are worth the work. If a game does well at launch, there will be plenty of possibilities to add secret content with post-launch updates.
What went well
Now let’s end this postmortem with the more positive side!
Releasing a complete game
Finishing and releasing a game is always a huge accomplishment. The world of game development is filled with hundreds, if not thousands, of unfinished and abandoned game projects. Especially when it comes to solo developers or small teams. There are so many obstacles, so many things to learn, so many opportunities to get lost in scope creep. To have a breakdown and just give up, too.
I was able to work consistently and stick to my plan, even the more boring parts. I see a lot of people remaining stuck in the prototyping stage forever, always tweaking or adding mechanics. That is probably the most interesting part from a programmer perspective. But it won’t get you a finished game. If you intend to release, you need to lock features at some point. You need to commit, to go into production mode and spend months adding plenty of content.
I am really proud of what I achieved with Skycliffs. Yes, the game is in Early Access, but only because I was hoping to get feedback to better balance things for the full release. The current version is actually very close to what I wanted for v1.0 in terms of content and depth. It is also quite polished. Overall, I believe this is a good game. Built on a flawed design, but still enjoyable in some way.
Reuse stuff for future projects
The game did not sell well. But at least, it saved me time for my next project. You cannot reuse everything, of course, but some assets can be salvaged. Since I stick to pixel art, I reuse a lot of UI icons. Also, I reuse a lot of scripts and scenes for the settings, credits, etc. I improve them if I can, but the code base is the same and will probably remain the same for all my games. Once I have a working prototype for gameplay, I can wrap it into a game with a title screen and settings very quickly.
This is not limited to the game itself. I reuse utility scripts, for instance to manage my build uploads to Steam. Or to generate a localization file for achievements I can feed to Steamworks.
Very importantly, I also reuse my press list! People are always very happy when I reach out to present my newest project. Building trust with content creators and growing your community takes time, so cherish your early followers and don’t forget them.
Learning and not giving up
Ultimately, a first project of any kind is most often a big failure. And so it is a huge success in some way. What matters it to use your newly acquired knowledge to keep making things. And these will be better.
When it appeared clear Skycliffs would not sell well (right after the Next Fest), I was tempted to quit game development after the release. But this is so familiar. I’ve been pursuing creative endeavors for so many years now, I lost track of how many times I felt this temptation. And it would be okay to give up if you really want to. But know that, if making this stuff is your calling, you will always resist the temptation. The motivation will revive, stronger than ever. And so I started a second project. I do not know how Destroy The Monoliths release went at the time of writing, but I’m pretty confident I will make a third game, no matter the sales.
Having fun and making art
At the end of the day, it all comes down to why we’re doing this. We’re not doing this solely for the money. If all you crave is money, getting into this market is probably very stupid because there are far better and easier ways to make a lot of it. We need money to have financial security, good living conditions for us and our families, to have peace of mind and be able to focus on doing our best work. But that’s not why we make games.
People make games because they want to make art. Because they want to share some creative urge that comes from within their guts. To see the joy of players having fun. To challenge people. To sensitize others and use it as a form of personal expression. To contribute to culture. To give back what they felt themselves with the art of their predecessors. To feel valued. Heard. Understood. To commune with what makes us humans. But also to have fun. To enjoy the journey.
That’s what the creative life is all about. And every step on the way is a success. So here’s to this one-year anniversary! Thanks to all the people sharing the ride with me. I hope we’ll have many more anniversaries to celebrate in the future ✨🎂