As I sit here
reviewing this entry, it all looks incredibly obvious, which makes me feel a
bit embarrassed to bother writing about it.
But the deed is done. Captain
Obvious to the rescue!
The Difference Between
Scale and Scope
One thing we
were repeatedly taught in my undergrad program was to limit both the scale and
scope of our projects in order keep the workload reasonable. While I always knew what was meant by this, I
never really bothered to figure out the difference between the two terms as I
always found them bundled together. One
thing the process of rapid prototyping has shown me is that scope is everything
when it comes to keeping your workload acceptable.
Now, ideally,
you want to have a prototype ready to go before you even make a project
proposal, thus limiting the time constraints, but there are still instances in
which you’ll find yourself rushed to build a working demo of your game. If you need a prototype and you need it
quickly, scale and scope are two vital considerations.
Scale, as
I’ve come to know it, refers to the size of the game. How expansive of a game space are you going
to deal with? When thinking in terms of
scale, a good place to start is thinking of your overall play time. Is this a three-hour quirky indie adventure,
an epic 40-hour RPG, or a pick-up-and-play casual title that someone can get
through in ten minutes at a time?
Determining this can serve as a useful guide for how expansive – and how
deep – your gameplay experience will be.
Scope, on the
other hand, refers to the sheer amount of material that goes into the
game. Whereas scale (as per its name)
represents size, scope represents density.
How many different gameplay elements will you be dealing with? How many different characters or assets are
to be used? Perhaps most importantly,
how many different functions do you need to code?
This last
question is key in rapid prototyping. As
is often said, ideas are abundant in the game industry. In devising a game concept, it doesn’t take
long to come up with a wide array of different skills or abilities an avatar
can have or an array of challenges and obstacles the player might face. If you’re making a prototype to demonstrate a
game concept, particularly if you’re the one who designed it, you’ll probably
want to give a sample of as many of these elements as possible. That’s all well and good…as long as you’re
capable of programming everything in before it comes time to present your game
to a publisher. The trick, as far as I
can tell, is to always assume you can’t do this.
I know,
right? Way to build up the confidence,
pal.
Now I’m not
talking about breaking yourself down (or, if you have separate programmers working
on the prototype, breaking THEM down).
As with anything in life, the point is to have a plan, and then, failing
that, a backup plan, and then, ideally, a backup for your backup plan. In the case of prototyping, a good plan
should have the backup plan already built into it in the form of an incremental
increase in scope. Start ridiculously
small and ridiculously simple, then worry about building up from there.
This means
adjusting the entire nature of the project build as you go. If you’re designing a prototype featuring one
level, that level could be designed in multiple ways depending on how many
features are going to be implemented.
Adjusting Scope through
a Modular Design
Let’s say
you’re designing a platformer. It’s got
the basic platforming elements of running and jumping, as well as some other fairly
standard ones like double-jumping, speed boosting, and wall jumping. You’d also like to throw in your personal
touch with a unique gravity-alteration mechanic. You’ve designed a prototype level that
demonstrates each of these abilities, requiring each one to be used correctly
in order to make it through. Great. That should give people a good idea of what
to expect from your game.
Next, you
work out a plan for building your prototype.
You’re going to start with the basic platforming mechanics to get the
basic setup going. It’s a platformer, so
these elements need to be in place before you can move on. From there, you’re going to implement your
gravity-alteration system. This is the
key to your design – this element distinguishes your platformer from the rest
of the market. Without this element, you have nothing to show.
But then,
things start to go wrong. The physics of
the existing platformer mechanics are at odds with what you want the gravity
system to do. This is going to take a
bit longer than expected. No problem –
you’ll just skip one of the extra features you wanted to implement. They’re not vital to demonstrate how the game
works, after all. But there’s another
problem – the prototype level you’ve designed incorporates all of these elements. Your gravity-alteration system doesn’t come
into play unless you first use your speed boost and wall jump elements to
access the appropriate area. Now you’ll
have to go back and redesign the entire structure of the level because you
don’t have time to incorporate one of those elements. This eats up even more time, forcing you to
cut out another feature and redesign the level again.
Of course,
you can’t entirely prevent this from happening, but it’s a much easier problem
to avoid in the prototyping stage than it is in production. This is what I’m talking about when I mention
having an adjustable scope and a modular design. I’m a big advocate of building cohesive game
experiences, but a prototype isn’t so much about this careful meshing of elements
that you would hope to find in a full game – it’s a demonstration of how your
game works. As a result, a prototype can
(and I would argue, SHOULD) be built with many of its key mechanics operating
independently of each other.
For instance,
you might craft a level segment that specifically demonstrates the speed boost
mechanic, another which specifically demonstrates your gravity-alteration
mechanic, and so on. Ideally, you’ll
just be building your level sequence as you go.
If you want to mix things up a bit, you can generate each module and
then, as you near the end of the prototyping period, put together what you’ve
built to generate a full sequence of events.
This latter approach will likely produce a more connected and cohesive
prototype, but it requires an additional design stage.
Visuals are More
Important than You Think
This isn’t to
suggest that you should bring in the professionals to give you fancy character
models and visual effects for the sake of a ten-minute tech demo, but keep in mind
that the term “video games” contains the word “video” for a reason. The important thing in a prototype is that
you prove the viability of your game mechanics, but the whole point of a video
game is to translate all of the mind-boggling numbers and symbols of your code
into a format that can be understood without years of training. If the code works, the player needs to see it
working on the screen. If you shoot a
gun, you should at least hear a “Bang!” of some kind. If you’re charging up for your super-mega-special-energy
attack, you should see yourself…I don’t know…glowing brighter and brighter or
some such thing. If you use your “drink
milk” function, you should see milk disappear before your eyes.
The word here
is feedback. It seems obvious when you
think about it, but in a way, it’s so obvious that it’s easy to forget about it
and simply leave it out. If the player
does something, it needs to be witnessed happening in some way. It’s important in a prototype for the same
reasons it’s important in a full game – to demonstrate that the
meticulously-written code is actually doing its job. The code makes your mechanics run, but the
player doesn’t know that without the audio-visual element. And no, a debug screen is not a viable
audio-visual feedback mechanism for the typical player.
In short,
don’t ignore feedback elements in your prototype. While it’s true you may not need a head to
explode in a hyper-realistic shower of gore at this stage, your player will
still want to know that the afflicted victim isn’t going to be a threat
anymore. Incidentally, a hastily-placed
text box reading “Boom! Headshot!”, may technically be a viable feedback
mechanism, but if I see this more than once, I’m going to stop playing your
game with immediate effect.
Drawing the Line Between
“Engaging” and “Practical”
After the
experience of completely redesigning a game halfway through its production
cycle during my undergraduate program, I hoped I wouldn’t have to go through
that process again. But, silly me, I
apparently forgot that I was getting into an industry in which this kind of
thing happens without warning. When you
make the discovery that a game simply isn’t fun, bad things happen.
Ultimately,
I’m not sure how common the practice of rapid prototyping is within the
industry. I will say this, though – the
day before you’re pitching a project to the higher-ups is not the time to make
a fundamental change to the design.
Generating a viable prototype in one week is challenging enough. Doing it in less than 24 hours is just asking
for trouble. Sure, your game might not
be accepted if your prototype isn’t fun, but if you change that prototype at
the last minute, it’s still not going to be fun.
Why do I
mention this in reference to prototyping?
The prototype is the first stage of the project where you’ll start to
see that your concept isn’t enjoyable.
As a result, it’s probably the stage at which you’re most likely to
decide that a massive change is called for.
In general, I would say it’s not something to worry about…if your
prototype doesn’t sell the concept, you should have the opportunity to make
another one in the future.
I also
mention this simply because I just so happen to have been involved with a
prototype that was redesigned from the ground up 12 hours before it was due. Don’t do this, okay?
Closing Down
Whatever the
situation may be, it’s better to let your mistakes shine BEFORE you start
making a full game. This is the true
purpose of the prototype. A prototype is
a test run, allowing you to give your concept a chance before risking the
world. Sometimes, it can hurt to know
that your prized design doesn’t work, but it hurts a lot less to discover that
before you’ve invested the time to develop the game.
Incidentally,
prototyping also allows you to imagine, however briefly, that a typical crunch
period only lasts for a few days.
No comments:
Post a Comment