I'm looking at my total savings and have calculated a monthly "burn rate", which is how fast I am consuming my cash per month. I need to assume that my project isn't going to succeed and have a little bit of cash left over in reserve so that I can spend a few months looking for employment to turn my cashflow back into the positive. If my cash is my gas, I have enough fuel to make and ship a great game in exactly two years which lots of people would be willing to play and pay for. What if my game is shit? what if nobody wants to play it? or pay for it? or if nobody even knows about it? What if on launch day I sell 1 copy and my only customer is secretly my mom? That two year deadline is a "no shit, you're done or you die." deadline, so there's no slippage allowed. No project overruns. What's worrisome is that developers are notorious for miscalculating how long something takes. I'm a developer. What if my project is too ambitious for two people to finish in two years? What if it really needs 4 years to complete and I just have no idea at this moment in time?
I've tried to come up with a rough schedule on a month by month basis for what parts of the game need to be done on what months. I have no idea if the sequence of events I've outlined will actually result in a game. It's just stuff I think may need to get done. I don't know exactly how long its going to take to implement some of these things, but my measuring stick is my current pace of development using my own engine to build a prototype version of my game. I've decided that I need to wrap up this prototype asap. Any extra time I put into glitter and polish is time I'm not only wasting, but precious time I'm not spending on the shippable product -- you know, the one that would actually make me money.
One other thing I'm not budgeting for is contract labor for things like music and sound effects. I'm sure the costs of that are probably equivalent to a months worth of fuel, and that's the first cost I can think of right off the top of my head, and surely it's not the only cost to ship successfully, so in truth I'm probably looking at a shorter timeline than two years exactly. Shit. That's got me frantically stressed out.
So, I tried to think long and hard about the "core features" in my game and ranked them by priority. The question to ask: If you have to cut this feature, will you still have the same game you envisioned? If you saw this game with this feature set on Steam, would you put money down to play it? Would you want your money back afterwards (because you were disappointed)? I already know that the top most important thing to do is identify these core features and do them well and polish them to a shiny gem-stone rather than trying to include a thousand different ideas but only execute them haphazardly due to resource constraints.
The wild-card in all of this is the capabilities of Unreal Engine 4 and how fast I can ramp up on learning how to use it to build a game. A veteran of the UE4 team built a flappy bird clone in a few days. Surely, I can build *my* game in two years with two people, right?! There'll probably be a few months of pain as I try to learn the engine's ins, outs, and bugs, but I'm going to have to go through that one way or another. I'm really betting everything on the engine, so the only difference between me and the veteran UE4 employee is a decade of experience in the tools.
Idea: Why do I need to prototype my game by writing it in code? Sure, it's going to be a real time strategy game with a back-end turn system. Why can't I just build a prototype using scraps of paper, a map, measuring tape / string and a stop watch? I could totally sandbox it in a conference room for a few hours and we can iterate on that until it's addictingly fun and then build that in digital form? All of the rest of the stuff would just be "balancing" and "play testing" rather than the design feasibility tests I'm wasting time trying to build.
Anyways, I've got an "alpha" version slotted out on my schedule for a year out from now. It should be good enough to ship, but doing so would likely piss off customers -- which would be terrible and unallowable. The intent is to get to a "feature complete" state by then and spend the following six months adding in content, and the remaining time is for polishing and buffer time for cost overruns / contractor fees. If the alpha is "sufficient", I can really consider shopping it around to a bunch of publishers to get additional funding and resource support (like marketing know-how!). The dream would be to get a publisher with deep pockets to see the vision, buy in to it with me, and give me enough resources to hire a team of 30 people to build it without cutting a single feature. Hell, I'd even get in bed with Microsoft if it means I can build what I want to play and be able to say I was able to lead a team to successfully ship a title to commercial success. One step at a time though -- that'll never happen without a great alpha to show around, and if no publisher wants to commit, it's 100% financed by me, make it or bust.
In a bit of personal news, I broke up with my girlfriend six weeks ago. We'd been together for two years. I had to find a new place to live while trying to work at the same time and keep myself emotionally stable. It wasn't easy, but I got through it. It does mean that I don't really have anything to go home to, so I can spend long days working in the office without any social consequences. I can also work weekends. In fact, considering the dire straights of my project schedule and that I have nothing better to do than work, I am tempted to work 12 hours / day, 7 days/week. If I don't and the project fails, I may think I didn't give it my all and blame myself for it. At the same time, burn out is very real and something to watch out for.
Anyways, this is really nuts to think about: I am getting old. At the age of 16, I decided I wanted to make video games and set myself on the path to do so. Now I'm 32, going on 33, making my own game. If all goes well and I release this game, I'll be 35! I kind of wanted to have a family by now, but it's becoming apparent that isn't going to happen at a minimum until I'm done with this project. If you're going to sacrifice everything to ship a game, you may unwittingly sacrifice things you aren't happy with. Heh, suddenly employment and the stability of a steady paycheck has a bit more appeal, right? What's weird is that I kind of had this unintentional assumption that once I reach adulthood, I'd stay in the exact same phase of life forever and have plenty of time to do everything I ever wanted, to have all the adventures, to see all the things, and always be the energetic 23 year old, where age is just an irrelevant number which has no broader meaning other than wrinkles and graying hair (not that I'm there yet). Nope... your phase in life goes forward whether you're ready to or not. You just get more stresses, like sweating over finances, project schedules and feature lists.
Oh god. I can't become homeless. It's time to shut up and code.
PS. I showed my game prototype off at a local game dev meetup. It went horribly. The game has a fixed windowed resolution which was hard coded in and it didn't gel well with the projector (which changes your screen resolution!), so I fumbled my way through that and a few resulting graphical artifacts. I also had a delicious beer from our sponsor and little semblance of what I wanted to say, so I did a moderately drunk demo. The game didn't crash though! I'll do a bit better next time ;)