When making Indie games, there's a
mantra that bears repeating over, again and again:
“Don't Repeat Yourself”
It's actually a corruption of a much
deeper truth. If software development excites you, I urge you to
read all the gory details about that deeper truth over on wikipedia. (If you want to go read it now, I'll still be here when you get back.)
When making Indie Games, however,
“Don't Repeat Yourself” means something different. It's rooted
in the notion that (calender) time is the most precious resource.
It's the free variable with the highest opportunity cost. The longer
amount of time it takes you to do something directly translates into
a lesser amount of time you could be working on your next goal.
So what happens if you have to repeat a
previous step? Replace an image that's no longer working? Change a
sound effect? Rebuild a level? What happens when you have to repeat
yourself?
For every repeat, the time you wisely
invested into the previous version of that asset is effectively wasted.
You would have been better off using
that initial time reading game development blogs. Or meditating. Or
playing Dino Switch II.
So what does "Don't Repeat Yourself"
really mean? It means that as an Indie, (almost) every piece of
content you put time into, needs to ship at some point in the future.
It means that each time you touch an asset, you should treat it as
the last time you'll touch it before it ships.
Your asset pipeline (as an Indie) needs to go
:
Concept -> Placeholder -> Shippable Asset
Cappucino
Contrast that with the apocryphal AAA
game producer, “Make three cappucinos... then bring me the best one!”
Of course, what he really means is
“Have three baristas separately make three different cappuccinos... then
discard the two which aren't as good.”
So here's a Pop-Quiz, are those two
discarded cappuccinos wasted?
Some would say “Yes”, referring to
the ingredients and skill which went into the preparation of content
which will never be consumed.
Others would say “No”, because the
producer couldn't know ahead of time which barista would prepare the
best coffee. Three times the amount of resources have gone into the
production, in exchange for an improvement in quality and a
substantially reduced chance (risk) of getting a bad coffee.
Don't Repeat Yourself
As an Indie, where (calendar) time is
the most precious resource, “Don't Repeat Yourself” means
shipping every piece of content you produce. If you somehow find
yourself with 3 cappuccinos, then you're going to be drinking them
all!
But does that also mean you need to
ship the pieces which didn't work out? Not at all. Because the overarching process
goes like this:
- Get placeholder assets for everything into the game
- Without repeating yourself, systematically lift every asset in the game up to
shippable quality.
(Upon completion, your game as a whole ought to be shippable)
- Do a polish pass where you replace only the assets which are (a) quick to improve, (b) have a big impact on quality
- Ship it
And that's indie game development...
Yeah it's painting too. "Stop messing with it and just move on to the next bit"! The more you mess with it, the more time is wasted. Don't get all creative, just MOVE ON!!
ReplyDeleteIMHO the entire game industry suffers from too much repetition. If it's not an original idea hatch another?
ReplyDelete