The Frugal Game Studio
Warning: Lots of technobabble in this post!
In addition to taking on contract jobs in the games industry, I also like to work on my own projects. It effectively means that I run a one-person game studio out of my home. I was fortunate enough to have been at two tiny startups in my recent past, one of which was unfunded and one of which was fully funded. In a small startup, you get accustomed to having a small number of people wearing a large number of hats, being absolutely devoted to the products, and figuring out to do things efficiently and inexpensively.
I am working on a game that I call Dragonlings, which is a light action strategy title about herding baby dragons. I think that the game would be marvelous on tablet devices such as the iPad, but there are some challenges.
- I have an all-Windows household, which makes development for any Apple hardware difficult at best.
- Adobe’s Flash would be a great way to develop a cross-platform game that runs on multiple machines, but Apple explicitly forbids Flash from running on their mobile devices.
- Development for Apple hardware is done in a language called Objective-C, which is syntactically different from the other major object-oriented programming languages. In other words, Apple forces its developers to learn a language and method of development that is a non-transferable skill. They require a high level of commitment and a high barrier to entry for making iOS products.
There are a few development packages out there which can ease the pain for such developers. The ones of most interest to me are those which let me develop the game in Windows, and then easily port it to iOS devices. In my case, I picked Unity3D.
Unity3D is a 3D, cross-platform game engine that works on desktop machines and a great many mobile devices. There is a basic version for free, and a “Professional” version for $1,500. The basic version is sufficient for prototyping a game, so that’s what I’m using. If the game has potential, then I can decide at a later date to upgrade to the Professional version. At that time, I may go out and buy a cheap Mac so that I can easily port the game to iOS, too.
I have been working with Unity for about 8 months now, and have a pretty good understanding of its strengths and weaknesses. One big problem is that Unity is largely incompatible with Version Control systems, which are how multiple people can collaborate on a single project, and maintain an accurate paper-trail of every change made to a project. Unity offers its own, proprietary solution for $500 a seat. It’s not great, so I’m reluctant to fork over that much money for a flawed solution.
Instead, I am using DropBox, a free application that synchronizes a directory across as many machines as you like. It’s not the optimal system for version control, but it does allow me to drag a copy of the latest version of Dragonlings into a folder on my machine, and have it automatically update that same folder on the machines of anyone whom I am sharing the game with.
I have a strong aversion to letting anything slip through the cracks on a project, so I favor meticulous note-taking, followed by frequent reorganizing of those notes. Getting these hundreds–if not thousands–of “to do” items out of my head, and into some medium that I trust, is vital. It clears my head of the nagging worries that I’ve forgotten something, and allows me to fill my brain with the stuff that I’m actually working on at the moment.
Since I’m a one-man studio without a budget (’cause there’s no money!) or a deadline (as soon as possible!) I do not need to track estimated times, dependencies, or load-balancing among a team with several people on it. Mostly, I just need to track elaborate, hierarchical to-do lists that are constantly being elaborated and updated. For this, I use the free online application CheckVist. Like DropBox, it can be shared among many people if I like.
There are other free tools that I am using to make my projects, which I will talk about later. But for now, I need to get back to work on Dragonlings!