Rosette Diceless Companion Now Available

Join our newsletter

A New Year: 2016

A New Year: 2016

2015 was a weird year. Somewhere in that year is a typical tale of an indie game studio underestimating project timelines and changing directions based on surprises and things they learned.

But I want to talk about budgets.

2015 was the first year we drafted a budget. We determined what projects we were going to work on, when we thought they’d be complete, and projected income and expense numbers across the year. Basic stuff, but we knew the numbers would be rough estimates. A lot of our income was going to be from Exploit: Zero Day and (later in the year) Rosette and the Car Game. Our largest expenses would be hiring an editor for the Rosette books, and Unity licenses for the Car Game. (Unity’s licensing changed in March 2015, making those expenses moot.)

Things trucked along just fine in the first quarter of the year. We gained a significant number of new players in Exploit: Zero Day’s alpha, made excellent headway with new features in EZD, and were playtesting Rosette. We were probably going to end up a little behind, but our path to new (non-Ossuary) revenue was clear.

Then in April, Ossuary got accepted to be published on Steam.

Now, to be clear, we’d nearly written off Ossuary, effort-wise. It was over a year old, the most enthusiastic of its media coverage was in Italian, the sites it lived on only paid out once a certain dollar amount had been amassed, and we were frustrated enough with the game that we had trouble being creative in our marketing efforts. (Abandoning old games is the wrong approach to take, by the way.)

With the announcement that we were Greenlit (however that happened), we switched directions. Rosette paused and Exploit: Zero Day slowed while we designed achievements, integrated the Steam API, and prepared to talk with press about an 18 month old game that was relaunching on the same devices it had already launched on.

It was a weird time. It felt very unreal. We were thrilled and hopeful, but realistic. Sales of the game couldn’t help but go up, but it almost definitely wouldn’t make the game even break even on dev costs.

We launched Ossuary on Steam on May 27, and partook in the Summer Sale in June. Marketing results (which we’re still learning how to do well!) weren’t amazing, but we did see something new and delightful: folks playing Ossuary on YouTube.

An example Exploit: Zero Day system being played.

The majority of our focus returned to Exploit: Zero Day by mid-summer, although we’d learned our lesson to not abandon games. As we implemented Black Echoes, the free story, and designed Triumphant Masks, the first season, we saw pretty quickly that they were going to take longer than we originally estimated. Designing that many puzzles, week after week, took a creative toll, and we were also pushing out new features as quickly as we could code and test them.

Through summer and fall, Ossuary continued to sell quite well. It doubled its pre-Steam lifetime earnings quickly, and its launch on Steam (with the nice user reviews we’ve gotten there) likely helped us do very well in an IndieGameStand sale late in the year. By the way, if you have a copy of Ossuary on Steam, please leave us a review! It's really helpful.

The end result is that we met and even slightly exceeded our projected profit—but not from any of the sources we predicted.

So where does that leave us for 2016? Our focus for most of this year will be on the final major features and first episodes of content on Exploit: Zero Day. We'll also be working on a mobile project: a space we have no experience in, which is exciting.

We really hope you'll take this ride with us. Exploit: Zero Day remains in closed alpha for the moment, but you can get access by joining the mailing list. You'll receive an access code in the next monthly newsletter. YouTubers, streamers, and press, request a copy from distribute().

Our first release, Ossuary is available on Steam,, Humble, and IndieGameStand. Press-like people, you can also request a copy of Ossuary from distribute().

Previously: Next:

Similar entries

  • No similar entries.
comments powered by Disqus


Pingbacks are open.