Year 4: My full time indie developer life
Peace in everyone and welcome to the forth edition of my annual blog post where I go through my life as a full time game developer and try to draw lessons from my successes and failures, both for myself and hopefully for you guys as well. My name is Kevin Giguère and since this is my fourth year as a full time game developer, you can also learn more about the years which brought me to this place in Part 1, Part 2 and Part 3.
There's no denying that 2020 was a very different year for us all, although I was probably better prepared than most to face an extended period of forced isolation. As others became locked down in their homes, they were facing the reality I have now known for several years as a solo developer working from home.
Ironically, without a game to release, 2020 proved to be a very calm year for me, which allowed me to focus more on the development of my newest title Aethernaut and to promote it through various digital conventions. I also had interns for the first time which turned out to be a very interesting experience.
Behold this juicy Tech Support sales curve
This Astral Traveler + Tech Support sales curve could use an extra 0 on the right
With nothing new on the market, Tech Support: Error Unknown continued to be my MVP with the number of copies sold year over year only shrinking by about 35%. Of course discounts have done much of the heavy lifting so the actual income has shrunk by more, but it remains a solid title which has helped create some sense of stability for me in the long run.
Arelite Core and Astral Traveler have also only seen their sales shrink by 30%, but their low numbers make them hardly worth mentioning. Other income sources include dividends from last year's contract work, generous donations from Patreon and Twitch, and a few sales coming from a boxed version of my games sold in stores as a package with other games developed in Quebec. The sum of it all will cover about a month of living costs, as long as its one of the cheaper months.
In many ways, 2020 ended with a whimper, just like it started. It's difficult to feel properly satisfied when working on the foundations for the future when the pay off is still some ways away, but I know time investment will enable success moving forward, nor just for this game but for other titles moving forward. And with where I am in the development of my game, I would say that this year may be the most relatable to any indie game developer just entering the business.
Taking care of business
I feel compelled to start this resume of the year by addressing the business, accounting and administrative realities of managing a game development studio. I have always tried to impress upon up and coming developers the difficulties involved with the business side, especially once a company is incorporated and subject to further scrutiny and since two full fiscal years have now passed, I feel like I have a better understanding of that particular nightmare.
When the year started, I was still in the process of tying up the loose ends of my first fiscal year, which brought a significant share of struggles. There was a lot of confusion during this period and although all the paperwork ended up being filed on time and appropriately, there was a lot of undue stress both because of my lack of experience, but also I hired the wrong person for the job. Poor counseling will have cost me a significant amount of money and poor communication ensured that I would need to hire a different accountant for my second fiscal year.
For those unaware, sole proprietorship accounting is very different from an incorporation, where you must track every expense a lot more, as well as track any salary paid since I am now distinct from the company. Although I had done a significant amount of work on that, I didn't have the experience and made some mistakes. I also received poor advice in some instances, leading to several weeks of reviewing transactions and ensuring that everything was properly handled.
Although I have learned much throughout the process, I have definitely felt the limits of my business knowledge and have often felt like I was missing out on opportunities either by being unable to pursue them, or because I simply didn't know they existed. I certainly am pursuing more now than I used to, but the challenge has remained all throughout.
Money is always going to be a tricky topic in the business world, because it's never as easy as making or losing. Quebec and Canada are home to several government programs which generally take the form of tax credits and can only be accessed by incorporated companies (no sole proprietorships). The catch however is that in many cases, you're only getting back a portion of the money you've invested, rather than an outright loan or grant. This means that the more you pay, the more you get back.
This is only a portion of why the end of the fiscal year is such a nightmare for me. Suffice to say that I've hired different people for my second fiscal year filings and although my annual filings will be costing me well above those for last year, I definitely have a lot more peace of mind. It's just an unfortunate reality that having an incorporated company requires more administrative work and base costs to keep it running, and its been difficult to assess if it will have paid off.
I've also recently learned that because I'm the company owner, I'm not eligible for employment insurance should it fold, which is just an additional stress on top of everything else. I'm sure I'll have more to say about all of this next year as I learn more and make more mistakes.
The path of an Aethernaut
While I sorted the accounting, I was also head down working on my light driven first person puzzle game. Since I had started in late 2019, I had already sorted some of the core puzzle mechanics, focusing on moving light sources to illuminate sensors, which would open doors, allowing the player to access keys. Light was the key aspect of the game, meaning new mechanics typically would incorporate it in some manner.
In late 2019, I had created a level editor in Unity allowing me to quickly test out puzzle room ideas and ensure that the game would flow properly. It was so simple to use that I even made it compatible with my phone, allowing me to create new levels on the go. Unfortunately after an update to the HDRP rendering system, I was no longer able of making the game compatible with mobile devices.
It doesn't need to look nice, it just needs to work well
Early progress was very fast. By February, I had a tech demo lasting about 20 minutes which started the player in a laboratory, leading into an apartment complex, onto the ledge of a skyscraper, into a air duct and finally into a hub area with numerous other puzzle rooms to solve. The visual style was simple since I was aiming for a fairly minimalist style, but I wasn't quite satisfied with the result and so research was ongoing.
An overview of the storyline was drafted, which was very meta and called out tropes of the first person puzzle genre such as the disembodied voice guiding the player and the lack of true agency beyond the actual solving of puzzles. The story and art had little cohesion however and they would eventually both be completely reimagined.
As gameplay is my strong suit as a designer, this was the strongest aspect of the game and it only got further fleshed out over time. Multiple types of light emerged, with each color having different properties such as casting shadows rather than light, or even freezing objects in time. The source of the light were different cubes which would become somewhat of a symbol for the game.
Portal generators were introduced, which required two cubes of different types to function. Each combination yields different properties to the portals, such as time travel and traveling to an alternate dimension with different physical rules. By having only three types of cubes, I kept the number of objects a player needed to keep track of low, but the combinations proved to offer a vast array of possibilities.
I also aimed to add more physicality to navigating the environment, which few other puzzle games seemed to provide. Doom 2016 was a surprising inspiration here and the ability to climb on ledges became a staple of my game. This allowed me to create more vertical puzzle designs and unique puzzle solving challenges since players couldn't climb while holding a light source.
A whole new world
While the design was taking shape, the visuals were a very different story. I never managed to pull off the minimalist style, since I never could wrap my mind around making it look elegant. Tron style neon lights were added but the vision never managed to feel anything but “cheap and lazy”. Part of my motivation for this style was to avoid having to do 3d modeling since I had no experience in the matter. After a few months however, I scrapped all of the visuals I had produced and decided to start fresh.
Early builds looked more scifi
After some research, the manipulation of lights felt like it would work well with steampunk aesthetics. I created a few test environment which looked promising. Unfortunately the style also required a lot more attention to details and an increased visual fidelity in general. I already had some experience with Photoshop so texturing the environment wasn't too difficult, and online tools were available to easily add normal mapping to the materials.
I also could rely on several royalty free 3d asset banks to fill out the edge details of the game, such as tables and small tools. I knew that for more specific assets however, I would have no choice but to learn how to do 3d modeling. I had dabbled in 3d art during my college years in the early 2000s, and a few years ago had unsuccessfully tried to learn some Blender. So this would be my first serious attempt in doing this kind of work. Conveniently, Blender had recently rebuilt their UI from the ground up, making it far more approachable to newcomers.
I followed a few online tutorials early on to understand the basics of the software and have an overview of the different functionalities the software offers. The rest came gradually as I rebuilt interactable gameplay assets, followed by creating a myriad of machines, walls and doors to fill in space. Although still a work in progress, this approach has already yielded a lot of praise.
Various Aethernaut interactable assets
The increased amount of details and objects, meant that I would need better tools to ensure I could create fleshed out spaces rapidly. I upgraded the level editor with several new tools, including a “wall creator” which enabled me to easily create different wall types with varying degrees of procedurally added details. I intend to write a full article on my level design tools at a later date but suffice to say that although the current result might seem cryptic to a newcomer, the tools are not only very powerful but also allow me to quickly create new levels or even re-theme them in a few clicks. This tool is invaluable to allow me to reach a goal of over 100 puzzle rooms for the final game, along with the several hub areas.
As the new art style was coming together, the story for the game was entirely rewritten, now focusing on Doctor Louis Cornell, a sarcastic scientist whom's personality was not unlike mine. Over the course of the game, he would provide context to the structure the player is exploring along with details about his personal life and what led him to this point. The script ended up more personal than I had expected as I introduced some of the personal frustrations I've faced in my career and interpersonal relationships.
I tested the game however, it became clear that while the audience enjoyed the puzzles, the format of story was not resonating with them. They liked Cornell, but the story of the Construct which the player was exploring was failing to grab their attention.
Other games in the same genre would often introduce philosophical themes which would be well received by players already placed in a thinking mindset. Wanting to involve the player with the story, I decided to introduce different philosophical questions which would be asked throughout the game, which the player would be encouraged to answer. These would include queries such as “Would you sacrifice a world to save your own.”
It was important to me that no answer would be presented as correct, with Cornell often playing devil's advocate with the player's choices. This made the story a lot more personal to the player, since they were now considering why different choices were made in the lore. And they could even compare their answers with those of other players, which would be presented at the end of the game.
With the new visuals, the story and the game mechanics in place, I was ready to create my first public demo just in time for Gamescom in late August.
Conventions in a COVID age
With the launch of Tech Support in 2019, I had traveled more than ever before and presented in six different conventions during the year. Although I expected nothing for 2020, different convention opportunities were offered to me thanks to La Guilde, starting with Gamescom which I attended digitally thanks to a collaboration between Ubisoft and the Indie Arena Booth. A few other conventions had become digital only during the year, but this would be my first experience.
I was confirmed as an exhibitor in late June, giving me just two months to prepare everything I needed for the convention. I started by creating a trailer for Aethernaut, which was a requirement for the Steam page I also needed to set up. I also created a website for the game, simply porting over the one I had used for my previous game. Thankfully, I had already released several games so I could use my expertise in writing engaging descriptions for the game.
Five puzzle rooms were chosen to make up the core of the demo, which would be led in by a tutorial. I recorded myself as the voice of Cornell and made sure the demo was working well for the first unveiling. Finally, I recorded myself playing the game, which I would use as a streamed video on the game's page, also allowing me to appear on the Indie Arena Booth's dedicated steam page.
In addition to setting up a web presence for Aethernaut, I also needed to create a digital booth in the Indie Arena Booth virtual environment. This took a bit more time than expected since it was the first unveiling of the platform. Unfortunately, despite trying to bring players in, it quickly became clear that there were too few users to create proper engagement, and ultimately no meaningful interactions came out of it.
Other convention related events had a lot more success, including a Twitch stream in collaboration with Loto-Quebec, and a Reddit AMA which proved to be very successful. I was very satisfied with this first public showcase of Aethernaut and thanks to the dedicated Steam presence of the Indie Arena Booth, the game saw a massive jump in wishlists. This would become a trend with every subsequent event with a dedicated support from Steam would see a significant boost in interest.
The next event I would attend came a month later with Tokyo Game Show. Since this one was more geared towards the Asian market and due to some planned meetings, I shifted my sleep schedule to match Japan time. In retrospect, it was probably overzealous on my part, although I never want to miss out on any opportunity so I was happy to do it.
Tokyo Game Show proved to be an even more popular showcase for me, as I reached over 5000 viewers of the game's stream at one point during the convention. I always made sure that everything was set up days before the convention actually starts, which allowed Aethernaut to shoot up to number one early on. Again, planning ahead and seizing every opportunity.
They needed to see it to believe it
The end of the year wishlist counts for Aethernaut are very strong, especially compared to all of my other titles, but I also know that there's a lot of additional work to be done on every facet to ensure that it's a top notch projects. Most of the end of the 2020 was used to polish up the demo, including adding an extra puzzle focusing on time travel and improving the tutorials in response to player comments. I've also spent a significant amount of time improving general performance, a process which will be ongoing until the end of the development cycle and perhaps beyond.
I also started pitching to different publishers during the convention period, in some cases cold emailing those I felt would be a perfect fit, as well as enlisting for different B2B conventions. The general reception for my presentation was extremely positive, as I had prepared enough documentation and content to ensure the meetings would have answers to every question a potential publisher might have.
Unfortunately, although they did enjoy the game, I found many to be reluctant to invest in a first person puzzle game, feeling that the genre was just too niche to get enough traction. Although my research into different titles says otherwise, at this point I can only continue along this path. Aethernaut is already far more anticipated now than I ever managed to bring to Tech Support on my own. I've already started preparing contingencies in case I'm left to market the game on my own.
But although Aethernaut took the majority of my time for the year, there was also a second project I've been tinkering with, which I set up specifically to seize an unexpected opportunity which dropped on my lap.
Learning experiences for allBack in May, I was contacted out of the blue by a student in game development, here in Montreal. He had seen my development Twitch stream and some of my games, and wanted to apply for a programming internship with Dragon Slumber. With the pandemic ramping up and turning everything digital, this felt like a unique opportunity. After an interview with the candidate and his friend, I decided to try both of them out.
I don't have a picture for this section, so here's a photo of young me in Japan in 2008
For privacy reasons, I will not be naming these interns nor will I be talking about the project that they worked on. Suffice to say that it's an unannounced project, kept simple in its design to ensure that the tasks would be realistic for a starting developer. I do think it'll one day make a good game, but due to my focus on Aethernaut, it's unlikely that the project will resurface for a while.
Despite Dragon Slumber only being a small studio, the internship was interesting for the candidates since they could work on an actual project, rather then a lot of other offers focusing on testing games and other tasks with less involvement in development. Unfortunately, I failed to recognize the aptitude level of the interns, which made the following months very challenging for everyone involved.
When I brought them onboard, I expected them to be around 20 to 30% of the level that I'm at for the types of simple tasks I would be assigning to them. I had established a few foundations upon which they would be able to build, including a lot of reusable code they could modify to implement new features I would be requesting. Early on, I would schedule about a week for a task that I expected would take me a day. This proved to be highly optimistic as they struggled with most aspects of the development process.
I did my best to support them and remain available, meeting them, reviewing some of the issues that they were having. It was difficult at times to communicate not just “what” they were doing but also “why”, because they had a limited array of references to other games.
Once the internship was complete, I had to rebuild a section of the code which made me realize the extent of the issues. I managed to rewrite elements which had taken them several weeks in only a few hours. I had expected the struggle of writing great code, a lot of which comes from experience, but had not anticipated the extent of a junior programmer as opposed to a senior one.
I don't quite know what the lesson is here. Game development is difficult and you want to ensure that the right people are in place to give a game the best chance of success. Every person will learn at a different pace, I know I personally struggled quite a bit early on during my career. But between the administrative realities of dealing with the interns, the school followups and the time to review and update the code, I think my time better spent outright developing those aspects myself. The project would likely have been further along.
I don't begrudge them however and I've done what I can to help them. They've told me that the internship has taught them quite a bit. I tried to be clear not just with my personal expectations, but the expectations that they will face once on the job market, as I expect that they'll find it challenging to move upwards as they currently stand. I have no doubt that they will continue growing and I wish them the best.
Regardless, the experience has soured me on the process, which only follows the trend of me being disappointed with the people I have tried working with (as regular blog readers will have seen). It's unfortunate to have expectations which I tried to make realistic, turn out to be vastly optimistic. So for the foreseeable future, I will continue walking forward on my own, which is the only way I've found to ensure that the work gets done properly.
With 2020 being a transition year for Dragon Slumber, I have far fewer stats to share. 2019 was me trying to broaden my horizons and create new venues for myself, whereas 2020 was just a lot of head down development on Aethernaut, bringing it to about 50% complete by the end of it. Even without Covid, it's likely that I would have been stuck at home for most of the year, and I wouldn't have been able to afford the conventions so I was lucky on that front.
I did release one game this year, A Loan in the Dark which I developed in 12 hours for a game jam and which won several community awards for innovation. I think it's a good goal to ensure that I release a new game every single year, even if its just for a gamejam, so we'll see what 2021 brings on that front.
Every year, I've finished my article bemoaning the harshness of challenges I had faced and were ongoing, and hoping the next year would improved. I've evolved the approach I've taken to games and projects in general, trying to test earlier in development and abandon what has little chance of success as early as possible. It's what happened with Beast Commander and I have no regrets there. Many have mentioned that Aethernaut is the best game I've worked on thus far, and I completely agree. I just need to make sure it's a profitable one.
I hope to get back to Beast Commander some day
When I started these blog posts, it was always my goal to teach up and coming indie developers about the realities of gaming games professionally, and also to contrast with the differences with being an employee with a guaranteed salary. Though an employee may lose their job, they still can count on the salary they've built leading up to that point for some stability if they've planned ahead.
That is not true once you're at the head of a business. Our income is directly correlated to the sales we make and when we fail in that process, no matter the reason, then we get no return. It's a higher risk in the hopes of a higher reward. The challenges of managing a business while developing a game should never been understated. Even the time I take here writing this post means that I'm not developing the game. Managing my schedule can be a difficult balance.
Aside from a better accountant, I don't know what 2021 will bring. I've yet to commit to a release date for Aethernaut, waiting to exhaust different publication possibilities before making that determination. I'm thankful that thanks to La Guilde and different government programs, I'm able to better market my game even without the help of a publisher. I've already grown the wishlists several times higher than Tech Support on my own and I think with it being a more ambitious project, along with the accolades I've received, I'll be able to gather more interest from influencers once the time comes.
That being said, I know this story will get read by many people in different places in their career. Some of you are just starting and some are already well ahead. If there's anything you can do to help, I would be most grateful. You can contact me at any time at email@example.com
To the rest of you, to the dreamers who want to believe that they can make it as full time indie developers, maybe you can. Maybe you have the perfect game which will resonate with the right audience, the next Minecraft or Undertale or Stardew Valley. All you can do is plan for the worst and hope for the best. And make the best out of every situation, even virus ravaging the entire world.
Thank you for reading.