đź“ť It’s been 10 years
It’s around 11 a.m. as start to type this. 10 years ago at this hour, I was at my day job, trying to focus and not be distracted by the fact that later that day, at around 18h, Quest of Dungeons was being released on Steam and iOS. For the first time, players around the world could try it. I was quite anxious about this; it had been a few years in the making, mostly nights and weekends. I had little idea of what to expect, but being on Steam was simultaneously exciting and terrifying. What if people hated it?
What follows for the rest of the post, is a brain dump of the timeline of some of the most crucial events of this silly little project for anyone who is curious.
🤯 2011-2013
✔️ Failing can help
Before the game launched, I had a few years of terrible prototypes, cancelled projects, and other unexpected life events. One day, though, all those mistakes fell into place, and QoD was born—a flow of ideas came to my mind, after seeing a bunch of stuff failed in front of me, but that maybe I could make them work. I knew what I wanted to avoid now and what I things I would like to experiment with. Within this time I also made a simple iOS game called Puwang, a gamejam compo, where most of the goal was to make a quick game and hopefully make $100 that year to cover the iOS developer account expenses. For QoD I wanted to make a small game that I could play on my phone during commute, and that’s why it started as a mobile-only game.
⌨️ Expanding
During the time I was the only person to ever played it, I found myself enjoying it on a bigger screen/tablet, and after giving it a 2-3 friends to test and having confirmation, I thought it would be good to launch a desktop version along the iPhone/iPad versions, Windows and Mac. This added some development time, but also allowed me to expand the game a bit more, the mobile version was virtually identical to desktop/tabled, but they shared a bigger UI, more suited for Mouse and the higher resolutions. This turned out to be one of the best decisions, as the desktop version is foundation for everything after. At this point I was already rolling my own engine for prior games on mobile and desktop, so most of the development was indeed for game stuff, and not engine. While I’ve made the mistake often of “build the engine instead of game”, here the engine was built around the game, that’s how it should be.
2014/03/25 - Steam and iOS launch
I had tried to bring games to Steam before but with no success. The focus was on Mobile, with Desktop in mind, but where to sell it? Before Steam I was able to get confirmation for the new Humble Store, but Steam was still on my mind. In the past I had higher hopes for my first game Vizati, looked more polished, so QoD didn’t seemed to have a chance.
But I decided to make a trailer and launch a GL page, and imagine my surprise when QoD was approved on Steam Greenlight within a week or so. Just look at my dumb face here that I just digged from some old Tweets.
With the trailer out, people seemed to enjoyed what they saw, I also thought I was near completing the game, there’s always something right? So I pretty much crunched the entire rest of time between my day job and finishing the game.
Finally on March 25th it was out, everyone could play it. Since the game was only releasing around 18h on Steam, I went to my day job that day, and only took the next day off for checking & fixing bugs etc.
Initially all I was getting was a flow of emails with some bugs and suggestions, but overall people seemed to like it, which was a relief. There was still tons of stuff to fix, but slowly, and for the next few weeks went through issues and suggestions. On the mobile side of things things were smoother, that version was the older one, had more testing, also less hardware configurations. I recall before launch, a conversation with some coworkers, that making it paid on mobile was probably a mistake, but I don’t know how to design games around F2P/Ads, so I made it paid. But, thankfully, even being a paid game, at $1.99, people were happy with what they were getting.
2014/05/30 - Linux
This one was something that I had in the back on my mind for a while, theoretically my engine could be ported to Linux, but I was scared of having too many versions at launch, handing those 4 SKUs was already a handful, so this was left for later. This actually ended up being a factor in Humble Bundle contacting me to participate in one of their bundles, back then having a game on all 3 platforms was a must. Technically speaking it wasn’t extremely complicated, by this time the engine was already relatively split in ways that it was easy to integrate new OS, it was just a matter of implementation. Also, now that Steam Deck is a thing, it just worked out of the box.
2014/08/26 - Android
With Desktops and iOS versions being well received I started getting requests for an Android version, I had never worked on this platform, but with most of the know bugs fixed, I bought a cheap Android phone and I moved into porting the game to this platform, you can read more about that here.
2014 - OUYA (cancelled)
The hot thing around the time was OUYA, games like TowerFall were born there, so since I had an Android version I started to work on that, because it would be the closest to a traditional console that I thought I could put this game on. I started working on it, but once Microsoft accepted my pitch for the Xbox One (see below), I placed this in low priority. Between the time it took me to develop the Xbox One version, OUYA had it downfall, and by that time I just cancelled it.
2015/09 - Xbox One
In the summer of 2014, after the launch of all those versions, relatively successfully, I started talking with ID@Xbox with the possibility of bringing QoD to Xbox One. There were a couple months of paperwork and mostly the conversation about “this is a mouse game, how will it work on consoles?”, which was when I started seeing that all the UI needed to be remade, and even some gameplay.
There are several posts, here, here, here, here and here detailing what went into to that process, but after around 1 year the game was finally released, and all the work put into reworking the game to controller friendly interface and gameplay paid off, it was positively received. I also took the opportunity to double the content available, and also add an extra character. I’m sure it was this combination of an almost remade version with increased content that led to it’s positive feedback. I’m really happy I decided to take all those months to remake it, it was daunting at first, I’ll tell you that, but I’m glad I did it.
2016/09/29 - Wii U and Nintendo 3DS
Around 2015 summer, before Xbox One release, and if I recall correctly, during Gamescom in Germany, I started talking with Nintendo about bringing the game to Nintendo 3DS and Wii U.
This was when Nintendo was a bit more restrictive in terms of third party developers, and I was fully expecting, that me, a solo developer, would not make the cut, and it took a lot of months and patience to finally be able to show the game to someone and get accepted as an official Nintendo developer.
At first my goal was to make Wii U port first because it would be similar to Xbox One, with some additional features for the GamePad. Nintendo 3DS would come later, it would take more work due to it’s specifics.
Unfortunately, or fortunately (depending how you see it), I bricked my Wii U devKit after a couple months of work, when the game was in a good state already but before 100% finished. During the time I waited for repairs I started the Nintendo 3DS version.
I knew would take a LOT more work, from performance, to completely different UI for dual screen, hybrid of touch + buttons. But when the Wii U devKit arrived, I decided to launch them side-by-side, I talked with Nintendo about a cross-buy possibility, and once they gave the ok that was the goal.
The Nintendo 3DS version was one of the most complicated ones to pull off. This was also the first time that working on my own engine was the only thing making it possible. A lot of people were suggesting me to use Unity, and I had would have saved time in porting, which can be true, but Unity didn’t supported 3DS, so it would never have happened if not for my custom framework.
This is hands down my favourite version, there is no other like it, mostly because of the nature of the device.
It was so fun to work with that I found myself adding features just because I wanted to test them, like the StreetPass, where you can get ghosts from other players you pass on the street. Nintendo had a really neat device here.
There was some trouble having both versions on the same day, it’s a lot of coordination required between me, Nintendo America and Europe teams, 4 different SKUs (3DS NA+EU, Wii U NA+EU), but in the end we made it.
Like I suspected during my own tests, on the 3DS it was the ideal portable version, it’s a game that suits shorts sessions on the go.
This was also the first time I worked with a publisher for this game, for Japan, the game was published by Flyhigh Works, they took it to Tokyo Game Show, localized to JP, and were crucial in shaping up the 3DS version into what it is. I do recall many sessions where my stubbornness almost caused some bad decisions in the game, but they were really cool in guiding me to make the best of it.
2017/01/20 - PlayStation 4 and the Vita version that never was.
I love my PlayStation 4, in fact it’s the console I have more physical games for.
So it was with great excitement that after a Skype call with my PlayStation rep I had the greenlight to get the game there. This started around the time of Nintendo too, but sadly, and at first I wanted PS4 + Vita combo, like Wii U + 3DS, but for a variety of reasons the PlayStation Vita never happened.
This was one of the reasons the PS4 versions was one of the latter ones, I kept hoping I could launch both simultaneously but never happened. Fun fact, this version almost had a physical edition that got cancelled by the publisher at last moment, eventually I even got someone, another publisher, to take care of the PS Vita version, but that also got cancelled later on. So a combination of things that happened that were no one’s fault, but also made it a bit hard for me to explain why it wasn’t happening. In certain moments it was almost, but it never did happened. It was a bit frustrating that I didn’t had clear answers for the players regarding this, but I couldn’t, and I tried but failed in the end. Well, that’s game development.
2017/08/10 - Nintendo Switch
Around 1 month after I released on Wii U and 3DS, Nintendo announced their new hybrid console, the Nintendo Switch. I immediately started getting questions from players about a port. This complicated promoting the new Nintendo versions while everyone was excited about the upcoming console, saving money for it and the games. By coincidence I had launched both versions right at the end.
I can’t recall exactly when conversations started with Nintendo about this, since it was in hot demand, both for retail and developers, but eventually Nintendo shipped me a devKit and I started porting. It was released first in the Japanese regions, again by Flyhigh Works. But a few weeks later again by me in the rest of the world. This version had the portability of 3DS, and graphics/resolution and UI of the home consoles. This was also the first time I made a demo for the game, which still exists on the eShop.
2019 - Dreamcast (just having fun)
In 2019 I got my hands on a Dreamcast I decided to “wonder if I can port it there?”, it was never really meant for a full release, that would take months of time that I don’t have at the moment, I just posting it here for the record, this was under a week of work, it was fun. Maybe if I reach retirement I’ll take some time to finish it. There’s a lot of work left in there.
After a while booting the game on an emulator,
and then later when I got it booting on a real Dreamcast
2021/04/13 - Switch Physical Edition
Like I mentioned before, I tried to get the game in physical format before, and I kept trying for years but it simply wasn’t happening. Until 2021, when by random chance, someone recommended me Leoful, and they accepted right away, in fact, from initial contact to production, it was just a couple months, I’m really happy I was able to finally get the game on an actual box, it hits differently, as I grew playing Nintendo games, and also feels like a closure to a project that started on a smaller device and made it’s way to a real physical game.
2022 - ??
Right now the game still exists in several stores (R.I.P. Nintendo 3DS and Wii U), and it’s in maintenance mode only. The platforms patched more regularly are the mobile ones, whenever Apple or Android come up with new rules or it breaks on new devices. Windows gives nearly no problems, MacOS breaks things more often, but overall it doesn’t give a lot of work, the last time I had to mess with it, was the Linux version to patch stuff for Steam Deck, but it was relatively easy.
So in the end things worked out, and I want to say a big thank you to everyone who supported this project, I read all the emails, DMs, messages everyone sent over the years, even fanart, you rock.
Some trivia
- The game has 79k of code (all platforms)
- The game engine has 130k of code (all platforms)
- Over 63800 years of total play time on Steam alone
- The game allowing the player to drop items anywhere and being persistent was a side effect of saving the whole world to save instead of recreating it by seed. I just turned it into a feature.
- I was only able to finish the game in Hell mode AFTER releasing it, the math seemed to check out, but I wasn’t good enough.
- The game was called Quest of Dungeons from day 1 of development, as a generic codename, I just grew too attached to it.
- There was a pet system that got dropped, taming enemies, but it was dropped in favour of Shaman unique skill of summons.
- There was a way for enemies to travel between floors, like Resident Evil added that later on, going between rooms, but it was too aggressive and made the game frustratingly hard.
- All the level and combat damage math falls apart around character level 40 or above, but the game was designed below that.
- The initial skull sign, which only exists at the very start, was a way to teach the player that death meant restarting, in 2013-14 roguelikes weren’t as popular and it was seen as a shock for that to happen (play-testers would email me “my save is lost”). My goal was that by potentially learning that early on, the player would not get surprised.
Thank you for reading all of this.
Here’s a cool image made by Leonor.