Tales of the Rampant Coyote
Ye Olde Archives. Visit the new blog at http://www.rampantgames.com/blog/ - and use the following feed: http://rampantgames.com/blog/wp-rss2.php
Ye Olde Archives. Visit the new blog at http://www.rampantgames.com/blog/ - and use the following feed: http://rampantgames.com/blog/wp-rss2.php
Saturday, July 16, 2005
A Metric for Scoping Games?
Well, it's Saturday, and I'm stuck at the office today on about my sixtieth hour this week trying to make a so-called RAD (Rapid Application Development) tool do stuff that was never intended by the team that designed the thing. Whether that's their limitation, or my own, I don't know. But I needed a short break and I wanted to talk game development stuff, so here I am.
I was re-reading an article by Phil Carlisle a few days ago (in response to a thread on the GarageGames forums). Something really struck me. While the numbers thrown around by Phil and Dan MacDonald (in the comments) aren't necessarily definitive, they are a pretty solid rule of thumb if you know what you are doing and aren't at the fast-moving point in the learning curve. That means for every week you spend prototyping, you'll spend two additional weeks getting it "feature complete" - and then two months polishing it and getting it ready to release. So you can pretty much estimate your dev time by the amount of time it takes to prototype the game - or, working backwards, you can define the scope of the game by taking your total dev time, dividing it by twelve, and then scoping your prototype to fit within that time.
Of course, there are variables. At SingleTrac we spent about three months getting prototypes done for our first games that had only a 1 year development horizon. So that's only a 1:4 ratio. A lot of those three months were spent characterizing the machine, staffing up the dev teams, and getting over the early-learning-curve stuff. We had probably twice the team size during development as we did during prototyping and early-engine-creation... so that would bring the ratio from 1:4 to about 1:8. Not quite 1:12, but halfway there. The learning-curve stages could account for some of it. And, arguably, the compression showed - SingleTrac never had a reputation for having extremely polished-looking games.
Void War took about 1/6th of the time to prototype instead of 1/12th... but I also ramped up the amount of time I spent on the project significantly during the latter third of development (from about 10 hours a week to 30+). So if you consider the last six months to be worth three times the value of the first twelve, you get a total development time of 30 "10 hours-per-week months." 3 of those spent prototyping... That's a 1:10 ratio instead of 1:12, but still dang close. HOWEVER - I also got some additional help developing content and programming the launcher during the latter half of development. Bingo. Unscientific guesstimation could bring that ratio to about 1:12. So Dan's numbers hold up.
So I think we have something approaching a true, honest-to-goodness metric for scoping games. Something hard to think about - especially for ME, working on my current projects. While I'm breaking a few rules with this game design, deliberately persuing some methods of achieving larger scope along one axis by reducing scope along another... it doesn't make me immune. Does this apply to triple-A retail games as well? Maybe, though if anything I'd say the escalation of production qualities means an even smaller ratio.
And moving on to something different, with pictures:
I think my "prototype" barn turned out pretty well, as a learner project. I don't know if the 1:12 ratio applies here (I hope not, or I'll be spending about 12 weeks on every one-room-sized interior in my game, and I'll be screwed!). It's not professional quality, and the final version will have to have things like a ladder, doors on the stalls, and lots of clutter - like hay bails and maybe piles of fly-attracting dung (phew!) And I need to figure out how to get rid of the "sneaky ninja lightmap-leaks" that show off certain edges between polygons. But for creating a simple environment for testing out gameplay, I think it'll work just fine.Labels: Game Design
Comments:
Links to this post:
<< Home
Very interesting! I didn't read the original article, but a question pops up: What game project *doesn't* have some kind of learning curve? This is probably an unusual case (because I've been system-hopping like a crazed bunny), but the last 10 games I've made included either new hardware or some new engine technology or component. I guess an easy observation to make is that the severity of the learning curve varies for every game.
Another interesting thought this brings up is: How does this ratio apply to Game in a Day contests? If I can prototype my game in 1 day, should I be able to finish it in 12? :)
Another interesting thought this brings up is: How does this ratio apply to Game in a Day contests? If I can prototype my game in 1 day, should I be able to finish it in 12? :)
I'd agree on the learning curve issue - I've always tried something new with every game I've worked on, but there's a huge difference between starting from scratch on a new platform with a new team, and going to town on a sequel with a familiar system, engine, and team.
Does it apply to GID entries? Heck if I know :) As a 24 hour marathon, that's about three days' worth of work crammed in there. If you can get your game fully prototyped in that time, then that would be about six working days to get it to "feature complete" stage. And then 27 more days to polish it up, QA it, and get it ready for sale?
I dunno. Doesn't sound too unreasonable to me :)
Does it apply to GID entries? Heck if I know :) As a 24 hour marathon, that's about three days' worth of work crammed in there. If you can get your game fully prototyped in that time, then that would be about six working days to get it to "feature complete" stage. And then 27 more days to polish it up, QA it, and get it ready for sale?
I dunno. Doesn't sound too unreasonable to me :)
For GiD, I think you also need to take into consideration that the farther you go into the 24 hours, the less effective you'll likely be. The later hours can be worth less than the earlier hours. Well, if you don't take into account that development should get faster as you get the initial part going. Darn complexities...
...there's a huge difference between starting from scratch on a new platform with a new team, and going to town on a sequel with a familiar system, engine, and team.
We spent about 30 months developing our first "big" title. It then only took about 2 months to develop our next one, as we used nearly all of the non-game-logic code we created for the first. The latter was a much simpler game, but having most of the grungework already done was a godsend.
Do you suppose that much of the time spent "polishing" involves kicking the supporting systems (e.g., registration modules, graphics options, and all the unsexy stuff) into place? Or does this rule-of-thumb already consider the use of middleware and re-use of existing systems as things that will reduce the time all-around?
I want rapid-time-to-market. And a pony.
We spent about 30 months developing our first "big" title. It then only took about 2 months to develop our next one, as we used nearly all of the non-game-logic code we created for the first. The latter was a much simpler game, but having most of the grungework already done was a godsend.
Do you suppose that much of the time spent "polishing" involves kicking the supporting systems (e.g., registration modules, graphics options, and all the unsexy stuff) into place? Or does this rule-of-thumb already consider the use of middleware and re-use of existing systems as things that will reduce the time all-around?
I want rapid-time-to-market. And a pony.
I think the rule-of-thumb applies to fairly "average" cases. But maybe you'd be in the best position to answer it. What percentage of your time for both projects was spent prototyping, versus "feature complete", versus polishing?
And tell me more about getting your game out the door in only two months! I'd love to see a postmortem on that!
And yes, I tend to consider kicking the support systems into place as polish up to a point. If you can change your screen resolutions in a text configuration file, it's feature complete. Having a nice, clean, professional UI to control it in game is pretty key polish. Maybe some folks would disagree with me on that.
And tell me more about getting your game out the door in only two months! I'd love to see a postmortem on that!
And yes, I tend to consider kicking the support systems into place as polish up to a point. If you can change your screen resolutions in a text configuration file, it's feature complete. Having a nice, clean, professional UI to control it in game is pretty key polish. Maybe some folks would disagree with me on that.
What percentage of your time for both projects was spent prototyping, versus "feature complete", versus polishing?
Good question; when we first started working on Inago, we'd been developing Palm OS games for several years. I can't overstate the disaster that was our attempt to develop a first-person shooter for Windows in the same way that we had been developing tiny PDA puzzle games. :) So, this went along the lines of:
- Prototyping: 4 weeks
- Distinguishing between our asses (pardon) and our elbows: 2.5 years
- Polishing: What's that?
However, for Epidemic, this went more like:
- Protoyping: 2 weeks
- Feature Complete: 4 weeks
- Polishing: 2 weeks
So much of the grungy stuff (launcher; registration; options menu; tutorial system; et al.) was already done in Inago, and simply had to be re-adapted for Epidemic. I'm hoping that the same will be true for the next game we base on that architecture.
Good question; when we first started working on Inago, we'd been developing Palm OS games for several years. I can't overstate the disaster that was our attempt to develop a first-person shooter for Windows in the same way that we had been developing tiny PDA puzzle games. :) So, this went along the lines of:
- Prototyping: 4 weeks
- Distinguishing between our asses (pardon) and our elbows: 2.5 years
- Polishing: What's that?
However, for Epidemic, this went more like:
- Protoyping: 2 weeks
- Feature Complete: 4 weeks
- Polishing: 2 weeks
So much of the grungy stuff (launcher; registration; options menu; tutorial system; et al.) was already done in Inago, and simply had to be re-adapted for Epidemic. I'm hoping that the same will be true for the next game we base on that architecture.
Wow. That was very illuminating.
And only 3x the time to take it from prototype to finished product kinda blows a hole in my metric, doesn't it?
I'm HOPING that with my use of an existing, fairly mature game engine - and with a lot of pre-created chunks for handling sales etc. - that I'll be able to do something similar. ANYTHING to cut the cost and time of development down.
I'm hoping that working with an existing, mature engine - and having an existing codebase and experience releasing an indie game - will help me this next time around. We'll see. I'm definitely working on a "bigger" game this time, so it could be much, much worse.
And only 3x the time to take it from prototype to finished product kinda blows a hole in my metric, doesn't it?
I'm HOPING that with my use of an existing, fairly mature game engine - and with a lot of pre-created chunks for handling sales etc. - that I'll be able to do something similar. ANYTHING to cut the cost and time of development down.
I'm hoping that working with an existing, mature engine - and having an existing codebase and experience releasing an indie game - will help me this next time around. We'll see. I'm definitely working on a "bigger" game this time, so it could be much, much worse.
And only 3x the time to take it from prototype to finished product kinda blows a hole in my metric, doesn't it?
Shucks; I wasn't trying to blow nothin' up. But I'm hoping there are ways to cheat the system by massive re-use of existing systems.
Post a Comment
Shucks; I wasn't trying to blow nothin' up. But I'm hoping there are ways to cheat the system by massive re-use of existing systems.
Links to this post:
<< Home


