Videogame Developer's Strategy Guide
Videogame Developer's Strategy Guide
Videogame
Developer’s
Strategy Guide
ii
Why a Learning to develop videogames is itself an
open-world adventure. Explore in any direction
Strategy you’d like. Develop character skills that are
broad, or specialized. Build a party, or go solo.
Guide? While this book can be read cover-to-cover -
I’ve sequenced these chapters and sections to
help that go smoothly - for most people it will
work much better if used as a strategy guide.
If, in playing a game, you ran into trouble in the
Lava World, or wished to learn about Enchanted
Crafting, you’d head to that section of a guide.
Similarly, here, if you’re tinkering on a game type
that has levels, jump to the Level Creation
chapter for terms and processes. If you're in a
group, browse some sections on Team Projects.
There’s also one more way that this is like a
strategy guide: tips in a guide only help if you’re
actually playing the game it’s for. This guide is
for videogame development. For these ideas to
have context and purpose, you really should be
actively making videogames of your own.
If you haven’t yet started creating games:
today’s a great day to finally begin your journey!
iii
C H APT ER 1
Getting Started
iv
C H APT ER 2
v
C H APT ER 3
Programming
vi
C H APT ER 4
Get Motivated
vii
C H APT ER 5
Game Design
viii
C H APT ER 6
Level Creation
ix
C H APT ER 7
Team Projects
x
C H APT ER 8
Industry
xi
C H APT ER 9
Game Analysis
xii
1 If this is the first material that
you’re reading about videogame
development: welcome! The way
forward is long, difficult, at
times frustrating... and totally
worth it. You’re on your way to
learning how to create your own
videogames! There’s nothing
better than homemade fun.
Getting Started
13
SE C TI ON 1
The original Pac-Man took a team Now in 2014 virtually any decently
of nine professional engineers a experienced amateur can remake
year to create. Although we tend a videogame similar to Pac-Man,
to experience Pac-Man today as working alone, mostly in an
mere software, either downloaded evening. It doesn’t even cost
or played in a web browser, the anything to make.
original was a 400 lbs. (180 kg.)
Then you can distribute the game
painted wooden arcade cabinet of
worldwide instantly for free.
custom electronics that needed to
be shipped all over the world. What at one time revolutionized
the game industry is now less
Pac-Man’s development and
complex than projects that we see
distribution required a level of
made in weekend game jams.
labor and equipment in 1979 that
could not have been achieved as a Things got better. Much better.
part-time side project.
14
BETTER FOR ALL OTHER GAME MAKERS, TOO be competing against more people
Advancements in development
than ever to do so.
and distribution options means
that we’re seeing more kinds of I’m not saying this to discourage
games, released more frequently, anyone. I’m saying it to establish
from a larger number of creators. perspective of what to prepare for.
DANGEROUSLY MISLEADING MYTHS
This is very exciting, for players
There are some misleading stories
and game makers alike. But it’s
out there which have tricked
essential to recognize that this
people into thinking that making
does not mean that making games
videogames is a get-rich-quick
as a business got easier, too. It’s
scheme, or that quality and hard
true that it’s easier to sell an app
work aren’t necessary to succeed.
on a smartphone than it was to
sell a game for the old Nintendo The first misleading myth is that of
Entertainment System or Xbox the overnight millionaires. Some
360, but that truth applies to every indies have fared very well. They
developer in the world. In August are talented, and they put in the
2013 there were multiple times work, but their success appears to
more new mobile apps published be overnight because you usually
per day (~2400; VentureBeat) than haven’t heard of the first 30-50
the total unique games released games they’ve worked on, or seen
ever for NES (~800; Wikipedia), or what went into developing their hit
Xbox 360 (~1,139; Wikipedia). for years leading up to launch.
Most indie developers make very
The barriers to entry to making
little money from their games, and
games aren’t just lower for you.
many do paid contract work on
They are lower for millions of other
the side to make ends meet.
people making games, too. If your
main goal is to make indie games The second misleading myth is
professionally, know that you will that simple games that anyone
15
can make easily often explode into MOST CUSTOMERS AREN’T GOOD TEACHERS
The marketplace can be a brutal,
meme-like fame. The few games
risky, and unforgiving environment,
like Flappy Bird are the exception,
which doesn’t make it very friendly
not the rule. For every tiny, simple
to beginner learning. People that
game you see that becomes a hit,
insist on releasing their first games
tens of thousands of little games
commercially just to see, and
quietly flopped.
“maybe earn a little on the side”
Tossing tiny, unsophisticated are seeing discouragement from
games into digital stores just in dozens of dollars or less for
case one takes off is like buying months of their work. Would we
time-consuming lottery tickets. really expect otherwise though, if
The vast majority of successful someone just learning guitar sold
games were not simple projects or their practice attempts on iTunes?
lucky breaks, but the result of hard For this reason I advise people
work, talent, and experience. Nor who are in it for the long-haul to at
does every game that arises from least begin by making games non-
hard work, talent, and experience commercially. What can be done
become a hit. No one gets any now without funding is incredible.
guaranteed profits or benefits from It’s a great way to start without
effort or seniority. Every game is a betting the farm, nor mistaking a
new, separate effort to excite and lack of paying customer response
engage demanding audiences. as a reliable gauge on whether
To make games professionally you’re learning and progressing.
your work and skills need to be Like a person going to Hollywood
extraordinary. It’ll require practice, aspiring to be a movie star, if the
persistence, experimentation, goal is to earn a living making
compromises, and humility along games as an independent
the way. developer, it would be prudent to
16
have a backup plan, a day job, others. Not sure whether
and an understanding that it’ll be a something is worth learning? Just
long, bumpy road to success. learn it. Then you’ll know if it was.
BUT IF WHAT YOU WANT IS TO MAKE GAMES Along your way you will learn and
If your near-term goal is to make
use many different programming
games, rather than to make games
languages, tools, and changing
as a business, then this is without
development environments. Don’t
a doubt the best, easiest, most
get stubbornly stuck on whichever
exciting time yet to be doing it.
you use first, and then it won’t
You have so many options of ways make much difference which it is.
to learn, ways to create, and ways
Know too that if you want to make
to share. I’ve actually heard this
videogames, learning can’t just be
major benefit turned around and
book smarts. Your attention has
used by someone as an excuse:
also be on doing a practical skill.
there are so many ways to make
Reading can be helpful, a good
games now that they “can’t figure
use of time, but reading alone is
out the best way to start.” Absurd!
not enough, for the same reason
There is no one best way to start,
that someone won’t become a
nor one best way to make games.
great painter without a canvas.
Anything that gets you making GET LOST IN FOLLOWING YOUR INTERESTS
games and trying out your ideas is If you wish to establish an identity
great. Within this book I’m going of your own as a developer you
to give you the very best advice can’t get caught up in chasing
and ideas that I have to offer, but trends. Find and develop your own
part of my advice is this: learn voice by following your passion.
from any and every source that "Not amusement nor distraction, but the desire to
you can. I’m but one of many effect some cherished purpose is the strongest
people who have been making motive that can move the learner."
"" " " " -John William Adamson
games and is excited to help
17
In order to create your own little requires special gear or privileged
worlds, you’ve got to be ready to access to retail distribution. You
live a bit in your own little world. can learn to do it in your free time,
free from external pressures, and
Well before stressing about what
free to share however you wish.
the public thinks, perhaps focus
first and foremost on impressing You can bring new games and
and surprising yourself with just ideas into existence simply
what you can accomplish. because you want them to exist.
Pull yourself from distractions, If there turns out to be a smaller
zero in on developing the skills audience for it – whether a circle
that you wish you have. No one of your friends, a dozen people
can create your many games the across the globe, or even just you
way you want them but you. as the creator – that doesn’t much
matter. A game developed for free
Your games will exist. Make up
doesn’t have to sell 100,000+
your mind to figure out whatever
copies just to justify its existence.
you must as you go to make it so.
Accept that your games existing in As developers we’ve never had
an imperfect way is better than this level of freedom.
them not existing at all. (Anything
It’s a great time to be making
that ever exists is imperfect!)
videogames.
ENJOY THE FREEDOM
We’re so fortunate to be alive at a
time when you no longer need
anyone else’s money or approval
to make your game a reality, nor to
get your game in front of other
players around the world. Making
an enjoyable videogame no longer
18
SE C TI ON 2
A friend asked this question the from not knowing how to drive to
other day. To peers nearby with knowing how to drive, or from not
more programming experience knowing how to read to being able
than him, it seemed like a silly, to read. Even disregarding other
almost nonsensical question. purposes of programming, looking
Whether or not that’s true, specifically at programming for
explaining why someone would videogame creation, there is an
think that sheds light on qualities enormous range of potential
of programming that may be outcomes, and many different
invisible to someone newer to it. metrics by which someone’s work
It’s a useful question either way. might be evaluated.
Game programming is not The question is a bit like asking
something someone goes from how long it takes to learn how to
not knowing to knowing, in the paint a picture, or how to play an
same way that someone goes instrument. Getting set up and
19
putting a paint-covered brush on are a few fundamental concepts
canvas or producing a musical and new vocabulary words to pick
note can probably happen on day up, then a bit of puzzling over
one, but after that there are people example code to make sense out
who devote decades of their lives of why it behaves as it does. This
to becoming better and/or more is typically followed by being able
versatile at these tasks. Then to modify example code to
there’s everyone in-between, from achieve slightly different results,
people a few weeks or months in increasingly so until someone’s
(able to poorly mimic the prior familiar with enough patterns and
work of others), to those a few basics to start building something
years in (able to effectly mimic and on their own. Even still, that first
perhaps personalize the prior work something will usually be quite
of others), to those several or familiar to previous dabbling, more
more years in that begin to identify a partial mash-up of ideas than a
with the art, striving to excel in project made from scratch, but
either classical execution or there’s nothing wrong with doing
exploring to discover a distinctly that to gain practice.
personal style.
From here, there are countless
Game programming is similar. directions in which to grow in the
Getting a development art of game programming.
environment installed and Someone might focus their energy
configured to turn sample code on writing well-documented, easily
from a book or website into a understood code, learning about
runnable application can probably best practices to work more
happen on day 1, or at least within effectively with one or more other
the first few days depending on programmers on a team. Such
the amount of troubleshooting skills are essential for career
needed. Once that works, there programmers on large teams,
20
although their importance among Then there is the matter of
solo and hobby developers varies learning more programming
so long as they are able to languages and development tools.
produce the results they desire. Occasional shifts in technology –
Someone could become a along with an acquired sense for
specialist in highly technical when it’s appropriate to switch
details or specific problems that between competing technologies
other programmers count on – can feel like setbacks at the
libraries or engines to solve, time, but in the long haul they can
learning how to write better save a lot of time and effort if done
network code, graphics rendering/ wisely.
effects, memory management,
Also like painting or playing an
custom file formats (such as
instrument, some people may find
levels, packed images, etc.), or
that it comes more naturally,
ways to address common issues
leading them to produce more
involved in making in-game
presentable efforts earlier in their
artificial intelligence. It’s also an
exploration, while others may
option within the repertoire of a
need a bit more time to fiddle and
game programmer to delve into
experiment before feeling as
hardware interfacing and the
comfortable. How long someone
construction of custom input or
takes to feel like they have a
output devices, to make games
handle on it isn’t necessarily a sign
utilizing new types of controllers
of how much they’ll accomplish
(think about how games like DDR
with it though – like any creative
and Guitar Hero might have
endeavor, persistence and plenty
started) or unusual forms of output
of practice will gradually outpace
(tactile feedback, external LEDs,
others that don’t work hard at it.
etc.).
Any game programmer is also able
to stretch themselves too thin,
21
taking on a task too far past the enough patience can learn to do.
edge of what they can do well, or Not everyone that paints is going
they can simply spend time doing to make works of art that sell for
more of what they already know huge sums of money – very, very
they can do. An inexperienced few will – and likewise the majority
programmer may technically be of people that play an instrument
able to make an RPG from will likely never do so
scratch, but it will be a very bad professionally. We’re quite used to
one by historical standards. painting and instrument playing
Likewise, a very experienced being a healthy part of life without
programmer can still make a needing to see careers defined by
simple breakout-style or classic them, for example hanging up
tank game of the sort that an paintings by our relatives around
inexperienced programmer might the home, or playing guitar in the
be wise to take on, but it could company of friends. I’m eager to
likely be done by the expert in see the generation after ours find
much less time, with (virtually) no it increasingly normal to compete
crash issues, and/or at a much in the freeware videogame made
higher level of overall polish. by a close relative, or to hang out
Naturally, if the goal is to both on weekends playing a videogame
learn and produce good output, a made by one or more of those
compromise between these two friends playing.
ends of the continuum works best.
Of course if someone does have a
The last similarity to painting or professional interest in game
playing an instrument is that, making, whether at a company or
especially at a hobby level for going it alone, they are much more
personal enrichment and likely to build momentum and
enjoyment, game programming is relevant skills by creating
something that anyone with videogames as a hobby than by
22
simply talking and thinking about But, roughly speaking, I’d offer the
it. following estimates (remember
that this is time to learn how to do
This goes back to the opening
something, not the time it takes to
question. Professional videogame
do it once learned) -
programmers – including lifelong
programmers with world- Recompiling and running existing
renowned accomplishments in the sample code: 1 day.
videogame industry – are still in
Being able to tweak someone
the process of learning game
else’s code: a few days, to a few
programming, in the sense that
weeks.
they are continually learning new
practices to make the most of new Being able to significantly add to
technologies. Someone is never or change example code: a few
done learning game programming months to a few years, depending
until they are completely done with on the complexity of code being
programming videogames, since altered, or the size of the change
the very act of programming being made.
videogames always involves some Here there is already a massive
experimentation, digging through dovetail of differences – adding a
APIs, and solving problems that weapon to someone else’s 2D
are new to us. Even when the sh’mup example code is a very
problems that are new to us have different undertaking than adding
been solved before by someone network play to an open-sourced
else, for all but the very hardest or single-player 3D game. To
most general of problems we can continue, though -
often solve them on our own with
Being able to write a crummy
less time and effort than it would
game from scratch: a few months.
take to dig up and adapt someone
else’s solution.
23
Being able to make a decent how the big picture will need to
game: 1-3 years of practice. come together by some fixed date
in the future. When working alone,
Ability to create something a
by comparison, those skills
stranger might like: 2-5 years.
typically need to be learned
Ability to create something cumulatively by working first on
strangers might buy: 5-15 years, simple enough games that the
though obviously varies based on light at the end of the tunnel is
the price, the strangers, the visible from the moment the
project, the presentation, and a project starts, then gradually
million other factors outside the incrementing project complexity in
programming itself. a way that the lessons learned
Note too that due to the team from past projects can be built
nature of game development upon for the next.
beyond the smallest scale, it’s
somewhat possible to “import
experience” by partnering with
someone that has been doing it
longer. Working with someone that
has more practice with videogame
creation can improve the overall
quality of work coming from
everyone on the team, due to the
added ability for the team as a
whole to detect and avoid
common issues, to employ tried-
and-proven strategies that have
worked out on previous projects,
and to build while accounting for
24
SE C TI ON 3
27
Indecision Questions Adobe’s Flash CS animation tool -
Buridan’s Donkey is a parable can serve that need. Modern
from philosophy in which a console and PC games are almost
donkey, standing before two all programmed in C++, whereas
equally appetizing bales of hay, ActionScript 3 and HTML5
was unable to decide on a reason projects dominate casual web
to eat from one pile rather than the game sites. Unity has also been
other. Paralyzed by indecision, the gaining a lot of ground very rapidly
donkey starved to death, next to in enabling solo developers or
more than twice as much food as small teams to make impressive,
it needed. cross-platform 3D and 2D games,
and is well worth learning.
In other words: any answer to
these next questions is better than But here’s why I brought up
no answer. Pick one and run with Buridan’s Donkey at the start of
it. this section: the only wrong
answer is no answer! Don’t be the
QUESTION 6: WHICH PROGRAMMING
LANGUAGE SHOULD I USE? donkey that starves to death in
Answer: To develop very smooth, front of twice as much food as it
high-performance downloadable needs, don’t be paralyzed into
computer games, C++ (using indecision by there being more
SFML, Allegro, SDL, or DirectX for great and valid ways than ever
the graphics, sound, and input) is before to make videogames. Get
still performance king. To make started on any of them, be ready
smaller games that can be played to learn a lot as you go, and even
on the web without players if you find that you change your
needing to mess with installation, mind later for the next game, a lot
both HTML5 and ActionScript 3 – of that same learning and process
which compiles to Flash programs will transfer smoothly into the next
bit can be used for free without platform you work with. Pick one
28
that you can find at least a few There are two strategies for
finished games were made with, thinking about scope that I have
and get started! found effective in guiding initial
QUESTION 7: WHICH TOOLS SHOULD I USE? planning:
Answer: I’m partial to free tools
1. The Console Decades Ladder
that get the job done: I suggest
GIMP for 2D images, Blender for Make something of ‘70s
3D models, and Audacity for complexity first – on the order of
editing recorded sound effects. In Pong, Breakout, or (if you’re
Windows, I program C++ projects feeling fancy) Missile Command.
using Bloodshed Dev-C++ 5 Once you have one or more
(though for more recent games of ‘70s complexity behind
developers Code::Blocks has you, move on to one or more
largely taken its place), and games of ‘80s complexity, before
ActionScript 3 projects using going on to ‘90s complexity, and
FlashDevelop. On Mac I tend to so on, sticking at whenever phase
get by with TextWrangler and you prefer.
recompilation scripts. 2. The Demo is the Game
QUESTION 8: WHICH PART OF MY DREAM
GAME SHOULD I WORK ON FIRST?
If you made a shareware/demo/lite
Answer: If it’s really your dream version to show off what the game
game, and you want it made right, is about, in an effort to rouse
you won’t make it the first project excitement about the full product,
that you work on. I recommend what would need to be in that
getting a healthy chunk of version? Plan on completing the
beginner errors out of your system game at that scope as the final
by making a few very modest and draft. If it comes out well, you can
simple projects first. build upon it for a longer or more
involved follow-up.
29
QUESTION 9: ARE SOME GAME TYPES SAFER build and test than a local-only
THAN OTHERS EARLY ON?
Answer: In my experience game. Sticking to single player
overseeing and assisting with projects, or videogames where
student projects, RPGs and side- players can share the same screen
view character-based genres are and keyboard, can greatly simplify
the most common failed or technical matters. To provide a
cancelled first-timer projects. This sense of scale for what can be
is due largely to their hefty art involved, for several of the student
requirements. and hobby projects that I’ve seen
support online multiplayer, they
Design the game with your art first spent a full semester building
quality and quantity constraints in the game for single player with AI
mind. Some 2D genres – such as opponents, or local multiplayer,
overhead racing, side-view flying, then still needed an entire second
abstract puzzle, and overhead semester – completely doubling
space shooters – require virtually the project’s development time –
no animation, such that merely to focus on getting online
rotating and sliding static images multiplayer ready for release.
via code will suffice. The other
QUESTION 10: WHAT SHOULD I PUT IN MY
major benefit to these game types DESIGN DOC?
is that they often do not require Answer: It’s a trap! There’s no right
hand-designed levels, instead answer to this question, because I
spawning opponents semi- think most hobby videogames
randomly, which saves the should not have a design doc.
development effort required to
Starting by writing a 20-page
create a level editor, level format,
design document is silly, and
and levels.
usually a misuse time for a
Note too that online multiplayer is beginning developer. This is like
often much more complicated to someone that has never cooked
30
anything before trying to invent a project, they cheat players out of
recipe in Microsoft Word, or an opportunity to explore
someone that has never worked someone else’s imagination, and
with wood before trying to invent a they cause a severe morale hit to
woodworking project by the developer(s).
sketching. As soon as the actual
Fortunately, just a few causes tend
project starts, that plan has to be
to be responsible for the
either thrown out (a waste of past
overwhelming majority of sunken
time) or constantly updated (a
hobby projects. That means that
waste of future time).
each can be addressed on its own
Use an image editor (GIMP, here:
Photoshop…) to make a rough QUESTION 11: WHAT CAN BE DONE TO KEEP
mock-up screenshot showing how STRESS AND SOCIAL POLITICS FROM PULLING
THE TEAM APART?
the game might look when Answer: Keep the team as small as
running. This will get you thinking possible, to minimize the
about pixels and user-experience. probability of severe personality
Then write just enough code to mismatch.
bring the screenshot to life. If
writing something down helps, I’d Minimize the project’s duration to
recommend keeping the treatment several months, or ideally even
to under one page, and focusing less for the first project or two.
on notes about gameplay rather Any rough tensions, frustrations,
than the game’s fiction. and misunderstandings that might
be present between people on a
Project Finishing Questions team are likely to grow if a project
Unfinished videogame projects are drags on.
not victimless. They waste the
Going into a project as a lead,
talented work of anyone that
make sure that you’re ready and
helped make content for the
able to functionally (even if not as
31
well) complete any of the kinds of members all completed their
work that you’re bringing aboard games.
team members to help out with.
Encourage the group of 15 people
Your ability to fill in for missing
to split into 5 teams of 3, and
areas to keep the overall project
overall you’re more likely to see a
on track gives other developers on
yield of 3-5 games, instead of 0.
the team the confidence that no
Don’t put all your eggs in one
matter who else leaves the team,
basket, avoid diffusing the clear
the show will go on and their work
responsibility of one person
will appear in a finished game.
ambiguously across multiple
This confidence can help keep
people, and aim to create an
others productive.
atmosphere in which teams can
QUESTION 12: ARE 5 PROGRAMMERS, 5 GAME learn from one another’s
DESIGNERS, AND 5 ARTISTS ENOUGH FOR 1
GAME? independent investigation or
Answer: If nearly everyone experimentation.
involved is a beginner, then that’s QUESTION 13: HOW CAN A PROJECT BE
far too many people for 1 game. PROTECTED FROM FEATURE CREEP?
Answer: When the game is in
Bigger teams lead to more
finaling mode, beginning perhaps
ambitious plans, longer project
halfway or three quarters through
schedules, more communication
its scheduled development time,
challenges, more development
generate a list of the bare
bottlenecks, and more conflicts of
minimum that needs to be done
both style and opinion.
before the game can be
I’ve seen student hobby projects considered finished.
with 25 members give up, as the
Now here’s the important part:
project leader claimed that the
only allow that list to shrink!
team wasn’t big enough to finish,
while a half dozen teams of 2-4 There are two ways to shorten the
list: complete the item it refers to,
32
or cut the item. Whenever you can QUESTION 14: WHEN SHOULD WE STOP
POLISHING THE CURRENT IDEA?
make a cut without decreasing the Answer: Iteration – the cycle of
quality of the game – even if only tweaking, trying out, and repeating
because it allocates more time to – is an important part of polishing
doing other tasks that must be every game. However, tuning
done – make that cut. offers diminishing returns, adding
If this sounds ruthless or contrary less overall value with each pass.
to the idea of hobby game It doesn’t take long before the
making, note that until it’s finished, game is as good as it’s ever going
it isn’t a videogame. A garage full to be, the tweaks are too minor to
of carved up scrap wood is not affect user experience, and it’s
the sign of a woodworker – a time to wrap things up in order to
homemade spice rack and a new advance to the next idea.
chair are. Just as the outside The old 80/20 rule of thumb
world does not want to drive a suggests that 80% of the player’s
90% working car or live in a 90% attention and enjoyment comes
finished house, no one wants to from 20% of your work. If you
play a 90% completed game. The can’t find something to tune that’s
other catch is that until it’s done, likely part of that 20% the player
it’s impossible to even say what will notice or care about, test the
“90% done” really means; game a few more times from start
sometimes we have to start over to finish without introducing any
to fit all the pieces together, which new changes, then call the game
puts a perceived 90% much done and move on to another.
closer to 45%. It’s either done,
QUESTION 15: WHY DOES “FINISHED” WORK
and a videogame, or it isn’t, and it KEEP GETTING THROWN OUT?
isn’t. As the old Apple Computer Answer: This happens when a
line goes, “Real artists ship.” project’s decisions are being made
in the wrong order, causing
33
everything to change whenever jump in music or be without
anything changes. sounds. Make sure people know
about it. If it’s something you’re
If the main character’s jump height
pretty proud of, enter it in a
is changed late in development,
competition. Blog about it. At the
that will potentially break every
very least tweet and post to
jumping area in the entire game.
Facebook about it, tell your
Until enemy health, weapon range,
friends, share it with online
and movement are finalized, levels
communities. Don’t just finish it
should be throwaway test cases;
then shove it in a directory to
after those decisions are finalized,
gather virtual dust. Games are
and levels are made based on
meant to be played. No matter
them, those values should not be
how great it is, no one will
revisited. Aim to make decisions in
download it or even visit the in-
an order that minimizes thrashing.
browser URL if they don’t know
Finished Project Questions what it is, and how to get to it.
What is one to do with the game Assuming that you have achieved
after it’s done? Read on: some visibility on the project, the
QUESTION 16: WHY AREN’T MORE PEOPLE other possibility is that people are
PLAYING OUR GREAT GAME?
Answer: First and foremost: do
having a hard time getting it or
running it. In many cases, this
some marketing. Use Screenflow
happens because the project isn’t
on Mac or Fraps in Windows and
well explained on the web, was
cut together a simple gameplay
packaged improperly, or wasn’t
trailer with some music over it. Tip
tested on alternative browsers,
for that: record with music
operating systems, or machines.
disabled in the game but sound
effects on, then for the trailer add If it’s downloadable, either set up
different music and decrease a single-file installer, or create a
sound volume, so the video won’t nicely organized zip file with
34
ReadMe.txt/PDF instructions QUESTION 17: HOW CAN I KEEP MY MIND
ENGAGED BETWEEN PROJECTS?
inside it. Try running the game Answer: Game making is a form of
from a few different computers, to speaking, and the time between
verify that the package you’re projects is an ideal time to catch
giving out to the world isn’t up on listening. Our minds can
assuming a particular library or fortify mid-development, filtering
framework is already installed. attention based on “does this
Present the game’s online link apply to my game?” Tear that filter
alongside a description plus a few down, let things in, and expose
screenshots. yourself to some new ideas.
If it’s a Flash-based game I strongly suggest carrying a pen
programmed in ActionScript 3, and a small notepad, to jot down
consider posting to sites like thoughts – not to save them
Kongregate or Newgrounds. This because they’re valuable, but so
often involves little more than that you can be free to move past
creating an icon and writing a them. You’ll encounter and come
short description, and can get a up with a ton of mediocre ideas
few hundred plays minimum, throughout the day, and they’ll get
thousands in most cases, and stuck in mind until you let them
sometimes tremendously more. out. Simply putting the gist down
After spending months on a game on paper can free your attention
project, spending even a few more from juggling it, making it easier to
evenings making it presentable move on to finding and
can have a dramatic impact on the considering the next ideas.
number of people trying the game. QUESTION 18: IS THERE ANY WAY OUR GAME
COULD HAVE BEEN BETTER, GIVEN THE SAME
This is time well spent. TIME AND EFFORT?
Answer: Don’t spread the
development efforts as thin. Focus
the love. The same amount of
35
attention that could be poured into Now, if it’s a student project, and
a poorly-made medium-sized it’s just friends working together to
game, could instead be applied to get experience on a hobby
a well-polished small game. project, then it’s definitely worth
Remember too that any partly considering ways to include at
unfinished game could have been least some work from all
a completely finished slightly more contributors if possible, especially
modest project. those that genuinely committed
themselves to doing their best
Control scope every step of the
possible work for the game. If
way: plan with it in mind, develop
something is bad enough though,
with it in mind, end with it in mind.
at least try to figure out some way
If great ideas come up during
to get that developer to do
development that won’t fit in the
another iteration on it, or arrange
schedule, record them for possible
the game in such a way that it
implementation in either an
won’t block / gate access to
update, sequel, or later project.
content by other developers on
QUESTION 19: HOW IMPORTANT IS IT TO GET
EVERYTHING THAT I MADE INTO THE FINAL
the team. If it’s really, really bad
GAME? and additional iteration can’t seem
Answer: Films and novels are
to fix it, see if they’re open to the
edited aggressively, and much to possibility of making something
the benefit of the end result. Most else from scratch to replace it. If
videogames probably should be the kind of work they were doing
edited aggressively, too, and this just wasn’t coming out at usable
can include chopping out parts quality (ex. their character art just
that are finished. In game design, isn’t coming out right), see if
if the inclusion of something is not they’re open to contributing in
improving the overall experience, some other way (assistance with
then it’s getting in the way of the sound? leading some external
elements that do.
36
playtesting efforts? something!). At like a simple English paper for
the end of the day though, school, something we all learned
recognize that an awful level or in middle school: there’s more to
puzzle or encounter early on may do in going from a first draft to a
prevent players from experiencing second draft than fixing spelling
the other content later in the game and grammatical errors – for
that came out well, and fairness to videogame projects most people
an individual developer many need skip the revising and focusing
to be balanced with fairness to the altogether as if their first output
team as a whole. was a second draft and they’re
ready to fix up little bugs then call
If it’s all your own work in question
it a final draft. Ever play a game
though, because you developed
that you would have
solo, don’t be bashful about
recommended to friends, if only
ruthlessly cutting the worst parts
“they had cut that one part out?”
away before release. Is the only
Find that part in your game, and
part of the game that really came
be brave enough to cut it!
together well one of the
minigames? Consider carving Great developers make self-
away the rest and just releasing editing part of their process. Strive
that minigame. Seriously. Or at to create more content than the
least separately, in addition to still game is intended to have or than it
also releasing the rest of the game needs to have, and going back to
(heck, for an interesting little trim out their worst material to
experiment, pay close attention to leave only the best. Need 12
how responses vary to the two). levels? Make at least 15 to choose
them from, or if you want a better
The best 30% of anyone’s ideas or
set of 12 levels, make 24. (Then
work are better than the other
resist the temptation to pollute
70%. This seems obvious, yet so
your end result by including at the
few people act on it. Think about it
37
last minute the very garbage that now, there may be in 5 years,
you consciously decided to throw when you’re still pulling in traffic
out.) from old games you made back in
QUESTION 20: IS IT POSSIBLE TO KNOW HOW 2014.
OFTEN MY GAME IS PLAYED, AND TO PARTLY
RETAIN THAT AUDIENCE?
Answer: Keep metrics. Use
StatCounter or Google Analytics
to keep track of how many people
visit your game’s website. You
might be surprised which of your
projects gathers the most
attention. Whether you’re sharing
your excitement with family
members, trying to recruit new
team members on a later project,
or updating your resume in an
effort to go professional, it would
be nice to later know whether your
game had 3 or 3,000,000 plays.
The second piece of that question
is to link back to your site, either
via a menu button in the game or
through a shortcut in the game’s
start menu folder or at least
include the URL someplace in-
game. This enables satisfied
players to find out more about
your current and future work. Even
if there isn’t much on your site
38
SE C TI ON 4
41
SE C TI ON 5
42
lack of knowing when/how to end making it your own. The goal
the design phase. doesn’t need to be per-pixel
recreation of the original, but
5. …focus first on how to make
instead a careful understanding of
things work, without being
it, in the interest of advancing our
distracted by deciding what to
understanding as designers.
make work.
Sometimes that can best occur by
6. …know for certain that the skills contrasting your own implemented
you’re practicing are immediately ideas to the workings of the
applicable to the sort of unchanged version. (When our
videogames you enjoy. Great Ideas for what we thought
I’m not suggesting this as a way ought to have been done
into becoming a programmer – I’m differently turn out much worse in
suggesting this as a way into practice than the original
becoming a better designer. approaches: bonus learning!)
People can talk for a long time With practice and variation, this
about how much better something translates to being able to express
in one game feels vs another your ideas to others by making the
(combat, navigation, camera, level ideas come to life. This leads to
layout, pacing, difficulty, power-up becoming more effective as a
design…), but until someone can standalone developer, should you
actually make something that feels choose that route, due to
the way in question, they’re likely knowledge of how to make each
overlooking the most critical part for yourself when needed. It
aspects in favor of the few can also make someone a more
qualities that are easiest to effective and articulate team
verbalize. leader, on account of the gained
As the clone nears completion, sense for how all the pieces fit
there’s room to experiment with together.
43
It’s a worthwhile investment of
time to do this just to share the
results with friends, or to enjoy
them for yourself, but most of all
for the learning. In the future,
when taking on more ambitious
projects without a clear,
predefined target, you’ll be able to
accelerate exploration by
Frakenstein-ing together source
code, strategies, and learning from
your practiced clone projects.
(Disclaimer: I do not propose nor
condone cloning for the
development of commercial
videogames. By the time people
are experienced enough to make
videogames to earn money, they
ought to be capable of coming up
with and developing their own
ideas.)
44
SE C TI ON 6
46
especially for a real-time game, is we all have to deal with), even if
often within that 20% – if it’s done you’re working alone and not on
poorly, nothing else about the someone else’s time, there are
game is going to save it (see: Lair always opportunity costs when
for PS3). spending time on one part
necessarily pulls that attention
Even though it’s impossible to tell
away from other parts.
exactly what falls within that
figurative 20% the player is most Don’t let pixels in far away
concerned with, strive to get that background details, or trying to
fraction the best it can be. get a random scene midway
Whatever falls in that figurative through the game perfect, get in
80% should generally be just good the way of getting right the player
enough to not distract from the movement, camera feel,
20%, otherwise it’s sucking time consistent visual language, and
and energy away from focusing on first impressions.
that core. Every paragraph in a IF IT DOESN’T ADD TO IT, IT’S TAKING AWAY
novel doesn’t need to be tied for Having more features is not better.
being the greatest paragraph ever It’s different. In particular, to the
written for the book to come out extent that adding more no longer
well. At the same time, any book works well together, it becomes
filled with typos and distracting less focused, and feels like a less
grammatical errors won’t be given well designed experience.
a fair chance, no matter how
I don’t always edit my online
clever it is.
writing as well as I’d perhaps like
“Bang for Your Buck” trade-offs to – but at least in this case,
are a useful way of thinking about headers make it easy to skim or
videogame design. Even if you’re skip any parts that someone finds
not on a financial budget (as uninteresting or irrelevant. In a
opposed to the time budget that videogame that luxury often isn’t
47
there, since players are usually confusing, that weren’t taking
forced to take on a particular shape well, that feel unfair even
encounter, solve a particular after several rework attempts, or
puzzle, or otherwise grind through that perhaps made sense in the
each planned experience before original design but no longer jibe
advancing. with what the game has evolved
into during development. Shorter
One of the major differences
and more coherent is better than a
between Google and Yahoo, since
mess that’s a little longer.
the beginning, has been that
Google presents just a search The worst part of a game is
page with a search bar, whereas frequently the memory that
Yahoo has always thrown 10 prevents someone from
million irrelevant things (weather, recommending to their friends
news, entertainment, horoscopes, what was an otherwise excellent
personal information, travel…) in experience.
front of the user. Yahoo is less of a CONSISTENT VISUAL LANGUAGE:
disaster than it used to be – it ENVIRONMENTS
used to look the way that (at the If the player is able to climb a tree,
time of this writing) excite.com still the player ought to be able to
does – but needless to say, the climb every tree. Moreover, the
cleaner experience is widely first time that non-obvious (it’s not
preferred. a common convention, such as
dying when falling off the screen)
Show some restraint. control mechanism is relevant in
Also, don’t be afraid to edit out of gameplay, the user’s experience
a project something that is already should guide the player toward
there, just as you would with a discovering this insight, either
written paper, if it improves the through:
overall effect. Cut things that are
48
• Appeals to real-world visual mind, to somehow know that this
parallels, for example by arranging tree, or perhaps this door, can be
branches in a way that resembles interacted with, unlike all that were
a semi-regular ladder rungs. discovered before or after it.
• Affordance hints, such as Consistency of visual language
alternating nobs on the tree, extends into all corners of the
spaced within arm’s length of one imagery in a game – something
another. that harms the player should
suggest it will cause harm (via
• Curiosity lures, such as
spikes, boiling lava, angry
placing a desirable power-up at
expression), a platform the player
the top of the climbable portion,
can stand on should have visual
visible from the ground, which
similarities to others that the
suggests to the player that there
player can stand on, and so on.
must be a way to reach it.
CONSISTENT VISUAL LANGUAGE: ENTITIES
• Visual clues of being in the A similar consistency of
player’s plane of action, such as expectation is formed by players
by being at natural saturation in an in regard to enemies and items. If
environment where most trees are the player has encountered a
darkened out in the background. number of witches before, one
• Demonstration through non- witch should not suddenly appear
player/enemy utilization, e.g. which takes or causes twice as
having enemies climb up or down much damage as those that came
the tree to reach the player, before. There are, alas, at least
showing that it can be climbed. three exceptions that commonly
come up where violating that sort
Players become confused, stuck,
of convention is acceptable:
or frustrated when they are
expected to read the designer’s 1. There is an obvious visual
difference in the new, more
49
powerful witch (tinted red, or planted deliberately, this defeats
substantially larger). This is not the purpose.
really an exception of the HALVING/DOUBLING TO TUNE NUMBERS
convention so much as a time- How fast should the player move
effective workaround. in the air, in relation to how quickly
enemy shots move? How rapidly
2. If the first time the character
does the next puzzle piece fall?
appears it is presented as a boss
There are at least dozens, and
encounter (given its own health at
usually hundreds or even
the top of the screen, supported
thousands of little numbers that
by minions, required to be
can be tuned in a finished
defeated for the player to
videogame. Where do those
complete an area), then on future
numbers come from?
encounters as a recurring enemy
its strength as a non-boss may be Tuning generally comes down to
toned down considerably. whatever “feels right”. Isolate the
most important number first – say,
3. Minor variations, such as
player jump height and move
sometimes requiring an extra hit or
speed – then count on that as a
two to defeat, are accepted in less
pivot while tuning other values.
iconic, more literal representations
of human (soldier, criminal…) or Values that “feel right” are often
monster (esp. zombie) targets. found by halving and doubling/
Requiring an inconsistent number splitting – programmers will
of hits to bring down adds recognize this idea as “binary
unpredictability, luck, and realism search”, but the gist of it is that
to otherwise mechanically throughout the code, you’ll find
consistent encounters. Note that many numbers for speeds, sizes,
in this case, any given opponent etc.
should have a random opportunity
to be the one slightly stronger;
50
If something seems too fast, cut lower, reset to default). In this way,
its speed in half. If something a better value can be found
seemed too small, double its size. through experimentation with less
If one of those values was too far compilation delay.
in the opposite direction, split TUNE IN ORDER
down the middle on the next Once a good jump height and
iteration, and so on, until it no speed has been determined, levels
longer seems to warrant finer can be designed based on that
changes. jump ability. At that point, either
the jump values should remain
By making dramatic changes in
untouched thereafter, or it should
values, this also helps quickly
be considered that messing with
ascertain whether the number in
them may invalidate previously
question is the right one to be
completed levels.
futzing with. Changing the player’s
lateral air control speed in tiny MAKE SOMETHING YOU WANT TO PLAY
52
DON’T PUT EVERYTHING IN LEVEL ONE there should be some space given
I used to do this, especially in my
to letting the reader get to know
early modding work. I wanted to
the characters and circumstances
show off every enemy, every
before more are brought in. Your
weapon, every feature, everything
features are your characters; write
cool about the game at the same
a well-paced story.
time immediately to make what I
YOUR GAME IS TOO HARD
thought was a first impression.
I still have problems with this, and
Quite the opposite happens – it
I’ve spent half of my life working
reeks of amateur, it’s sloppy, it’s
on it. By the time the game is
unfocused, and there’s too much
finished, you’ve played it more
going on for a newcomer to make
than nearly any other player
sense of what’s there.
(probably) ever will. You know
Pick a couple of enemies, a each aspect for how it evolved
couple of items, a couple of neat over development, you’ve played
features, and rearrange them it 20,000 times with a variety of
differently for the first couple of different tuning and layouts trying
levels. Incrementally build upon to figure out what worked, you
those in the phases of the game know how the AI and weapon
that follow. Whatever you did for collision systems and power-up
the prototype or the playable proof timers operate, etc. If any level
of concept – if it existed as such – besides the last one or two still
generally needs to be dialed back challenges you as a player by the
and split apart into earlier levels to time the game is done, it’s
warm people up to that level of probably ridiculously hard for
mid/late-game intensity. anyone else. Dial it back, then put
it in front of someone else to see
A story shouldn’t immediately
whether they get annoyed by it.
introduce every character and plot
point within the first few pages,
53
SYSTEMS-CENTERED DESIGN talented modeler, expert in lighting
Systems centered design – the
and audio, etc. your Doom 3 room
bottom-up thinking that leads to
would look rough no matter how
levels designed as grid tile
much time is put into it; by
arrangements, enemy/obstacle AI
comparison, pretty much anyone
as simple patterns, and non-
could throw together a pretty
human/non-character for player
decent (even if not great) Doom
control (tank, spaceship, yellow
level, since it’s a matter of laying
crescent, arrows) used to be
down some overhead lines,
common in the ‘70s-‘90s for the
placing enemies/items/
sake of working within
decorations, and picking/aligning
technology’s computational
simple single-layer textures.
limitations.
All that, and Doom 3 is a worse
Even though a modern computer
videogame than Doom.
(or console, for that matter) is now
powerful enough to deal with There are a lot more ways to shoot
arbitrarily complex level yourself in the foot designing or
structures, adaptive AI, and high creating content to fill an area in
polygon finely textured smoothly Final Fantasy XIII than in Final
animated 3D models, making that Fantasy, Final Fantasy III, or even
stuff takes a ton of time and
special training, and usually leads
to what is only one particular type
out of many possible aesthetics.
Making a single room for Doom 3
from scratch may take more hours
than designing an entire level in
Doom. If you’re not (and don’t “Look ma, no arms.” (And the poor fellow on the right
have access to the time of) a doesn’t even have legs.)
54
(relatively speaking) Final Fantasy The purpose of every picture is not
VII. the same, and many don’t aim to
faithfully depict reality. That
All that hard work gets burnt on
videogames have gradually been
trying to force what’s ultimately as
able to come closer to visually,
artificial as a cartoon to look as
verbally, and viscerally
photorealistic as live film. Would
reproducing reality has made that
photorealism improve The
a distinctive advantage in
Simpsons, South Park, or
differentiating products within the
Futurama? Of course not. This
marketplace. But then came along
leads to the next point, an
Wii Sports and its 5 piece, 4-color
important design choice:
plastic characters that have one-
LITERAL VS CONCEPTUAL
color spheres for hands. In case
In Understanding Comics, Scott
you haven’t been watching the
McCloud points out that the less
score, 3.5 years after its late 2006
literal an image looks, the more
release it’s still #5 out of
universal, idea-oriented, and
worldwide weekly sales for all
conceptual it is.
videogames.
Graphics used to be simple
Wii Sports isn’t trying to
because that’s all the hardware
accurately depict bowling,
was capable of doing – a few
baseball, boxing, tennis, or golf,
colors at once, blocky pixels, etc.
either visually or in mechanics. It’s
Even though more complicated
instead about the simplest ideas
things are now computationally
underlying bowling, baseball,
possible, however, there are still
boxing, tennis, and golf. It has
perfectly legitimate reasons to go
more to do with how we think
for a simple style – and it isn’t just
about those things than it does
about saving time.
with how those things really are.
55
That’s more than just fine. People
love it.
Simple isn’t worse. Complex isn’t
better. Simple is substantially
faster to make more levels,
characters, animations, and
special effects for. Complex
requires a large team with a great
deal of very specific and
specialized talent coordinating
efforts. Simple is conceptual.
Complex is literal.
Most interesting to me is that
conceptual – and thus simple –
The 4 games above it were at this time less than 1
affords such a vastly larger range month old. The 3 games below it are also Wii games
of perspectives and ideas to with simple graphics. The one immediately after it is
its sequel.
explore and present, compared to
the literal – and thus complicated If Braid tried to be photorealistic in
– representation of how things 3D, it would have required a
really look, how things really substantially larger team to
function, and how things really produce, and come out (almost
tumble down steep hills. When it inescapably) far less interesting.
comes down to it, there is only Instead, almost all of the enemies
one way that everything are the same, and the level
fundamentally and really is, but elements are repeated functional
there are nearly infinite ways that and decorative pieces (as with the
things are not. design of a classical Genesis or
SNES platformer). It wasn’t
laziness, and it wasn’t lack of
56
ability/resources to realize a full 3D or even simply written in well-
world; it was using systems- edited prose? Certainly, the
centered design to massively audience coming into the story
simplify/accelerate production could be forced to unjam a virtual
while focusing in closely on door with bobby pin before getting
concepts and ideas. to the next scene, or required to
fend off hordes of zombies (again),
Have you played Canabalt? Huge
although videogame qualities are
breakaway success, using clunky
often adopted at the expense to
pixel art, low-fidelity music, and a
the story concept as a prominent
single procedurally generated
source of frustration or distraction,
level.
rather than as meaningful
I’m almost at a loss for how else rhetorical elements.
to put it, but it cannot be
There are videogames that do
emphasized enough: resourceful,
story well, in the way that
conceptual, unrealistic style and
videogames handle story. It’s
clever design, not unlike the sort
worth considering, however, that a
that 15+ years ago were required
person wishing to do two things –
for videogames to function at all,
tell a particular story, and make a
can today save a tremendous
videogame – may in some cases
amount of time and energy… while
be most pleased with the results
often producing significantly more
doing those as two separate
successful and meaningful work.
things, rather than forcing both
IS THE IDEA A VIDEOGAME IDEA?
together.
Frequently, someone comes into
videogame development with an If the best way to bring your idea
idea of a story they would like to to life is as a videogame – or at
tell. Is the particular story not, least it might be, though you’re
perhaps, better suited as a not sure – by all means, go ahead.
cartoon, as a short film, as a play, I merely wish to insert an extra
57
step of consideration. If the idea game’s reality to do this – at least,
would come through better as an not nearly as badly as being
animated short, a written short unable to figure out how to open a
story, or maybe even a song, it’s door or perform some other trivial,
2014: you can learn to make pretty required task.
much whatever you set your mind
Programming
to. If you have a hammer, every
ILLUSION OF SIMULTANEITY
problem isn’t necessarily a nail; if To anyone that has done any real-
you’re specifically interested in time game programming, this
using a hammer for its own sake, probably seems like a no brainer.
no matter how many screws need To someone that hasn’t, getting
screwing, that still doesn’t make it used to this concept is a
the right tool for those tasks. surprisingly common barrier when
PUT THE GAME IN FRONT OF A FRIEND getting started.
Don’t tell them anything in
advance about how they’re Everything happens one thing at a
supposed to play it. Don’t answer time. The code in every function
questions, unless they really need goes from top to bottom, one
it to advance, and then make note instruction at a time. Even though
of it. When other people get to it, it looks like dozens or hundreds of
you won’t have the privilege of things are happening and moving
getting them unstuck when they at once, they’re each getting a
don’t realize that up arrow opens turn. They appear to be moving at
doors. the same time since the updates
are happening very quickly. The
Whatever you had to tell the stuck game moves and draws all objects
friend, add some sort of indicator by calling a main or draw function
or message to the game to tell 20-60 times per second, top to
future players on your behalf. It bottom, instruction by instruction.
doesn’t interrupt or break the
58
Often, the last step in a given lap granted as pure conceptual
through the game’s movement, independence.
input, sound, and other code is to
Sometimes bugs happen due to
update the screen (technically also
the right code being in the wrong
happening pixels at a time as the
order. No matter how well we try
memory buffer gets copied to
to group and organize our code to
screen buffer). In some
be self-contained, it’s always
environments like Processing or
possible for otherwise working
ActionScript this step is handled
code to produce unintended
automatically; in C++ or most
behavior due to being out of order.
other environments it must be
done explicitly. This step is how One very easy mistake of this sort
things seem to all be drawn and is if the background images (sky
moved at the same time: though or level tiles) get drawn after the
everything is drawn and moved player, items, or particles every
one at a time, the result of all frame, it will draw over them
those changes only gets updated before each screen update,
for the display all at once after all making them invisible. All the
increments for the current logic drawing code can be correct, with
frame have taken place. just one instruction in the wrong
order. This isn’t anything to stress
CODE ORDER MATTERS
This sounds like an insane thing to out about, as a lot of
mention to programmers, but compartmentalized code will work
especially if someone is new in the more or less the same regardless
transition from systems code into of its order, but it’s something to
the object-centric real-time space, be watchful of.
the seemingly self-contained ASSET DATA FILES
60
programmer can’t spend fixing CHEATS ACCELERATE DEBUGGING
Add in invincibility, support a way
bugs and adding features – plus
to start or teleport to alternate
it’s time that the designer has to
locations (even if only by manually
wait between iterating on ideas.
swapping around start position in
Even if you’re the both the
a level editor), a way to max out
programmer and the designer (as
items, ammo, powers, etc. If every
is inevitably the case for a solo
time things are tested you have to
project, and common for a small
play well enough to not die, collect
project where it’s mostly art/audio
a certain combination of items,
coming from others), it still
and get to the right spot to test
massively accelerates production
how, say, enemies climbing
effort, ensures systematic
ladders respond to being hit by
consistency, etc.
rockets – it’s going to take forever
The easiest way to make a level to confirm a suspected bug fix.
building “tool” is to hijack the
BUILD QUICKLY, EXPAND WHEN/AS NEEDED
game’s existing code, burying the Often in videogame development,
tool functionality within it. Upon we have to decide between a lot
pressing F1 or some other out of of ways that we could spend time
the way key, toggle to a mouse- adding or making cool stuff. It’s
control, toss a panel of buttons hard to know sometimes until
and objects on the screen, and something is implemented
switch keyboard to controlling whether or not it will be as fun on
some handy key shortcuts. This screen as the imagination
can be stripped from the finished suspects. For this reason it’s often
game, hidden in the finished game practical to find a hacky or brute
as an unlockable reward, or simply force way to implement a feature
released with a tiny bit of “the level that takes less time, if only to see
editor is rough… good luck!” how it works before deciding
documentation/help. whether or not to keep it.
61
This avoids sinking time into code There’s necessarily time while
that there’s a decent chance may programming, between setting out
get ripped out anyway. to make something work and
being able to see it work, during
If the hacked feature works well
which time the code is in an
though, it’s fast enough as-is, and
incomplete, dysfunctional state.
the unpleasant details of its
That time can be minimized by this
implementation can be swept into
method of building simpler first,
a function or class that you don’t
then expanding out from that
need to look at much for other
base. Minimizing the time between
development, leave it as is until (if
compiles and visual results is
ever) there’s a sound reason for
helpful since it prioritizes bug fixes
redoing it.
while there’s the least variability. In
MINIMIZE TIME BETWEEN CODE COMPILATION
turn, that reassurance from the
Get a single enemy working before
machine that you’re on the right
expanding it into an array of them
track minimizes cognitive load,
and/or supporting multiple enemy
freeing up mental resources to
types. Build a very plain sort of
more easily juggle bite sized
particle effect first – white spinning
problems instead of trying to do
squares that burst out might be a
several things at once.
fine starting place. Then adjust or
add functionality as needed to SPECIAL CASES SHOULD BE SPECIAL CASED
“Special case” is often treated as
support different needs of
a bad word by engineers, but an
particles (fading for smoke,
actual “special case” deserves to
glowing for flame, directionality for
be special cased instead of
thrust…). Get one power-up
generalized. When a game has
working first, perhaps the simple
each boss behave distinctly, rather
1-Up, then introduce others as a
than as a recombination of shared
variation on that one.
components, it gives them more
62
unique character; when a level has preferences which will affect any
code written that only applies to graphics calls that come after.
that level, so long as it doesn’t
Math
break the player’s trained
THE SCREEN IS A 2D PLANE
expectations of what to do, it can The main thing needed from
go a long way in making the geometry is thinking about the 2D
experience less formulaic. game’s visual space as a grid
STATE CHANGE FUNCTIONS plane, with (0,0) in the top left, and
Some functions, like those that set (screen pixel width, screen pixel
font color, or position and rotate height) at the bottom right. Note
images, affect code that happens that in most environments, down
after them. Rather than specifying is positive Y, which is inverted
tons of parameters with each call, from the standard used in
such as indicating that the text classroom geometry.
alignment should be centered, the
TRIGONOMETRY AND VECTORS
code has a single line that centers For all things angles and
any text calls that follow it, until movement, trigonometry and
code is added to change text to vectors come in handy. Though
left/right alignment. not covered in depth here, there
These sort of functions also are plenty of resources on the web
appear in OpenGL, the graphics to learn about these areas of
library commonly used for iPhone, math. When you spot them in
downloadable, or 3D games. sample code, don’t gloss over
Unlike code which is called to how they’re being used – they’re
perform some operation while often at the core of how the
accounting for certain parameters, gameplay movements work.
the state change functions are MATRIX TRANSFORMATIONS (PUSH & POP)
called to toggle switches or set Matrix calculations can be used to
capture a series of graphical
63
calculations – scaling, rotating, transformation changes that we
positioning – into a single added after pushing it. Note that
optimized transformation that can this only applies to graphical
be applied to however many transformations – translation
vertices or polygons need to be (sliding), rotation, and scaling – not
oriented as a set. to other state changes such as
font color, image tint, etc.
Because Matrix calculations are
cumulative, this is a particular
form of state change code. Each
line accumulates to have a sum
affect on all of the graphics code
that follows. We can make a call to
the translate function, giving it
parameters for the camera’s
horizontal and vertical offsets, and
it will affect all the graphics code
which follows, which is quite
handy. But rather than having to
undo every slide, rotation, and
scale operation that we call (this
would be a nightmare for all those
slipping, spinning, growing particle
effects images!), we can instead
“Push” a Matrix onto the stack,
perform the translations and
rotation that we want to apply to
all following image calls, then
“Pop” that Matrix off the top of the
stack, automatically undoing that
64
SE C TI ON 7
66
longer fills today. The modern finished videogame (standalone
woodshop is very different from an inventory system, dialog trees,
ancient one, in terms of the tools etc.). Teachers in many cases
and ease of material acquisition. want to go into great length about
History is not woodworking. board/card/dice games, or the
history of games or play in
• Discussing how to market and
general. Workshops and websites
sell a wood project. Marketing is
will typically go straight into
not woodworking.
discussion of ways to make
• Buying, using, and discussing money from a videogame.
the latest commercial products Meanwhile student clubs tend to
that are made of wood. Whether devolve into a gamer culture group
it’s made by professionals and/or that plays and discusses design of
reflects the cutting edge of commercial projects that are far,
industry, it's not an appropriate far beyond the design,
starting point or reference point for engineering, art, and management
beginners. Becoming a collector abilities of the club members.
or connoisseur is not
The passion is an entirely good
woodworking.
thing. Everything listed above is a
HOW THIS RELATES
legitimate field in its own right,
Modern books on videogame
bearing its own complexities and
design, many classes and
unique utility in the big picture,
workshops on game design, and
whether it’s marketing, history,
other learning outlets focus on a
team management, etc. Origami is
number of the above bullet points.
a fascinating and involved field
Students often want to plan and with cultural roots and a tradition
innovate immediately, take on a of great craft, but it is not
big team project, or at least craft a woodworking. Likewise while
complex piece of a never-to-be- board, dice, and card games are a
67
worthwhile and important subject hobbyist/solo/indie game
with interesting histories and developer along the way picks up
established conventions all their a myriad of skills and tools that
own, their relation to the design or can find application to meet the
development of real-time needs of future tasks (just as
videogames is tenuous or genre- much for non-videogame related
specific at best. companies and non-videogame
personal side projects).
The woodworker knows the
process end to end, from sawing, A project or two that focuses
to shaping, to joining and purely on input, setting screen
finishing. Projects are identified resolution and drawing rectangles,
that are appropriate for one and doing collision detection
person to make, working alone, in (Pong) makes for a good intro
a modest period of time (generally project. Likewise, anything
no longer than half a year per involving a small, simple tile-based
project, until very advanced). The world (either for bricks in breakout
woodworker is not interested in or a tiny dungeon world) can help
the subject for the pure sake of with learning that method of level
knowing things about it, nor is the construction and collision
woodworker interested in the detection. Building up from there,
subject purely as a springboard a similar mentality can be used to
into a career doing such work. pick and adapt beginning projects
Just as any woodworker can to cover the skillsets and tools
transfer knowledge of the jack that one might be interested in
plane to fix doors around the applying later for a bigger project
house that don’t perfectly fit the (loading and displaying images,
frame, or otherwise apply tool playing music and sounds,
comfort and familiarity to minor programming menus, different
projects around the house, the types of AI, etc.), without needing
68
to jump directly into using the No one knows what you’re
table saw on day one. capable of until after you’ve done
IT ONLY COUNTS WHEN IT’S DONE it – not even you.
Some people set mental goals in “We judge ourselves by what we feel
terms of identity, as in “I want to capable of doing, while others judge us by
be a videogame developer,” or “I what we have already done.”
want to know how to make -Henry Wadsworth Longfellow
videogames.” The problem with US poet (1807 – 1882)
69
SE C TI ON 8
71
someone else’s already popular development, then truly
work to ride part of its success investigate it: replay it, take notes
(note: which is very different from on it, write about it, and once
cloning as a learning exercise, you’ve got what you need from it,
which is legit and very helpful), move past it.
good luck. You’re already a full
Instead of getting caught up in the
development cycle behind your
news, make a point to periodically
competition, and by the time you
catch up on what went down.
release they can be on a sequel or
After the smoke clears. In a matter
many updates later while
of days it’s surprisingly easy to
countless others who had the
catch up on months of ignoring
same plan release at the same
the news and new releases. By
time as you.
that time it’s cheaper, too, on sale
Of course, I don’t mean to suggest online or available discounted in
totally hiding from the world. the used and bargain bins, since
Coming up for air is an important full-time consumers have all
part of swimming longer. But if moved on by then to the next
you’re putting time into playing newest thing.
popular games or reading up on
Go get lost in making your own
game news, make sure it’s
beautiful thing. Forget about the
something you’re doing because
noise and hype, 24/7 consumer
it’s what you want to be doing,
spectacle, the irrational rising and
and not under some misguided
falling in the trends or reviews or
impression that it’s an important
stranger’s drama.
part of working on your game, or
becoming a better videogame The next game release you should
developer. In all likelihood, it isn’t. be really pumped about is the one
that you’re currently working on.
If you really are deeply studying a
specific game as part of
72
2 I’ve taught game development
to graduate students older than
me, and I’ve also taught it to
teenagers. Similar questions
arise with both - it has nothing
to do with age! It’s just about
what we’ve learned before. Here
are questions that new students
of any age may share.
73
SE C TI ON 1
75
some junk and early learning out yourself if it’s something worth
of your system. Keep teams small getting into.
enough (1-5) to have a clear idea
Focus on doing at least one
of each person’s responsibility and
tangible skill discipline very well,
roles without stepping on each
since that’s what’ll generally get
other’s toes or added
you a job, but beyond that don’t
management complexity for
pigeonhole yourself from learning
planning and communications. A
a bit of fluency in other aspects of
longer schedule isn’t easier, and a
development. Those other skills
larger team doesn’t work faster.
will help you communicate and
Both of those just blow up
work more successfully with
expectations and introduce whole
people that have other roles and
new categories of challenges atop
can empower you to pull together
just getting the game working.
your own ideas as rough
Don’t get stuck in one platform, demonstrations without relying on
tool, or programming language the time or assistance of others,
because it’s the one you know, and can generally help you stand
especially not because it’s the first out in the workplace. Though,
or only one you know. It’s worth again, to get into said workplace
learning new things and doesn’t you generally need to be
take nearly as long as people especially solid in one core skill
assume. Don’t jump onto a new area since there aren’t really
platform, tool, or programming official positions for jacks-of-all-
language just because it’s new or trades.
someone recommends it. It may
Don’t insist on doing something
be not ready yet or they may not
totally original immediately. Like an
know what they’re talking about.
artist beginning by doing abstract
Look for examples of what it has
painting or sculptures, that really
been used for and decide for
won’t go anywhere without some
76
credibility first built from practicing part of the population may be
and demonstrating an small if you’re just starting out, but
understanding of fundamentals it will grow with experience. It’ll
and technique. Trying to do often help you out, too, in the
something totally original and short-term because you’ll have to
weird immediately just comes review and learn how to articulate
across in such cases as a lazy what you know, and in the long-
excuse for sloppy and term because as they gain
undeveloped craftsmanship. different experiences and
Accept some major conventions specializations, they’ll later
and genres, at least at first and become your peers and potential
early on, so that you can focus on collaborators.
trying to do a good job of
Be nice to everybody. Stay out of
something that you know can be
fights, nobody wins.
done well. Better a small and
derivative but finished and Good luck!
polished game than an ambitious,
highly original, unfinished and
unpolished project.
Stay positive. You’ll meet some
cynical people along the way that
may try to drag you down. No
need to be upset with them over it.
If they could, they’d often rather
not be like that either.
Whenever possible, help, teach, or
create opportunities for others that
are less familiar with game
development than you are. This
77
SE C TI ON 2
HOW DO YOU USE YOUR IMAGINATION TO enjoyable to play with, and then I
MAKE VIDEO GAMES?
To make videogames, I use my use my imagination to figure out
imagination to think of things that how that enjoyable interaction or
don’t yet exist, or to think about moment could be expanded into a
how things that do exist could be presentable game.
different – combined, simplified, or HOW DO YOU MAKE PEOPLE TALK AND
SOUND EFFECTS?
built upon to be done better.
For voices, we typically record
That’s a “top-down” approach, people speaking, then play back
meaning that I start with the idea those recordings by loading and
and then figure out how to make playing the sound file during the
the idea work. game. Many sound effects are
also simply recordings that are
Other times I instead use a
played back when the right
“bottom-up” approach, meaning
conditions are met. Some sounds
that I first create things that are
78
are made by starting with multiple my emphasis on expressive play,
recorded samples then modifying on story telling, or on action?
and mixing those sounds together
Then I determine what I have
to produce a desired effect.
access to in order to create it, and
Although there are professional how long I’ll give myself for the
sound designers that go to great project. Do I know someone who
lengths to record and prepare high makes great animal animations, or
quality speech and sounds, realistic sounds, that would be
anyone can get involved with willing to collaborate with me on
creating voice recordings and the project? Will I schedule the
sound effects using free audio game to be created in a few
software and standard PC weeks, a few months, or longer?
microphones to record dialogue, (In rare cases, as a stunt, I have
materials colliding, and sounds we made games in a few hours,
can make with our voices. although it shows in the quality
and simplicity of what I produced
I still use edited recordings of
during that time.)
mouth sounds in my projects. The
popping sounds made by colliding I draw a picture of what the screen
blocks in Topple were made with might look like when the game is
my lips, and the crackling whoosh being played. This leads to
flame sound effect in burnit was a coming up with tentative answers
mixture of crumpling paper and to important questions, such as
blowing into the microphone. how large the player’s avatar is on
WHAT IS THE PROCESS TO MAKING VIDEO screen, what types of enemies or
GAMES? objects are in the level, and what
First I figure out what it is that I information is displayed in the
want to do. Do I intend to make a interface (health bars? magic
space shooter? A platformer? Is meter? lives counter?).
79
Next I type a computer program writing, level design, and other
that brings the elements of my information is needed that can
picture to life. This is often very realistically be created with the
basic at first, for example getting time remaining in the game’s
arrow keys or the mouse cursor to production schedule.
move the (not yet animated) player
Much of the development time, at
character, and having enemies
this point, goes into making and
wander randomly.
refining those art, sound, music,
Over many drafts – just like writing writing, level design, and other
a paper for school – I refine the elements identified.
idea by making changes to how it
During and after making those
works. If the player feels too slow,
pieces, the game needs to be
I’ll adjust numbers in the program
tested thoroughly to ensure that it
to boost the player’s movement; if
doesn’t have bugs (program code
the enemies seem too unaware, I’ll
causing the game to crash or
give attention to making them
behave in unintended ways) or
seem more intelligent (accounting
significant design flaws (trivial
for additional information, such as
ways to bypass playing the game
how to navigate between rooms
as intended, such as one type of
without getting stuck). During this
attack being overpowered). Fixes
period of the game’s development,
and changes are made according
I’ll try adding many features, only
to the feedback from testing.
a few of which will likely be kept
for the final version. Lastly, I prepare the final
information needed to share the
Once I have established a clearer
game with the world: adding
idea for how the gameplay will
instructions, improving the title
work, based on many exploratory
screen, taking screenshots, writing
attempts in the previous step, I
a concise description, and posting
plan out what art, sound, music,
80
the game to the web for others to The team members then create
play. the pictures, 3D models, and/or
HOW MANY PEOPLE DOES IT TAKE TO MAKE A programming to make that space
VIDEO GAME? functional within a computer.
I’ve made many videogames
working alone. One person can be Someone with sound editing
enough for small games. experience will get involved as the
setting takes shape, creating
Most teams that I have worked ambient sounds like crickets, rain,
with, creating small to medium- faraway explosions, or other audio
sized smartphone games or that helps establish the setting.
downloadable freeware PC
games, involved 3-15 people. For games with a complex
Companies that develop environment, a tool is often made
packaged retail games are more especially for creating levels in the
often at least a few dozen, game. Just like Paint or
sometimes even hundreds of Photoshop can be used to draw
people working together. and save pictures, the level
creation tool is developed to
HOW IS THE SETTING CREATED?
Setting comes from collaboration “draw” and save a level by placing
between many different types of wall segments, enemies, and so
considerations. Art, writing, on.
gameplay, and technology need to However, not all videogames have
be accounted for. (Those roles are setting (or characters!). Tetris and
not necessarily one per person; a Bejeweled are two very well
small team might have one or two known games that do not have
people dividing up all of those settings or characters.
interests, whereas a large team Videogames that resemble
might have teams of people movies, or real spaces, by
accounting for each perspective.) representing story within a
81
navigable area through humanoid war games; the war may have
characters are only one type of really happened, and the soldiers
videogame. may be believable characters, but
ARE THE SETTINGS AND CHARACTERS BASED the actual locations and people
OFF OF REAL LIFE? depicted are made up in a way
There’s no right answer here – this that fits what we know about
depends upon the project and the related events in history.
developers involved.
Some games focus on accurate
depiction of real life as their
appeal, trying to recreate the
appearance and relative
performance of various
professional sports players or
military figures in settings that are
based closely on real life
environments. On the other hand,
games like Mario Brothers are
pure fantasy, taking place with
cartoony characters in silly
settings.
There are also games that fall
somewhere in-between, which try
to establish a sense of authenticity
by creating realistic, life-like
environments and settings, even
though the actual characters and
places involved are imagined. This
mixed approach is common with
82
SE C TI ON 3
84
after release what the new game is originally mostly made variations
like and about. on classic games, since those
HOW DID YOU GET STARTED? were projects small enough to do
Although I began modding well in a reasonable time frame
commercial games in late while working alone. When I began
elementary school to get more out my undergraduate years at
of single player games that I college, I helped start a computer
enjoyed on PC, I didn’t really game development club, leading
produce anything complete so to larger and more involved team
much as use it as a context to projects. I landed my first
practice digital image and audio internship in the game industry
editing, and thinking in detail through a recruiter that we invited
about how games are put to speak at one of our meetings.
together. As a middle school WHAT TYPE OF TRAINING IS NEEDED TODAY?
student I taught myself the basics A computer science degree can
of C programming from books. I be very helpful, however people
pretty quickly shifted from writing come into game development
text programs into figuring out from a variety of backgrounds.
how to use my programming for Many people continue on to a
simple games instead by master’s degree in a videogame-
displaying graphics and playing related field to further help their
sounds. To do that at that time, I qualifications to work in the game
first copied assembly functions I industry. All of that is primarily if
found in the back of programming you are looking to do it
books. A little later came the professionally, though. If you’d like
Allegro game programming library, to explore it first or primarily as a
but there are now many other hobby, no formal training is
alternatives with various necessary. Much of a modern
advantages and disadvantages. I game developer’s training today is
85
finding ways to make (or mod) WHAT CHANGES HAVE YOU SEEN IN THE PAST
FEW YEARS THAT AFFECT THIS AS A CAREER
videogames on our own time. PATH?
feel right. Videogame spaceships Sine and cosine are helpful for
and helicopters move because we angle-to-component translation,
add a velocity value to their for example when determining
coordinates every frame – not what percentage of a bullet’s total
because of rocket propulsion or velocity the x-speed and y-speed
Bernoulli’s principle. For 2D game are given the angle of a firing
programming, spacecrafts and cannon (see illustration on the
helicopters only need 1st grade next page) – this also applies to an
arithmetic. overhead race car. Atan2 is handy
for getting an angle between two
But beyond basic gameplay things, given their relative offset in
interactions, here are the fields of grid locations – good for getting
math that I run into most an enemy to face the player,
frequently for game programming,
90
pointing a simple homing missile, it, and you’ll greatly increase the
and so on. number of nifty things that you can
pull off in game programming. This
is useful for reflection off angled
surfaces, checking line-of-sight,
determining which direction
something is facing, and many
other common spatial/angle
relationships.
Normalizing vectors is another
basic and useful aspect of vector
geometry. Properly applied, these
offer a more efficient way to
accomplish some of the same
things that trigonometry is
commonly used for, including
aggressive homing missile logic.
BOOLEAN LOGIC
It’s common in game code to want
something to only happen either
when multiple things are true (if
This is why and how I learned simple trigonometry. I player is on ground AND pressing
needed a way to get my virtual anti-aircraft gun in
Sky Rake (1997) to fire a projectile at the same speed
jump button, then jump) or when
independent of which angle it’s fired in. at least one of several things is
VECTOR GEOMETRY
true (if [W Key] OR [Up Arrow] is
The dot product is an incredibly pressed, then try to jump). At first
versatile math operation to gain glance this doesn’t look like math,
mastery of, even in the simplest 2 but when these statements begin
vector 2D case. Learn how to use to compound, there’s are math-
91
like rules that can be used to MATRIX ALGEBRA
In 3D, matrix math is used to
untangle and simplify boolean
perform faster coordinate
logic.
translations and rotations to
SIMPLE ALGEBRA
render models at various locations
Old-fashioned line-intersection
and angles. In 2D, rotating a Tetris
check calculations are great, and
block 90 degrees involves a little
trivial to write as a function. This
matrix math.
comes up for things like pong AI,
which needs to anticipate where TILE ARITHMETIC
Admittedly, this isn’t really a math
an elastically bouncing ball will
field. But it is very important for
intersect a screen edge, or finding
game programmers. I’m referring
if and where a laser or bullet shot
to the use of multiplication to
hits a wall.
translate grid coordinates from a
MODULAR ARITHMETIC
2D array to world pixel/character
The modulus (signified by the %
coordinates, and division to match
sign in many programming
pixel/character coordinates to
languages) returns the remainder
corresponding indexes in a 2D
after dividing one number by
array. Turning a pixel coordinate
another. This can be used to
(208 pixels from the left edge of
bound a number within a given
the world) into a tile index
range, such as ensuring that a
(assuming 16 pixel tiles, 208/16 =
potentially huge positive number
13, so the 13th tile) gives a fast
points to a valid array entry, or
way to check what type of tile fills
limiting a random number to being
that location in a 2D array. If the
less than the divisor given.
player is found to be standing on a
Example: rand()%35 is a common
wall tile, the player can be
way to get a random integer from
bumped backward; if a brick
0-34, inclusive.
breaker ball hits a brick tile, it can
change the value at that tile’s array
92
index to clear it, and reflect the
ball’s movement.
94
Whether you decide to seek Experience in CS is relevant
corporate industry work or go though, and it complements
independent, I think that a someone’s self-education in game
Computer Science degree is still development by pushing
among the most applicable, development in areas that it would
useful, and broadly marketable be easy to overlook on our own.
backgrounds related to game Material from CS can be useful
development. I’ll do my best here outside of the classroom, when
to make a case for why I think working through real-world game
that’s true. development problems,
sometimes in ways that are hard
Note too that, importantly, CS is
to recognize until they come up
also a credential respected
during the creative process as
outside of games, which can make
either challenges you’ve prepared
it a practical degree to have for
for, or – if the skills aren’t there –
finding or creating back-up plans
as apparent dead-ends.
down the line if necessary.
COMP SCIENCE IS NOT GAME MAKING There are no doubt routes to take
As you’ve probably already that are easier or more enjoyable
discovered, game development to take in the short term, but those
generally isn’t really part of CS paths may or may not be easier
curriculum, except perhaps for a and more enjoyable in the long
single high level elective class. term. College years are partly
Almost all of my game about investing in your future
development during college came capabilities and opportunities; the
from extracurricular clubs. standards and challenges of a CS
degree are just one of the
Learning game development
established ways to stay on a
requires a good deal of self-
solid track to do just that.
teaching no matter what major
someone is undertaking.
95
If it’s not immediately clicking, it understand yet from the lectures
might require spending some and reading.
more time in the library studying BIG COMPANY VS INDIE
(even if you don’t need the books A qualifier about the difference
there for CS, it’s handy as a well-lit between big company work and
place filled with other people an indie career: earnings from
calmly working, too), attending independent development can be
more of the optional tutoring and really, really hit or miss, spotty and
office-hours sessions available unpredictable, and in the majority
through your school, starting of cases unprofitable. There’s a
earlier on assignments, and huge selection bias in the indies
staying up later sometimes to we hear the most about – they’re
hack through getting assignments disproportionately the rare
figured out and working. Many success stories that have done
college students wind up extraordinarily well. The countless
automatically paying for resources others that are barely scraping by
but not making full use of them, or losing money don’t make for
whether via the career center, good headlines.
library assistance, or office hours.
Independent work can be a tricky
Before deciding that a subject isn’t
and trying path to navigate, and
working out, make sure that you’re
though it’s potentially very
at least getting your money’s
rewarding, it should perhaps be
worth and using all the
initially thought of as something to
mechanisms available. Outside of
develop on the side of some more
working on videogame projects
consistent line of work as the main
and trying to live a rounded life in
plan. With a bit of momentum from
college, I spent a ton of time at
giving yourself a head start, and a
office hours asking questions to
bit of savings in the bank from
try to fill in for what I didn’t
doing something with a more
96
predictable paycheck for awhile Do you see the industry moving more towards
first, you’ll have better odds of requiring a relatable degree?
lifting off the runway. Answer, Part 2
One element that helped me in my You’re right that many of the
journey – though again each current big and/or historical
individual’s mileage from such names in the industry have a
choices will vary – was to minor in seemingly random assortment of
Business Administration. Those backgrounds. John Romero and
courses involved learning and David Perry were both, if I recall,
practicing skills that were useful in completely self-taught, and did
every scale of work environment not attend university. Nintendo’s
that I’ve been involved with, Shigeru Miyamoto went to school
including my time alone: for industrial design. In my
presenting information, ideas, interview with Atari Adventure
yourself to others, basic financial designer Warren Robinett, he
concepts, project planning, even mentioned that one of his early
practical bits like resume co-workers in the game industry,
preparation. (Even if you go “had a degree in Zoology.”
independent, keeping an efficient,
Of course, Shigeru Miyamoto was
up-to-date, professionally
born in 1952 – so for perspective,
presented summary of skills and
Pong hit the market (overseas,
work can be useful to have on
here in the US) when he was
hand.)
already 20 years old. Robinett’s
Whatever you decide, good luck undergraduate degree was not in
on the road ahead! Computer Science – he majored in
a CS-like area of math, but when
Question, Part 2
he was an undergrad CS had not
It seems like many of today’s big designers got
yet become a standardized field of
into the industry with a non-technical major.
study.
97
That historical difference partly and commercialized until much
accounts for what you’ve rightly later in the 90′s.
pointed out.
There also wasn’t much ‘prior art’
40 YEARS AGO for a game developer to catch up
The industry didn’t exist when
on. Nearly everything being done
most of the early innovators were
at all was new, and by casual
growing up. To the extent that
assessment equally valid from a
some degrees were later relatable,
business perspective until the
like Robinett’s pre-CS technical
market response to a shipped
math major, no one at that time
product indicated otherwise. By
could have picked it for that
comparison, much has since been
purpose, because those exact
sorted out by now, both from a
jobs and products didn’t exist yet.
technical perspective and also
Another thing to keep in mind was from a business perspective.
that computing was very different People have already lost a lot of
in the 1960′s to early 1970′s. Far time and money figuring out how
fewer people had access to to do certain things in impressively
computers, but among those that efficient ways, how to collaborate
did, a much higher percentage of effectively on team projects, and
users taught themselves how to discovering what consumers
program because it was pretty responded to well or poorly.
central to being able to use a Developers caught up on those
computer at all. Programming was findings have an advantage over
one of the few activities that could others starting from scratch,
be done on machines at the time; reinventing the wheel, insisting on
the first word processor didn’t learning the hard way.
come out until 1972, and the
Now that four decades have
internet didn’t become common
passed, many of the surviving
companies have thousands of
98
employees (or at least compete company’s first line of
against companies of that size), assessment. At a company with a
and there’s demand for high recognizable brand, the executive
degrees of specialization for a producer or lead engineer can’t
team to be able to distinguish its personally screen every applicant.
products from those that Instead, the initial set of applicant
competitors are able to create. submissions first has to make it
Even just keeping up with inflated past recruiters that are not
consumer expectations, especially necessarily game development
on today’s higher fidelity specialists, and thus may look for
platforms, can require specialists. specific degrees and types of prior
Whether applying for an industry experience as evidence of the
job or creating independent skills they’re hiring for.
games as a small team, each Applications making that cut then
individual is competing against a move on to one or more rounds of
tidal wave of other eager, interviews, at which point an
passionate people that have partly appropriate specialist from the
designed their education and adult team may be available to help
lives around developing skills that assess actual qualifications, but
have been found relevant to the getting to that phase with little or
now more established craft of no relevant professional
videogame production. experience is part of where the
INCREASED IMPORTANCE OF DEGREES appropriate degree can help.
The increased importance of
While there may be capable
degrees, though more so for
applicants without relevant
applying to jobs as opposed to
degrees, unfortunately there are
working independently, has also
often enough qualified applicants
become a useful shortcut for
that do have relevant degrees that
hiring managers serving as a
it’s easier and more cost and time
99
efficient for a company to hire specifically apply to computer
primarily from the latter pool, for programs. (i.e. while it’s true that
which less screening may be plenty of subjects may reward
required since college admissions attention to efficiency and
and professors may be thought of feasibility, traditional CS
as a very specific sort of filter. approaches these in an extremely
COMP SCI IS MORE THAN PROGRAMMING rigorous fashion by dealing with
A CS degree is not just about their theoretical limits.)
knowing how to program. Having
The increase in people hired that
a particular degree is often also
have relevant degrees, from the
interpreted as evidence,
above factors, has created a
correlative beyond the scope of
positive feedback loop. When the
what’s covered directly by the
people with those credentials get
curriculum for that degree, that
promoted over the years into more
someone is dedicating themselves
senior-level positions, they’re even
to some predictable set of
more likely to value that same (or
knowledge, skills, and values.
similar) credential among incoming
Companies need all kinds of
candidates at an interview stage.
people to thrive, but from a purely
GAME DEGREES
practical perspective, it doesn’t
Another option within the
take much imagination to picture
spectrum – which you haven’t
how a “CS person” can fit in and
asked about directly but I’ll
benefit a company that creates
address here for sake of
software. Computer Science
completeness – is in degrees more
rewards attention to efficiency,
specifically and narrowly about
feasibility, robustness, extensibiliy,
videogame development. These
self-correction, and some other
haven’t been around as long as
less easily pinpointed but equally
Computer Science, making them a
useful priorities, in ways that
bit less standardized, and
100
consequently more of an people coming from that
unknown, unproven value to many background will be held up as
people in industry. Anyone with a evidence of the type of value
CS background has a pretty clear associated with those degrees.
idea of what someone with a CS
That path can also be a more risky
degree from another school likely
value proposition to students,
covered, but there’s so much
however, since those degrees
variety between game degrees
sometimes cost comparatively
that it’s hard to know what skills
more (being seen as more
and work culture to expect unless
vocational, and thus framed more
someone in a hiring position is
as a financial investment) and can
personally familiar with that exact
be more limiting to videogame
school and educational program.
industry work. Students with those
Partly as an effect of having not degrees have less of a clear back-
been around as long, there are up plan, not only if they can’t find
also not many senior-level people a fit in the game industry, but also
(yet) from those types of if the game industry undergoes a
educational backgrounds. major shift as it did when arcades
mostly phased out, when MMO’s
The flip side is that some of the
seemed like the next or only big
same factors that have made the
thing for awhile, when digital
CS degree of more interest to the
mobile distribution lowered
industry are likely at work for
barriers-to-entry for competitors
those more game specific
with much smaller staff, and as
degrees: easy shortcut for hiring
social games have grown to
managers, evidence of (probable)
absorb an increasingly sizable
commitment to certain knowledge
chunk of game company
and attitudes beyond the
investment capital.
curriculum, and as time
progresses, more senior level
101
The value of a mostly game- CLOSING
The case, by contrast, for a CS
specific degree as a back-up plan
degree is that its emphasis is on
varies greatly between how
fundamental concepts, which aim
individual schools have chosen to
to extend well into the future
implement such programs. I have
largely independent of specific
heard peers in such programs
technologies or how the market
report everything from their
may change. At any time in game
studies being typical Computer
industry history, even just a five
Science in-disguise, to specific
year span has covered some
tool training (which can seem the
pretty dramatic changes, but a
most useful in the short term, but
proficiency for the skills and
can be the least useful in the long
mindset of proper software
term – teach yourself the tools,
development has remained central
instead!), to amounting to little
and relevant.
more than an excuse for
networking. Remember though Lastly, as a reminder: I have only
that a recruiter without direct an outside, second-hand
connections to the particular perspective of the alternatives.
program (perhaps less likely Your best bet for gaining a more
outside the industry than within it) balanced perspective would be to
may not have an easy way to pitch this same question to some
quickly discern one of the above game developers with different
from another, and that could affect backgrounds. There’s no one right
whether an application makes it to way to go about it, though the
a stage in the process at which odds are better some ways than
someone with the necessary others.
domain knowledge takes the time
to sort out the candidate’s relevant
capabilities.
102
SE C TI ON 6
106
Search for sample code Some people are as fluent and
appropriate for your level of comfortable with programming as
comprehension. If it’s not too long, they are with their primary
and it doesn’t make perfect sense speaking language. Others fumble
to you just yet, verify that it through it like it’s a secondary
compiles in your environment, language they remember traces of
then print a copy to keep folded in from when they took a few
one of your books for occasional semesters of it many years ago in
review. school.
PRACTICE I chalk up that difference to the
Good programmers are
comfort that comes from
dramatically faster and more
countless hours of practice. The
efficient than less good
kind of usage that goes beyond
programmers.
fulfilling a specification someone
“Good” here isn’t in reference to else handed over. The kind of
total years of experience, how experience that comes from
many different programming stretching and applying
languages someone knows, or knowledge to solve problem or
what projects someone has been create a project that the
a part of building. “Good” is programmer was personally
referring to how quickly someone invested in.
can synthesize the code needed
On one end of the spectrum,
to solve a problem, how well that
there’s the way that someone with
someone can generate code
zero background in programming,
which is structured with future
but access to the internet, could
needs, readability, and adaptation
cobble together code they don’t
in mind, and how easily the person
fully understand to make
can digest and interpret code put
something happen. On the other
in front of them.
end of the spectrum, there’s
107
someone that can just breeze Time and time again, my mountain
through whatever problem you put of past project code has been the
in front of them, perhaps source of my confidence in taking
occasionally taking a moment to on a new project. Provided that
reference documentation or copy I’ve done something in a past
something out of their vast library project, or done something like it,
of past project files. there’s no doubt in my mind that I
know how to do it, and can
I’m reiterating this distinction for
probably make it work again
an important reason:
without much fumbling around.
1.) You absolutely, positively, Instead of spending my
unmistakably, want to be in that implementation time thinking
latter group. You want to be the about how to do something, I
person that is really on top of their could start from my past solution,
stuff. and spend that time finding a way
2.) There is no doubt, none to do that something better.
whatsoever, about why you will or The only way to get that mountain
won’t wind up in that latter group, of past project code is to (here it is
instead of that former group: again!) practice. On your own
practice. time.
YOUR PAST PROJECT FILES
If it’s done to satisfy classwork
Your past project files are much
requirements, it won’t be any
like sample code. The main
different than what every other
differences are that you
programmer has been exposed to.
understand everything in it.
Because you were responsible for If it’s done to satisfy business
the whys and the hows, you know goals, it’s likely company property
exactly where to find what. that you’re not free to reuse.
Practice. On your own time.
108
3 Programming is the language of
the machine. No skill will serve
as a more general foundation in
empowering you to see through
your own unique ideas. Even if
you want to be a level designer
or artist, you will be able to
create the context and tools for
your work by coding.
Programming
109
SE C TI ON 1
(Wii, online, mobile, 360, PS3, …works the same as, but is not as
SNES, Atari, Arcade…), every easy on human eyes as…
piece of software you use (Office,
for(int i = 0; i < 5; i++) {
Windows, FireFox…), and every showNumber(i);
doOtherThingToo();
112
but their consistent usage in browsing through it. That means
different parts of the program is less time is needed for writing
how the programmer stores, extensive comments to explain
changes, and checks values for exceptions or clarify meaning, and
different purposes. far less time will get drained into
untangling confusion (or problems
Even though the computer can’t
arising from confusion) based in
tell the difference between a
poor name choices.
function for updating the screen
called “UpdateScreen” and one Sequence
called “DogsGetExcited,” the WHAT IT IS:
former is a smarter choice With only very rare exceptions (ex.
because it reflects how the very advanced topics related to
programmer is using the label. PS3, XBox 360, and high-end
Note that whatever names you use computer programming), program
inside your program are 100% code executes only 1 instruction
invisible to the users and the at a time, 1 step at a time, top-to-
outside world – they’re just a way bottom just like English text is
to stay more organized about the read. Every instruction goes on its
numbers you’re shuffling around. own line, for sake of human
HOW IT LOOKS:
readability, and must end with a
moveBadguys(); // good name for a code chunk
semicolon, for sake of machine
int playerPositionX; // clear name for a number
readability.
abc123(); // terribly unclear name. What’s it do?
int thisIsAWholeNumber;
117
HOW IT LOOKS: lives + 1; // Does not change! No = sign!
118
(That’s where the programming EXAMPLE OF A USE IN VIDEOGAMES:
Objects – whether structs in C or
language C++ got it’s name. It’s
classes in newer programming
the same as the C programming
languages – are essential to
language, but with stuff added on
keeping organized a project grows
top.)
to include many different kinds of
Object characters, environment pieces,
WHAT IT IS: data formats, and other
A way to organize multiple conceptual groupings of variables.
variables together into a The example above is a very
meaningfully named grouping. As simple, fairly typical use, but could
with function names and variable be expanded to account for each
names, the programmer invents character’s image, mood,
these names, ideally choosing a momentum, rotation, animation
name that reflects how the group frame, inventory, etc.
of variables is intended to be
used. In C, it shows up as a struct, The Array
which only contains a grouping of WHAT IT IS:
An array is a way to store a
variables, but in C++ and most
sequence of variables, such that
other more recent languages it can
they share a common label (think
be class, which has the ability to
street name) but different index
also group functions, plus a few
numbers to distinguish them from
other benefits.
one another (think house or
HOW IT LOOKS:
building address).
struct character {
int health;
int x, y;
HOW IT LOOKS:
};
// The number in [brackets] declares array size.
character thePlayer; // Array addresses start at 0, so 1 less than the
character badGuy; // size of the array is the highest index
// Defining size [3] gives us [0],[1], and [2]
thePlayer.x // storing the player's x position
badGuy.health // storing a badguy's health value int numbers[3]; // creates 3 int variable array
numbers[0] = 1000; // saving 1000 into address 0
numbers[2] = 70; // it’s 3 separate numbers!
numbers[1] = numbers[2] + numbers[0];
119
// numbers[0] winds up as 1000
// numbers[1] winds up as 1070 a<b (a is less than b?)
// numbers[2] winds up as 70
a>b (a is greater than b?)
// 3 separate numbers, 1 common label
a<=b (a is less than or equal to b?)
EXAMPLE OF A USE IN VIDEOGAMES:
a>=b (a is greater than or equal to
Any time there are many of
something, and each something b?)
a!=b (a is not equal to b?)
behaves the same way or based
a==b (a is equal to b?)
on similar rules, there is probably
an array or similar data structure Note that multiple statements can
involved. Particle effects, enemy be combined using logic
characters, units on the battlefield, operators:
projectiles, and so on are often (a<b) && (b > c)
tracked using arrays, utilizing The means (a < b) AND ALSO (b > c)
Object structure of a language to (a<b) || (b > c)
group each individual thing’s means (EITHER a < b OR b > c)
variables together. HOW IT LOOKS:
120
Else and Else-If Statements the internet) is an alternate
WHAT IT IS: construction available if the else-if
Using a section of code only if the chain is checking matches against
result of an if statement turned out consecutive integers (is it 1?
false. otherwise, 2? otherwise, 3? etc.).
HOW IT LOOKS:
While Loop
if(lives > 0) { // "is the player alive?"
// ...move and draw the player here... WHAT IT IS:
} else if(continues > 0) { // "continues?"
// ...go to the continue screen... It works a lot like an If Statement,
} else { // "if the player isn't"
// ...play sad music... except that when it closing brace
// ...go to game over screen...
}
is reached by the code, it checks
Note that you can have as many the While condition again. When
else-ifs as needed. You can even the While condition is still true, it
just have an else first thing right goes through the code between its
after an if. The presence of any braces another time; if the while
else or else-if is optional. If there's condition’s comparison expression
an else, it must come last in the is false, then code continues after
chain. its closing brace.
EXAMPLE OF A USE IN VIDEOGAMES: HOW IT LOOKS:
It’s extremely common to use this while( gameHasBeenLost == 0 ) {
useMouseInput();
type of series of evaluations in moveEnemies();
updateScreen();
games for a computer controlled if( health < 0 ) {
gameHasBeenLost = 1;
123
SE C TI ON 2
NOT FROM START TO FINISH anything other than the most trivial
As a beginning programmer,
of examples typically involves
looking at finished example code
dozens, sometimes hundreds of
can seem daunting. How, with any
iterations, each of which amount
amount of experience, does
to drafting, editing, and polishing.
someone know what key to type
next? What is the thought process A Steven King novel is an
in someone’s head while they’re impressive thing to read. A
typing out new functions, classes, Spielberg film is an impressive
and algorithms? thing to watch. Every piece seems
well planned, and every scene
Unless a programmer is retyping
throws something new our way.
something that has been
The pure density of ideas
committed to memory, the
presented can seem
characters aren’t typed in their
overwhelming to an aspiring
final order. Finished code for
creative. But that quality of
124
content doesn’t just come estimate how long different
together that way the first time, features will take, or how valuable
beginning to end. The final they’ll be in the big picture), or
product came together only after whether it’s just time for hacking
countless drafts, aggressive features together to explore and
editing, and years of attention paid entertain creative whims (a good
to polishing every last detail. way to learn), the actual process is
still incremental. A version is built
Why would computer
with an unanimated character
programming be different?
drawn on screen, the next version
FROM THE OUTSIDE IN
moves that character according to
The first time that I compile any
which control keys are pressed,
videogame project, the first
the next version applies gravity to
version is a black screen. The
the character, followed by a jump
second version that I compile is a
ability, then collision with enemies,
black screen that makes a sound,
followed by hook up to
or displays a rectangle. The third
animations, and so on. Between
version will perhaps make the
each step, there’s compilation and
sound when spacebar is pressed,
brief playtesting to make certain
or move the rectangle to the last
that the last executed layer does
place the mouse clicks. Until
what it’s expected to do.
those things work right, the
videogame project isn’t going to ENABLE FAST ITERATIONS TO TEST CHANGES
Because of the iterative nature of
work anyway.
this process, consideration should
But that isn’t just how the process go into how to streamline the
starts – that’s also how features testing cycles early on in
get implemented. Whether development. While the tendency
planning went into which features of many beginners is to first make
are worth making (a good habit if the logos, splash screen, and
you have enough experience to
125
menus – again demonstrating the have done something wrong. This
erroneous thinking that something thinking has no place in
ought to be made in the order it programming, particularly when
will be experienced in – I suggest the notification of what’s “wrong”
working in the opposite order. just comes from the machine.
Leave the interfaces and splash YOUR PATIENT TEACHER
screens for last, when they’ll slow The compiler can be thought of as
down testing the least possible a teacher with infinite patience.
cycles, letting the game compile The compiler is always happy to
or run directly into play mode as proof-read code, and after passing
early as possible and keeping it that grammar/spelling inspection,
that way for the bulk of the it will show exactly what the work
development time. so far does.
ERRORS ARE A SIGN OF PROGRESS, NOT It’s a bad idea to wait until most of
FAILURE
Another part of the process in how an work is done before making
programmers program is hitting sure that it’s being done right. If
frequent errors and obstacles. starting in the wrong direction, it’d
Whether we’re setting up the be wise to find that out as soon as
development environment, writing possible before the mistake grows
core functionality, or extending throughout the program. When it
existing functionality to tend to comes to asking real human
details, the process of beings to look over what we’ve
programming is often a two-way done – whether we’re talking
dialogue with the machine. about parents, peers, teachers, or
online forums – we have a
We spend years in schools
carefully conditioned feeling that
learning to associate red marks or
we should pester them only if we
answers marked wrong (especially
have to, because we have to
to be redone!) as a sign that we
126
respect their time and not interfere When typing a loop, function, or
with their obligations. conditional, most programmers
close braces pairs and quickly
The compiler doesn’t have any
handle format indenting before the
plans for later.
filling what goes on the inside. In
MATCHING {BRACES} WHILE TYPING
other words, when I’m halfway
Much of the math that we do “on
through typing this:
paper” is a process of jotting as
for(int i=0;i<100;i++) {
much as we can on the page so printf("The secret password is XYZZY");
}
we can devote our mental energy
to thinking through the steps of It doesn't look like this:
(a.) what else to jot on the page for(int i=0;i<100;i++) {
printf("The secre
us still wiggle our fingers to The distinction looks subtle, but its
temporarily hang on to information importance and difference
(like carry digits) while we juggle becomes more clear when
other figures and steps in our nestling two loops to perform a
head. computation over all entries in a
That’s how the most expert two dimension array, and checking
programmers program. It’s called with a conditional inside them, all
“distributed cognition” by within a function. Still, each
psychologists, so named because matching right-brace "}" is typed
it distributes cognitive processes immediately after the
to include mechanisms outside corresponding left-brace "{", so
the mind – but remembering the that the code is typed in the
fancy word for it is less important following order from 1st to 11th:
than practicing it.
127
code relate to one another, the
int some2DArray[100][100]; // from early in compiler may think that the error is
code...
int some2DArray[100][100]; // elsewhere in code
someplace else far away in the
void ValidateTheArray() { // 1st line typed code, or even give the unhelpful
for(int y=0;y<100;y++) { // 3rd line typed "expecting right brace at end of
for(int x=0;x<100;x++) { // 5th line
131
SE C TI ON 3
132
4. Create additional number pixels from the left side of the
variables – to treat as speed for screen, and 15 pixels from the top
horizontal and vertical movement of the screen. To be clear, that’s a
– and add those to the position fictional, pseudo-code notation –
variables every frame. actual function name and order of
DRAWING AT COORDINATES values vary by programming
Independent of the programming language and graphics library.
language and library, there’s a LOADING THE IMAGE
function to draw a specified shape Before that example line could be
or image to the screen at some used in code to draw a goblin, we
coordinate. would need to declare that there’s
an image we’re referring to in code
As mentioned in Chapter 1,
by the label “goblin”, as well as
Section 6 (General Concepts for
specifying which filename to load
Beginning Developers), the screen
into that label. Example code:
is a 2D plane, often measured in
pixels as distance horizontally and Image goblin; // creates 'goblin' image label
134
…was that the position was
Note that the gob_x and gob_y
always the same (“hard coded”),
variables are now used in the
the problem with this:
copyBitmapToPosition as the
int gob_x=10, gob_y=15;
position to draw the image, rather
than specific numbers. This way, ...later in the code...
when gob_x is changed, whether gob_x = gob_x + 1; // move right by 1 pixel
copyBitmapToPosition(gob_x,gob_y,goblin);
dramatically (gob_x = 450) or
…is that the speed is always the
incrementally (gob_x = gob_x + 2),
same (1 to the right every frame).
the position where gob_x is being
Instead, we add another pair of
drawn for future frames will be
variables, denoting the current
changed.
horizontal and vertical speed:
Changing the value in gob_y will int gob_x=10, gob_y=15;
on wind vectors, fling the goblin With code like this, rather than
backward from an explosive blast, instantly coming to a halt when no
etc. by modifying the variables for keys are pressed, the object will
speed. glide gracefully to a stop.
SMOOTHER MOVEMENT CODE ORGANIZATION
In the example above, even Classes can be used to better
though the code is just pseudo- organize the data above. X/Y pairs
code (not actual wording for any are often contained in a Point or
particular language, just showing Vector class. Both vectors are
the pattern), the common ‘int’/ often grouped into a larger class,
integer type was used for position along with the image used (goblin,
and speed. Although pixel in this case), plus the functions
positions are whole numbers (501, used to handle the character’s
502, 503…), decimal real values of movement and updates on the
the float/double/number variety screen.
work better for keeping track of
That amount of structure isn’t
position and speed values.
necessary to get it working, but
When the speed values are it’s useful to stay organized and
decimal, percentage falloff can be minimize mental overhead while
used to slowly decay speed: expanding the program to include
float gob_x = 0.0; multiple moving objects. If you’re
float gob_x_moveAmount = 0.0;
new to programming, consider this
a note which will make more
sense in time.
136
OTHER USES OF POSITION VARIABLES
Keeping the position stored in
variables is also handy for
comparing the character’s location
to other values – screen edges,
world edges, and most often, the
position values used to track other
objects. When the distance
between the coordinates of one
character and another is within
some range, a function for
handling collision between those
characters can be called.
137
SE C TI ON 4
138
Decades ago, before floating point
Note that a number with decimal
units were common in processors,
precision can have a decimal part
using int for nearly everything was
of .00000… but it’s of a different
necessary for performance.
type because it could have a
Computer science trickery called
decimal part assigned, not
fixed-point math enabled
because it currently does. As a
programmers to simulate decimal
departure from pure math
accuracy, but at the expense of
terminology, simply setting a float
reduced precision and range. That
value to 6.0 does not change that
technique is still sometimes
float value to an integer in the
needed for making games for
programming sense.
cellphones of the non-smartphone
For this reason, in programming variety.
putting a “.0″ after a number
Anymore, calculations with floats
communicates to the compiler
are nearly the same speed as
(and other programmers) that a
integer math, and in either case
number is intended as a float/
it’s done fast enough to not be a
number with decimal precision,
primary performance concern. The
not as type int. I use that notation
minor performance differences
throughout this entry. 300 is
now come down to cache
different from 300.0, because 300
complexities and frequency of
is of type int whereas 300.0 is of
casting between types, both of
type float.
which are dramatically
DON’T WORRY ABOUT PERFORMANCE (YET)
overshadowed by other issues.
While getting started out, and well
into making a number of games, Especially with the number of
I’d suggest not worrying about objects being juggled for a typical
performance when deciding what hobbyist computer game (dozens
types of variables to use. of moving things, rather than
thousands), basic variable choice
139
is unlikely to be a source of exact equality, so it's perfectly fine
problems. to check:
AVOID CHECKING EQUALITY ON FLOATS if(someDecimalVariable >= 160.0)
141
}
// update screen from buffer
// (not relevant to all languages) draw(playerGraphic, playerX, playerY);
updateScreen(); updateScreen();
} }
142
Speed;
// short for playerX = playerX - player-
casting between types, or even
}
if(keyboard.rightArrowPressed) { throwing an error for failing to
playerX += playerSpeed;
} manually between cast types.
if(keyboard.upArrowPressed) {
playerY -= playerSpeed; CASTING BETWEEN TYPES
}
if(keyboard.downArrowPressed) { Casting is the operation of
playerY += playerSpeed;
} converting a value in memory from
draw(playerGraphic, playerX, playerY);
updateScreen();
one type to another. For our
}
purposes here, it means taking an
Now, we could set playerSpeed to int value like 5 and converting it to
0.4 to move at only 40% the the float value 5.0, or in the other
speed of 1 pixel/frame. We can direction, taking a float value of
increase the value of playerSpeed 5.3 and converting it to an int
during the game ("playerSpeed += value of 5.
0.2;" when we want speed to
Syntax for casting varies by
increase by 0.2 pixels per frame)
programming language, and many
to make the player move faster,
programming languages support
and decay it gradually to make the
multiple ways to cast variables,
player smoothly lose speed (using
but it often looks something like
a line like "playerSpeed *= 0.98;"
this:
to lose 2% of our speed every
frame). Since the trig operations float someDecimal = 5.6; // setting a value
int ourCastedValue = ((int)someDecimal); // 5
// note: cast drops decimal, it doesn't round!
sin() and cos() return values of
// or going the other direction:
decimal precision, we can now int someInt = 6; // setting up a value to cast
adjust playerX and playerY by float otherCastedValue = ((float)someInt);
// otherCastedValue will be 6.000000...
those if we'd like to move the The cast does not need to be
player by some arbitrary angle. done when assigning a value, it
Now there's just one problem: the can also be done in-line, so that
compiler is probably griping at us we could update our draw code
with warnings about implicit from earlier to look like this:
143
draw(playerGraphic, ((int)playerX),
((int)playerY) );
144
SE C TI ON 5
ROUGH DRAFTS SHOULD LOOK ROUGH then figure out in the following
One of the common challenges
steps step how it might be better
holding up beginning game
rearranged, chunked, and
developers, much like it holds up
reorganized.
beginning writers, is trying to get
everything down right the first Schooling introduces everyone to
time, perfect immediately, as soon some basic process steps to
as it’s “on the page.” A rough draft apply this process to writing. For
ought to be rough, whether it’s practical game coding we’re
written in code or in words. It’s the mostly on our own.
best time to be taking some STEP 1: JUST GET IT WORKING ASAP
147
playerHealth--; int x, y;
enemyAlive = 0; int health = 1;
}
} function playerMovementAndDraw() {
keyboardInput();
function drawEnemy() { boundsChecking();
if(enemyAlive != 0) { drawMe();
drawCircle(enemyX,enemyY,color.RED); }
}
} function keyboardInput() {
if(keyboard.holding(RIGHT)) {
function playerMovementAndDraw() { x++;
playerKeyboardInput(); }
playerBoundsChecking(); }
playerDraw()
} function boundsChecking() {
if(x > screenWidth) {
function playerKeyboardInput() { y = screenWidth;
if(keyboard.holding(RIGHT)) { }
playerX++; }
}
} function drawMe() {
if(health > 0) {
function playerBoundsChecking() { drawCircle(x,y,color.GREEN);
if(playerX > screenWidth) { }
playerX = screenWidth; }
} }
}
//// FILE: enemy.??? ////
function playerDraw() { class Enemy {
if(playerHealth > 0) { int x, y;
drawCircle(playerX,playerY,color.GREEN); int alive = 1;
}
} function movementAndDraw() {
collisionCheckAgainstPlayer();
function everyFrameTick() { drawMe();
redrawBackground(); }
enemyMovementAndDraw(); function drawMe() {
playerMovementAndDraw(); if(alive != 0) {
} drawCircle(x,y,color.RED);
}
STEP 4: GROUP FUNCTIONS INTO FILE/CLASS }
function collisionCheckAgainstPlayer() {
For functions and variables that if(distance(player.x,player.y,
this.x,this.y) <
have a common root – “player” in collisionRange) {
player.health--;
}
whether that can be better split off }
into its own class, or at least its //// FILE: main.??? ////
Bitmap backgroundFile; // loading jpg elsewhere
own file. Likewise global variables in code
Enemy testEnemy = new Enemy();
Player thePlayer = new Player();
that use a common root can likely
function redrawBackground() {
be moved into being member drawImage(backgroundFile);
}
variables on the classes that share function everyFrameTick() { // incomplete example
for illustration!
the same noun. redrawBackground();
testEnemy.MovementAndDraw();
//// FILE: player.??? //// thePlayer.MovementAndDraw();
class Player { }
148
causal relationships with new or
Many programmers have the
different values to tune!) can go a
inclination - or rather the training -
long way when a project is just
to start at this last step instead of
forming. The extra minutes and
the mess that I illustrated at the
mental energy spent on playing
first step. If you're planning a
with information freely like clay,
telecom infrastructure, a compiler,
directly and all in the same place,
or banking software, by all means
rather than mentally moving from
there's really no room for even
room to room simply to get things
temporary hackiness. However if
wired together at all quickly adds
you're prototyping a design that's
up.
rapidly changing early on based
on how it feels and plays, pulling Hack while figuring out what
together basic functionality just to you're doing, then refactor once
get a demo on the screen, you begin to develop a clearer
consider for a moment how much sense for how you want it to feel
more bloated the last iteration of and work going forward.
code on this page looks than the TRADEOFF IN THE TRANSITION
first (61 instead of 25 lines, nearly After applying this process to
150% more lines), despite doing break up the code, someone else
essentially the same thing. will be able to read it more easily,
but it also renders it a little less
It's probably not immediately clear
malleable for rapid prototype
from this simplified, partial code
iterations. The added layer of
example just how much trying to
structure can begin to embed
start at the more organized phase
relationships and assumptions.
can slow down iteration early on,
This is even more the case in the
but extremely rapid iteration on all
phase that naturally follows the
aspects of the design (not just
last one illustrated above, when
tuning values, but adding or
we would begin for example
rethinking mathematical and
149
pulling out a common superclass iPad, finding ways to trick Unity
for Player and Enemy with a into behaving the same as the
number of shared properties and prototype, etc.
functionality to minimize
There are good reasons why rough
redundancy. The upside of the
drafts don't (and shouldn't!) look
tradeoff, to reiterate, is that
like final drafts. There are likewise
splitting the code out from one
absolutely good reasons for why
hacky function into multiple
later drafts need to look less and
methods, classes, or files
less like the rough draft as the
improves code readability and
work begins to solidify.
separation. That makes it easier to
share code with another Learning and becoming
programmer, or even to simply comfortable with a few different
make sense of it yourself, as the practices and processes for
programmer, a week or more later managing this transition can help
when trying to work on you be the kind of developer that
improvements to a particular part. can see through your own original
Those fixes are often worth doing, designs, rather than being stuck at
at least on an initial pass, to either the hacky end as a
minimize getting caught up in a gameplay designer unable to
tangle later. Another approach I've logically divide the work to scale
seen is when people will crazy beyond a prototype, or being the
hack during prototyping on a rapid sort that's only comfortable
and flexible platform, like working on more robust
Processing, then once they figure implementation of concepts
out some of the core gameplay figured out by (or cloned off of)
interactions start over fresh in another developer that's more
reimplementing that gameplay comfortable juggling the flexible,
using native Objective-C code for messy, and iterative design
discovery work.
150
THIS IS REPEATABLE, ITERATIVE, LAYERED
As one final note, I'd like to point
out that this is rarely something
that happens one time to the
entire game's code all at once.
That may be the case early on,
while it's still a very small core
being figured out, however
iterations atop of that while
exploring potential features can
then take on the same pattern
shown above: hacking it first in a
rough fashion to try out, in order to
efficiently figure out what's worth
further organizing into the larger
code structure to keep and evolve,
versus what to trim back out
before proceeding.
TRY IT! PUT IDEAS INTO PRACTICE!
Don't just read about videogame
development! Put these ideas to
work for you. If you're already
familiar with programming this
doesn't take very long to try -
that's kind of the whole point of
this method.
151
SE C TI ON 6
155
differences between each of the AI my experimental project
figures (defensive, aggressive, and BeeDifferent:
retaliatory), and by shifting a value http://interactionartist.com/classic/
between their impatience gameloader.php?GAME_NAME=BeeDifferent
156
normal AI, thanks to this single Puzzle games are obviously a
reason) announced things along whole different can of worms,
the lines of “I can’t find her!” and depending entirely upon the
“I know you’re here!” and asking game’s structure.
their comrades things like, “Did
All that said, much of the real-time
you hear something?”
AI in most games still tracks back
SMART BUILDS UPON SMART to (a.) creating the illusion of
Big games – whether a First
impatience and intelligence by
Person Shooter, Third Person
being unpredictable (b.) reducing
Adventure, or Real-Time Strategy
groups of variables into easily
– invite some other AI needs like
prioritized decision points (c.)
pathfinding. FPS and TPA games
committing decisively to display a
often include hand-placed nodes
range of possible behaviors and
in the world giving AI clues for
(d.) unsubtle announcements of
where doors are, where the center
the current behavior or moments
of hallways/rooms are, and where
of mood switching.
the best cover points are to kneel
SMART CODE IS SIMPLE
behind. RTS games can involve a
On the technical side, the AI
bit of clustering (basics of facial
“mood” (finite state machines) can
recognition algorithms) to assess
be tracked simply by keeping two
areas of defensive weakness.
more integers per enemy. The
Basic vector geometry and dot
numbers are used by setting one
products can be used to ascertain
of the integers to an enumerated
line of sight between characters
value corresponding to behavior
(including trivially checking a
#1 vs behavior #4 (etc.), and the
character’s facing), and trig
other tracks how long the current
(especially atan2) are useful in
behavior should continue before
finding angles to shoot in, look at,
being reassessed. For example:
run toward, or flee from.
157
enum {
MOOD_WANDER, // same as "#define MOOD_WANDER 0" This sample code snippet pretty
MOOD_CHASE, // same as "#define MOOD_CHASE 1"
MOOD_MIMIC,
MOOD_FLEE, well describes the AI for most of
MOOD_NUM // useful for randomizing mood
}; my first PC games, including Pac-
/* the larger the first number (200), the more
decisive the enemy seems; the larger the second
number (150), the less predictable the enemy seems */
Deli, and Swarm. It's not going to
#define NEW_MOOD_TIME (200+(rand()%150)) appear intelligent in a one-on-one
class Badguy_typ {
// ... skipping class variables for brevity ...
fight, but when the player is up
int aiMood;
int cyclesTilMoodReconsidered;
against 3-8 enemies operating
Badguy_typ() { independently in this fashion, the
aiMood = MOOD_WANDER; // begin unalerted
cyclesTilMoodReconsidered = NEW_MOOD_TIME;
// other character initialization goes here player begins to interpret the
}
void Move() {
emergent patterns of their mostly
if(--cyclesTilMoodReconsidered <= 0) {
// random new mood
aiMood = (rand() % MOOD_NUM);
random (unpredictable!) behavior
// random new amount of time till change
cyclesTilMoodReconsidered = NEW_MOOD_TIME; as teamwork, plotting, and
}
/* cyclesTilMoodReconsidered is only
strategy. In Pac-Deli I gave each
intended as timeout, so that left on
their own, unprovoked, enemies will
seem unstable, curious, and impatient,
ghost color a significant bias
like they have minds of their own. */
toward 1 of the 4 behaviors - half
/* Within the switch statement below,
it's fine to switch aiMood and reset
cyclesTilMoodReconsidered even if it the time using their "personality"
isn't time for a mood change yet. For
example, if the enemy is within a certain
range from the player, especially if line
and half the time switching to a
of sight is established, then just switch
"aiMood = MOOD_CHASE;" */ completely random choice - and
switch(aiMood) {
case MOOD_WANDER: this created the impression that
// enemy is wandering, code here
break;
case MOOD_CHASE:
one was more confused, one was
// enemy aggressively chasing player
break;
case MOOD_MIMIC:
more aggressive, one was intent
// enemy is copying player movements
/* this is very easy to implement but on being tricky.
has the nice effect of giving the
player a temporary sense of control,
making it so that when this character WE'RE NOT TRYING TO BEAT KASPAROV
switches to a different mood there’s a
good chance of catching the player
off guard */
Ultimately, it's okay if the AI isn't
break;
case MOOD_FLEE:
// enemy running away from the player
the smartest thing on earth. If the
}
break;
player outsmarts it, they'll feel like
}
158
process and respond to
information faster than they can.
As Ian Davis, the founder of Mad
Doc Games told me, "The goal of
videogame AI should be to put up
a fair, convincing fight, and
eventually lose."
159
SE C TI ON 7
161
• Each time I’ve completed and other features or debugger output
tied up a functional chunk, (i.e. for log or trace statements:
generally amounting to several clean up, remove, or make toggled
hundred lines of code or less. This on/off in code that defaults to off,
can even become a nice part of before committing to svn), or it’ll
the ritual, punctuating a finished throw off other programmers on
task, like scratching something off the project, including future you. If
a todo list. that code is otherwise incomplete,
then for now make sure it has
• Whenever I finish solving a tricky
been safely isolated from other
or creative code issue, or finish a
code still in use, flagged with a
tuning or balancing pass I’m
short comment at the top
pleased with, that I’m not
indicating it’s not ready for use. Be
confident I could easily reproduce
careful to not break the build, hog
a second time.
the debug output, or degrade
• Upon finishing something performance with a half-finished
monotonous that I would not want check-in that will leave others
to do again. This mostly happens wondering whether their local
when doing some type of hand- changes caused it.
adjustment to assets, for example
Q: IS VERSION CONTROL WORTH IT IF YOU
tweaking spacing offsets for every ARE THE ONLY PROGRAMMER ON THE
PROJECT?
character of a medium or high
A: Here’s what I’ve been doing for
resolution bitmap font, or
the past 5 or 6 years when I’m the
renaming several folders of sound
only programmer on the project
and image files to fit an improved
(which is very often the case for
naming convention.
my hobby projects, even when
It’s important to only check in there’s a team of people involved
code that’s ready to compile and with assets), it’s a habit I picked
run though without interrupting
162
up from one of my longtime copied to the cloud. The idea of
collaborators John Nesky: keeping a version of the full source
at a remote location is that no
• Every night, when I’m at a good
matter whatever disaster could
stopping point, I zip up the
happen locally – backpack with
project’s folder. I save most of the
my laptop in it falls into a deep
old ones of this, or at least 1 per
puddle, catastrophic hard drive
week, and it makes it easy for me
failure, my home gets broken into
to dig my way “back out” if I find
and my computer and backup
that I’ve coded myself into a
drive both get stolen, home burns
corner or introduced some
down, whatever – then at least I
nightmarish bug I’m having trouble
have something to pick back up
undoing. Sometimes it’s also fun
from.
when I’m done with a project to
look back on old zip files to see Loss would still be inconvenient, it
what the project was like earlier in would still be expensive, it would
development – what didn’t make still be lame, but things can be
the final cut, how much rougher it replaced with money, whereas lost
looked earlier, etc. game development work is simply
lost time, a huge loss to morale,
• At least once a week, I copy the
and if there are other people on
zipped folder to a location online,
your team or a business counting
like a folder on my FTP server not
on you to finish, not tending to this
visible to the outside world. A local
properly can make your or my
external hard drive for back ups is
misfortune spread to also become
handy, but not sufficient.
their misfortune. It’s way too
Nowadays I just copy the zip with
simple to back up a project
dated filename into a special
remotely to have any excuse to
folder that I keep on Dropbox
ever completely lose a project’s
specifically for development
backup, and it’s automatically
163
code and source/raw/PSD art not become bogged down with
files. sorting through non-game
technical troubles, it would be
It’s not your fault if something
reckless to have all of the work
goes wrong and a hard drive
invested into a project living only
utterly fails, but it is your fault if
in a single directory having one
that happens and you’ve not taken
version on one machine. That’s
any steps to mitigate that loss.
terrifying. At the very least, make a
If a project is tiny enough and new zip of the directory after a
you’re at a game jam, and don’t good night’s work on it, and
want to set up a Dropbox (but you occasionally toss a dated version
really should, it’s free and easy to of that file onto a server in a
do), at least e-mail yourself a remote location. If the project is so
zipped copy of the source every large, distributed, or complicated
so often. If you don’t have internet that using that method isn’t
access for some reason, practical, then it’s time to look into
occasionally copy that latest zip to setting up some real source
a USB stick so it’s not all one the control, whether svn, git, or one of
same physical point of potential the other solutions out there.
failure.
It’s not either-or, though. There’s a
continuum of source control
between having the technical
infrastructure of a massive studio,
which needs a fully staffed IT
department to keep it running,
compared to the resources of a
hobbyist or student trying to
moonlight. While it’s important to
164
SE C TI ON 8
165
performance downloadable, AS3 checking raycast collision against
for web, etc.) a bounding box a bit larger than
STEP 1: MINIMAL FOUNDATION the unit rather than doing distance
Get the mouse showing up, either checks to detect click proximity.)
as a default cursor or by drawing a STEP 2: GAME LOOP
small circle where the mouse Create a game loop so that action
coordinates are. Create two can happen 20-60 times per
numbers, x and y, to store a second, rather than only when the
soldier’s position, and draw a mouse clicks. If programming in a
colored rectangle on screen at that local native application or
coordinate representing the prototyping environment, this can
soldier. Before moving on, set it up be done by making a boolean
so that clicking close enough to “gameRunning” set to true, and
the soldier kills him – this can be wrapping the core of the game
as simple as a distance check (drawing, input handling) in a
between mouse cursor and the while(gameRunning) loop. If the
army man each time the mouse user either presses a key (Escape
clicks, setting a “dead” boolean perhaps) or clicks in the top-right
flag to true which draws him a corner of the screen (coordinate
different color. The distance check comparisons), set gameRunning
to the solider should be written as to false to quit the program. If you
a separate function that uses the are in a newer environment, this is
Pythagorean theorem to return a often done instead of using a loop
distance for numbers or by setting up a timer to call a main
coordinates given as parameters. logic and rendering function 20-60
(If you are going the Unity route, times per second, which is where
some translation may be your game code can live. In Unity
appropriate, such as rectangular this is set up automatically in the
prisms instead of squares, and
166
form of the Update() tick functions using float precision numbers for
built in to the scripting. coordinates, rather than the whole
STEP 3: TARGET DESTINATION number “int”.
Have the soldier keep track of a STEP 4: REFACTOR INTO OBJECT
target destination by creating two We’ve previously been keeping
new numbers, tx and ty (standing track of the soldier’s position and
for target x and target y). Update destination with variables of
the target destination to where the ambiguous scope or organization,
mouse last clicked. In each frame presumably global. Wrap up the
in the game’s logic, if the soldier’s soldier’s x, y, tx, and ty in a new
target destination is more than struct or class, and update the
some distance from his current code to use the object’s values
location, have him move closer to (they can be left public for now).
his destination. To fudge this, just STEP 5: MULTIPLE SOLDIERS IN ARRAY
do a straightforward: Refactor that code so that instead
if(x < tx) { x++; } // left of it? move right. of having one soldier instance, you
if(x > tx) { x--; } // right of it? move left.
if(y < ty) { y++; } // above it? move down. have an array or list of soldiers in
if(y > ty) { y--; } // below it? move up.
167
a GameObject or Array of (GameObject reference if Unity)
GameObjects as a handle on where another soldier’s index can
which unit(s) the player selects be stored (which can be used to
which would be null or empty by change tx,ty coordinates if beyond
default and between selection. firing range) and hitPoints integer
Adjust the previous “click on to that starts at 3 and goes down
kill” code so that it sets the whenever hurt. Add a constant
selected value to that soldier’s number value (or if using C/C++ a
index – a brute force iteration #define will work fine) to centralize
through the entire array comparing your definition for gun range. Have
each soldier’s distance to the the code draw a line from any
mouse is fine at this scale. If no soldier with a non -1 killTarget to
soldier is found close enough to the position of the enemy having
the mouse to change the selection the index they’re targeting.
index, set the currently selected STEP 8: ATTACK COMMAND
soldier’s tx and ty to where the If an enemy soldier is clicked,
mouse clicked. instead of selecting that soldier,
STEP 6: DIVIDE ARMIES set the target of the currently
Give the soldiers one extra integer: selected friendly soldier to that
army number. Set to 0 for half of enemy. Use random countdown
them, 1 for the other half, and timers between shots fired (maybe
draw them as different colors. every 100-300 ms?) to randomize
Only let the player select units who wins, and/or give a
matching a particular army probability of missing ( if(rand() %
number. 3 != 0) gives them a 1 in 3 chance,
STEP 7: TARGETING AND HEALTH etc.) and depict the missing, firing,
Give the soldier class/struct two or hitting in some way like flashing
more integers to apply to all circles, sapping health from
soldiers: a killTarget index soldiers that take damage.
168
STEP 9: UNIT DEFEAT
If a soldier’s target is defeated,
either assign them a new living
target at random or await player
orders.
STEP 10: COMPUTER CONTROLLED ENEMY
Make AI by having countdown
timers either per enemy soldier or
per enemy army between discrete
moves, which could consist semi-
randomly of one of three things:
move a soldier to a new spot,
move two soldiers closer together,
target a random or the nearest
player soldier, or team up with a
fellow soldier by selecting the
same target as his nearest
teammate is targeting. Tune those
probabilities and timers until it’s
reasonably fair.
STEP 11: NON-INFANTRY UNITS
If you’ve made it this far –
congratulations! It’s an infantry
war game now. A simple
isUnitType integer added to the
soldier class or struct could
correspond to an enumerated unit
type (TYPE_TANK, TYPE_PLANE,
TYPE_ARTY, TYPE_GRENADIER,
etc.)
169
4 Even once you know what to do,
you’ve still got to put it into
practice before that knowledge
can do you any good. Becoming
good at anything requires
practice. Let’s look at some
ways to start getting practice
sooner rather than later.
Get Motivated
170
SE C TI ON 1
171
Find a way in your programming moving in the way that it ought to
language or environment to load move.
an image file and get it on the
Get the level structure put
screen, to respond to keyboard
together to position visuals and
and mouse or whatever input is
handle basic collision against the
needed, to load and play back
player. Save/load the level
sound effect files and looping
structure in some practical format
music. Depending on the platform,
– never mind getting caught up on
picking a library may be helpful for
the theoretically optimal
this (ex. SFML, SDL, Allegro, or
compression of that data, as level
XNA, if in C/C++), or this may be
files are virtually always tiny, and if
functionality built into what you’re
that becomes a problem later,
working with (Unity). Often the
cross that bridge when you get
easiest way to get to this point is
there. Level files initially saved in
to just find some simple example
ASCII can make debugging
code that already does these
significantly easier anyhow. Is the
things, then twiddle settings in
game world based on freestanding
your development environment
obstacles? Grid-based tile
until you can compile and run it as
collision? If the camera needs to
expected.
pan, add some offsets to the
Does the player character need to player draw position and level
move like a truck? A spaceship? A draw origin to achieve scrolling, or
tank? Mario? Get the input to a global transform if you’re in 3D
move the player’s graphic or using hardware acceleration,
(probably an unanimated rough and update those offsets to move
draft of the graphic at this point, the view based on player position.
concerned only with basic
Add enemies (if needed), items (if
appearance and scale on screen)
needed), trigger puzzle elements
(if needed), special powers (if
172
needed), ammo limits (if needed). how to cut that feature from the
Add nothing that isn’t needed. If design without the game
you’re not sure what else the basic completely falling apart, that’s
engine might need – and I’m only super cool, and welcome to
using the word “engine” here only production.
in the most minimal sense,
Once you finish the game and
meaning the game’s core code,
people don’t feel about it the way
not the try-to-support-every-
you hoped they would, first off:
game-imaginable Titanic-seeking-
that’s awesome, because hey, you
an-iceberg undertaking – start
finished a videogame.
putting together playable level
Congratulations! Next time you’ll
content and see what additional
be positioned to make
features or process improvements
incrementally more informed
you find yourself wanting while
tradeoffs with consideration for
doing that.
implementation realities,
The game may not need anything production compromises, and
else. potential impact on user
experience. It’s only at this point
If and when a situation arises for
that someone is beginning to
which you’re not sure how to
really do videogame design, as
proceed without digging and
opposed to talking about
experimenting for solutions, that’s
videogames, reading about
fantastic, welcome to real
programming, or cloning someone
programming.
else’s work as an exercise. Note
If and when a situation arises for too that design of a full videogame
which you have to make a tradeoff is different than level design.
between burning an uncertain Though the two are sometimes
amount of time on figuring out conflated, since they are often
something tricky, or working out done by the same people, when
173
done in isolation from other issues Roger Ebert was brilliant, but
and options about a game’s wasn’t suited to making a decent
development, level design is film. (Not hypothetical - see:
another field of content creation, Beyond the Valley of the Dolls.)
another skilled technician’s craft
If your goal is to be a critic: spend
like animation, dialog writing, or
all day studying the form and
sound editing. Those are hard
discussing it. If your goal is to be a
things to do, deserving of respect
maker: start making things, keep
and worth doing well, but they are
making things, and finish making
not videogame design. Designing
things. Being reflective on practice
a videogame is different than
can be helpful, but that requires
designing for a videogame.
actual practice to be reflective
Learning is great. Books are about.
important. Some amount of
Learning everything there is to
learning does need to happen
know about programming or
before starting, but the amount of
videogame development before
learning needed tends to be far
starting is impossible. It simply
less than people seem to assume.
won’t – can’t – all fit inside one
Learning, for this type of material,
head at the same time. Even if that
has to be situated in a context,
information somehow could be
demonstrable, useable, and
learned, memorized in the
practical. Contrary to the lay
abstract, detached, and rote
consumer impression that making
sense, it would not be of any use
something is a mere variation on
without experience working
being able to judge something, a
through real problems with it.
maker has a fundamentally
different set of concerns and This is not a decision between
practices than a critic. learning versus doing. What I am
proposing is that, within this
174
context, learning without doing Be wary of excessive preparation
isn’t really learning. Meanwhile serving as a disguise for
doing without learning is procrastination.
impossible, because doing will
demand learning.
If you make some wrong
assumptions early on, they’re
often easily corrected. That’s the
nature of digital stuff. We’re not
laying railroads or building
skyscrapers, we’re not cutting
someone open while they’re under
anesthetic – we are dealing in
digital text and other easily
modified, easily backed-up files.
The rework time is nothing
compared to the vast but invisible
damage from never starting,
waiting an infinite amount of time
until everything knowable is
known. That rework is even when
the best learning happens,
because the desire to not lose that
amount time on the next attempt
will help lead to a deeper
understanding of what caused it,
so that it might later be avoided.
175
SE C TI ON 2
"Overcomplicating Everything"
180
quickly discover all kinds of lovely with doing so, but strictly
nuances and subtle complexities speaking, you really don’t know
that weren’t apparent on first how to do it, even if you just
glance. The upside of course, is finished reading a book on the
that by the time we finish the subject.
attempt, we really will understand
To people in our family – and to
exactly what’s involved in making
ourselves – we tend to look like
it work. It’ll become one more tool
our potential, what we seem
in our conceptual or practical
capable of doing. To friends, we
toolbelt for future use, having
may be thought of from how we
shown ourselves that it’s
seem in the present: less pressure
something we know how to do.
about the future, and not worried
Note, however, that to “know how about the past. However, to
to do something” has way more to strangers, literally everyone else in
do with the “do” than it has to do the world, our abilities and our
with “know” – strange, right? If I character are judged only by our
ask whether you know how to do past, what we have already done.
a skateboarding trick, I don’t mean So outside of the dozen or fewer
do you understand what the stunt people that know us best, if we
is. I mean, can you do it? If I need haven’t done it, as far as anyone
heart surgery, I need a surgeon else is concerned we can’t,
that “knows how to do” the regardless of what or how much
operation, by which I mean we “know” inside. There is only
someone that can do much more one thing that can change their
than just describe the procedure. minds about whether you can do
If you haven’t made a platformer it, and that’s going through with
game before, you maybe have all actually doing it. Strangers can be
kinds of ideas of what you could very hard to persuade, but this
look up or try first to get started
181
turns out to be an extremely saying is that at the very least,
effective way of doing it. doing it is a different kind of
challenge than getting endlessly
Someone could spend years
distracted by learning infinitely
reading about how to do
more detail about the matter at
something, then be put in a
hand.
situation to do it, but then be
unable to translate that reading Sometimes we need to – get to! –
into doing. Meanwhile if someone play the role of grand architect on
else has actually done it, we know our projects, but for the vast
that we can generally count on majority of the development time,
them to be able to do it in the we actually just need to be our
future, or benefit from real own construction crew laying
takeaways learned as part of that bricks, nailing boards, taking
experience. measurements, and lifting things
into position. Even if you’re the
I’m clearly not opposed to books
kind of person that’s capable of
or book learning. I love reading,
governing the 9th largest economy
and I read a ton. Knowledge is
in the world, there’s still a time and
great! All I’m trying to stress here
place in life for simply being a
is that especially within the
brick layer.
domain of a craft, knowledge
alone cannot be a substitute for If you feel like you or your work
experience of actually putting may be hurting from falling into
things together. Here’s the crazy this pattern, and I know a lot of
part: actually putting things people are affected by this, having
together can in many ways be a been “overcomplicating
lot less complicated than trying to everything” day after day, I urge
study or talk coherently about you to catch and stop yourself
them. I’m not saying that doing it next time this starts. Just get back
isn’t challenging, but what I am to the compiler and do the work.
182
The thoughts you had previously
about where this project was
headed are still just as valid,
though of course even if you’re
having second thoughts there is
no better way to prove to yourself
whether the idea works than to
simply try it and see.
183
SE C TI ON 3
184
nearly done. The same is true at path that can lead to coherent
25% through, or 75% through completion.
(which often turns out to actually
The natural objection to building
be only 25% through). While
too soon is a fear that doing so
building something, we’re always
sets too much in stone. That
at an intersection of “How do I
objection assumes the historical
address this immediate
approach required of massive
challenge?” and “How can I keep
physical projects like ships and
this on track to hone in on a
skyscrapers: extensive planning,
coherent, complete result?” Yet
followed by huge costs of
before initiating building, the
building. Since the cost of building
tendency is to think in vague,
(and more so, the cost of undoing)
incoherent, daydreaming ways
in software is significantly lower
about the project without either of
than in battleships or buildings,
those helpful grounding questions
I’m suggesting that development
in mind, because there’s nothing
is part of the planning process,
tangible yet to pivot on.
and seamlessly carries into the
Of course, it’s valuable to foresee production process. Build to clear
and steer away from potential up uncertainty in the planning, to
dead-ends, to have some clear narrow down frayed possibilities,
initial direction in mind, and to to work out a plan based in the
have a sense for how long a given reality of gameplay with situated
project might take. I’m not anti- proof that A works well and B
planning. I only mean to suggest doesn’t hold together.
treating any such plan as highly
If a feature isn’t working out, ditch
tentative – as little more than
it. If a level is bad no matter how
evidence to yourself and others on
it’s reworked, lose it. If something
the team that there is at least one
was originally planned but what’s
currently working seems to work
185
just great without that something, It’s okay to make a few not-as-
consider forgetting that something great games, especially if it means
and the extra complication it that you feel comfortable taking a
would invite – though if you have few chances, trying out a range of
the time, build it, and rip it back new ideas, and working with a
out if it’s not an improvement. variety of different people or
influences. However, you can give
When the built gameplay gets
each project its best chances of
pulled back out, it isn’t a loss. It
succeeding by being bold about
was exchanged for new
cutting out the not-as-great
information that could not be
features and the not-as-great
obtained any other way. It was a
content. The flexibility to do that
sacrifice made in exchange for
kind of cutting only comes from
conviction that the better course is
building to test ideas along the
to go without that surrendered
way, beginning with making plans.
part.
Building isn’t just for final
When actively developing, it
decisions – it’s also for arriving at
becomes clear that there’s a much
better decisions. Don’t just build
better destination en route or
to keep what’s built; build to think,
accessible by a short detour.
and build to answer questions.
Remember though that the goal
isn’t to reach the originally
planned destination, but to make
something worth making. If the
original goal’s role turned out to be
getting you close enough to spot
that alternative outcome and
achieve it, go for it.
186
SE C TI ON 4
190
SE C TI ON 5
191
features, polish, and scope to well before there was reason to
whatever it takes to make that have done so.
schedule. Tens of thousands of
Is there something you want to be
amateur videogame developers
making, or want to have made,
routinely put together playable,
that you’re capable of creating on
original projects over 24-48 hour
your own (or creating “enough of”
spans in game jams. There’s
on your own to fill in the blanks for
nothing wrong with game jams –
now), that you haven’t yet started
but there’s absolutely no reason to
making?
wait for a game jam to roll around
to create something in 2 days. Or Then what are you waiting for?
2 weeks. Or 2 months. There’s no
reason why it has to only take
place a few times a year, while
other people are doing it, or in
connection to some arbitrary
centralized theme.
It may not be clear how to market
it, who it’s for, how it will turn out,
or even why it’s being done. Don’t
let that get in the way. It’s
probable that at some point in the
future, a situation will
unexpectedly come up to share
and show off something that
you’ve done. Whether or not you’ll
have something that fits the
occasion will depend on whether
or not something was put together
192
SE C TI ON 6
195
we remember, the further we stray jumpers with satisfying controls.
from what the gameplay actually (In SMB, exploration primarily
consisted of. takes the form of crouching on
DELICACY OF EMPHASIS most pipes to check which lead to
The factors I’m referring to may underground zones, bumping
seem like trivial tuning matters, normal-looking bricks to find the
but that’s just how wrong the mind ones that are multi-coin blocks,
gets it: when those aspects are etc.)
other than they really are (say, in a
There’s a temptation to inspect the
crummy port or shoddy clone, or
totality of the system, as though
in your human imagination) a
every authored decision has a
videogame can take on an entirely
significant and isolatable affect the
different experiential and
player. This simply isn’t true. When
mechanical quality. Attention and
the brain gets overwhelmed by
anticipation are fragile but central
rich details and possibilities it
to gameplay, and get manipulated
relies upon performance
by countless audio cues, visual
shortcuts, crude mental models,
clues, input behaviors, and so on.
and selectively ignoring the vast
Just one incorrectly remembered
majority of information. An efficient
element or human response can
approach to gameplay adaptation
drown out the real priorities that
won’t even internalize most
occur during live play. Super Mario
environmental details, but will
Bros and Super Mario 64, for
instead focus on how to react or
example, both involve a lot more
solve when necessary and how to
combat and exploration than
advance between combat and
designers typically remember
puzzles. As to what information
when discussing those games,
gets acknowledged or disregarded
both of which get wrongly
on the fly for a given videogame,
abstracted as pure platform
and what the brain actually does
196
with it, that can only be when trying to recreate or discuss
determined by playing the game a camera movement, player
(not just having played it at some behavior, layout, input dynamic, or
time before). other aspect of an existing
videogame, there’s no substitute
Trying to remember gameplay is
for breaking it out and playing it.
even more difficult than accurately
Then iteratively making notes – not
simulating all the inputs, outputs,
after the experience, while Verbal
and code, because it also requires
Overshadowing is rapidly taking
simulating and accounting for the
over, but during the experience, so
complexity of the brain. Given that
as to immediately and frequently
the brain can’t faithfully emulate
check whether the observations
Atari hardware, it certainly can’t
and thoughts are holding up.
handle fully emulating itself, too –
all while focusing on the player’s Often, confirmation bias will still
perspective and experience, of takeover, making things seem to
course. align to the way we think of them,
OUR LIMITATIONS but at least some of the time we
True, we can have a fuzzy memory can catch our own nonsense
of some screenshots, a few before we spread it to others. This
memorable sounds or fragments seemingly hopeless picture I’m
of songs, perhaps a single scene painting is quite deliberate,
playing back as though it were a because the real takeaway here
non-interactive animation (again: isn’t on how to better document
minus the stress, confusion, gameplay in words to avoid the
confidence…). We can recall crude need to reference gameplay, it’s to
facts aboutour experience, such accept the futility of anything less
as whether we had fun, how long than actual gameplay to
we spent playing, and whether we accurately and completely capture
were impressed by it. However what it is.
197
DESIGNING GAMEPLAY ISN’T VERBAL even having better ideas, so much
The other challenge this
as it’s having a better process for
introduces is the near-guarantee
building, trying, rejecting, and
that most of what we think about
salvaging ideas, then seeing
when designing and planning
through the polished completion
gameplay features in our heads
of those thoughts that survived
(and on paper in words) is pure
and fit well together. It’s an
fantasy that will fall apart and need
elaborate dance to compensate
to be mostly rethought the very
for the inability of our brains to
moment it’s tested in interactive
know or manipulate gameplay
implementation. We can write or
accurately as thought or words
talk for arbitrarily long about how
alone.
we think it will work and how well
it will play out, but we can’t even
reliably articulate that dynamic for ♦
rudimentary games that already
exist, let alone nebulous ideas in
our imaginations. At best, such POP QUIZ SOLUTION
So, does Pac-Man move faster or
thoughts hint at possible
slower than the ghosts? As the
directions, and give sufficiently
Pac-Man Dossier summarizes:
clear direction to begin exploration
in a tangible way, but quite often The game starts with Pac-Man at 80% of
once we get the ideas playable we his maximum speed. By the fifth level,
discover that they work or flop for Pac-Man is moving at full speed and will
continue to do so until the 21st level. At
reasons totally unrelated to what
that point, he slows back down to 90%
we expected.
and holds this speed for the remainder of
Because of this effect, often what the game. Every time Pac-Man eats a
makes great videogame designers regular dot, he stops moving for one frame
(1/60th of a second), slowing his progress
isn’t writing better design docs, or
by roughly ten percent—just enough for a
198
following ghost to overtake him. Eating For level 1: Pac-Man moves at
an energizer dot causes Pac-Man to stop 0.8X, Ghosts at 0.75X
moving for three frames. The normal speed
maintained by the ghosts is a little slower For levels 2-4: Pac-Man moves at
than Pac-Man's until the 21st level when 0.9X, Ghosts at 0.85X
they start moving faster than he does. If a
For levels 5-20: Pac-Man moves
ghost enters a side tunnel, however, its
speed is cut nearly in half. When
at 1.0X, Ghosts at 0.95X
frightened, ghosts move at a much slower For levels 21+: Pac-Man moves at
rate of speed than normal and, for levels
0.9X, Ghosts at 0.95X
one through four, Pac-Man also speeds up.
The table below summarizes the speed My point, of course, is that the
data for both Pac-Man and the ghosts, per difference is subtle enough in
level. either direction, and complex
In other words: it depends on enough in its involved factors
which level you’re on (generally, (many of which casual Pac-Man
Pac-Man is faster than the ghosts players may not be aware of), that
before level 21, except...), if Pac- unless you’ve made a point of
Man is in a tunnel still filled with learning these facts about Pac-
energizer dots (in which case the Man through deliberate study,
missed movement frames from merely being familiar with this
eating a let a following ghost catch iconic classic and having played it
up), and where the ghost is on the on numerous occasions is actually
map (they slow down significantly inadequate for being able to figure
in the wrap tunnels even in the out something relatively central to
later stages). how the game plays.
199
SE C TI ON 7
Stop arguing about what makes a that they last built or are currently
better game, and go make your building. As it should.
better game.
In purely technical challenges, the
Every indie developer that I know questions we deal with are often
– and I’ve had the good fortune to convergent. In other words, in
meet quite a few of these folks – terms of algorithm or
has a wildly different answer to the implementation, there are
question, “What makes a good answerable questions about which
videogame?” They generally have pathfinding or collision detection
an answer, it’s not as though the routine makes the most sense for
question leaves developers with a particular application, or at least
nothing to say. My point is that the pros and cons can be
actually saying it doesn’t do much objectively outlined and weighed.
good. The argument usually
sounds quite a lot like the game
200
Technical matters exist in other art Though perhaps the best reason
forms, as well. A painter’s opinion to be acquainted with one
isn’t what makes a particular another’s work is to avoid wasting
material of canvas or paint last, an precious time simply recreating
architect’s opinion isn’t what someone else’s work, while
determines a structure’s ability to mistakenly thinking that doing so
withstand an earthquake, and a is trailblazing. We need to know
musician’s opinion can’t override what else is out there not just to
room acoustics or material learn from it, but also to recognize
realities in instrument and reduce redundancy, to not
construction. misuse our lives exploring beaten
paths. (For people new to making
However, in matters of taste, one
videogames, cloning can be
painter arguing that other painters
helpful as a form of detailed study
ought to mimic her own style and
or to get initial momentum, but
purpose would result in a less
that’s neither who nor what’s
interesting gallery for the rest of
being addressed here.)
us. Architects and musicians
likewise would deprive the world The only meaningful yield of the
of much needed variety if they individual’s deeply-felt arguments
spent their energy trying to tell about game design is the actual
others to do exactly as they game designed.
personally would do, especially if
Some people will like it, some
this were done instead of actually
people will hate it, some people
doing it themselves. They could
may feel like it’s the game they’ve
certainly still be aware of one
dreamed about but didn’t know
another, be inspired by one
how to make, and the
another’s work, even borrow and
overwhelming majority of the
remix parts.
population (even if your game is
Zelda, Angry Birds, or FarmVille)
201
flat out won’t really care one way unlike their cousins in clear
or the other. It’s a matter of taste. categories, on account of having a
Even the most popular or critically far harder time being found by
acclaimed work in any medium is people that can know before
met with infinitely more playing that they want to play
indifference than with what it is. You could make exactly
appreciation, or at best in the the game you mean to make,
absolute peak of pop cultural totally love the outcome, and the
products, iconic recognition person you would’ve otherwise
without real understanding. argued about it with still may not
be into it at all.
If you’re doing a commercial
project, sure, you’ve got to worry Of course, since the brain is not
about what’s going to sell, and an emulator, arguments about
that’s a different battle than what what makes games better are
I’m talking about here. If you’re a even more silly. In argument form,
hobbyist, I still say embrace the as opposed to videogame form,
hobbyness, do something strange there’s too much information left
that beginners can’t and unspecified. Even if it were all
professionals won’t. somehow conveyed exactly, the
mind would derail managing it all
Someone that doesn’t like driving
within the first second of
games still won’t care about the
execution. In my mind I can fool
“best” driving game ever created,
myself into feeling like any
by any metric or definition of best.
videogame concept is appealing,
The same is true for puzzle
equally well regardless of whether
games, shooter games, platformer
in reality it’s my least or favorite
games, and though I suppose it
game. If brains could be trusted
goes without saying, the whole
with juggling all the details in real-
vast and infinite sea of games
time, and if language could do
without clear genres which suffer,
202
justice to explaining those details,
we wouldn’t be throwing so much
time into programming and
creating assets.
Make the game your argument
leads to, to get the argument out
of your system, so that you can
come up with another argument,
informed or changed somehow by
how the last project came out.
Then make a game out of that new
argument, and repeat. It’s barely
meaningful to ask whether an
argument about taste (not an
estimation of “the most popular
taste” or “fitting the taste of vocal
critics” – but actual, individual
taste) is right or wrong, but you
can be sure that nothing will make
the argument more clearly and
loudly, in a way unmistakable to
those within or interested in our
domain, than actually making a
videogame out of it.
This entry was inspired by the quote “Complain
about the way other people make software by
making software,” from Andre Torrez, which I
found in Steal Like an Artist by Austin Kleon
203
SE C TI ON 8
206
they captured people’s this approach for
imaginations. InteractionArtist.com
This isn’t just about TV shows, That’s still thinking by building. It’s
games, or movies. Moby Dick just not starting from as
didn’t become a classic because established a foundation,
the idea of whale hunting is cool. accepting a higher chance of
Moby Dick is so well put together producing something uninteresting
that it creates interest in what it’s in exchange for a shot at coming
about. out of the process with something
more unusual.
The idea of Mona Lisa is… well,
you get the idea. DON’T WAIT FOR INSPIRATION
Waiting for an original idea to just
Pick something to do, practice to happen is an unproductive trap.
do it better, and you’ll discover
Ideas grow out of action, iterative
your own tricks along the way to
building, and through
make them more personalized and
collaboration with others that have
unique.
different tastes and strengths than
RAPID PROTOTYPING
your own.
The other approach to come up
with gameplay ideas that haven’t Want to come up with more
yet become a common pattern is ideas? Start making something.
to rapid prototype, which requires
Even if a project starts out as
a high degree of development
totally unoriginal, with persistence
fluency and often returns a
and some practice it’ll soon lead
relatively low yield. However, it’s
to directions you wouldn’t have
one source for original and decent
thought up otherwise.
things that aren’t evolved from
things that began as clones. I took
207
5 Some game development books
begin with game design. But first
learning some programming
skills as a foundation can help
give you the power to put your
designs into practice. Let’s next
dig into some design concepts,
since you’re now better
prepared to try them out.
Game Design
208
SE C TI ON 1
212
small and moving toward the ability to pick myself back up
increasingly complex games, a and promptly get back up to full
solid foundation of applied design speed on new projects when that
principles and practical coding one didn’t pan out.
habits can be formed
This progression of foundational
incrementally, with lessons picked
skills was also a central
up along the way that are
philosophy to both videogame
appropriate in size to be learned
development clubs I helped start:
from.
before someone has been a lead
Over the years I’ve now seen a or solo developer for a game of
number of people massively early 1980′s-gameplay complexity,
overshoot their means on an early they’re typically not ready to lead
project and fail spectacularly. In a team of others on a game of
most cases that unfinished game late-1980′s gameplay complexity,
is the last one they work on, never and so on. This begins with late
fully recovering from having dug a 1970′s scale: Snake, Breakout
pit of embarrassment and fighting (not Arkanoid, that’s mid-80′s!),
through considerable frustration Asteroids, or Space Invaders.
every step of the way. Getting
some practice before diving
headfirst into these kinds of
undertakings can help steel us to
the complications that they entail.
For example, by the time I bit off
more than I could chew on Guinea
Pig, I had already completed more
than 15 other smaller games in the My first graphical game was based on the late 1970ʹ′s
game Snake. Again: not because I grew up with it – I
years prior. That steady was born in 1984 – but because in terms of game
momentum beforehand gave me mechanics and programming it was a realistic start.
213
For those developers that truly are BEING UNPREPARED ISN’T BRAVERY
As my friend Nicholas Brown
extraordinarily efficient and clever,
commented:
who say “that’s so easy, why
bother?” I have two responses: (A) “Shooting high and learning from it is nice
that’s grand, then you’ll have no but at a certain point you’re trying to shoot
problem knocking it out in 30 down an airplane with a bow and arrow.
It’s just not going to happen and you
minutes, or in an evening at most,
probably won’t get anything useful out of
after which when you come back
the experience. Saying ‘that project is out
with it completed you’ll have of my scope/skillset’ isn’t fear, it’s good sense
impressed and earned the trust of as a developer.”
more potential collaborators. And:
There is a certain amount of
(B) even if you know how to get
fearlessness, unreasonableness,
started, and know that you know
and boldness that successful
enough to work your way through
entrepreneurs, innovators, and
it, going through the actual
cultural leaders of all kinds have
process of doing so will involve
had at their core. However, the
sorting out some details,
fact that some amount of
processes, unexpected
fearlessness is a factor in success
complications, and chunks of
does not automatically mean that
code that will together speed up
an even greater amount of
and simplify working on the games
fearlessness linearly correlates to
you take on later.
greater success, nor that it’s the
Being able to do something and only factor. Bold leaders still need
having actually done it are not the a viable strategy, considerable
same thing. In particular, after experience and connections in the
you’ve already done it you’ll have relevant domains, and a certain
expanded the domain of what dose of patience and discipline
you’re ready and able to do next. underlying their persistence and
determination.
214
At the heart of Coyle’s research in resemblance or fit to the first ones
The Talent Code mentioned earlier attempted. Because of that rapid
is the idea that we can learn most learning, going in this case from
from those experiences which are one new painting attempt to
just beyond our reach. That’s at another gives practice and
the core of deep, edge practice. opportunity to rethink the initial
When we extend ourselves greatly decisions, and will likely work out
beyond our past and present much better than just spending all
proven capabilities, there are often of those months retouching the
too many convoluted ways to very first painting started.
make mistakes for us to figure out
As Coyle (again, from The Talent
how to make sense out of what
Code) explains about the famously
isn’t going right, let alone to learn
talented and accomplished Brontë
from it.
sisters in relation to their work as
FIRST PROJECTS ARE ALWAYS ROUGH novelists:
We tend to learn most rapidly
“…the myth Barker upends most
when we’re still very new at
completely is the assertion that the Brontës
something. Anything about the
were natural-born novelists. The first
field can be absorbed as new little books weren’t just amateurish — a
learning. We quickly overcome the given, since their authors were so young—
awkwardness and inefficiencies in they lacked any signs of incipient genius.
dealing with whatever Far from original creations, they were
development environments, bald imitations of magazine articles and
programming languages, and books of the day, in which the three sisters
and their brother Branwell copied themes
content tools we’re working with.
of exotic adventure and melodramatic
If you put a few months into
romance, mimicking the voices of famous
learning how to paint landscapes a u t h o r s a n d c r i b b i n g c h a ra c t e r s
well, your work at the end of that wholesale.”
time would likely bear no
215
Because our first work is inevitably reasonable chance of not finishing
rife with beginner errors from or finishing well).
learning as we go – even world COMPOSING WITHOUT PLAYING FIRST
famous authors first wrote When someone wants to play
amateur junk – insisting on making piano, do they begin by
an idealized dream project as your immediately composing original
first undertaking is unfair to the works? I don’t doubt at all that in
vision, condemning it to be rife the history of all civilization there
with beginner errors. This is are people who have tried to do
instead an ideal time to that. Generally, though, we have
experiment a bit with modeling the not heard of them or their work.
proven past successes of others
We start with learning a bit about
(those that are reasonably
notes, sheet music, and scales.
achievable within our means),
We build up to childishly simple
including simple historical cloning
sequences like Mary Had a Little
as a form of initial practice and not
Lamb. We move up, through
as a shady business scheme. The
consistent and focused practice,
Brontës started that way.
to trying to merely perform well
I’d say try getting some of the junk some the more advanced classical
of your system first on titles that works far before trying to
can be finished far sooner, aren’t compose our own.
as personally important (read: not
The reason we see so many
yet highly original), and won’t
introductory materials about
involve pulling others into the risk
games like Pong and Asteroids –
involved (even if not risking your
including the Hands On Intro to
and their money, then at least out
Game Programming (my own
of care and respect for their time
approach to that path) – is
in something that has a
because those are the Mary Had a
Little Lamb of videogame creation,
216
a tried-and-true way for someone what is typically expected of this
new to game development to get ship type.
oriented and learn to perform full,
While it’s true that we don’t have
simpler classics before trying to
many of the same material
become the next Bach or Mozart
constraints and labor challenges
from day one.
as ship builders, what we are
BUILDING AN AIRCRAFT CARRIER… FIRST unavoidably faced with are literally
Where the above music analogy
millions of design, artistic, and
breaks down is that composers
technical decisions, from the very
are often able to write music
large to very small, which we have
primarily alone. While that is true
to make about everything in the
for a subset of videogames, it is
game.
not the case for the size and
scope of videogames that you’ve Faced with all of those decisions,
identified as your target. making them well at every step
either means having the
If someone is interested in making
experience from enough variety of
a boat and decides that the kind
past projects to make informed
of boat they wish to design is an
tradeoffs between alternatives
aircraft carrier, that’s necessarily
(which is why teams generally
going to require a massive scale of
want professionals experienced in
teamwork, money, experience,
videogame making, not just
earned trust/credentials,
people who “can program” or
compromises, and a lifetime of
“know Photoshop”), prototyping
work leading up to that point. It
like crazy to find even a few small
either won’t be the first ship they
innovations that work, or adhering
work on, or the rushed result will
fairly strictly to conventions.
involve so many compromises that
it will not come anywhere close to However, note that even
companies filled with experienced,
217
full-time professionals creating game idea.” This is in regard to
massive games that do adhere to what you’re calling your “secret”
most conventions of their genre that you suggest will, alongside
still manage to go through $20 world building, set your first game
million just to get their game done apart from Call of Duty and
and complete. These companies Uncharted.
are in the business of maximizing
I often introduce this concept to
profits and minimizing costs, with
others with an example like this:
both internal and external
pressures to figure out ways to do “I’m going to make the world ’s best
painting. I have an idea way better than
more and better work with the
the Mona Lisa. That one’s just a picture of
lowest possible expenses.
some girl.”
It still costs them $20 million or Most successful games aren’t a
more to make what may appear to particularly genius idea.
be a formulaic and relatively Conceptually they’re usually pretty
straightforward followup to an blatantly derivative but are
existing franchise (note that the polished in their execution to an
actual changes and additions amazing degree. When the idea is
involved are often quite complex, at least unusual, perhaps one that
but the differences may be difficult has been done before but not well
for someone who is not on the enough yet to achieve widespread
team to fully appreciate). commercial significance and
AN IDEA IS ONLY AS GOOD AS ITS EXECUTION recognition, at best that concept
One of the other common themes serves as a marketing point to get
that arise in advice from people talking about it. But people
experienced developers for others generally don’t keep playing a
just starting out is along the lines game, nor recommend a game to
of “ideas are a dime a dozen” or their friends, based primarily on
“no one cares about your great whether a game has an interesting
218
idea, unless it also has world-class experienced developers, legal/
execution and refinement. business personnel, and support
Provided it’s got world-class staff along with paying for
execution and refinement, an sprawling office complexes, retail
interesting or original idea is often distribution arrangements,
not even needed. television/billboard advertising
PICK A FIGHT YOU CAN WIN budgets, etc.
Sometimes there’s a confusion
Part of the way this all holds
that because one or two indie
together is that even though a few
games succeed financially in a
individuals (out of the many, many
genre previously thought dead
more trying) might make enough
(point and click adventure, for
money to pay their own costs and
example), or with a very weird type
then some, it’s still often far from
of game (much of what’s found in
being something that the big
IndieCade or IGF), those games
studios can take seriously as a
have been proven to be
business opportunity.
economically viable after all.
In 2010 I made a strange iPad
The underlying misunderstanding
entertainment app that paid my
though is that what may be a
rent for 18 months. That registers
tremendous amount of money
as a medium success – weirdly
when split only 1-8 directions
putting me somewhere in the
among a small team of indie
upper percentile in terms of return.
developers working out of their
While it clearly didn’t make me
homes or a tiny shared office does
wealthy (my rent at the time wasn’t
not even show up on the radar of
much), many more developers
the kind of money that AAA
lose considerable sums of money
companies burn through in only a
or generate very tiny revenues in
few months of salaries for massive
the range of fewer than dozens of
teams comprised entirely of
dollars from ads, virtually non-
219
existent sales, etc. Also, as a fair on what they have solid evidence
warning: the App Store was to think will make a sizable return
definitely a lot less of an over- on their investment. Projects that
saturated mess in 2010 than it is don’t meet that goal get
now. (Speaking of which, back in eliminated. They’re a business.
2008 I developed a game for the
This is why when we see
app store that earned
advanced indie developers
considerably more than that… for
succeeding commercially, it’s
the publisher, which is how I
usually not by doing better at what
learned a lot about being the
the big companies are in position
weaker party financially in a
to do well, but instead from some
negotiation.)
combination of strange projects
Anyhow, for perspective, a (with regard to their execution,
massive publisher pays their CEO often not in the main idea; i.e. tons
more money than that 2010 app’s of personality in an otherwise
total earnings in what calculates to relatively simple experience), retro
about 24 hours of their time. genres that the AAA companies
That’s not including the salaries of haven’t been able to justify for 10+
9,000 other people, the costs years due to the shrinking level of
associated with massive facilities, market demand for such games,
or the remaining mountains of or the intersection of both
money expected leftover for (meaning tons of personality in a
annual profits, etc. They have truly retro genre that has otherwise lost
staggering ongoing costs to keep most of its market significance).
up with, which means they can’t With the rare exception of some
afford to take risky chances on mod teams that quickly get
little weird stuff, or on genres that swallowed up into the machine
are no longer desired by and vanish for years doing polish
mainstream players. They deliver work, indies stick to guerrilla
220
tactics in niche domains that the be followed by variations from
huge companies can’t justify competitors.
meddling in.
But what about something like
It’s not a matter of purely creative KickStarter, in which customers
vision that Minecraft is built out of prove that they’re there before
1-meter cubes textured with pixel development even begins? The
art, instead of having the look and space is filled with people that,
feel of Uncharted or Call of Duty. because they’ve never had to
It’s small team resourcefulness. work with a real budget before,
tend to not know how to schedule
and plan a commercial project.
If KickStarter sounds like freedom,
it’s worth looking up Code Hero,
which raised $170k, well past their
$100k target. I’ll spare you the
web search, and share the major
Minecraft is basically 3D pixel art. update from last year: effectively,
they ran out of money long ago
FUNDING WILL AFFECT DESIGN
Getting funded does not mean and are now an entirely volunteer
that you have the freedom to effort. They appear trapped with it.
design your perfect game. When WHERE I’M COMING FROM
221
I’ve worked professionally as a Being in a position to compare
game designer on the size of those professional and
games and teams that you’re nonprofessional experiences, I can
talking about: games that take say with total certainty that I have
years, 80-200 full-time found infinitely more creative
professionals, and tens of millions freedom in the projects that have
of dollars. I’ve also worked no budget or funding than I’ve
professionally as a game designer seen in working on games with a
at other commercial scales: at a big budget.
casual games start-up, in a
That applies no matter whether I
gameplay R&D company, and as
was being paid steady salary,
an iPhone game developer both
hiring/paying/leading a team of
independently and through
others, funded by outside
publishers. I am familiar with at
investment, or even when
least a cross-section of
completely self-funding projects
commercial videogame
and theoretically having total
development.
directorial control. Games that
More importantly to this exchange cost money to develop have a
I have also, with zero budget, certain obligation to prioritize
served as a lead or solo developer earning (at least) that money back,
on more than 85 completed which places certain inflexible
freeware games with 3-18 month outside demands on the work.
production schedules, and MAKE FINISHED GAMES. WITHOUT FUNDING.
hundreds of same-day playable There are ways to make
prototypes. Some of those were videogames that don’t require
for class projects, some were getting anyone else’s approval,
created in clubs that I established, taking anyone else’s money, or
and many were just developed on handing over veto control to your
the side. design ideas.
222
It takes time and a lot of work.
There’s no easy shortcut to it. But
it is a way.
That way is to start small, building
your way up from modest
beginning principles based in
time-tested classic designs,
toward the point where you’re
prepared to do your more grand
and elaborate game ideas justice,
so as to have to ability to realize
them without making
compromises in service of
financial obligations.
In other words, the way is to make
videogames for free for awhile,
incrementally advancing your skills
and design understanding with
each new project.
If however you choose to still push
on the route of seeking substantial
external funding, especially
without any track record yet of
completing any simpler games, I
wish you only the best. Good luck.
223
SE C TI ON 2
There are a few things that I would Bottom-up design starts from
like to say about bottom-up what a medium can do, and
design, compared to top-down shapes that into something a mind
design. Before I can do so, I want wants.
to make sure that we’re on the
For example, a top-down art
same page as to how I use those
process might begin by thinking, “I
terms – they mean somewhat
want to create an image of
different things to different fields,
Napoleon, in a way that conveys
and I suspect it’s likely that some
great intensity – this concept is
readers have never yet come
worth attempting and sharing.”
across these handy terms for
The artist would then create the
discussion.
most complete or faithful
Top-down design starts from what realization of that idea possible,
a mind wants, and shapes that using whatever tools and format
into something a medium can do. the artist is most proficient in
224
Impression, Sunrise by Claude Monet
Concept inspired by or chosen partly by its form of
representation
Examples: Mario Bros, Pac-Man, Asteroids
226
mechanics clearly were not sort of interesting things can we
invented to support that do with this Wii Remote?” That
haphazard concept, but the other was bottom-up design. When
way around. The same is true for people began thinking in terms of
Super Mario Bros, Joust, or designing games for iPhone that
Breakout. It’s not primarily about used multi-touch, gravity data,
wish fulfillment, like being a saved photos, or GPS, that was
superhero that fights crime or a also bottom-up. The first racing
soldier that wins the war for games were made partly because
freedom – it’s first and foremost racing is cool, but mostly because
about how what’s going on is that was one of the few things
going on, the what being videogame machines at the time
secondary and subservient to the could represent. Likewise for
how. The texture of the space-based shooting action – an
“paint” (software) and all black background with no
“canvas” (hardware) are central to buildings or flora to collide with
what these videogames are, and was the sort of thing primitive
celebrated instead of hidden. devices could represent.
The continuum extends farther off That Pong is a crude
in both directions, too. Miles representation of “tennis” instead
below my previous example of of football or baseball was not a
bottom-up, but in that same matter of its designer being a
direction, an artist might think, tennis player, nor was it being
“The texture and shine of oil paint designed to satisfy tennis fans.
produce a very particular effect – I
Racing the Beam by Ian Bogost
will explore this effect,” thus
and Nick Montfort provides a brief
abandoning subject altogether.
history of how the Atari 2600
When the Wii came out, hardware limitations influenced
developers began asking, “What (and in many cases inspired) the
227
games designed on the platform. innovative controls and graphics
Yars’ Revenge was co-designed (vector to raster was as huge a
by Howard Scott Warshaw and shift as 2D to 3D), there is nothing
what-an-Atari-2600-can-do. ancient, unsuitable, or undesirable
about bottom-up design. Part of
By contrast, when the PS3 came
why I opted to show the paintings
out, developers felt less
is that the Napoleon is from 1800,
constrained than ever in terms of
Impression is from 1872, and
computation, and began dreaming
Shimmering is from 1946 – that is,
about how they might share new
it took a lot of time, genius, and
stories (Heavy Rain,Metal Gear
creativity for humankind to reach
Solid 4), fantasy characters and
the sort of bottom-up, format-
settings (Batman Arcane Asylum,
inspired thinking that the earliest
Final Fantasy sequels), and
videogames employed.
appealing concept pitches (make
your own physics game in Little An inexperienced game designer,
Big Planet). That’s top-down. yet unfamiliar with the grain of the
machine – what impressive things
When a modern videogame is
it can very easily do well, what
about tennis, racing, or space
somewhat less impressive things it
combat, it is no longer because
can hardly handle, what the user’s
that’s one of the few physical
relationship is like to the
events that a computer can
experience through the set of
process and display.
controls provided – most often
Even though many modern games thinks in terms of top-down
now have the luxurious option of design. We’re all familiar enough
more faithfully representing top- with films and storytelling to think
down concepts, and even though about what happens, where, and
bottom-up has largely taken place to whom in a story, but the typical
at the dawn of platforms utilizing level of procedural synthesis is
228
that which only knows what it likes
when it has tried it, and will thus
“borrow” a mountain of
assumptions about gameplay and
interaction from another game. A
certain sort of confidence and
understanding of the technology
available is necessary for bottom-
up design to even be an option.
Façade by Procedural Arts
It gets awwwkkwwaarrddd.
On this note, to build a clone or
derivative of another game, either than “resembling Napoleon” is
completely or in terms of core rooted in the complete concept of
gameplay, is top-down. The Napoleon that existed before and
elevator pitch for Goldeneye 007 outside of Jacques-Louis David’s
on Nintendo 64 fits in this painting.
category. To paraphrase: “It’s like
An important thing to bear in mind
Virtua Cop – enemies react to
about top-down design is that,
where they are shot, and the gun
despite the remarkable hardware
can move freely about the screen
advances of the past several
– except not on rails, and it takes
decades, we are still a long, long
place in the James Bond universe
way from being able to take a
with the player completing
purely top-down approach to
missions as James Bond.” Making
videogame design. Façade is the
a videogame version of Monopoly
closest thing that we have to The
or soccer is top-down, of course,
Great Gatsby – or maybe The
but so is making a game “like
Sims or Second Life are no further,
Super Mario Bros” or “like Tetris“,
coming towards it from different
even if the original game’s roots
angles.
were bottom-up design – no less
229
percentage of the world that can
be interacted with, and the
solutions to challenges will either
be those that we explicitly
planned, or possibly some slight
variation by clumsily moving
objects around in the game’s
exaggerated physics.
Top-down is unlikely to free us
Half-Life 2 by Valve. We were quite excited in 2004
when there was 1 room in a game where it mattered from limitations, because by its
that objects have weight. The gravity gun and physics
gameplay were bottom-up design within an otherwise
nature it echoes better than it
top-down world. speaks. It adopts the additional
constraints that shaped previous
Even though PS3 and modern
gaming and story conventions
computers give a lot flexibility to
much more naturally than it
think in terms of, “Imagine a world,
pushes the boundaries to test
in the distant future, where…”
where they end.
there’s still a few qualifying
sentences implied after that: “In Innovation – particularly the
this magical place, all characters surprising, unintuitive innovations
will repeat the same things if that no one could have seen
spoken to multiple times, they’ll coming – tend to come from
have a small set of awkward bottom-up. It is no coincidence
poses they can switch between to that the genrification of the
convey expression, and the player industry, the attack of the clones,
will speak by choosing statements has coincided with the increase in
from a list of 3-4 pre-written hardware power inviting more top-
statements. There are only a few down design, while those pockets
things that can be done to interact of gaming that see the most
with the relatively small aggressive innovation – indie
230
games, mobile games, existence results that are not
experimental games, and little web entirely of human origin. The
games – tend to be bottom-up (at medium becomes a co-creator, an
least, those that don’t rely heavily inanimate but unyielding creative
on appeal to retro fandom). partner, arguing for or against
ideas thrown its way by what it will
The imagination – the source of
and won’t agree to do.
top-down – copies but
personalizes, mixes and matches A top-down development team
what it has already experienced, strives to create as perfect a
or even when it thinks it is finally realization of their concept as their
being clever and original, has been available platform technology and
swept up by the zeitgeist of skill strengths can support. The
whatever recent films, best sellers, hidden member of their team is
and news stories have everyone the work that has been done
thinking about. There is, of course, before them, by bottom-up
a market for this; people like pioneers, and they benefit from
what’s recognizable, and people the market’s feedback on past
like getting what they’re looking products.
for. But as the top-down market is
A bottom-up development team
predominantly derivative, from a
strives to discover as perfect a
creative standpoint it’s more like
concept for the platform
being a translator than like being a
technology and skill strengths that
writer. For the craftsmen and
they have or can learn. The hidden
artists among us, it is not our
member of their team is the
desired line of work to make
technology itself, and though they
variations on other people’s work.
don’t have the same benefit of
With bottom-up the constraints, borrowing from the past, everyone
limitations, and natural texture or benefits when they help create the
grain of a medium push into future.
231
SE C TI ON 3
Photographer's Algorithm
234
more commercially well-known accomplished nearly any other
games Crayon Physics (from a way. It allows direct comparison,
series of 1-month game in-engine, in-play, between
prototypes) and World of Goo potential results in a way that’s
(from a series of 1-week game otherwise simply impossible to do.
prototypes).
If you’re having trouble deciding
what to throw away: come up with
some simple weighted criteria
(these can be subjective values –
“understandability,” “aesthetic
appeal,” “fairness,” “spectacle” –
weighted to give some criteria
more emphasis than the others),
score each attempt you’ve made
from 0.0-1.0 in each column, find
the weighted sum to rank those
scores, then throw away the
bottom X% of your attempts,
where the greater you can make X
and still get away with it, the
better. It’s a handy way to make a
rational decision when your gut is
telling you that you want to keep
all of them for different reasons.
But use the Photographer’s
Algorithm, and you’ll consistently
wind up with something much
better than you could have
235
SE C TI ON 4
237
right things are still falling into It may be as simple as writing
place. down a half page plan, first as an
unordered list of what’s left to be
Excess plans can get in the way of
done, then rewritten a second time
beginners, becoming an excuse to
ordered by which sequence will
work on something other than the
make the most sense for you
game. Lack of plans can get in the
going forward.
way of more experienced people
with more ambitious targets. At Just because a plan needs to end
some point that’s a necessary but up short doesn’t mean it needs to
difficult transition to go from be short at first and only ever be
planning being a misuse of time to short, sometimes like the process
planning being a necessary use of of overproduction (or the
time. Photographer’s Algorithm) it can
help to begin by getting it all out of
Here is where planning really
your system and putting too much
begins to be learned, and not
down, then going through it to find
because it’s some abstract,
highlights of what’s really worth
artificial, bureaucratic exercise that
saving form all that.
we’re told to do before we’re
allowed to start the next part. We And though I keep saying write it
learn – and this is actually kind of down, let me stress that I mean
exciting – because you actually exactly what I’m saying here:
can derive real utility from doing it. you’ve actually got to write it
You need something to happen, down. Information in our head is
but until you jot a few of the right too easily changed every time we
things down, it’s simply not going think of it. Digital files are far too
to happen. That’s kind of crazy, easily changed, or far too easily
right? ignored by being tucked away
where we won’t see them since
they take up zero physical space.
238
When I say brainstorming, important to put on the producer
concept mapping, scheduling, hat and work out a list on
etc., that’s really something to be whiteboard or paper about what’s
put down on paper. If you’re more left to be done, and out of that,
comfortable working in a digital what should happen, by when,
format – and I know this can just to know at least what to do
sound like heresy in 2014 – print it next.
out and put it where you’ll see it.
There’s a reason large teams tend
Again because it takes up physical
to have producers, and if your
space it’ll get in your way, it’ll
small team or solo effort doesn’t
remind you, you can’t as easily
have a producer, one or more of
deny it or easily change it. Trust
you is going to need to fill in that
me on this, if it’s the difference
role from time to time, ideally, at
between your project stalling out
least a little bit of every day that
from paralysis, or getting done,
something is supposed to be
then it’s a darn good use for one
making progress on your project.
sheet of paper.
Feeling a bit overwhelmed at all
Sometimes it’s true that in order to
the options? Not sure what type of
make progress, you need to just
chart or graph or process to
sit down and put the time and
apply? Then let’s keep it simple,
work in, writing code, churning out
here are two specific planning
art and audio assets, iterating on
instruments that, used in
level layouts. Even if there’s a
conjunction, can be used to
problem you’re going to run into
bulldoze through nearly anything.
you need to work on that problem
up until the point at which you’re (1) Make a high level – meaning
stuck in order to ask for help from non-detailed – list of what’s left
someone productively! However that needs to be done for the
other times, it can be just as project to be considered finished.
239
Your goal in making that list is to yourself up over it. One of the hard
make it as short and skills you’re learning in this case is
uncomplicated as possible. Don’t how to plan and estimate your
list any nice-to-haves on it, put work more effectively. That’s
those on a second list to, which another type of skill alongside
realistically you’ll never look at doing it.
again ever, because if you find
It’s a steady plan to wrap up your
yourself suddenly having oodles of
game in some form, even if it’s not
time later to reinvest in the project
exactly what you originally had in
you’ll probably have better ideas
mind. Sometimes that can even
then anyhow of how to spend it.
wind up better with a more
(2) Divide that real list of what’s left focused game. Or if nothing else,
to be done up into realistic weekly it’ll set you free to collect your
chunks, so that you’re not trying to thoughts, avoid the guilt and lost
get it all done at once immediately learning opportunity of an
– too much pressure! – nor letting unfinished project, and move on to
yourself put it all off until the last the next thing in a finite period of
week – which is just not going to time.
happen! That is your new
Want another simple planning idea
schedule now. Maybe you had a
to turn to? If you find that when
schedule before. This is now the
the day is gone that you can’t
schedule.
account for where the time went,
Be flexible about it, swap order of devise a way to add more
things if it makes sense to do so structure to your time, and break
by bartering between weeks, and your weekly goals further into daily
if in the process of making goals, or even further into: 1
continual forward progress it tangible thing you’ll have done
doesn’t go quite as fast as you before lunch, 1 tangible thing
optimistically hoped don’t beat you’ll get done in the afternoon,
240
and/or at least 1 tangible thing irresponsible, it is! Even more so
you’ll get done for the day before when other people are onboard,
letting yourself crawl into bed. planning has to be part of doing.
Stuck, or finding you’re not Don’t let unwillingness to find a
progressing on a chunk? You’ve pen or use a few sheets of paper
got to break that chunk down keep you from making forward
further, you’re probably still trying progress. It’s still important to not
to bite off too much at one time to get sidetracked into burning
chew. You’ll choke. The metaphor energy coming up with fantasy
exists for a reason. plans that’ll never happen, but a
short bit of written planning may
Let’s try on another metaphor:
be just what’s needed. Figure out
you’ve got to be doing the
what’s left to do, break those
programming, design, and art, just
chunks into spread out weekly
like a road trip is about driving.
objectives, and when you swap
You’ve got to be behind that wheel
your producer hat back for your
and driving. But making yourself a
designer/programmer hat, have
map, and thinking ahead a bit
some trust that producer you
about how much you’ll be able to
knew what he or she was doing
handle in each stretch, or where
when the weekly schedule was
you’ll be able to comfortably stop,
put together as assignments.
that’s a tool and process to
keeping your trip or project on
course to a destination. If you just
sit in the car and hold down the
accelerator you’re going to run out
of gas, almost certainly wind up in
no place interesting, or even
wreck the vehicle with you and
other people in it. If it sounds
241
SE C TI ON 5
243
When the game was released – TOY WITHOUT OBJECTIVE
Burnit (iPhone) / FireWriter (web)
the publisher ngmoco may have
isn’t a “game” – there’s no score,
adjusted the difficulty since – it
points, or goal. Instead, it’s just a
took 40-90 minutes of play to
way to draw with gunpowder, then
complete, due to a mix of luck,
light it (optionally, in Burnit, over a
strategy, and skill required to
photograph). There’s no level 2,
advance. In particular the first 6
there’s no plot, there’s no
levels were designed to be a bit
easier, with 7-10 being much more
challenging.
In a story game, that difficulty
spike would be substantially more
frustrating. It would create the
impression that there’s content
being kept away from the user. A
person buying a DVD expects to
be able to see and hear everything
from it, and a lot of larger games
strive to be associated with film,
resulting in an expectation that the
user bought and thus deserves to
watch all content included. Since
Topple is about systems, rather
than story content, replaying a
level isn’t keeping the player from
seeing the ending – it’s simply
playing the game.
244
expectation set that it needs more MEANING OUTLASTING THE GAME
Transcend (iPhone/iPad) can be
depth or functionality.
completed in 15 minutes. It has
Tumult is a similar example. roughly the same replay value as a
Relative to most iPad apps, there’s book – it’s there for review at any
virtually no content – no time, but won’t behave differently
animations, no music, no story. than it did the time before. In spite
Users aren’t complaining about its of this, user reviews recommend
length, though. People like it. it.
We expect songs to be 3-5
minutes long, movies to be 90-120
minutes long, and television
shows to be 22-45 minutes –
whether we get them from the
bargain bin, pay full price, or
watch/listen for free. We similarly
expect videogames to be a certain
minimum length regardless of
price. Tumult avoids looking like
it’s trying to be a videogame,
avoiding those expectations.
Those two are not videogame-like.
That’s okay, if our goal is to
entertain, rather than to make a
game. However a toy can be like a
videogame.
245
Rather than focusing on the time
HIGH REPLAY VALUE
spent playing the game in this feelforit (iPhone/iPad) is an artsy
case, the emphasis is offloaded on project, but mechanically it’s built
making a memorable impression. around a novel interactivity
Unusual presentation, unusual concept rather than a sequence of
design approach, and a few dozen content. By presenting a repeated,
highlights pulled from over 15 randomly new situation each
hours of text read from an round, rather than having levels,
influential book in the public
domain (Walden). It ends with a
short “song” juxtaposing half of
the game’s excerpts over a catchy
tune.
My interest was not how the user
would think about Transcend while
using it, or how long it would take,
but rather how and how long the
user may think about Transcend
after.
Meaning doesn’t have to be dense
to outlast the game. Especially if
the game is short. This is how I
got away with Candy. This
strategy also seems to central to
Ian Bogost’s satire game Cow
Clicker.
246
the game cannot be “completed”. WITH VARIED CONTENT, UNLOCK EVERYTHING
This is a theory of what I should
Each time it’s as good as new.
have done, based on what
It’s a skill to be mastered, rather happened. iZombie Death March
than an obstacle course to be (iPhone) has 6 level scenarios –
completed. It doesn’t translate each plays differently, with unique
naturally into challenges of weapons, in a distinct setting, and
different difficulty – they’re all different features. Because the
equally hard until the skill is game had a textual story, I locked
learned, and they’re all equally
decently engaging, a bit like
juggling 3 balls. Had I added two
or three “levels” to it, the game
would be completable or
“digestible.”
(I think this particular distinction,
on a massively different scale, was
one of the design faults in Spore
that previous games from Will
Wright didn’t suffer from. In
SimCity, the player is
fundamentally always doing the
same thing, even if at different
scales, making there no end to
what’s there; in Spore there were –
necessarily – a discrete number of
different gameplay modes, such
that by the time the player was
“trained” in all of them, the game
felt completed.)
247
the levels into an order: level 1 STRETCHING OUT RELATIVELY LITTLE
CONTENT
must be completed before playing Alice in Bomberland (iPhone) is a
level 2, 2 before 3, up to 6. Each hybrid literature/action mash-up,
level only lasts a few minutes, and partly designed around
during which time a random theories about educational
quantity and ordering of zombies interactivity atoms. It’s a dodging
attack, of varying types depending game with 7 types of weapon
upon the level, and in different behaviors to avoid, in front of 8
speed/quantity depending upon
difficulty selected.
All 6 levels, therefore, can be
completed in order relatively
quickly. In that time, players may
not even come to appreciate the
differences between the levels,
weapons, lighting, perma-gore
feature, etc.
If, instead, all 6 levels were made
available immediately after
download, and instead of being a
6-level linear game it was a
random zombie shooter with “6
ways to play!” or “6 Zombie
Minigames,” I don’t think I would
have received as many criticisms
about the game being too short.
248
different backgrounds – yet the • Lots of power-up types. Every
game lasts roughly 3 hours. 1-2 levels, a new item is
introduced to the game.
While this game turned out much
Programming the effects for these
longer than the other “short
items was fairly straightforward,
games” on this list, it does not
and their graphical requirements
have proportionally larger asset
were also very simple. This
requirements. A few design tricks
spreads out novelty over all levels
were used here to squeeze the
in the game.
most out of what’s there.
• Unpredictable ordering of level
• Alice is the only animated
patterns. There are six level
character. All others are presented
difficulties for each of the eight
as paintings holding weapons
character types, creating a total of
during story sequences, which
48 levels. Rather than putting
interact with gameplay via attacks
character types in repeating order
fired from off screen.
like A, B, C, D, A, B, C, D, A, B, C,
• Recolored backgrounds. Each D (i.e. always putting a Caterpillar
of the 8 background images, in stage immediately after each
addition to appearing in its full White Rabbit stage), I instead
color version, also appears in dark ordered as A, B, A, C, B, A, D, B,
(challenging), blue-tint (even C, D, C (like the distribution of
harder), and red (final version, grassy, rails, caves, and water
most difficult). These required very stages in Super Mario World). This
little programming time to create, allowed me to save certain types
but added significantly to the until later in the game, include
variety in visuals throughout the early types throughout until the
game while giving an extra sense very end, and avoids a sense of
of proximity to the end. monotonous routine. Different
players have different level types
249
they prefer or hate, leading to
surprise “Finally! Another Hatter
level!” or “Ooo, a Cheshire Cat
level this time” like a mini-lottery
after every win.
• While a lot of writing work still
had to go into selecting, editing,
and ordering excerpts from Alice’s
Adventures in Wonderland, as with
Walden for Transcend, the core of
the writing already existed and
had passed the test of time,
saving a considerable amount of
time and energy. (In both cases,
the copyright on the book text in
question expired long ago.)
250
SE C TI ON 6
255
excellent work done by
teammates on Vision by Proxy:
Second Edition was likewise part
of a group volunteer effort). They
are simply “different kinds… that
suit different kinds of people.”
As a hobbyist, I think that’s a
healthy attitude to maintain, and I
think it’s also a useful lens to put
the work of other developers, both
large and small, in context.
[Credit where it's due: I would like to thank
thatgamecompany's Robin Hunicke for
introducing me to the idea of applying Red and
Blue Ocean thinking to independent games. I
first heard about it briefly in an exchange during
our one day of overlap on the Boom Blox team
back in 2007, but it's a way of thinking that has
stayed with me and affected much of my work
since.]
256
SE C TI ON 7
260
be, if not necessarily lightened, something they have some head
then at least focused on what start on understanding.
makes a game special or different,
The same can be said for head-to-
atop a central framework of
head fighting games, RPGs,
interactions and events that the
platformers, first-person shooters,
player already understands how to
real-time strategy games, and
navigate and operate.
virtually any other videogame
RECOGNIZABLE TRANSFER OF SKILL genre. People can look for visual
I have a particular interest in
and other clues to know in
pinball, so for sake of illustration,
advance whether it’s something
think of pinball as a genre of
similar to what they’ve enjoyed
electromechanical games. Once
before, and if so, when they start
someone knows how to play even
into it they already have an
one machine pretty well, even if
understanding of how it works and
there are many scoring details and
what to do with it. They can get
artistic differences between pinball
right into the game. That’s a
machines, their basic flipper
tremendous advantage over the
techniques can largely transfer to
many forgettable videogames that
other tables. Unambiguous visual
strive to eschew (or what one
clues in the machine’s physical
might optimistically reframe as
structure and playfield layout
“attempt to start a new”) genre.
communicate to the player
IN TRADITIONAL NARRATIVE
whether an arcade device that
As another way of thinking about
they’ve never even seen before is
the above, genres in videogames
also a pinball machine. If it is, then
serve some of the same function
they know even before playing
that genres do within general
that it’s like something they’ve
storytelling: a set of established
liked before, something they’re
conventions to serve as a
capable of doing well, and
background, any deviation from
261
which can be a source of be well received by many people,
meaning. If the sheriff in an old and perhaps more importantly,
western is the bad guy, that’s particular people (the same many
interesting. If the aliens in a sci-fi who keep coming back for more).
movie are less advanced than Consider music or images. Most
humans, that’s interesting. In the of the technically possible
same way great games are often arrangements of notes do not
firmly fit within a genre, so that for constitute anything even remotely
the most part we can count on musical, and likewise most of the
understanding what’s going on, possible arrangements for color
except with one or two central on a 2D plane produce something
twists (the player controls gravity, not just nonsensical but
the player controls time, the player uninteresting (as opposed to
can possess enemies…) and nonsensical and interesting, which
polish and iteration evident in the of course actually describes a
execution. That frees the mind to great deal of rather famous art).
focus on what makes it interesting Tell me however whether music is
or different, without needing to techno, hip hop, rock, or country,
exert much brainpower for and I immediately have some
understanding the core of what’s notion of whether I’m likely to
going on. enjoy it, since despite there being
COMPARISONS IN MUSIC AND ARTWORK such great variety within genres
However it’s not merely a matter it’s of a significantly more limited
of what people have practice in, or scope than genre-less sequences
what knowledge they’ve already of sound. Likewise tell me that an
learned. That can make it seem art exhibit is surrealist, cubist,
much more arbitrary than it is. impressionist, splatter painting, a
graphic novel illustration, etc. and
Genres and conventions reflect
even without knowing more
patterns that have been found to
262
specifics about the art, I can form environmental art or audio content
some sensible guess of whether of the game, is a relationship
it’s something I’d at least be between input, movement, and
interested in seeing. camera that creates what Steve
Swink labels “Game Feel.”
Most of the possible interactive
Expectations for how this does or
graphical programs that could be
doesn’t work out varies between
written do not constitute anything
genres. As with those previous
that even remotely works as a
examples most of the theoretically
videogame. Whether a videogame
possible combinations flat out
is 25 kb, 25 MB, or 25 GB, most
don’t make sense, leaving islands
other possible configurations of
of flavors that one player
those bits go beyond meaningless
community or another might tend
into the realm of unusable. But tell
to prefer.
me it’s a platformer, first person
shooter, third person adventure Imagine a chef trying to combine
game, or puzzle game, and I know flavors and food preparation steps
enough from past experiences in a truly random way in hopes of
with games we assign those labels producing food anyone would
to to make a decision about actually want. Consider that
whether I might like it. process in contrast to, for
BAKERS IGNORING CHOCOLATE AND CAKE example, making a cake. Or a
The analogy I find most useful for muffin. Or a cookie. Or a hot dog.
thinking about genres for Or a donut. Or french fries. Or a
videogames though isn’t how burrito. Or sushi. Or falafel. These
genre applies to music, or image, are all recognizable food
or novels, but instead the parallel concepts, an incredibly narrow
to how genre applies to food. At slice of the possibly mixtures of
the core of gameplay, rather aside ingredients and preparation
from narrative bits and the methods. People can order it
263
knowing what to expect, and have To some degree – and it’s not
some sense for how to judge quite the same thing, but I think
whether it’s a good or bad version close enough to warrant
of what it’s aiming to be (a good consideration – complaining over
french fry, for example, would be a a game designer working within a
very bad cookie). Their value to genre would be akin to
people however is not merely that complaining over a baker working
they’re recognizable or that on bread or a pie instead of
because they’re recognizable they actively trying to rethink and
can be judged meaningfully. But reinvent or challenge what baking
because out of the however many is. People want things that bakers
millions of possible foods created make, there’s still plenty of room
throughout history, these within those “genres” for creative
templates survived while the interpretation and for the work to
countless other attempts promptly come out amazing or inferior,
went extinct, not because personalized or generic. Most
anything in particular went wrong, random other combinations of
but because so much has to line preparation methods and
up just right for a recipe to really materials at the baker’s disposal
work. So when a pattern that does would be very likely to yield things
work well gets discovered, it’s only that even given time would be
sensible for many creators to incredibly unlikely to become an
deliver on variations of and acquired taste, especially
masterful attempts at making alongside recipes and patterns
those. It is similar for consumers that have evolved and been
who know what they want from refined for so many generations.
past experiences and go looking
for just that.
264
6 For videogames that have levels,
the art of designing a good level
is as much a skilled craft as
music composition, art, writing,
or programming. Some game
levels aren’t even spaces, but
are instead just tuned numbers:
waves of enemies, or odds of
different puzzle pieces falling!
Level Creation
265
SE C TI ON 1
268
Something to keep in mind: is it
sloppy? Is it unnecessary? Or is it
the way that this sort of good work
happens?
This approach actually extends
beyond level design. As Martin
appear in which levels. They
Hollis mentions later in the
focused on what are some cool
interview,
Bond gadgets, and then how can
“We milked the Bond universe in many they shoehorn these in after
ways. For example gadgets, I compiled a they’ve already been made, and
list of about 40 gadgets from various Bond
some of them didn’t make it. In the
films, most of which were modeled, and
data for the game, there are a
then Dave and Duncan tried to find levels
where we could use them. This is number of objects in the memory
backwards game design, but it worked which never wind up used, not
very well. These models were the game even through cheat codes, and
design; there was very little written down have been pulled out partially but
on paper. And the models were researched not entirely, because as
and milked extensively. And, importantly,
development progressed they
they all gelled together very well. These
realized they didn’t necessarily
things helped to make the gameplay and
the game style what it is.”
need all of these. But they have
them there to pull from.
So it wasn’t just that they built
levels without plans for what He mentions that they all gelled
would happen in them. They together very well. It’s no
modeled and textured 40 different coincidence of course that when
gadgets before they really had you pick out 40 James Bond
specific plans for how to use these gadgets, they all gel together very
things, for which would be used well, because he’s pulling from a
with the others, for which would very specific source of intellectual
269
property, that has evolved for a Lord of the Rings has a whole
very long time, since the creator bunch of dynamics about how that
Ian Fleming came up with the world works and how those pieces
character for James Bond. Since fit together. These gadgets all
then every studio, every producer gelled because of course they’re
that has touched the property has mostly James Bond gadgets.
contributed ideas to it based on
The gadgets were inspired by the
what looks cool, what will be neat,
James Bond films, but so were the
what’s a great setting, what are
spaces, obviously.
some cool weapons or gadgets to
introduce… and so that gave them As Hollis puts it,
a lot to pull from, in the same way “Karl constructed levels based on the film
that the Star Wars universe has a sets, which we visited several times. And
lot to pull from, the Indiana Jones Bea constructed characters based on the
universe has a lot to pull from, the photos of people and costumes we had.”
270
making your levels before you
know what to do in them. It
doesn’t necessarily mean that
you’re making objects before you
want to do something with them. It
also doesn’t necessarily mean that
you go back and write a full
So think about this – they’re really complex lore like James Bond’s
utilizing Hollywood film set design, universe before you start working
Hollywood film costume design, in on your game to ensure that
their game, by adopting those everything will gel. There’s smaller
patterns. Although those aren’t ways that this can happen, too.
just built off of skilled Hollywood
David Jones, the guy who created
craftsmen, they certainly played a
the Grand Theft Auto series and
huge role in it. Those were scoped
later worked on Crackdown, also
out real locations in Cuba, and in
created the Lemmings game. This
Russia, and so on. Likewise the
was a classic game where you
costumes were based on, in many
had these little suicidal characters,
cases, real army outfits, and the
and you’re trying to real-time
weapons are all based on real
strategize them to block each
guns. This keeps it grounded in a
other and build bridges and build
complex cultural, very realistic
stairs, to make their way to an
environment in which the guns
exit. And so the story goes, that
and the costumes and the settings
derived from sort of a bet David
are based on something
Jones had with a another
recognizable in the real world.
developer about how small of an
Anyhow, there are many ways that animated character he could
this can be applied. It doesn’t make, that that small character
necessarily mean that you’re became the Lemming. It’s a case
271
where he didn’t start with the starting by building something
game’s idea, he didn’t start with that’s neat or appealing in its own
the game’s story, or arc, or events. regard - be it a model, as a space,
He simply started with a character a character, a sound effect,
sprite, and then found a way to whatever form yours might take -
build a game to use that. and then work around making that
material fit. For once, try worrying
We followed, of course to much
only after you produce the content
less fame and success, a similar
how to fit it into the game.
sort of approach with Zylatov
Different processes tend to yield
Sisters. Before anything else
different results, so this is likely to
about the game existed, I was
lead you in a different direction
modeling the little Zylatov Sisters,
than your usual methods.
or drawing them, just to practice
small pixelated animation. Once I
had one of those
drawn, and color
shifted her and got
different hair color
from her, I decided
we could make a co-
op little game with
guns. That turned
into a game for us.
Think about
backwards-game
design, anti-game
design, or call it
Zylatov Sisters by VGDev, available to play free in-browser. For more
whatever you prefer. information about this game see Chapter 10 Section 2, “Reflections on Three
It’s simply the idea of Specific Hobby Game Projects”
272
SE C TI ON 2
273
Why bother with level design locations. An architect by training
philosophy at all? Why not just is most likely to design this type of
make maps that are different every map, so we’ll call it the
time? Just like there are conflicting “Architect’s Design.” It provides a
philosophies that don’t work well strong sense of immersion when
between games, for every game it’s done well, since real buildings
there are some overriding points aren’t laid out linearly for mission
that can be kept in mind to make objectives, but it can make for
the most of the engine. Here we’ll awkward flow that confuses first
look at a few particularly different time action players.
ways of thinking about level FIREMAN’S DESIGN
space, since by separating them Other titles focus on flow of
out, we’re better able to switch action. Halo is the unmatched
between them deliberately as best example of this design strategy,
fits the current videogame using Fireman’s Design to
project’s needs. compensate for the disarray of the
ARCHITECT’S DESIGN battlefield. The player is rarely left
Some games focus on wondering where to go next, since
environmental realism, to the point there are typically shots, yelling,
that most of the levels are and action taking place where he/
designed to feel like they are she should go. We’ll call this the
almost incidental to the gameplay “Fireman’s Design,” since it results
experience taking place there (ex. in the player rushing from point to
Hitman, Rainbow Six). For these point to “put out fires.” This
games, most of rooms, hallways, requires a considerable amount of
and open areas feel like they were event scripting, and doesn’t leave
laid out without special emphasis much of an opportunity for the
for the player start, ammo and player to rest. This risks hurting
health boxes, or enemy placement replay value by making interesting
274
things happen predictably the (the enemies!) have been
second time around, but it can eliminated.
offer an extremely cinematic REVERSE BREADCRUMB
experience (ex. Medal of Honor, The name of this technique comes
Call of Duty franchises). from the old Brothers Grimm fairy
CURIOSITY LURE tale, Hansel and Gretel, in which a
Some games lure the player young boy and girl leave a trail of
around via exploration. Tomb breadcrumbs behind them to find
Raider and Descent both relied at their way back home. It’s “reverse”
least in part on this “Curiosity because, in this method of level
Lure” (the player’s left thinking design, breadcrumbs are
“maybe this pathway leads to the scattered everywhere by the
exit?”). Without careful attention to game’s designers, and the player
attractive landmarks in the finds their way to unexplored
distance, and clear visual areas by running toward and
distinction between different picking up any not yet claimed.
rooms, it can lend itself to arbitrary
id Software used Reverse
map layouts, leaving the player
Breadcrumb in Doom, but it has
wandering in cycles through
been around at least since Pac-
corners for the next area to search
Man, and still appears in modern
through. Tomb Raider, for the most
FPS games. Reverse Breadcrumb
part, succeeded in doing this well,
is a technique that involves lacing
whereas Descent (unfortunately)
corners, hallways, side rooms, and
did it very poorly. In a more action-
action areas with cheap, low-value
oriented game, the wandering is
items of cumulative worth. Boost
made even worse by going
of tiny value, such as +1% health,
frequently through areas well after
+1% armor, and little ammo packs
the interesting part of that genre
are great for this, though in some
densely-populated action games
275
where the player has been is just like Robotron, Mega Man, and
as easily marked by where bad Zelda established its place in
guys no longer roam. history. The concept behind
“Arena Traps” is to have the player
Besides giving you as the level
fight battle after battle in isolated
designer an instrument of
architectures. This avoids player’s
instruction to show the player
using kill zones to take advantage
where to go, it provides an
of deterministic AI. It implies that
immediate visual test for the
the world has an overriding,
player to mark off areas he’s/she’s
malicious intelligence manipulating
already visited. If there are no
the player’s environment, but that
more items (or weak bad guys) in
works so long as the story takes
a room with several branching
the player to an evil dungeon, a
hallway exits, the player only has
trapped temple, or alien den.
to explore whichever hallways still
have items to find new areas of PUZZLE BASED
Jumps, keys, physics engine
the map.
exploits, and remote switches or
This approach constantly rewards time trip wires dominate puzzle
the player, and leads to most or all based games. It’s rare to see an
of a map’s areas being explored in entirely puzzle based game
turn. Care needs to be taken in a anymore, but some degree of
map designed with Reverse puzzle is more likely than ever to
Breadcrumb to minimize the depth find its way into every game on the
of dead ends, to avoid the player shelf. Prince of Persia had a few
winding up stranded without undisguised puzzles in the story,
cheap items as hints. as did Quake II and Tomb Raider.
ARENA TRAPS Portal has more recently
Although Painkiller is among the repopularized puzzles in the form
few recent commercial games to of intricate navigation.
exploit this design strategy, games
276
DISGUISED LINEAR mechanisms. The workaround to
When the player is stringed from
avoid this problem is to take a
one location to the next, but they
Mega Man boss weapon
feel like it’s their idea each time,
approach, so that although the
then the level design is Disguised
order of action is up to the player,
Linear. Done right, this describes a
there’s an ideal order that the
map that plays linear but doesn’t
expert player will take to optimize
feel linear. Max Payne and Half-
level performance. For these types
Life are the best-selling games
of unenforced Creatively Linear
with this structure. It can
level designs to work, the player
significantly detract from
must be given clear clues or signs
replayability, and can also raise
of what is to be found in different
some issues of the designer
directions – perhaps by imposing
having more fun than the player; if
architecture, detailed red warning
the player doesn’t get to decide
patterns on the floor, or puddles of
where he/she will go next, and
damaging green goo.
instead the level designer does,
HYBRID
who’s really playing? On the plus
Most commercial games don’t
side, it typically means the player
follow any one formula. The most
won’t get lost, and the emphasis
interesting level design
of the gameplay is on action or
philosophies are those that
platform/key puzzles rather than
manage to take the elements that
exploration.
work from a variety of design
A non-linear level structure (like angles. Don’t be afraid to
one with a centralized hub and experiment, but when you do so,
many hallways) can quickly be you’ll probably want to test it in a
turned linear by use of keys, smaller map before you build it in
remote door switches, and other as a crucial point of a larger map.
order-of-play constraining
277
Invent some terms, like those used be tempted to do in most level
here, and categorize your creation environments.
thoughts into discrete concepts –
Disadvantage: Leaves a LOT of
it makes it easier to re-use the
unanswered questions about the
ones that turn out well, easier to
level’s theme, and the layout of
avoid re-using the ones that turn
rooms. This prototyping definitely
out poorly, and easier to mix new
should be used only in conjunction
combinations of what worked well
with another method, such as
to generate more intricate levels
Pipelining or Area Sketching.
for later parts of the same game.
DIVISION OF SPACE
Rapid Prototyping Methods The builder’s approach. Begin on
NODE NETWORK a piece of paper with a rectangle,
The scientist’s approach. Begin by pentagon, or a more interesting
drawing a few circles on a blank shape, like a giant hand (Doom,
page to represent major rooms, map E3M2 did this), and then
areas, hubs or hallway recursively divide that space into
intersections. Draw a few lines rooms.
between these nodes, until
Advantage: Can create a more
everything is connected in at least
realistic building space (no wasted
1 way. Next, put your mind to
area between rooms or halls).
thinking about how you’ll run the
Doing it freehand on paper then
player through these loops – item
transforming it into your game’s
lure? Strictly ordered key puzzles?
level format reduces the tendency
Advantage: Fast way to sketch out to work strictly orthogonal or on-
how your level can have complex grid.
interconnectedness, without
Disadvantage: Leads to a map that
holding yourself back to
is potentially too visually cluttered.
conventional orthogonal hallways
If the overriding shape is not
or linear path cutting as you might
278
broken carefully, it can also yield a you’ve been in, attach them to
map that feels too contrived. movie sets you’ve admired, and
PIPELINING connect them altogether with an
The mechanic’s approach. This order of events that worked in
can be done equally well in most your favorite game. As long as
level building tools as it can on you’re mixing multiple sources,
graph paper, if you’re sufficiently you can result in some fairly
comfortable with its environment decent levels while learning from
and tools. Basically, form the level the pros along the way.
out of hallways, placing important
Advantage: Creates much better
items and keys in intersections or
content than you could have on
corners. Go back and bloat certain
your own.
areas of the pipe into room-sized
combat areas, add a little Disadvantage: Makes you feel dirty
decoration based on a given and guilty inside. Do it if you’re
theme, and call it done. looking for a way to learn as you
go, but try to wean yourself of it as
Advantage: As fast, if not faster,
soon as possible.
than any other method, without
BLUEPRINT
creating trivially simple maps.
The architect’s approach. This
Disadvantage: Often results in an actually involves sketching out the
unrealistic environment, and it area as if it really existed – where
takes some practice and patience do pipes go? Electrical wires?
to identify which areas of the How and why are different areas
pipeline should be bloated. (locker rooms, restrooms, offices,
MIMICKING closets) placed where they are in
The beginner’s approach. relation to everything else?
Basically, steal from anything and
Advantage: This method leads to
everything you can. Copy areas
the most believable environments.
and layouts out of buildings
279
Disadvantage: Slow, slow, slow. Disadvantage: Requires a little art
Maybe try it out for some early talent, and some random
maps, but in the end, most of the inspiration. Do this when you can,
money, energy, and time should be but don’t expect it to work for
spent tending to the content that every room of every level.
the player directly sees and MIXTURE
experiences. Strive to see if you This is the game designer’s
can figure out some patterns or approach. Unfortunately, it’s also a
rules to follow to simulate the lot less formulaic in how to
same effect without putting so perform it properly. Knowing some
much invisible work into it. of the other prototyping methods
AREA SKETCHING are there to work from, and how to
The artist’s approach. This articulate the different aspects to
technique is very popular in the team members, is essential to
industry, and often shows up in succeeding in hybrid level
collector edition released concept prototyping. As design schemes
art. Make 3D sketches of areas can be mixed, so too design
you’d like to fight in – from the prototyping methods can be
player’s perspective, or from a mixed.
“security camera” ¾ angled
perspective from a room’s corner
against the ceiling. How do
obstacles fit together? From
where will the enemies come at
the player?
Advantage: Creates memorable
areas, vastly more so than any
other means of design.
280
SE C TI ON 3
knowledge (story or motivation), or What does not yet exist that will
capabilities (mechanics and need to be made in order for this
powers)? level to work? Early in a game’s
development, this can be fairly
3) LAYOUT SKETCH
This step is done on paper, or in a extensive, and help define the
text file, and is still less about building blocks; later in
details than big picture. development, this list should
generally be kept short, in favor of
Where are those arc or event reusing and recombining what has
points in relation to one another? already been built.
What order are they seen in, and
what order are they likely to be The level may require additional
taken on? An example of a classic programming (jet pack?), it will
non-linear pattern, which has been often require additional art (soda
around since the days of Pitfall 2 machines to decorate a break
282
room), and occasionally will pose question whether the level is good
other types of skill demands enough to finish.
(dialog writing, puzzle planning,
A lot more work is about to go into
sound creation, etc.). Whatever
making the stage presentable.
will need to be done for the level
However, if this particular attempt
to work, however minor or
isn’t working out so far, the types
unrealistic (in part because that
of work that follow are not going
difference may be hard to know at
to be able to make up for that. A
the time), this should be
few steps backward may be
acknowledged before going
enough, but this step occasionally
forward.
leads all the way back to the
6) PRUNING drawing board, resetting to Step
Taking into account the
One. Sometimes, that’s for the
development complexity of its
best.
parts, balanced by considering the
8) FULL IMPLEMENTATION
bang-for-the-buck given to the
Whatever additional programming,
overall benefit of having those
art, and audio are left in the level’s
components, what can be
requirements, here is the time to
trimmed from the level’s design?
get to work on them.
If something can be taken out
This far into the level’s
without major complications, that
development, it’s clear that the list
increases focus on what is
to be implemented will be
important, to both the developer(s)
supporting a level which has at
and the players.
least passed critical feedback and
7) FEEDBACK / ITERATION personal reflection. The place in
If you are working on a team, this
the game for this work is known,
is a good point to pitch the level to
rather than simply creating a pile
others for critique. If you’re
of functionality or imagery then
working alone, now is the time to
hoping for their effective use.
283
9) POLISH often precariously blind to this sort
If there is a timer or goal score, it’s
of issue, but it’s helpful to at least
time to tune them. If there are
attempt to correct this before…
enemies and items hand placed in
11) TESTING
the level, it’s time to experiment
…putting the game into a new
with adjusting their locations and
person’s hands. Someone that has
quantities for maximum effect.
not played the game, or has only
10) AFFORDANCE PASS played the game up to this point
Affordance is a word from design,
(levels 1-4 before testing level 5)
used to refer to, among other
can be a lifesaver in identifying the
things, the signals and queues on
misunderstanding or confusion
interfaces that let us know what
that may arise from failure to
can be clicked on, what can be
properly communicate
dragged, and what sort of door
affordances.
handle should be turned or
pushed or pulled. Testing can also be a helpful
check on a game’s difficulty, since
As applied to level design,
for the same reason that the
affordance means making sure
level’s designer is blind to
that there are adequate clues for
affordance issues, the level
where to go next, how to
designer is probably unaware of
progress, and so on. If the player
how hard the level is now that it’s
gets stuck from being unsure how
tuned for someone that has
to advance, but could trivially
practiced it hundreds of times.
move forward if informed of what
to do, the failure is in affordance. ♦
284
need to be revisited later for specific decorations to recreate
consistency with other levels, or them, can capture some of their
tweaked after additional testing of quirks and uniqueness.
the full game, but all that can be DISTINGUISH AREAS BY COLORS
done for a single level has been Going from a predominantly blue
done. set of areas to a predominantly red
set of areas feels like progress. It
Assuming the game is not a single
ties together levels that belong
level project, this next section may
together, and alerts the player to
help.
tune in for the other differences
Strategies for a Level Set between the levels that don’t.
Most games come with a Color changes are a cheap
sequence of levels. Here are some solution, in terms of time required,
approaches to create a series of and whether it’s literally a tint or a
levels that work together without careful shift in an area’s entire
blurring together: palette, it can be surprisingly
ASSIGN A FICTIONAL FUNCTION
effective.
Give levels fictional purpose, and Color changing is how progress
they’ll take on unique feels. was shown in Tetris. In BioShock
One might take place in the palace it’s why the color of the loading
dining rooms, where bombs are screen changed based on what
stored in underground caves, save the area was made in, and in
inside of an oil rig, and so on. Alice in Bomberland it’s how I
Putting levels in those settings differentiated later levels. In Doom
shouldn’t just be a matter of the levels changed from grays and
window dressing, and sometimes greens to reds and yellows; in
building levels inspired by the Quake the episodes differed by
constraints and features of types palette from browns to blues.
of locations, even without the
285
DISTINGUISH AREAS BY MAIN MECHANIC ONE-OFF SPECIAL CASES
These sort of high level concept The pacing of a game can be
differences at an early stage of improved considerably if one or
level planning can lead to more areas of the game receives
drastically different level designs special attention. If only one area
and experiences. needs a time bomb count down,
collapsing ceilings, and pulsating
One zone might focus on
red alarm lights, then it’s still
destruction, another might focus
probably worth doing, since the
on cooperation or collection. Is
scene can have such a dramatic
this area mostly vertical? Or
impact on the overall experience
perhaps this area leans heavily on
(Metroid, although we borrowed it
a particular item in the user’s
for Shotgun Debugger, and Cave
inventory, or is built around how a
Story does something like it, too).
particular bad guy moves?
When Earthworm Jim introduced
ELEMENTAL OR BIOME SETTINGS
stages that had glass submarines,
Lava, swamp, ice, wind, castles,
or escorting a puppy, it helped
ghosts, underwater, desert, moon
break up the monotony of combat
– settings like this are cliché, but
platforming. Call of Duty games
they work, and in addition to major
have featured this sort of
visual differences they tend to
distinction in the form of waiting-
inspire unique enemy types or
for-reinforcements, tank driving,
player abilities.
firing from helicopters, and pure-
Star Wars provides an example of sniping areas.
applying this technique in a way
PROVIDE PROGRESS CLUES
that feels much less cartoony than Like color changes, this is
we generally see it applied to primarily an art effect, but this can
videogames. help the overall sequence feel like
the order matters. Something
appears far off in the background,
286
and gradually the player sees it absent when everything started is
become closer and closer as expected to be used. If the
progress is made. For a series of second level in this batch doesn’t
levels in Quake 2, there was a fit in with the others, but seems
huge artillery gun in the skybox. In like an idea worth keeping, it may
one level it was very far away, in inspire a other set to be produced
the next it was closer, and then pruned.
eventually a boss fight takes place
This approach leaves level order a
right next to it. That spatial marker
bit more up in the air, which
helped provide a clear sense of
sometimes can only be known
progress between stages, even
after the levels are playable in-
when some of the stages played
engine. If the third or fifth level
very similarly. Ico employs a
made in a given batch seems
similar effect in how it portrays the
easier than the first, or seem to
rest of the castle during outdoor
better introduce concepts
scenes.
assumed by the second, it’s not
OVERPRODUCTION too late to rearrange them then
Make 25-40% more levels than
account for that (in terms of
are needed – stopping just short
polish, ordering of art or enemy
of the Full Implementation work –
types, etc.) when moving into the
then throw out the worst 25-40%
later stages of implementation.
before going any further on them.
This allows a filter of editorial
judgment, makes it possible to
stumble upon interesting ideas
without misusing the
implementation time of others,
and encourages a degree of
exploratory risk taking that’s
287
SE C TI ON 4
289
how the engine and The third way is just by filling in
implementation interplay with the gaps, and fixing maps.
player.
When the game is nearing
The second way is applying what completion, I’m on the lookout for
I’ve learned. ways to fill in information
unaccounted for in the existing
With a base of existing levels to
levels. This can be a bit less
then consider, at this point I may
exploratory, since here I’m trying
do some rough sketching of map
to identify and address specific
shapes. This is closer to the
issues. Are more easy stages
beginning with the end in mind,
needed, to better introduce some
though I still largely let the level
of the elements that other stages
design itself a bit during iteration. I
use more abusively? Is there an
won’t scrutinize over the details on
appropriately hard and rewarding
paper, which I’ll instead sort out
stage to bring together skills and
while working in the editor and
knowledge that the player has
format (in other words: expect to
gained, for later in the game?
be making changes during
translation to playable level), but If there’s something that seems to
beginning on paper makes it lose the player by coming out of
easier to explore different overall nowhere while playing an existing
shapes, structures, and set ups level, I might try to refactor that
than what I would produce just part just before it, so that it can
fiddling around in the editor come out more smoothly in the
environment. Since the first phase transition to that idea. If I can’t
was partly just about fooling seem to get that right, rather than
around in the level environment, if forcing it, I might just cut
I kept doing that for this second whatever’s causing the problem.
phase I’d quickly start repeating
myself.
290
I typically build the later levels with different types of tools and
(middle to end) of the game before processes, and designing levels
working on the early levels that for different genres of games.
build up to them. This way, I have Vision by Proxy Second Edition,
a clearer idea of specifically what TriChromic, Swarm, Battleship 88,
the player needs to be prepared Shotgun Debugger, Boom Blox,
for in order to be ready for the Topple, Zylatov Sisters, Exxak,
main levels, based on what Freezing Solid, Crystal Ball, and
worked for those fleshed out Vectorverse all have completely
challenges. Otherwise starting different level formats, gameplay
with the game’s initial levels would styles, and tools.
have to provide an unfocused
I will qualify however that
introduction and practice to ideas
designing first-person shooter
that may or may not be relevant to
levels, or for that matter third-
what works well for later stages.
person adventure game levels, on
Within the development of each account of their architectural
level, I tend to work in iterative complexity and sheer volume of
passes, with a different goal at detailed artwork, have their own
each step of the process. That specific practices different than
process is outlined in the level the ones I’m describing here. The
design entry you already read types of levels that I do most of
though, so I’ll avoid repeating it my design for have either
here. comparatively simple architecture–
2) HOW DID YOU COME TO LEARN THE SKILLS in some cases no physical
YOU NEED TO BE ABLE TO CREATE EFFECTIVE structure–which means I can
LEVELS?
Whatever I know about level generate new maps very quickly.
design comes primarily through Although I didn’t do any level
practice, in particular working on design that wound up in Medal of
different kinds of levels, working Honor Airborne, in part because I
291
was finishing school during that isn’t working out) that aren’t
stage of development, earlier in shaping up as well.
that project I had an opportunity to 4) WHAT ADVICE WOULD YOU GIVE AN
work on prototype levels with AMATEUR LEVEL DESIGNER WISHING TO
PURSUE A CAREER IN THIS FIELD?
members of the team, and the Make levels! Make levels for a
process overhead is much higher variety of types of games, for a
for spaces that large and complex variety of different purposes, and
that need many people with don’t feel stuck to using the tools
different skills to always be on the that you already know (be willing
same page. to learn new software, techniques,
3) HOW DO YOU GO ABOUT PLANNING THE processes, etc.). Ideally, not as a
OBJECT PLACEMENT AND INCLUSION IN THE
LEVELS? short-term goal but as a target, try
I start by coming up with vague to create something that strangers
conceptual plans for areas that will go out of their way to play and
seem appropriate for their then tell other strangers about.
placement and structure (deciding That may seem obvious, but with
for example which area I might so many options out there for
want crowded, safe, a climax, videogames at this point, it can be
etc.), which I then translate into a surprisingly challenging to earn a
playable form by scattering about stranger’s time and attention, and
an initial arrangement of enemies certainly their recommendation.
and items, puzzle elements, That’s a good test though of
whatever. After that it’s largely a whether what you’re doing makes
process of iteration to improve sense without you present to
what’s there, combined with explain and promote it. Because
cutting away any sections or ideas at some point, your content needs
(say, the worst 25-60%, or to explain and promote itself.
sometimes a whole level if it just
292
SE C TI ON 5
One of the differences that can might include level pieces that
cause a student or novice project actually do handle collision but are
to stand out in a bad way, looking outside the playable area (though
and feeling unfinished, is the lack be careful to not confuse the
of level art that’s non-essential to player into thinking non-reachable
gameplay. I’m referring of course areas are somehow reachable).
to art other than the main This provides visual interest, and
background, only because I’m can be more flexible for
assuming that main background landmarking areas because the
art’s already accounted for. density and useable
configurations of collidable level
Such non-gameplay art can be
pieces is limited by their
divided into three categories:
consequences on player
VISUAL-ONLY
navigation and action.
This kind of art has no collision
data and is pure decoration. This
293
COLLISION-BUT-DECORATIVE “I’ve made it underground to the
This includes minor obstacle,
caves,” or “I’m finally outside the
potentially adding a bit of variation
castle walls” is just a tile swap, but
to enemy movement and line of
without that tile swap, it’s merely
sight, but mostly just something to
walking between rooms that are
navigate around, or something to
otherwise pretty indistinguishable.
jump over. This provides a reason
to pay attention to the player’s There doesn’t need to be a ton of
character and input while walking non-essential art to make a major
from point A to point B, instead of improvement in a player’s
simply holding a button down for perception of the game. You can
screens at at time. get a lot of mileage out of even a
handful of relatively easily created
ALTERNATIVE-MAIN-COLLISION
If an overhead level’s shape is assets. Having a little bit of non-
defined by placement of trees, essential art, especially if used in
add boulders into the mix. If all three of the areas outlined
there’s water – even if it isn’t above, can improve the first
traversable – have two shades to impression, likelihood of returning
distinguish shallow versus deep. If to the game, and memory about
a side view level’s main the game later.
platforming tiles are metal, also Although I’m calling it non-
have a set of wood; or if you’re essential, I mean only that, strictly
feeling lazy, tint that same metal speaking, it’s non-essential for
blueish for steel or brownish for gameplay, i.e. that the game can
rusty metal. In addition to adding a be feature complete and fully
bit of visual interest, changing functional without it. But make no
usage ratios or switching between mistake: this kind of art is
sets of these helps convey a essential for the game to not feel
sense of meaningful progress barren, for the game’s levels to not
between noticeably distinct areas.
294
all feel the same, and for the game These types of art assets are the
to look done. icing on the cake.
There’s really no excuse to avoid And a cake without icing isn’t
doing it. By design, player ready to show anyone.
attention isn’t focused directly on
these uses of art, so repetition is
pretty easily forgiven. Nor is it
especially time consuming
compared to most other types of
game art, since it’s rarely (or only
very slightly) animated. And, again,
players don’t typically look directly
at it, so quality control and
iteration isn’t really as important as
it is with art for power-ups,
enemies, or player sprites.
For games with more involved
level design, placing these
decorative elements into stages
can often be put off until later in
development. This way stage
blocking and navigation can be
figured out with basic walls. This is
helpful since we’ll often
completely discard some layouts
that aren’t working out as well
before we invest additional time
decorating something that doesn’t
belong in the final version anyhow.
295
SE C TI ON 6
Every level of Super Mario Bros that, awarding only 100 for
(1985) on the Nintendo crossing at the very bottom. To
Entertainment System ended with help the player reach the top,
either a tall flagpole or a battle nearly all levels end with a stair
with Bowser over a bridge. step structure. Additionally, these
structures (with only a couple of
Super Mario Bros has 32 levels – 8
exceptions) are built to disallow
worlds, each with 4 areas. The 4th
second chances. The areas were
area is always a castle that ends
shaped to prevent Mario from
by getting past Bowser.
climbing back up after a failed
FLAGPOLE SCORING
jump. If air control is used to back
On all flag levels, the player gets
away from the flag mid-jump, in
more points for touching the pole
these cases the best the player
higher when crossing. 5,000
can do is 800 points (running
points are awarded for the very
jump), while a standing jump will
top, 2,000 for even a little below
296
Level endings: the top left is Level 1-1, the top right is Level 1-4, the bottom left is Level 8-1, and the bottom right is
Level 8-4. Note that all water and dungeon levels end above ground, in a common section.
only earn 400, since Mario jumps the top (Super Mario Bros does
higher when running at full speed. not scroll vertically), it’s a hint from
VISUAL LANGUAGE AND EXPECTATIONS the level designer that the end of
The function of these stairs, in the stage is near.
connection to the flagpole scoring,
By establishing this visual
creates a visual language that the
language, the player can also be
player learns to interpret. When
teased a bit. When the level
the player sees steps coming on
includes a partial stair pattern
screen, rising from the ground to
mid-level, that implies the the
297
stage may almost be over. Taking on a second day chapter in a row
just a few more steps exposes a without the night to follow.
pit or some other violation of the
Nothing in the game reveals the
pattern, letting hopes back down,
player’s overall progress toward
but as shown in Levels 5-1, 5-2,
completion, either as a percentage
and 5-3, those inconsistencies
or by exposing the total number of
become mixed into the end steps,
worlds in the game. Unlike a book,
complicating the player’s ability to
it’s impossible to size up how
rely on knowledge of the end
much of the game’s content
pattern. That complication
remains, and unlike a film or TV
translates to more false positives
show there was (and still is) no
and false negatives in the
convention for a videogame’s
remainder of the game.
length. This suggested that no
This pattern also instills an matter which area the player loses
expectation of safety. Since most in, practicing to make it a tiny bit
end stairs have no enemies, it’s further might complete the game.
even more dangerous when that
This deliberate uncertainty creates
pattern is broken by enemies
more excitement about reaching a
placed in the final step area.
new castle – due to thinking it
Notice too the misleading clues might really be the last one – and
during play about which castle will added genuine surprise to seeing
be the real, final one. Level 6-3 Toad each time in place of
has a uniquely colored castle, Princess Toadstool. Until, of
presented at the end of the course, the player finally finds
second night world… after which Princess Toadstool, by which time
still another daytime level is the player has been conditioned to
presented. The game then breaks expect to see Toad – making the
the 2-day, 1-night pattern, ending reward for finishing one final
surprise.
298
7 Being able to work alone has its
advantages. No one to answer
to. No one to compromise with!
However learning to work with
others is a skill. Once mastered,
it opens up new opportunities to
collaborate with others, making
it possible to involve those skills
that others devote their lives to.
Team Projects
299
SE C TI ON 1
300
involved, the stakes go way up. others, I picked up that these
Even at a student or hobbyist challenges or methods were by no
level, not knowing what you’re means unique to my own
doing at the helm switches from particular background or style.
exploratory wandering (when done Here are some things that I wish I
alone) to high pressure had known sooner.
responsibility (when done with the MOCK-UP SCREENSHOT AS DESIGN DOC
time of others). Photoshopping a “screenshot” (i.e.
not really a screenshot) before the
Even though a lot of these points
game exists goes a long way. A
may also relate to solo project
per-pixel representation of what a
planning, my focus here is on
moment of the finished game
team projects, since that’s when
might look like – with
this sort of work becomes
consideration given to the sort of
particularly important. Even
graphics work and programming
though I suspect some of these
that can fit into the time available –
relate to project management in
concisely communicates
general, including how it may be
dimensions, layout, and user
relevant to larger commercial
interface elements. The
production, my experience in
programming focus becomes an
those areas is overshadowed by
exercise in bringing that
my time on student and hobbyist
screenshot to life, which prioritizes
projects, and so I’ll leave any such
gameplay first (as opposed to
extrapolations up to reader
menus/etc.), and offers clear
discretion.
reminders of what’s missing
While leading my first project (health bar serves as a reminder
teams, I hit a number of these that health and game over need to
discoveries through trial-and-error. be hooked up, etc.). It doesn’t
When I began helping with more
team projects that were run by
301
need to be final art quality, but it project, and for the rest focus on
should be presentable. execution rather than the high
level questions. It’s okay for the
In the process you’ll give artists a
health to be a percentage bar or a
unified sense of scale and
row of hearts. It’s okay to collect
dimensions, level designers an
items to earn extra lives. Leonardo
idea of the structures involved,
da Vinci didn’t reinvent paint, and
and dozens of questions that no
he didn’t invent the woman, either;
one would have thought to ask
he changed the way that billions of
explicitly are answered simply by
people have seen the world since
putting the picture together.
by simply having done a better job
ONE SIDE OF ONE PAGE DESIGN DOCUMENT
of painting a woman.
In terms of design document, if
there is one, don’t let writing or TAPPING OTHER GAME REFERENCES
Referencing games that others
maintaining the document take
know on the team can be a
over or cut into development time.
powerful shortcut. If a platformer
If it can all be on one side of one is being worked on, there’s a
page, briefly explaining what broad history of existing
happens and what’s involved, that platformers that could be
will have more utility than a 10-20 referenced to clarify what sort of
page document that no one reads jumping, attacking, or movement
and has too many interconnected is planned. Particularly with the
assumptions to be easily updated. explosion of free-to-play, work-on-
FOCUS ON ONE OR TWO INNOVATIONS any-computer Flash games,
Unless the project’s purpose is to there’s almost always a few handy
be an experimental art game: references that can be linked to for
don’t be afraid of applying some general gameplay or interaction
control, interface, and design demonstration. It’s good to not
conventions. Experiment with, at rely entirely on such references,
most, one or two aspects per
302
though, since inevitably some interested in a compatible
otherwise interested people won’t direction.
know the games mentioned, and
If nothing exists that can be
need to get the gist before they’ll
pointed to and clearly described
investigate examples.
as, “like that,” then the prototype
If there’s no example out there fills the role of making that
demonstrating what you have in communication possible. Even if
mind, you need to make one first an outside example already exists
(see next point). (Mega Man? Space Invaders?
King’s Quest?), putting together
Note that the clarity that comes
the core gameplay before bringing
from this sort of communication
others onboard is proof that you’re
can be a double-edged sword:
capable of putting a project
suggesting the game with a five
together. “I know how to program
month development window is
it” doesn’t win much credibility;
going to be “like Halo,” or even
“player movement and platforms
better “like World of Warcraft”,
work already, we’re ready to focus
reveals how little a would-be
on animations, sound, power-ups,
producer understands about game
enemy movement, and level
development, which will keep
design” shows that the project is
serious developers from joining
ready for that kind of work.
the march over the cliff.
BUILD A PROTOTYPE IN ADVANCE This is about addressing a
If it’s possible to get a playable potential time black hole before
prototype (the core of the game, it’s too late. The less has been
ready to be expanded upon) figured out when reaching out to
working prior to bringing others others, the more disparity there
onboard, this can help can be in expectations – some
tremendously in ensuring people people coming onboard imagine it
are on the same page, and as a 3/4 overhead action game,
303
some imagine it as a first person those respective duties. If roles are
adventure, some imagine it as an ill defined, it’s likely to run into a
RPG – and that mismatch in variety of stepping on each other’s
interests can dovetail the project toes and diffusion of responsibility,
throughout as members pull it in both of which cause time to be
different directions to be more like lost to thrown away assets and
what they want to work on. “It hopeless confusion.
could be about sci-fi, wild west, TRACKING ISN’T THE SAME AS LEADING
modern day, or abstract visuals” Facilitate, motivate, and make
may attract people with 4 different sure everyone has as much to do
types of interests, many of whom as they’d like to be doing – it isn’t
may either be saddened by the sufficient to track what people do,
direction it takes, choose to leave any more than it’s a football
when they don’t get their way, or coach’s duty to simply record
thrash until the last week of what happened after each play, or
production trying to wrestle back a general’s to jot down how things
to what they joined for. unfolded after the war. Being
aware of what everyone has done
By contrast, if the core of the
in the past week is important, but
gameplay and concept is stood up
it’s equally important to be aware
beforehand, so that everyone can
of what everyone is doing the
see and try it, people that have
following week.
interests aligning with the direction
it’s moving it are more likely to People like clarity. People like the
self-select. confidence of direction. People
CLEAR FUNCTIONAL ROLES like to feel like they’re a part of a
Clearly define roles to make coordinated effort.
accountability clear. One person
A word of caution: note that this is
can of course wear multiple hats,
not about giving orders, bossing
provided that they keep up with
others, or stamping out ideas.
304
Rather, it’s about having a plan. just feel more comfortable
That plan can (and often should) bringing things up face-to-face,
be tentative and up for discussion, and sometimes preparing for the
but having one helps ensure that if meeting is the only hour that week
everyone just chugs forward someone spends reflecting on
roughly following the shared their involvement with the project.
schedule, the work will all come
Have a plan for meetings. A half
together in a meaningful and
page list of bullet points is fine –
worthwhile way.
the agenda need not serve as a
WELL-RUN MEETINGS AREN’T USELESS standalone form of notes. This
People complain about useless
makes it more clear when various
meetings. They should. Useless
topics are coming up, increases
meetings are infuriating. Useful
the chance of the meeting having
meetings, by comparison, are
value, and generally is part of
terrific. Meetings aren’t the
respecting the time of peer
problem – poorly run meetings are
developers. Are there decisions
the problem.
that need to be made? How does
Run correctly, meetings are the latest version of everyone’s
efficient, get everyone on the combined efforts look, play, and
same page, clarify objectives for sound? What is there to look
the week, reassure those involved, forward to coming together over
and result in some discoveries or the next week?
action items that would have
Table one-on-one discussions
otherwise gone unnoticed.
about particular aspects to be
There are things that come up in resumed at another time or
person which absolutely won’t setting, even if only after the group
come up by e-mail or text chat. meeting adjourns. If the sprite
Sometimes it’s in the tone artist and the audio person need
someone uses, sometimes people to discuss their work to make sure
305
the appearances fit the sound Better answers are along the lines
effects being made, there’s no of “By Friday, we’ll have the level
reason for the programmer or level format saving and loading,” or “By
designer to be there unless they Friday, we’ll have the second half
want to be. of our sound effects hooked up
with placeholder files.” The weekly
Let the team members have input
plan can be adjusted, if the
on project design and direction
schedule begins to fall behind, but
(both of which are good), but don’t
it’s better to do that as soon as
confuse that with counting on the
reality is starting to take its toll,
team to run the meetings (which is
and not on the tail end of a project
bad). Several people trying to do
after other roles drove forward
the work of one is inefficient and
under the assumption that certain
ineffective – keeping order in a
things (3D animations, boss fights,
meeting is a one person job.
whatever) would be ready.
CLEAR WEEKLY GOALS
With accountability roles well Who will be doing what each
defined, a rough weekly schedule week? What is one tangible result
can be drawn up – each week, that each team member can
what is being done for audio? independently take on during that
Functionality? Level content? time? Are there things the
programmer or designer can do in
“What are you doing this week”
a different order to unblock
should never be answered with,
another’s animations, audio, or
“More programming.” The goal is
other work showing up in-game
not to spend a certain amount of
sooner?
time every week in front of a
computer typing – it’s to get more SCHEDULE BACKWARD FROM COMPLETION
Creating each week’s goals one
things working, or to fix things that
week at a time is the equivalent of
are broken.
driving around the highways until
306
we run out of gas, hoping that development, to see what’s falling
when the car stops, we’re happy behind and needs to be re-
with where we are. That’s insane, evaluated. If any developer’s
but it’s also a surprisingly common objectives start to fall two weeks
way for first-time project leads to or more behind, and strategizing
manage a team (regardless of how with that team member doesn’t
much game development they’ve seem like it’s going to put things
done on their own). back on track, find a way to
design around the loss of that
An excel spreadsheet can be a
work, having less of what that
lifesaver for this – early on, make
developer projected, or picking up
each column a Friday date, make
the slack (either yourself or via
each row a developer’s role, then
another reliable team member).
do your best to figure out how to
fill in those remaining cells for who TIME ESTIMATING: MIN/MAX/AVG
Figuring out how long something
might be able to realistically get
will take to do is a notoriously
what done each week. Work
difficult thing to do, especially if it
backward from the end result, or if
isn’t something that you’ve done
you’ve already started some
before. If it’s not your skill area, be
aspects of production, work in
sure to speak with someone that
from both sides and meet in the
does it when working out the initial
middle. Work with team members
schedule. Even then, people can
to figure out if they see their
have a hard time, since there’s
involvement as different, expect
inevitably some flexibility in how
that they’ll have more or less time
much time gets poured into each
to offer, or have suggestions on
thing. One simple technique
how to more effectively use the
around this is to ask for how fast it
time available.
could possibly be done
That spreadsheet is also a handy (minimum), how long it might take
tool for peeking at weekly during
307
in the worst case (maximum), and composition, manual writing, or
then base estimates on roughly menu design may only be relevant
the average, tending toward the for a couple of weeks in the
maximum end. project, depending upon how
someone prefers to work, and
There’s a tendency to think in best
what else has to be done before
cases only when scheduling,
they can start (it’s often hard to
which runs into disaster when at
put together a cohesive manual
least half the time conditions are
PDF or readme until the game is
far from best case.
almost done). In those cases it’s of
1-2 NIGHTS PER WEEK PER DEVELOPER
course unnecessary to expect that
For students and hobbyists there’s
they hang around doing
coursework or rent-paying work to
something weekly.
contend with, and so estimating
for 1-2 focused nights of effort per There’s generally no reason to
week per developer tends to be have people track their hours, or
fairly realistic. If someone can fit in to be Draconian about someone
more than that, great (though I missing one week due to a perfect
would advise against expecting it storm of exams/deadlines/
to be consistent, as competing personal. The 1-2 night estimate is
deadlines or life issues inevitably simply a rough guideline for
crop up). If someone can’t fit in modelers, animators, level
1-2 focused nights of effort per designers, etc. to put a meaningful
week, then they aren’t able to put dent in the project week by week.
enough time in to make a tangible Not 5-7 days per week
difference on the project anyhow, (unrealistic), and not 0-3 hours per
and may as well not be with the week (not useful). The important
project. thing is that the developer’s
objectives are getting done, within
There are, of course, exceptions.
a week or so of when estimated,
Certain specializations, like music
308
and adjusting plans if necessary if between rework or bizarre
it turns out that the original inconsistencies.
schedule estimates were overly
If there’s one member solely
optimistic.
responsible for the audio, it’s less
DIVIDING WORK REQUIRES MORE WORK likely to have dramatic variation in
Involving multiple programmers
volume and duration. Music
takes a substantially different type
composition, of course, separates
of programming expertise to
nicely from sound effect
structure shared code properly (or
production, and voice recording (if
else a very clear cut separation).
present) may also be split out if
Having 5 programmers doesn’t get
necessary.
the code done 5X faster, it adds a
substantial overhead of In general: if it can be done well by
communication, one person, don’t have it spread
misunderstanding, necessity for between two.
internal documentation, and FOCUS DESIGN TO FIT TIME AVAILABLE
309
the producer, you are the guardian SCOPE CONTROL
About 3/4 through the project’s
to ensure that promise is kept, and
allocated time, make a list of what
that there’s something complete to
must be done for the game to be
show at the end of that time
presentably finished – not
period. If others want to stick
necessarily complete to the
around after that initial release and
original vision, but first-and-
work on an expansion pack or
foremost done. Only allow that list
sequel together, more power to
to get shorter, ideally by cutting
them, but don’t let others in the
anything on that list if it turns out
group be held hostage by a poorly
to not be essential.
managed schedule dragging on
indefinitely before they can share Rather than seeing great disparity
the fruits of their labor. between what was originally in
mind vs what’s in the game, try to
(Note that, fairly reliably, the
think in terms of starting on
project’s production will tend to
something “new” with a
slip a little beyond the time
substantial head start. Imagine
window, as a matter of tying up
you’re given a pile of assets
and fixing things leading to more
(conveniently, the art, sounds,
tying up and fixing things. That’s
levels, and functionality currently
true even if that inevitability is
yielded by development to date),
accounted for in planning - i.e.
with the challenge to weave it
Hofstadter’s Law: “It always takes longer
than you expect, even when you take into
together coherently into a finished
account Hofstadter's Law.” Don’t be videogame, which may or may not
surprised when it happens, try to be aligned with what was originally
not to use it as an excuse, and envisioned.
tough it out.) When features and requests come
up mid-development that seem
tempting, but would either take
310
the project in a wildly different Instead, feel good about
direction or add significantly to the defending the time and work of
game’s development needs (say, the four other people involved.
adding RPG-like character dialog That’s a different game, to be
to what was previously a side- taken on a different time, and if
scrolling action or overhead they wish to assemble a team to
strategy game), table the build that vision, nothing prevents
suggestion for a sequel. If the core them from doing so separately. (Of
game initially released turns out course, if the idea is lobbied
great, those team members effectively to others, with half the
passionate about those additional team sold on it, that’s another
ideas have a strong foundation to situation entirely. The best course
build upon. The initial release may of action in this situation is
even be helpful in pulling significantly more blurry.)
additional talent onto the project GOOD ONES NEED YOU TO ‘FIRE’ BAD ONES
more relevant to new types of If someone is having more of a
challenges, filling in gaps created negative impact on the project
by others that choose to move on than a positive one, or even if
to something different. they’re simply having no impact,
PROTECT THE TEAM MEMBER’S TIME let them go. It’s not necessary to
If there are five people involved in be a jerk about it, it should never
a game, all of whom came be done in front of other people,
onboard agreeing to an initial and it’s good to try to discuss and
vision, and then one of them attempt other options first (would
suggests a change that will take they be better able to help the
the project in an entirely different project in a different role?), but on
direction and grossly expand the occasion it’s necessary for the
time required, don’t feel bad about good of the team and the good of
being resistant to that request. the project.
311
Someone should not wind up in 4. Some people have it so
the credits simply because they ingrained into their worldview that
came around, offered to do quitting is a bad thing that they
something, then were hard to get may be hoping you’ll let them go,
a hold of or never contributed but lack the courage or conviction
anything. That’s unfair to the to quit on their own. Set them free.
people building the videogame. It may be a relief.
Healthy perspectives on this 5. Do it to defend the efforts and
difficult matter: integrity of others on the team,
because as the producer or
1. The person being let go usually
project lead, you’re the only
isn’t surprised – they know better
person in a position to do it.
than anyone how much they have
Nobody wants to organize a group
or haven’t been contributing.
“vote off the island” of a stray
2. As a student or hobbyist, you individual, because it’s necessarily
aren’t disrupting their income, indicative of group condemnation
throwing off their rent payments, and conspiring behind someone’s
or turning their life upside down. If back. Take responsibility. If three
they weren’t constructively other team members are annoyed
involved anyway, they have by the fourth team member
nothing to lose but the idea that seriously in need to be let go,
this was filling a slot in their life they’ll be as frustrated by your
that would be better filled by ineffectualness or lack of
something that’s a better fit. awareness as team lead as they
3. If they weren’t using the time to are about the team member
work on this project, then they needing to be let go. It’s rare, it’s
have plenty of opportunity to be important, but as project lead,
using that time on something else people are counting on you to
instead.
312
know when and how to make that feedback can be observed in the
call. context of the work that was done.
PREPARE FOR DISASTER: MAKE BACKUPS I hear “almost done” about a lot of
Nightly, or at the very least weekly,
hobby videogame projects. This is
make regular backups of source
as distressing as it is inexcusable.
code, asset files, documentation,
If it’s “almost” done, then do the
anything that the team would be
last 6 hours already and make it
devastated to lose. SVN
done. Nobody wants to drive a car
everything to a remote server,
that’s “almost complete,” or sleep
upload a zip to your student web
under a roof that’s “almost
space, use an external hard drive
repaired.” Even if the game isn’t a
– whatever method works for your
high profile project likely to get a
budget and comfort. If a hard drive
lot of publicity, it’s likely to get
fails, whether it’s yours or anyone
orders of magnitude more players
else’s on the team, that should not
if it’s done than if it’s almost done.
be the end of the project. The
producer and lead is accountable If the project needs to end earlier
for seeing to the completion of the than anticipated, due to a team
project, and any potential risk that split, a dramatic schedule
could lead to non-completion is disruption (core people moving
up to that position to mitigate. away usually falls into this
category), or other factors, triage
FINISH IT
Less is learned from an unfinished it. At least stitch back up the
project. The thoughts are never openings, however far it may be
completed, the scope is never fully from the ideal or original vision, so
understood, the project is never that it’s able to stand on its own.
presentably put before others in a We get better at what we practice.
way that their reactions or Practicing doing unfinished work
313
will only make someone better at appealing excuse to slip past an
doing unfinished work. end-of-semester deadline.
LAUNCH PLAN
After the game is done, don’t
release it immediately. If you can’t
wait, it’s not the end of the world
to make it available as soon as it’s
presentable. However, an extra
couple of weeks to put together
some public facing material –
compelling screenshots, short
description text, simple web site
(ideally on its own domain), and a
marketing video highlighting key
features and qualities can go a
long way in getting more people
playing.
I’d suggest not including that
launch plan in the original
schedule. Keep a marketing
timeline (if any) separate from the
development schedule, or it’s
likely – as the QA and testing time
at the end often does – to become
subsumed as the project goes
past its deadline. “Well, we were
counting on not releasing until July
anyway…” is a dangerously
314
SE C TI ON 2
Communication is a Game
Development Skill, Part 1
Many people that invest
their time in mastering
their craft - programming,
design, art, or otherwise -
find difficulty in working
with others. Let’s look at
why this is worth fixing, and
two main patterns of issues.
Team Projects
321
SE C TI ON 3
Communication is a Game
Development Skill, Part 2
In this next part we’ll look
through a mixed bag of
tools that we can consider
and utilize when trying to
improve our communication
with collaborators. We owe
it to our teams (and friends)
to polish our rough edges!
Team Projects
332
forward progress until it’s done While it’s true that the person
and released in a timely manner. drawing the visual art is likely to
So the compromise justification have final say on how the art
that they often have to counter needs to be done (not only as a
with is, “…but we have to keep matter of aesthetic preference, but
this game on schedule” which is a as a side effect of working within
short-term version of “…but this their own capabilities, strengths,
game has to get done.” If and limitations), that does not
someone isn’t fighting that fight mean that others from the team
for the project, it doesn’t get done. shouldn’t be able to offer some
feedback or input in terms of what
Be glad that other people on a
style they feel better about
team, when you have the privilege
working with, what best plays to
of working with a good and well-
their own strengths and limitations
balanced team, are looking out for
(ex. just because an artist can
where you have blind spots. Push
generate a certain visual style
yourself to be a better
doesn’t mean the programmer’s
communicator so that you can
going to be able to support it in
help do the same for them.
real-time), and what they like just
TOO MUCH EMPHASIS ON ROLE
as fellow fans of games and
After that whole section on roles, I
media.
feel the need to clarify that
especially for small team Does one team member know
development (i.e. I can total more about animation than others
understand military-like hierarchy on the project? Then for goodness
and clarity for 200+ person sake, of course that person needs
companies) roles shouldn’t to be involved in discussions
pigeonhole someone’s ability to be affecting the implementation or
involved in discussions and scheduling of animation. But even
considerations. if you’re not an animator, if you’ve
333
accumulated a different set of designer feeling like the boss of
media examples to draw upon, other people who are supposed to
and have an idea for how that do what they say, it can be healthy
work may intersect with technical, and constructive for them to
design, or other complications, approach the development as
there’s still often value in being a another collaborator on the team,
part of that discussion. Though of just with particular responsibilities
course you should still leave much to look out for and different types
of the decision with whoever it of experience to draw from.
affects most, and whoever has the They’re having to balance their
most related experience. own ideas with facilitating those of
others to grow a shared vision.
It’s unhelpful to hide behind your
They’re trying to keep the team
role, thinking either “Well, I’m not
happy and on track, and that’s
the artist so that isn’t my problem”
their version of the compiler or
or “Well, I’m the designer, so this
Photoshop.
isn’t your problem to worry about.”
The quality of the game affects HANDLING CRITIQUE PRODUCTIVELY
When critique comes up – whether
everyone who got involved with
of your game after it’s done or of a
making it. You make a point of
small subpoint in a disagreement –
surrounding yourself with capable
separate yourself personally from
people that are coming from
the point discussed. When people
different backgrounds and have
give feedback on work you’re
different points of view to offer.
doing, whether it’s on your
Find ways to make the most of
programming, art, audio, or
that.
otherwise, the feedback is about
A related distinction to these notes the work you’re doing, it’s not
about roles is the concept of feedback about you (even if, and
servant-leadership. Rather than a let’s be fair here, we could all
producer, director, or lead
334
honestly benefit from a little more have their concerns and thoughts
feedback about ourselves as a heard. People need to be in semi-
work-in-progress, too!). regular contact with the people
who they might need to raise their
Feedback is almost always in the
concerns with, before there is a
interest of making the work better,
concern to be raised, so that
to point out perceived issues
there’s some history of trust and
within a smaller setting before it’s
prior interaction to build upon and
too late to fix the work in time for
it doesn’t seem like a weirdly
affecting more people, or before
hostile exception just to bring up
getting too far into the project to
something small.
easily backtrack on it. Sometimes
the feedback comes too late to fix In one of the game development
them in this case, in which case groups I’ve been involved with
rather than disagree with it, accept recently, we were trying to narrow
that’s the case and keep it in mind down possible directions for going
to improve future efforts . After all, forward from an early stage when
this isn’t the last game or idea little had been set into action yet.
you’re ever going to work on, From just an open discussion,
right? three of the dozen or so ideas on
the whiteboard got boxed as
Defensiveness is often
seeming to be in the lead. When
counterproductive, or at least a
we paused to get a show of hands
waste of limited time and energy.
to see how many people were
SYSTEMS AND REGULAR CHANNELS
interested in each of the ideas on
Forms and routine one-on-one
the board, we discovered that one
check-in meetings can feel like a
of the boxed items had only a few
bureaucratic chore, but in proper
supporters – those few just
balance and moderation, they can
happened to be some of the more
serve an important function.
vocal people in the room. Even
People need to have an outlet to
335
introducing just a tiny bit of update, volunteer to be the one
structure can be important in presenting that update.
giving more of an outlet to the less
Communication is a game
outspoken people involved with a
development skill. As with any
project, who have ideas and
other game development skill,
considerations that are likely just
you’ll find the biggest gains in
as good and, as mentioned earlier,
ability through continued and
probably weighing different sets of
consistent practice.
concerns and priorities.
RECOMMENDED READING
PRACTICE, MAKE MISTAKES TO LEARN FROM • How to Win Friends and
Seek out opportunities to get more
Influence People by Dale Carnegie
practice communicating in all roles
(1936)
and at all scales, as part of a
crowd or in front of a crowd, in • The 7 Habits of Highly Effective
both formal and informal settings, People: Powerful Lessons in
and with a few people or a lot of Personal Change by Stephen R.
people. Covey (1989)
Establishing a Videogame
Development Club
Having a community of
people with skills and goals
can significantly lower the
barriers to larger, higher
quality games. I established
two game clubs, and I really
want you to establish one,
too. Here’s how I did it.
Team Projects
340
REACH OUT TO GUEST SPEAKERS PROVIDE OPTIONAL TEAM RESOURCES
There are a collection of people in We gave every active project team
the organization that are eager to a folder on an FTP server with a
hear about videogame industry custom login and password, for
topics, ranging from recruitment members on the team to share
talks to more experienced files, as well as a section on a
developers sharing their insights. message board to keep a history
Meanwhile, companies have of each project’s discussion.
people who devote their full These were provided as free
attention to finding an audience to secondary user accounts on a
recruit from, and experienced low-cost StartLogic.com account,
developers are often happy to using ezBoard then phpBB for the
have a chance to share their bulletin board system. These
stories. Establish email contact minimal resources helped facilitate
with anyone and everyone that working around asynchronous
you think might make the trip – schedules for student teams.
more people will say no than yes,
Between Google Docs, Dropbox,
but even one yes a year can
Assembla, and GitHib, and other
translate to happier members, new
services already out there, it may
members (guest speakers are
not be as useful anymore for the
prime events to invite non-
club to provide things like
members to drop in on), and
dedicated FTP space.]
improved networking
GIVE CONTENT CREATORS LATITUDE
opportunities for all. It can even
People want to show off, and get
lead to internships and jobs for
practice in, whatever style or
organization members, which
subject they know how to do best.
translates into lasting alumni
Projects that can accommodate
industry connections.
this will come out better, yielding
341
not just better games but happier biting off more than they can
members. chew. The game either doesn’t get
WEEKLY GOALS FOR EVERYONE finished, or it doesn’t get finished
Busy work isn’t a good thing, but well.
people get involved in hobby
Instead, I’ve encouraged club
projects out of an interest to
members to think historically for
contribute, gain experience, and
reference points, as a way to
have something to show off
tackle less complex (but fully
proudly when it’s done. If
complete) games before moving
someone on the project team has
on to more involved ones. The
a three week period with nothing
best way that I’ve found to get this
to do, they may fade away from
across is to frame it in terms of
feeling like there’s no use for them
decades or half-decades.
on the team.
Encourage developers that have
ALLOW PROVEN MEMBERS TO TAKE ON MORE never made a game before to start
This partly addresses the above or join teams making games of
problem – while one project’s need 1970s complexity (granted, they
for an artist or audio contributor may look and sound more modern
slows down, another project’s – this is only about how involved
needs may swell. This also creates the code and design become, and
a greater variety of experience in the game’s overall scale or scope).
the same amount of time, and After they’ve led or been involved
helps project completion. with a team of 1970s, move on up
ENCOURAGE HISTORICAL PROGRESSION to 1980s or early-1980s
Although everyone’s temptation is complexity, then up toward 1990s,
to jump right into the deep end, and so on. This gives clear
making games that resemble the reference frames for what’s
ones they’ve been playing lately, appropriate and mountains of
that frequently leads to people enjoyable examples to draw from.
342
More projects get finished. More their dedication to game playing.
projects get finished well. Most Let those students find such
importantly, more developers get outlets elsewhere. There’s no
the foundational skills and shortage of opportunities to play
production experience that they videogames with other people in
need to later see through some of college.
their more ambitious ideas
If any game playing goes on under
together.
the organization’s name, it ought
DON’T BECOME A GAME PLAYING CLUB to be playing games completed by
We had members and non-
the club, either to help new
members alike ask our
members see the types of projects
organization to host tournaments,
that can be done in the timeframe
game nights, game release
given, or to help recruit outsiders
parties, retro game nights, game
at a public demo by showing that
movie nights, and every such
the club is serious about creating
variation. There’s nothing wrong
finished, playable games.
with those types of events, but as
ACTIVELY RECRUIT A VARIETY OF PEOPLE
mentioned at the start of this
A room full of people that are
entry, one of the common causes
experts in the same area will all
for organizations of this sort losing
overlook the same problems and
focus and getting nothing done is
weaknesses. Every type of expert
on account of becoming a game
can help fill in for different
playing and culture club instead of
oversights by others.
a game development club.
Even if it’s a room full of computer
The videogames developed will be
science people that know how to
worse, and more likely to wind up
program (this was our core group
unfinished, if a bunch of people
with the Game Creation Society), it
are hanging around not for their
helps to find programmers with a
dedication to game making but for
variety of side interests in music
343
composition, sprite animation, teach themselves new things is
interface design, etc. what their class time is for.
Active recruitment is also an MINIMIZE CONTENT BOTTLENECKS
Role-playing games and
important aspect of this. Flyers are
adventure games are scary. No
important, but evangelizing for the
matter how simple they look, they
cause goes a long way, as does
require (at a minimum) dozens of
being outspoken at fairs and other
pieces of enemy art, level layouts
recruitment opportunities.
for dozens of cities, outdoor areas,
BE TECHNOLOGY AND TOOL AGNOSTIC
and dungeons, balanced stats,
Some 3D artists prefer Maya to 3D
prices, and art for a wide variety of
Studio, or vice versa, while some
items, several emotionally intense
others are most productive in
songs, and countless pages of
Blender (or they may not have
strangely paginated written dialog
$3,500 laying around to spend on
for dozens of characters. It
their hobby). Some programmers
probably needs at least a minimal
swear by C#, some prefer
in-game scripting engine, too.
ActionScript 3, while others are
After I had been making
content to script in Unity or Game
videogames for seven years, I was
Maker.
able to lead a small team to make
Whatever tools and technology a really weak, limited RPG. That
platforms that people know best, isn’t offered as encouragement,
welcome them to use those but as a warning.
platforms to their fullest extent. At
Side-scrolling beat-em up games
the end of the day happy
and platforming games also
members and well-developed
involve a huge amount of
content will go further. Giving
animated art. Variety in bad guys,
people freedom to teach
bosses, and backgrounds are
themselves new things is
awesome – but forcing them to
344
what compel people to keep very important that the club
playing them. maintains a reputation for finishing
its games. Internally, this means
Some types of videogames scale
it’s very important to the club that
much better, and don’t require
project leaders ensure that the
mountains of different art –
game they start gets finished. This
especially puzzle or action games
requires that project leaders have
that take place in non-scrolling/
at least minimal fluency in digital
one-screen levels. When
art, programming, and making
beginning teams present their first
audio for use in the game, such
projects, it’s best to favor games
that if everyone else left the team,
that will be able to efficiently reuse
it could be finished, even though it
content in different combinations,
may not look or sound as good as
and get away with minimal
was intended. This accountability
content. Not only does it improve
further motivates project leaders
the chances of that particular
to keep their project members
project succeeding, but it prevents
content, and to seek replacements
any one overly ambitious, epic
any time project members leave
project from gobbling up all of the
the team, since work they can’t
club’s content creators into a
get someone else to do is work
black hole that (likely) won’t turn
that becomes theirs.
into a finished game.
THE DEMO IS THE GAME
PROJECT LEADERS MUST BE ABLE TO FINISH
ALONE As a scheme for scope reduction,
People will leave the organization. one thing we did to help reel in
People will leave teams. No matter project scope during pre-pitch
what people intend, and no matter meetings was to ask the project
how nicely everyone is treated, leader what is the minimal amount
things will change, and priorities of functionality and content they
will shift. To the outside world, it’s
345
would need to create a demo for characters, no one takes a pitch
the game. like that seriously.
Since it’s a portfolio and FOCUS ON VIDEOGAMES, NOT GAMES
A club that tries to be for
experience piece for the team’s
everybody is a club that works for
project members, this demo size
no one. A board game, dice game,
is about as much content as most
tabletop game, D&D game, casino
outsiders will digest. Making a
game, sports game, game show,
larger version of the game would
game theory, or Conway’s game of
have diminishing returns on
life club is not a videogame
learning, in addition to increasing
development club. Even if those
the odds of the game never being
are things that may appeal to
completed. And a videogame that
some categories of videogame
isn’t completed isn’t a videogame
designer, they’re less likely to
to the outside world.
appeal to 3D artists, software
In consideration of this, we engineers, dialog writers,
adjusted plans, content, team playtesters, animators, music
size, and story for the “demo” composers, sound effects
sized version to be the finished specialists, and the whole host of
game, before the project was ever other skills that go into hobby and
pitched or started. professional team videogame
This has the unintended side development.
effect of increasing believability Welcome members that have an
and buy-in from members to the interest in those things, just as
project pitch. When someone tries much as members are welcome
to entice members to join their that have interests in programming
project that is planned to have 20 operating systems, animating
worlds, 30 weapons, and 16 main feature-length films, and writing
novels. But keeping it clear that
346
the organization is not there for
pitching, producing, and
networking games other than
videogames, just as much as it
isn’t for film making or novel
writing, helps keep the core
strong.
BE READY TO ADAPT
Depending on who the
organization’s leaders are, what
the project leaders want to make,
the rules of thumb will need to be
different. How established the club
is will also lead to huge changes in
organizational needs – a young
club is battling aggressively for
growth, credibility, and clarity,
whereas a more established club
does well to focus on retention,
visibility, and stability.
347
8 Many people making their own
videogames consider going the
professional route. Here I’ll share
some stories and realizations
from my professional years
about considerations and
tradeoffs to navigate. Every
person’s path is different.
Industry
348
SE C TI ON 1
349
very different way than others who business taxes, pursuing funding
are not counting on it as their (if applicable), contracts,
primary income. This is true for engagement with fans and press,
athletes, singers, hot dog eating and so on.
champions, painters, eSports
With a larger company, those
players, and dancers.
other positions outside of
It’s true for making videogames, development tend to be filled by
too. separate specialists. At a smaller
company, those obligations often
Some Implications
tie up a surprisingly large fraction
1. COMMERCIAL GAME DEVELOPMENT
INVOLVES A BUNCH OF WORK THAT ISN’T of the time, attention, and energy
DIRECTLY MAKING THE GAME.
of someone that’s also trying to
When we think about what people
juggle one or more of those
or skills are needed to make a
developer roles.
game, at minimum, we often split
2. MANY PEOPLE THAT WORK AT LARGE GAME
up our thinking into roles like STUDIOS ARE UNABLE TO (OR NEVER HAVE)
code, design, art, and audio. MADE A FULL GAME OF THEIR OWN.
350
network backend, dialog writing, project may be difficult to pinpoint.
implementing someone else’s It couldn’t have happened without
design spec, texture artist, them – or someone with a similar
outsourcing coordination, skillset filling in for them – but their
management layers, and so on. work seamlessly blends into the
whole.
This is not at all to discredit,
disrespect, nor devalue what That leads naturally to our next
professional videogame point.
developers do. Altogether the 3. LARGE COMMERCIAL GAMES OFTEN DIVIDE
coordination of specialists is WORK AMONG MULTIPLE SPECIALISTS,
YIELDING LESS CLEAR ARTISTIC OR
essential to making some truly AUTHORIAL OWNERSHIP.
amazing end products possible, On a small team, one person
which many players enjoy. Clearly, might think up how an enemy
a simple capitalist argument can should look, then do the concept
be made that they are art for it, 3D model it, texture it, rig
demonstrably among the very best it, and animate it – maybe even
people at what they do. They are code its behavior in-game, too.
all, as a part of the total team, That’s a lot of creative freedom,
professional videogame makers. and in some ways amounts to
being ones own boss since work
Yet surprisingly few of them have
earlier in the process affects what
ever worked on something that
the work is like further ahead. In
was truly their own personal
small enough projects the same
game, their own original idea, or
person may even be doing that for
their own direction. They may
every enemy, item, and
have worked on dozens of
environment piece in the game.
commercially successful games
that you’ve heard of, however on By contrast, on a large team, the
each game their individual input or person or people best at each
exact contributions to the overall step of the art process (say,
351
texturing), and/or for a particular very specific aspect of a far
kind of art asset (environmental, grander and longer term project.
character, UI, etc.), may be That transition can be a
working only on that slice of the comfortable, healthy, desirable
process, forming a digital one for some people that prefer to
assembly line of sorts. The end specialize, especially if they see it
result may be more impressive, as coming and understand the
though the output of someone implications. It can be a very
incredibly talented, well trained, difficult and unexpected change
and inhumanly consistent in every for others.
step of the process. It requires 4. CREATIVITY WITHIN LARGE COMMERCIAL
more sophisticated collaboration PROJECTS REQUIRES GOOD PROCESS, NOT
FOLLOWING WHIMS.
and scheduling. However this also With so many people’s work
shifts the nature of personal interconnected, the misuse or
ownership from “I created these misdirection of time by one person
whole things within the game” to can have a ripple effect on dozens
“I helped fill in aspects of many of others on the team. This can
different things in the game.” make it terribly expensive to
When students come fresh out of simply mess around, or to pursue
schools that have game our pet ideas within the project.
development classes and join Running a business often involves
large studios they are often going a lot of processes, quality control,
from a background in which they and office politics. Together these
enjoyed substantial ownership serve to filter, refine, and
over a large fraction (often all) of sometimes dilute individual
one or more smallish personal contributions. This means
projects, into a new position conducting market research,
where they’re being paid to having rigorous approval and
concern themselves only with one testing processes, ruthless editing
352
for quality, and on large teams, When the outcome affects the
many team members having salaried jobs of many people,
relatively little leeway or input having that filter process built in
outside of their specific area(s) of makes a lot better sense than just
expertise. making whatever exploratory stuff
comes to mind.
While potentially frustrating from
the inside, to the outside world 5. BUSINESS PRESSURES HAVE TO AFFECT
COMMERCIAL GAME DESIGN.
this can ultimately yield a product When making games
more likely to fare better in the professionally there’s potential for
marketplace. A game that’s a frustration and conflict all along
mishmash with dozens of people’s the way between what you
divergent interests and personal personally feel like creating and
ideas about matters beyond their what you (or your managers, or
main skillset is likely to lack focus, backers) think is most likely to be
coherence, and the level of fidelity the profitable decision.
that comes from specialists
sticking to their specialties. If entertainment business worked
on a linear scale, and was more
When people occasionally write predictable, there might be more
war stories about their time in room for someone to simply opt to
industry, with regard to burning make some conscious trade offs
out or finding it exhausting, between making a little less
beyond the total number of weekly money in exchange for some
hours worked I think it’s often also personal creative calls. However
because of how this process it’s not a simple slider. If dealing
tends to grind up, pulverize, and only with profits from internally
over time wear down creative designed projects, as opposed to
impulses. An environment must be buffering it with outside contract
fostered in which only the fittest work, the decision doesn’t fall
ideas survive to reach customers.
353
between “do it our desired way This isn’t just about small detailed
and maybe earn a little less” but decisions, either. Some people get
instead it comes down to “do into making games because they
what we think will be profitable, to are drawn to a certain gameplay
hopefully stay in business longer” genre to only later realize that by
versus “ignore what we think will the time they’re making games
be profitable, and risk going out of professionally that entire genre
business.” may be over saturated, widely
deemed outdated, dominated by
The videogames business, like
entrenched companies that had a
many professional entertainment
massive head start, or otherwise
domains, tends to be hit-driven,
has become a very unwise domain
and public taste is a rapidly
in which to focus a business.
moving, unpredictable target. A
very small percentage of Or, as a matter affecting many
participants do exceptionally well, people currently in industry: some
meanwhile a much larger developers were drawn to the
percentage scrape by, or even types of games designed around
work at a loss, just for a shot at an older payment model. Then
joining that small percentage at when the ways that people
the top. primarily pay for their games
subsequently changes which
In that kind of environment, a
types of games do well in the
creative call outweighing business
marketplace, many find it hard and
pressures is so rare it’s deemed
unnatural to rethink the design
newsworthy. In practice, even then
ideals that they grew up with in a
it’s at least partly a calculated,
different way which is, for
justifiable gamble to stand out, or
example, compatible with free-to-
to generate discussion, like the
play, ads, in-app purchases, social
“No Russian” mission in Modern
Warfare 2.
354
network integration, crowd- scale, faces the same profit
funding strategy, etc. pressures and visibility challenges
as any garage band or beginning
I’ll never forget something that I
novelist, but that’s mostly a topic
learned from the first professional
for another day). It has to be, in
Lead Game Designer that I met:
order to consistently cover the
when he gave talks to students
overhead of the workspace and
about making videogames
people’s salaries.
professionally, he challenged them
to think about how they’d go It certainly still takes talent and
about the game design for Jar-Jar hard work, and often involves
Binks Racing. He picked that case working with excellent coworkers.
to illustrate that even as the Lead It challenges people’s skills,
Game Designer, at a large creativity, and interpersonal
company there are often business maturity. It’s a very hard thing to
people higher in the chain do at that scale. It’s just of a
deciding what can get made at a fundamentally different nature at
profit, and your task is to make the that scale, perhaps like how
best version of that you can. preparing for and playing soccer in
the World Cup likely involves a
It’s Still a Perfectly Fine Job
lifestyle and stress level quite
I think it’s important to point out unlike playing a pickup game at
that most of the above is probably the park with friends or neighbors.
true about essentially any office
career. I am not trying to talk anyone out
of doing it. There are people who
My point here is to remind people deeply love the work in those
that working on videogames as a environments. For someone that
career, especially at medium or desires deep specialization,
large companies, is also an office instead of being involved with all
job (or at a solo and small team
355
parts and details, it may be just and does so often, we don’t think
what they want to do. he’s failing at it if it isn’t his career.
356
getting paid to do is generally not importantly: you do not need
preparing them to replace him. anyone’s permission to start
There are, granted, some people making it, or to begin looking up
like him who are in positions in the and practicing the missing skills
entertainment industry where they you’ll need to pick up in order to
can lead armies of others to do so.
realize their creative visions. Those Maybe some people will fall in love
positions are comparatively few with what you’re making. Maybe
(total, in the entire known universe) people will urge you to take it to
and many, many times harder to another level, finding ways to
wind up in or hold than the already make a living from working on
fiercely competitive entry level improvements to it. Or maybe they
positions. That’s true though only won’t, in which case here’s the
if you are doing it as a career. In worst-case scenario: you’ll just be
contrast, if you’re open to working left with the game that you
on it as a hobby, you can start personally wanted to create. Along
working on bringing your own the way you also got practice at
creative vision to life literally right development skills that you can
now, with the very same time and then apply to make your next
computer that you’re instead using projects better.
to read this article on the internet.
That’s not a bad outcome.
The result might not look or sound
In this section, I mostly distinguish
like a Next Gen title, pushing the
stable careers within medium-large
limits of the latest tools and
companies, in contrast to non-
hardware. It probably will not get
commercial small teams. Small
shown at E3. You may have to get
teams making commercial projects
clever about finding ways to pull it
operate in every form along the
off with your capabilities and
gradient between).
collaborators. But most
357
SE C TI ON 2
Matt D., as part of an assignment, had to send but also within the same indie
questions to someone in a career he finds from one project to another.
interesting. He chose independent game
developer as the career, and I’m the someone he I don’t see myself as having one
reached out to. Here were my replies, as of 2012. primary mission, so much as
1. WHAT IS THE PRIMARY MISSION OF THIS
having an evolving skill set that I’m
ORGANIZATION OR PROFESSION? continually looking for new
One of our key advantages as challenges I can adapt it against:
indie developers is our agility – we research projects, art projects,
can change our reasons or commercial projects, hobby
approaches on a moment’s notice projects, etc. each of which
without needing to retrain a comes with its own mission
hundred person workforce or get particulars.
buy in from outside third parties,
so the primary mission not only Sometimes an independent game
changes from one indie to another, developer’s mission is to make
358
money, sometimes to change how Likewise, to a lesser degree, when
people see or think about I worked with publishers (ngMoco
videogames, sometimes to for Topple, Sonic Boom for Alice in
express ourselves artistically, and Bomberland and iZombie: Death
sometimes to simply entertain March), certain responsibilities
folks by making something fun. I were taken on by or at least
could give a very specific answer shared with the publisher, such as
to my primary mission on any creating marketing materials,
given project that I’ve worked on, managing QA testing, completing
but on the whole across all localization for other languages,
projects I don’t believe there’s a etc. However unlike when I
truly common thread. worked within a department at a
2. WHAT ARE THE RESPONSIBILITIES OF YOUR large company, when my role was
DEPARTMENT? that of an outside contractor, I had
When I have done technical game the added responsibilities of
design for larger companies scheduling work, vetting and
(Electronic Arts, ZipZapPlay, Will signing subcontractors to
Wright’s Stupid Fun Club) within a collaborate with, handling my
department, my responsibilities share of the budget, and
were much more narrowly defined managing relations with the
than they are in my role as an publisher as an outside party.
independent game developer. In
those cases I was responsible for However as an independent
digital prototyping, as well as developer, I don’t have a
proposing and documenting department to work within, I’m just
gameplay systems, laying out level a person making things. In this
content, and authoring gameplay context, my response to question
elements. 3 is really the answer that fits here,
too, so let’s move on to that one:
359
3. WHAT ARE YOUR RESPONSIBILITIES? • Hiring contractors (when
I’m responsible for:
applicable; no budget = no hiring)
• Director work: deciding platform, 4. HOW DOES YOUR JOB RELATE TO THE
business model, genre, etc. OVERALL ORGANIZATION?
Since, in a way, in the case of
• Production work: scheduling how being an independent videogame
long I have, what has to happen developer my job is the overall
by when organization, to provide a more
• Designing: figuring out the interesting response to this
details of what I’m trying to do question I’ll instead address how
my job relates to the overall
• Engineering: making the
ecosystem/industry of games.
implementation work
Publishers look to people like me
• Content authoring: creating
to execute on an idea, within a
images, sounds, and levels
certain budget (I have lower
• Managing: when I have a team, overhead than a full game studio)
for example I find someone better and within a certain timeframe (I
at animation or music composition work extremely quickly), or as
to help create those assets. It’s up someone to place a bet on (they
to me to ensure they’re help fund a project, giving me
productive, on schedule, and more budget and feedback to
satisfied with their involvement work with than I’d have on my
own, in exchange for a share of
• Promotion: recording and editing
revenue and credit).
promotional videos, making icons,
writing descriptions, and Players (by no means all, but
otherwise trying to call awareness certainly some!) value people like
to the game me as a source of game types that
they’re not likely to see come out
• Budgeting (when applicable; I
of a big studio. I’m able to
make many projects for $0)
360
experiment constantly and 5. WHAT OTHER PEOPLE DO YOU WORK MOST
CLOSELY WITH AND WHAT DO THEY DO?
severely, without needing to Although some of my projects are
explain much to anyone until it’s created alone, when I do work
done, at which point the end result with others, I tend to work with
is available for all to see, play, and completely different collaborators
sometimes borrow ideas from to on nearly every project. The most
build upon in other projects. common roles I’ve hired others for
Indies also look to one another for have been artwork (animated
advice, feedback, and success sprites, character illustrations,
stories, with countless varied background paintings), audio
definitions of what success means (professional-quality sound
(making money, getting noticed, effects, and in a few cases original
creating something new that gets soundtracks), and on non-
cloned, reaching a different commercial projects I tend to
audience, getting a game out on a open up design roles to peers to
particular device or distribution help them get experience.
channel, even just finishing and When I’ve worked with publishers
releasing a complete game I’ve typically had one to three main
project). contacts at the company that I’ve
I’ve accepted as one of my spoken with regularly about
personal objectives getting more progress, questions, feedback,
people into videogame making, and so on. See response 2 for a
which I do with my business, the more complete explanation of
student game development clubs I what they do.
established (at Carnegie Mellon Lastly, in a very real but more
and Georgia Tech), and fielding indirect way, I work the players
developer questions by email as that try my games. That happens
much as time allows. by keeping metrics of how many
361
people each project reaches, communication between team
googling to find out what players members, documentation,
are saying about it, reading all financial/scheduling work, and
feedback I receive after it has pretty much every aspect of the
been completed, and so on. All process. In the end, the
they have to do is try the game, videogames are of course also
and if it leads them to say played on computers.
something about it to either me or 7. WHAT TYPE OF EDUCATION OR TRAINING
the communities in which they DOES THIS JOB NEED?
play, then they’ve done their part. Because there’s no hiring manager
This in turn helps give me a more to impress when working
complete picture of what sort of independently, in theory all that
an effect the game is having matters is that someone has or
(maybe it’s played by many can partner up to account for all
people, maybe it’s only reaching a the technical and creative abilities
smaller crowd but they seem to needed to pull a complete
really enjoy it, or maybe it flat out videogame together. However in
missed the mark and no one practice, a good computer
seems to like it but me!), and also science degree is often helpful for
helps inform me of how different videogame programmers to learn
player communities on the web many useful ways to think about
respond to different types of programming and solve novel
videogames. problems, whereas proper training
in creating digital art, editing
6. ARE COMPUTERS USED ON THE JOB? IF
YES, IN WHAT CAPACITY? audio, or other content production
Yes, computers are absolutely areas can be beneficial to
used on the job. They’re used for preparing a videogame artist or
programming, level design, image audio person to create top-tier
creation, audio editing, music work.
composition, video editing,
362
Those traditional paths also offer my professional independent
the benefits of a potentially videogame development.
stronger network of peers to
My various work experience at/for
collaborate with while learning,
other companies in many ways
additional opportunities to learn or
factors in as additional education
first gain outside work experience
and training for the type of work
through the institution’s reputation
that I do.
and visibility, and of course a solid
backup plan in case being an Otherwise I’ve been making
independent videogame developer videogames in my spare time
doesn’t work out full-time. since the late 1990s, completing
an average of four games every
Although a very small circle of
year since.
independent videogame
9. HOW DID YOU DECIDE ON THIS TYPE OF
developers have made a WORK?
tremendous amount of money, for I was comfortable with
many it doesn’t pan out financially, programming when I started
or works decently enough for a college, so I assumed I would do
while but doesn’t turn out to be that for a living, and went into
sustainable as a primary source of Computer Science. On the side I
income for a family. helped launch a student
8. WHAT TYPE OF EDUCATION OR TRAINING videogame development club, and
HAVE YOU HAD? some of the industry guest
I completed an undergraduate
speakers that we brought in
Computer Science degree from
accepted resumes. I got a call
Carnegie Mellon in 2007, with a
from one, which led to an
minor in Business Administration.
internship, and I’ve been doing
I completed a Masters in Digital videogame work commercially in
Media at Georgia Tech in Spring varying capacities since.
2012, though that happened after
363
My transition from corporate to existed semi-briefly for PC games
independent game developer in the early 1980s before studios
happened in a number of steps, largely crowded that space, then
beginning with corporate studio mostly disappeared for awhile as
work out of university, followed by console manufacturers and PC
getting involved with a videogame retail also favored studios over
startup, over to doing videogame individuals, but has re-emerged in
development on contract on the the past 5-10 years or so for web
side, then to videogame games, smartphone games, digital
development for a publisher, and distribution like Steam, social
lastly doing videogame games, and comparatively “indie”
development completely console channels like XBLA, PSN,
independently. Each transition and WiiWare.
occurred due to feeling like I was
There is also a growing crowd of
ready to entrust myself with taking
capable, passionate videogame
on a larger chunk of the
developers on the rise, eagerly
responsibility than I was able to do
looking for opportunities to create
in my current (soon previous)
videogames for a living. Granted,
position.
pretty much any creative and
10. WHAT DO YOU SEE AS THE DEMAND FOR skilled job in the world is and has
JOBS LIKE YOURS IN THE FUTURE?
It’s really anyone’s guess. The long been highly competitive,
economics driving videogame whether we’re talking about novel
development have changed writing, acting, being a
dramatically every 5-10 years professional athlete, composing
since the industry started, and it music, etc. However as in those
seems very likely to continue fields, there will probably always
changing, possibly even faster. be a place for people dedicated to
This is doubly true for independent being really amazing at it that find
videogame developers, which a way to set themselves apart
364
from the crowd – someone’s going outcome of many projects by
to be doing it, and that someone is developers that have had success
almost without exception with other titles!)
someone that has committed 13. WHAT ARE THE SALARY RANGES, E.G.
substantial time and energy into TYPICAL STARTING SALARY AND TYPICAL TOP
SALARY?
preparing for it. The amount earned by
11. WHAT DO YOU LIKE MOST ABOUT YOUR independent videogame
JOB?
developers varies wildly, as has
It’s constantly changing. This
my own income from it over the
keeps it exciting!
years. There really is no such thing
Likewise, the outcome of every in this case as typical, starting, or
project is pretty much solely up to top, since it depends on the
what I create and how I present it. success of an individual’s projects
With any given commercial project in the marketplace.
that I do independently, it might be
14. DO YOU HAVE ANY ADVICE FOR ME AS I
hugely successful. (…but generally CONSIDER MY CAREER OPTIONS?
this is not what happens!) While I certainly encourage
12. WHAT DO YOU LIKE LEAST ABOUT YOUR
training yourself to develop
JOB? videogames independently, I
It’s constantly changing. This would advise thinking of that in the
keeps it stressful! near term as a hobby and/or as
And again, the outcome of every practice for some other type of
project is pretty much solely up to primary/fallback traditional career
what I create and how I present it. option (software engineer, project
With any given commercial project manager, user experience
that I do independently, it might be designer, animator, etc.). Properly
a total flop. (…this happens very prepared for, those jobs often pay
frequently to independent better on average, and certainly
developers, and is also the pay more reliably, than going
independent. Those positions also
365
create the possibility of getting what my writing is about. Besides
additional experience and being a fun and different way to
connections at an established express ourselves, it’s a context to
company, hopefully saving up work with skilled people that think
some money in the bank or very differently, reach strangers
helping to pay off student loans, around the globe with our creative
all while building your credibility as output, and of course to learn and
a professional. practice technical skills of all sorts
that have a myriad of other
(Consider that when people find
applications in modern life.
out I did technical game design
work on console games at EA, Should any given person try to
even though only for 11 months become a professional painter,
and only on two different projects, guitar player, movie producer,
potential collaborators or business poet, or swimmer? It depends very
partners can instantly “get” what much on the person, and it’s very
that means with much less effort likely to be a bumpy and very
than it takes to contextualize the challenging path, involving a
many years I spent before then decent amount of luck on top of
independently making dozens of ability and qualifications, with
videogames they’ve never heard significant risks along the way but
of.) potentially significant rewards.
15. ANYTHING ELSE YOU WOULD LIKE TO TELL Many people can paint, but that
ME ABOUT THIS PROFESSION? doesn’t mean someone can
Whether or not it works out as a automatically make a living from it;
primary career path, I’m a big being able to simply make a
believer in there being many other videogame (or multiple
valid reasons to make videogames videogames) independently does
personally, at the very least on the not automatically mean that said
side as a hobby. That’s much of game(s) will earn enough money
366
to be someone’s main source of network, and self-knowledge in
income. However, apart from relation to becoming a
these beings done professionally, I professional independent
think that the world is better off videogame developer, helping the
with more people painting, playing chances that the path into it will
guitar, making movies, writing become a somewhat more
poetry, and swimming. realistic and viable option.
Likewise, it’d be irresponsible for
me to tell anyone I don’t know
extremely well that they should put
all their eggs in one basket and
aim straight for something as
unpredictable as independent
videogame development as their
main career plan – maybe it’ll work
out, and it’ll be terrific if it does,
but the odds are rough and it
takes a particular type of person
to thrive in the uncertainty and
types of challenges that come with
it. However I don’t think that the
difficulties of doing it as a sole
source of income should get in
anyone’s way of making
videogames. And in the meantime,
that experience making
videogames as a hobby can
increase someone’s core skills,
community reputation, peer
367
SE C TI ON 3
369
version gave us an edge from
being able to practice without
burning through change. That’s
what got me excited about it being
a pretty faithful recreation of the
arcade game when I was a kid –
otherwise I certainly didn’t care
nearly as much then as I do now
Ninja Gaiden and the Final Fight games showed our
heroes about to get buzz-sawed or blown up if we about accuracy of emulation/ports
didn’t continue. for its own sake.
Street Fighter II made the defeated
fighter look beat up and shamed
after the match, even with built-in
(textual) trash talk.
This effect was of course amplified
considerably between human
players. To challenge someone
else to earn back your pride in Like many of the other features designed for
Street Fighter II then cost another optimization of revenue in an arcade context, these
screens were kept around for the console ports, too.
coin. To practice and become
become skilled enough to win In the even earlier console market
when challenging someone else on a separate design trajectory
was going to cost even more than the arcades, Atari Adventure
coins. I think part of the game’s and Pitfall hit on the point that for
success even as a console game home games a longer play session
came because when it hit SNES might be desirable, and that’s the
and Genesis arcades were still direction that Zelda and Dragon
socially active (read: relevant to Warrior / Final Fantasy later
business) places, and the home popularized even further. While it’s
370
not nearly as common anymore that played Snood, but no one
due to the ability to download that paid a penny for it, it was like
online demos (though I hear it the WinRAR of downloadable
technically still happens in places, games at the time.
and via a few mail services that I
don’t know anyone actually using),
recall that people used to rent the
full games for a couple of days at
a time from Blockbuster, or
Liberty, or Hollywood Video or
whatever. That reinforced that
games of a certain length were
destined to be rented instead of
bought, dictating a certain genre Briefly, expansion packs were a
and length of content in order to common way companies tried to
translate to sales. diffuse the massive costs of
developing new engines and IPs,
When games shifted to a
without going to the full length of
shareware/episodic model in the
generating expensive sequels with
early 1990s with id Software’s
higher expectations. We’ve seen a
Wolf3D and Doom popularizing
shift away from that toward more
that as a sales channel, that
granular DLC, but the same kinds
favored certain lengths and genres
of design and production
to be able to upsell people
discussions are still happening,
effectively to buy the full versions.
just about, “What kind of game
Designers trying to use that model
can we make for which DLC will
that didn’t heed certain design
work well” instead of about genres
patterns may have still gotten
that players would buy an
downloads but not sales – I
expansion pack for.
personally know a ton of people
371
Steven Kent, in The Ultimate capitalize on a channels
History of Video Games [sic], affordances become the highest
explained that Pokemon – an IP grossing in their category, making
that a whole generation adores – them the most recognized brands
was an idea executed by Nintendo and the designs most copied by
because it would get Game Boy peer companies in an effort to split
players to buy and use Gamelink that pie.
cables. (I.e. in case the theme
When I first heard anything about
being “Gotta catch’em all” didn’t
microtransactions in the United
make it sufficiently clear, the
States, before the iPhones or
Pokemon franchise was explicitly
Facebook apps, it was from a (at
designed to manipulate people
the time fellow) AAA developer
into spending extra money.)
telling me that someone had finally
The goal of MMO’s is to keep found a way to get China to pay
people tied up enough in money for software. The Chinese
continually added content and players would pirate full games,
their social obligations that they there was simply no way to sell
won’t cancel their subscriptions. them $60 USD retail, that’s not
The goal of addictive little mobile how that part of the world works/
games is to get people to keep worked. However they would
pulling up the game frequently willingly throw down a few pennies
enough when standing in line or here, a nickel there, even a dime
waiting for the bus or before class to get temporary boosts and
to get others around them to benefits in their games. Bam, just
notice them playing and ask about like that, a billion more potential
it (I’m looking at you, Angry Birds). customers just fell within the
industry’s sights. Not long after
The method of a game recouping
that, developers discovered that
its costs dictates certain priorities
character customization
in its design. Games that
372
microtransactions were often more old arcade game level of difficulty
palatable to Western gamers that – I turn to pinball machines to feed
were typically more obsessed with my antiquated tastes (as much
meritocracy and expression of designed to manipulate people out
individuality. of their quarters if anything was) –
and I realize that doesn’t suit
When we get into games as
everyone’s tastes.
players, we don’t necessarily think
about the connection between the I acknowledge though that the
game’s design and how that games I grew up playing were
connects to its method of often designed with the economic
payment. We just play the games models of their time in mind, and
we like. When the dominant that the same is true now, only the
economic models that games get methods and timing and nature of
paid for change, then the design payments have just changed. The
principles that are successful types of games designed to seek
within those markets change, and profits in these new and different
we may find that our tastes were conditions and payment schemes
left behind or become niche, while haven’t necessarily been my cup
products we don’t care for of tea, but they clearly appeal to a
suddenly become the primary lot of other people.
interest of new companies making
It seems almost as though the
the next wave of games.
metaquestion actually being
I know some people that really, handled in these types of
truly, genuinely enjoy playing discussions is something more
social games on Facebook, that along the lines of: what are players
feel like microtransactions are a who got into games for how they
perfectly acceptable and normal used to be designed (as a function
part of play. They don’t like the of formerly dominant payment
kind of games I like. I prefer the
373
schemes) ok with in games that
rely on microtransactions?
To the extent that many players of
microtransaction games – I even
suspect most players playing
those games – weren’t and aren’t
actually players of “core gaming”
releases on HD consoles, arcades,
or top-of-the-line PC rigs, but
were instead maybe the sort of
player who liked Peggle and Diner
Dash and WiiSports or computer
MahJongg, it seems like this line
of discussion risks skewing our
priorities as designers even further
toward satisfying our own
interests based on the types of
games that we grew up playing.
We’re probably not a particularly
representative sample of the
players that microtransaction
games seem to genuinely appeal
to.
374
SE C TI ON 4
377
• Japanese videogame studios are the videogame’s art needs are
often merging, and mostly filled, while waiting for the game to
shrinking. ship. Rather than being a process
step – except in the case of very
• Capcom and several other
rough sketches for personal
Japanese studios (possibly
planning – this sort of art gets
including Namco?) closed their
done late in the process
American studios. Nintendo is one
separately, explicitly for use in
of the few with a foot still firmly in
marketing materials.
the US.
• Creative people in the
• There are virtually no studios in
development process in American
Japan with positions for “game
studios sometimes become
designers” in a non-technical
embittered over feeling lack of
sense. The director, programmer/
control in the work they do, losing
designer roles, and artist/designer
a sense of ownership. Partly from
roles work together to cover the
the culture in Japan being one that
job function sometimes relegated
emphasizes duty and mutual
to “game designers” in some US
respect, creative people in
studios.
Japanese companies seem to be
• Japanese videogame artists better able to take direction while
work almost exclusively in the still feeling an immense amount of
resolution, format, and fidelity ownership in their work.
required by the game, concerned
• Everyone on a Japanese
almost exclusively with how their
videogame development team
art looks during play. Concept art,
generally understands or sees
and the sort of high detail
most of the big picture. There is
imaginative sketching that
not an intensely specialized
appears on packaging and
attitude of just being with the
manuals, is often produced after
company to work on an isolated
378
part, and everyone shares interest that anyone can be certain it’ll still
in how the work and final product be around 5-10 years from now.
will come together. History is full of surprising upsets
that shook up huge companies
• The culture of duty and mutual
and industries practically
respect also results in games
overnight.
which have a much more focused
creative vision. Although most
people on the team have visibility
on and interest in the big picture,
they work toward their common
goals without the need to force
their own ideas into it. This may
also be a side effect of the
tendency for much lower job
turnover – in the US, everyone
feels like the features and visible
pieces they work on are critical to
landing them their next job or role
in another company; in Japan,
most developers aren’t
desperately trying to prove their
individual ability because they’re
at home with their employer, and
feel the most pride from having
been a part of the team that
worked together to realize a
successful vision.
• No company, on either side of
the ocean, is so big or so powerful
379
SE C TI ON 5
384
Everything you write, paint, draw, 4.5-PERSONALITY RIGHTS
The last 0.5 of the 4.5:
play on piano, etc. you have a
“Personality rights” relates to the
copyright over, and that
rights to use a famous person’s
encompasses a set of rights, any
likeness, name, or possibly real
one of which could be sold or
voice in association with a
granted independently of one
product. I’m not sure whether they
another, such as your right to be
are more related to trademark,
credited for its reuse, whether
copyright, or something else
someone’s allowed to reuse it at
entirely, but they’re absolutely a
all, whether someone is allowed to
real thing. Sometimes a game
make variations of it, whether
based on a movie has a generic
someone can sell it or a variation
hero face or generic voice actor
of it…
instead of the real Hollywood star
Also note that even though not for lack of a good reference
copyright is automatic, if it comes photo or capability to extract
down to a court case paperwork usable vocal audio from the
and some modest filing fee that movie, but because celebrity
needs to take place for that to likeness rights can be expensive
proceed. If that registration on top of and separate from the
paperwork fully existed well before actual show or movie license.
the complaint began I suspect
(again, not a lawyer!) it probably Breakdown
makes for a stronger case. It’s also So far sake of example, at least as
suggested to have a clearly visible I understand it:
copyright notice (“Copyright 2014 If you put the show’s logo on your
by Chris DeLeon” or “© 2014 title screen, or the name of the
Chris DeLeon”), to be able to later show in your game’s title:
make clear that you’ve claimed trademark issue.
the copyright.
385
If you took the show’s theme song might go as far as hosting
and played it in your game, or a conferences, embracing/
clip of video from it, or even a highlighting the best of it, maybe
model/texture/sound from some even offering some official
other company’s game: copyright involvement (like a company hiring
violation. a modder to join the real
development team). But that is by
If you wanted to show a depiction
no means universal and should
of the main actor or actress:
never be assumed.
personality rights concern.
What I’d Consider
Fan Works
Now, for real, back to the actual
Fan fiction and related areas of
question, with a focus on the
fandom by the way is a terribly
practical considerations I’d be
complicated legal territory, and I
weighing:
suspect with a lot of case-by-case
variation between company NOT CHARGING DOES NOT MEAN FAIR-USE
1. People on the internet often spread the
attitudes, and a great deal of
impression that as long as you’re not selling it, it’s
consciously looking the other way. legal and fair to do. At least as I understand it,
Back when it started as a cultural that’s simply not actually true. Practically
speaking, it probably does paint a much bigger
phenomenon, huge companies
target on your back if you make millions of
seemed to have a scorched earth
dollars misusing someone else’s IP, and that
policy about shutting it down company might chase after you for its cut and/or
everywhere it cropped up, in order to shut you down for doing that. Practically
to maintain total control over their speaking, even though huge companies have
IP. But in the past several decades entire departments full of lawyers, they’re pretty
some IP owners have opted to busy with a lot of real business to worry about,
embrace fandom and fan culture and whatever someone’s doing without making
any money and especially if it’s not drawing any
and fan fiction as a part of a
real attention is probably a lot less likely to get
healthy fan community. They
them to make time to come after you.
386
But it also happens sometimes down by an intimidating letter than
that some teenager somewhere is fined an exorbitant amount or
just making a mod about their thrown in jail. I’m sure there’s
favorite childhood IP, then a lawyer exceptions to that, but that seems
sends them a generic/form, a to be at least in the handful of
Cease & Desists letter, that says cases I’m familiar with, what often
either shut that down immediately goes on.
or face further legal action. The
Unless of course you’re messing
C&D letter takes them no longer to
with the record industry, as their
create than it does to type an
policy seems to be to “make an
address for an envelope and add
example of” people by randomly
postage, and with the receiving
selecting targets who once had 3
party knowingly on empty legal
mp3 files on their computer then
ground for what they’re doing
putting them into debt for
(having gotten no permission, no
decades. But record industry isn’t
licensing, plus usually no real
really what we’re talking about
financial or legal resources to fight
here.
their seemingly defenseless
position in court anyhow), this Many people think that what
generally means instant death of they’re doing is “fair-use” when
that project, which is always a real it absolutely isn’t.There are
risk when toying with IP that isn’t certain limited uses for the
theirs. Note by the way that as a purposes of art, education,
general rule of thumb (again: not a commentary, criticism, parody,
lawyer, not a lawyer, not a lawyer, I news – but there are a ton of
might be totally wrong about this!) details about those particulars
provided you’re not making real written up on the web by actual
money off it seems like a lot of the lawyers if you’re curious. It doesn’t
time you’re more likely to get shut actually matter if it’s “pretty old”
unless it’s so extremely old that
387
falls into public domain. It doesn’t exactly what some of these things
actually matter if the original and their ramifications are, either!
owner is no longer making money Sorting out what’s right in any
from it, or even still in business, given case is part of why we have
because the rights to decide a debate-like court system. What
when/how/whether to begin your lawyer thought can turn out
generating revenue from those to be wrong.
properties again get passed
Even in the event that you’re right
around and sold as business
about something though, proving
assets for long after their initial
that’s the case in court can be
use.
time consuming, costly, and a ton
Don’t trust my word on it or on of hassle, so unless you’ve got a
web forums, before deciding that really important artistic or critical
what you’re doing is Fair Use. statement worth raising a ruckus
Really, you should be digging for over, or the strength of solid
the explanation of Fair Use by representation (in which case I
someone who has really have to imagine you wouldn’t be
committed the time and education e-mailing a game designer a law
to learn the ins and outs of it. Of question) it’s probably preferable
course even if it’s a website or to just stay out of their sights of
article unmistakably written by a these kind of people and not risk
lawyer it’s still just a starting point, drawing any more attention than
and a real conversation with a you have to.
lawyer could be instrumental in WHO WILL SEE IT?
staying out of trouble from a 2. Who will see it? If it’s you and your
misunderstanding. roommates, you can probably get away with
virtually anything. Although even if it’s you and
Plus, an unsettling secret I’ve run a classroom, that’s still probably true, but what
into from working with lawyers: if one of them records it with their phone and
not all lawyers see eye to eye on posts it to YouTube, and then what if it blows up
388
getting a ton of views, shows up on the front on widespread interest in space
page of Reddit, and the company gets wind of it from the moon landing.
that way? Now, it’s unlikely, but it’s possible,
and if it’s not something you’d be comfortable Around the time that Fast and the
with, that’s something to consider. Furious and Gone in 60 Seconds
were big from theaters,Need for
Now I’ve admittedly made some
Speed Underground appeared
small throwaway noncommercial
with options to upgrade neon
videogame projects designed
under lighting and custom mufflers
specifically to reach tiny
on street racing cars. The same
audiences, measuring in the
year District 9 came out in
hundreds at the most, that I
theaters a game about battling
probably came closer to using IP
space aliens came out called
in in ways that I absolutely would
Sektion 8. The old Contra games
never do in one of my “real”
heroes and enemy characters
games, either commercial or even
were blatantly inspired by movies
purely as a hobby, that had
like Aliens and Predator. The
potential for significant reach and
pinball machine F-14 Tomcat
visibility.
came out shortly after the movie
SIMILAR, OR INSPIRED BY, NOT LICENSED
Top Gun prominently popularized
3. Is there a way that you can be safer or more
clever about it by speaking to the same audience, that model of fighter jet. After The
even appealing to some of the same themes or Matrix popularized bullet time Max
ideas, without going so far as to incorporate any Payne capitalized on it with time-
of the original characters, music, title/logo, etc.? slowing pills. The spiral effect on
Space Invaders wasn’t originally the rail gun in Quake 2 was based
going to be about space conflict, on the effect for the rail gun from
but it changed in development the movie Eraser, and the see-
when the developer saw a Star through-walls effect of the
Wars ad. A ton of films and games Farsight in Perfect Dark was
around that time were capitalizing based on the functionality of that
389
same gun from Eraser (the seem to have gotten away with
MagSec in Perfect Dark also doing for decades now, is to
closely resembles the sound and borrow or build upon the basic
appearance of RoboCop‘s pistol). idea, as long as you riff on it, find
I imagine it goes without saying a way to really make it your own,
that after Twilight became huge, and don’t try to imply any
we were seeing werewolves and association official or otherwise
teenage vampires everywhere, and with the property in question.
that Harry Potter brought in its
Probably ok: a game about teens
wake a ton of other kids books
that slay vampires.
about little witches, little warlocks,
and little wizards. Probably not ok: a game called
Buffy the Vampire Slayer, featuring
StarCraft, depending who you talk
Buffy the Vampire Slayer.
to, seems to be very blatantly an
appeal to fans of (or arguably a rip Somewhere fuzzy in-between, and
off of) Aliens, Predators, and/or exists on a sliding continuum from
WarHammer 40k. cowardly to really playing with fire:
a game about teens that slay
So can you make a game based
vampires that has clear allusions
on a licensed property without
to or similarities to Buffy the
securing the rights? No. Not really,
Vampire Slayer but doesn’t
not technically. I mean you’re
specifically call itself that or
probably capable of doing so,
otherwise make the association
however the better your game
explicit.
does, even if it’s free, the more risk
you’ve put yourself in for trouble. Anyhow, that’s the best of what
But what you are far more likely to I’ve got to offer on the question at
be fine doing, at least based on the moment. Hopefully it’s at least
observations of what so many a little bit helpful in providing some
other high visibility companies additional things to consider.
390
Whatever you decide to do, good
luck!
391
SE C TI ON 6
397
giving so many away. If you bring even for free on the internet. But
pens and you’ve got blank backs what I like to do instead is to make
on your cards – this happens to a simple design in Adobe
me all the time – they can jot their Illustrator (make sure they’ll be
info on the back of one of your standard card size when printed,
cards, and you’ve still got their whatever that is, I think it’s roughly
info. 2×3 inches but double check that),
USE YOUR PASS LANYARD lay out 4×2 (or 5×2, whatever fits
Keep a small stack of those cards on a page) edge-to-edge for a full
stashed in the backside of the page layout. You’ll get 8 or 10 per
lanyard that holds your conference page, go to a Kinko’s, print them
pass. There’s actually kind of a out on white card stock – the right
pocket hidden for them right there. kind of card stock for business
That way they’re on quickdraw so cards – then use the paper cutter
you’re not rooting around in your there to separate them all yourself.
pockets or digging around your I do my own. It’s a lot cheaper, you
bag trying to get bent cards out. can make a ton of them this way,
and it only takes about half an
While we’re at it, the lanyard
hour of simple repetitive labor of
usually hangs too long, and
chopping some pages. If you bring
people really don’t want to look at
your own design there, print it out
your crotch to figure out your
on their printer, on the nice card
name. Tie a little knot behind your
stock paper, you’ll get a higher
neck to shorten it so it hangs at a
quality than if you tried to do it at
more reasonable height in front of
home, without all their insane
you, and more people will use
costs that they would charge for
your name when talking to you.
designing the card or cutting the
MAKING CUSTOM BUSINESS CARDS CHEAPLY
card etc.
Now there are a million ways to
order business cards cheap, or
398
BRING A LOT OF BUSINESS CARDS Everyone’s there to network, and
And by bring some business
they get that. When you give them
cards, I mean make and bring
a card you’re speaking their
hundreds of business cards.
language.
200-300, upper bound 500
AND UPDATED RESUMES
wouldn’t kill you. Give them to
Likewise, print and bring enough
almost everyone that you talk to.
resumes that you won’t find
Typically they’ll give you one back.
yourself being stingy with them.
Don’t be stingy with business
Dozens, which is probably ample,
cards. They aren’t just there for
but err in favor of not needing as
recruiters, they’re for the people
many as you print, it’s good to
you run into, because maybe
have more than you need.
they’ll run into someone that
Contexts for handing over
they’d like to put you in touch
resumes are much less frequent
with, and to do that they’ll need
than business cards, but if you
your information. It’s an easy and
find yourself ever not handing
appropriate way to segue a
someone a resume because you
friendly but not very professional
want to make sure you have
conversation toward the direction
enough later in case you run into a
of, “oh what are you working on,”
better connection, you’re losing
“what do you do” conversations
opportunities, giving up
just by giving someone your card.
opportunities, and for the stupid
It’s also a really easy ice breaker at
reason of having not carried
conferences to swap cards,
enough sheets of paper. Don’t let
because there in each other’s
that happen to you.
hands you’ve got something to
PRESENT YOURSELF PROFESSIONALLY
talk about already, even if
Speaking of which, I assume this
otherwise you’re not very natural
should go without saying, but
at spinning up a conversation with
since it is advice for the first-time
a stranger.
399
GDC goer: update your resume, adult enough to operate in a
pay attention not just to the workplace with professionals of
information on it but also to how it different disciplines, backgrounds,
looks aesthetically when you print and varying levels of seniority. It’s
it out. Print it out, put it in front of a signal to them, so don’t signal to
a friend, get their feedback. Often them that you’re careless,
another set of eyes can spot unaware, or unprepared by having
issues you thought were fine, it resumes that are clearly in first
doesn’t take any special training. draft state or that are printed on
Then you can fix those things and standard paper.
put it in front of another friend, and
Likewise, and this is probably a
keep doing that until they stop
given for most folks but there’s
giving you corrections to make to
always a few people I wish
it. Print it out on decent resume-
someone had said something to:
quality paper, not on ordinary
while a tie would be out of place –
lightweight printer paper.
unless you’re shooting for a
I know that can sound silly, to not business position – do your best
just focus on the information to clean up a bit. Get a haircut
printed on the page, because it before going, and wear some
should be the skills that count, or reasonably nice-ish clothes rather
your education, or something else. than something silly that will stand
But HR people and business out in an unprofessional way.
people, the ones that are in You’ll see these people there. It’s
positions to make hiring decisions, unfortunate. If you or anyone you
typically have a business know was going to be those
background, and people with a people, please reconsider, it’s
business background look for little really not doing anyone any favors
signs that the person they’re in terms of landing jobs or making
talking to is socially aware and real connections with other
400
professionals, to dress all goofy. that up during the day for it to
It’s not Comic*Con, it’s a work.
professional conference for
Try not to eat alone if you can
developers who are networking for
avoid it. That includes lunch.
professional reasons.
Round up some people nearby or
FIND OR SET UP LUNCH, EVENING MEET UPS find a group nearby and ask if you
Make it your goal during the day
can join them. It’s a professional
to find something to do after
conference, they get what you’re
sessions close for the night.
doing, and if they say no, who
Identify a group to tag along with
cares, you may never see those
or meet up with at the end of the
people anyway. Go ask someone
day, or at least find a party that
else. Ask them about what they
you can get into, or make a friend
do, what they’re hoping to get out
that you’ll know well enough to
of attending the conference this
recognize if you run into them the
year, and introduce yourself too of
next day. Be there first and
course. Worst-case scenario, even
foremost for the people, not for
if they say no they’ll remember
the booths or talks (except to the
you as that kid who unknowingly
extent that specific people are at
had the guts to ask a bunch of
the booths and talks). That’s
famous developers you didn’t
where the good things happen,
even recognize if you could join
that’s where jobs happen, or
them for lunch.
where life-altering introductions
take place, or great idea sharing And sometimes that can totally go
will happen – it’s the people, not the other way. True story: at my
the booths or the talks. The best first GDC I got to eat lunch with
networking during GDC really David Perry – the guy who
happens outside of GDC in the invented Earthworm Jim and MDK
evenings, but you’ve got to set – because it didn’t even occur to
me that maybe as a sophomore in
401
college I shouldn’t have asked him their connections and their
if I could hang out with him over careers. Oftentimes people return
lunch. But I did. He said fine. I got the favor. This is a surprisingly
to chat with him about Earthworm easy to do, with the number of
Jim. That was pretty sweet. people that you’ll be running into,
LISTEN TO PEOPLE, HELP CONNECT THEM many of whom are really doing
One of the questions that came up cool stuff. This is of course
was, “How should someone especially easy if you came
looking to get a job in the industry prepared to card swap with pretty
make a positive impression?” much every group you run into.
403
famous years ago that earned
being a speaker now, who you
need to be meeting are the other
people in that room who will be
maybe accomplished enough later
to be the speakers years from
now. You want to come up in the
industry with those people, and
that works better networking
laterally than trying to hound the
celebrity developers that everyone
else is trying to fawn over. (Note
that the tutorials events are often
better for getting to know the
other people in the room – at main
conference talks that are more
expensive people tend to scatter
shortly after the talks and they
rush off someplace else so we
miss the chance to meet them.)
404
9 In the same way that we can
sometimes study level design by
investigating specific cases, one
way into thinking concretely
about gameplay design is to
take apart games that we like, or
worked on, in an effort to better
understand how they do and
don’t meet their apparent goals.
Game Analysis
405
SE C TI ON 1
407
What Works things with basic electronics as a
PRICE hobby, all that and more happens
Because online play in Minecraft here. Some games let the player
takes place entirely on user- “play any way they want” by
hosted unofficial servers, rather giving them 3 ways to approach a
than massive centralized data fight: stealth, guns blazing, or
centers as is now the norm for hacking and trickery. Here you can
MMORPGs, there is no ongoing pretend you’re in Lord of the
subscription cost. It requires only Rings, then find yourself doing
a one time payment to purchase interior decorating or building
the game, which is a fraction of calculators an hour later.
how much typical games cost. OPEN-ENDED
ONE-SIZE-FITS-ALL Minecraft allows a range of
Minecraft supports players with commitment. The lack of
many different preferred styles. structured objectives means the
Whether you’re into building player is free to travel light,
houses in The Sims, fighting coming and going in short
monsters outside in Zelda or increments to explore and
Diablo, fleeing zombies within adventure, or to set about
narrow corridors in Resident Evil, gathering materials and laying out
exploring vast landscapes in massive projects. This flexibility in
Oblivion, gaming alongside others possible session length makes it
in your MMORPG of choice very easy to lose track of time –
(complete with the politics and intending to hop in for 15 minutes
leadership that entails), to reap crops, then sticking
maintaining or trading crops in around for hours from getting lost
Farmville, chatting in the social in a cave or carried away with a
community in Second Life, sharing new project. How long it takes to
videos with the creature creating play can grow or shrink according
community of Spore, or designing
408
tight knit player base, or becomes
exposed to the tremendous wealth
of information available outside
the game.
EASILY SHARED
That Minecraft is a computer
By the end of my month I was taking on big projects. game makes it easy to Fraps a
play experience for YouTube, or
to the player’s interest and screenshot a completed building
availability. project to imgur. This sharing
COMMUNITY OUTSIDE THE GAME experience beyond the game
The game, at least in its current gives players an audience, raising
form, is famously harsh to expectations. Meanwhile, those
newcomers. Night comes sooner videos and screenshots function
than expected, enemies are more as viral marketing for the game,
dangerous than they look, death is introducing outsiders to the
disorienting, and there’s simply no game’s aesthetics, concepts, and
information within the game about possibilities.
how to do basic, important things
like making torches for light after
sunset. Although traditional design
suggests that this would be a
huge flaw in the user experience,
this increases the importance of
being introduced to the game by
friends, or of turning to the wiki
and countless online YouTube
tutorials. The user is not an island. I made this based on the Library of Alexandria. On a
Consequently, the player is either server with many other players to share it with.
immediately pulled into the game’s
409
MOTIVATING PRESSURES sense of ownership: even though
Building shelter that Creepers
recipes are simple 3×3 grid
won’t destroy, Spiders won’t climb
arrangements, the feeling that you
on top of, Zombies won’t spawn
made the armor you’re wearing, as
within, and Skeletons won’t fire
opposed to finding it whole in the
arrows into gives utility to
world, makes it yours.
otherwise purely decorative
FRAGILITY
elements. Doors, switches,
Exploding enemies – Creepers –
fences, glass, armor, swords,
put structures at risk, which
arrows – along with landscape
makes them particularly terrifying
structures like moats, walls, sky
to a proud architect or red stone
bridges or defensive posts –
electrician. Fires can also spread,
become investments to protect a
destroying flammable materials
dwelling. The danger of darkness
and quickness of nightfall give
pressure and meaning to using
daylight effectively. Without day
and night cycles, and without
enemies, the game would require
much more initiative to learn.
Instead, the game pushes the
player to learn, without squeezing
them through a narrow tutorial or This is my pickaxe. There are many like it, but this one
is mine.
precisely planned experience.
EARNED RESULTS (lumber, doors, or nearby trees).
The difficulty and luck involved in Death by enemy, fall, or lava
finding materials, along with the makes the player drop everything
risk of losing inventory upon dying in inventory, which vanishes if not
and respawning gives value to the picked back up within about 5
inventory. Crafting adds to this minutes of respawn. This lack of
410
safety or permanence adds to the
perceived worth of items and
structures, since they have to be
guarded by the player, and we
have a tendency to grow fond of
things that we’re responsible to
protect and maintain.
Top: diamond, left: red stone, middle: iron ore. Jackpot!
UNEXPECTED TENSIONS EXTEND PLAY
A side effect of fragility is the underground could reveal iron,
impulse to restore order after an gold, red stone, gems, flowing
accident, which unexpectedly lava, or an expansive natural cave
extends gameplay time. We ideally system behind it. There’s
want to leave the persistent world excitement in the unknown, and in
at a good stopping point, not the sense that if just a few more
worse off than when we started, cubes are chipped away, payoff
so when inventory is lost upon for the effort will be found.
dying from enemies, or once a wall OVERSHOT/UNEVEN NEED
gets blown apart by a Creeper, Game currency purchased through
tension and dissatisfaction exist console downloadable games,
until the supplies are recovered or card collection packs, or web
the damage is repaired. social games are typically set up
RANDOMIZED REWARD (GAMBLING) to have uneven leftovers after
Variable ratio reward, the good ol’ purchases. A lawyer even sued
Skinner box mechanism common Microsoft over doing this for Xbox
to many games in the form of Live Points. This scenario comes
randomized drops, dice rolls, and about organically in Minecraft. For
surprise chests, plays a central example, you have 26 logs, but
role in Minecraft addiction. Here, need 35 to build the balcony you
every single block removed have in mind, so you set out on a
411
logging expedition – and while out
in the woods with an axe anyhow,
you bring home 25 logs. 26+25-35
= 16, so after building the balcony,
you now have 16 logs at your
disposal, which probably isn’t
quite enough to do whatever you’ll
Not a very fancy house, but I bet he’d trade snow
next want logs for. This blocks for sand.
mechanism gets amplified by rare,
to complementary overstocking
useful materials like red stone, or
between players, with too much
time-consuming materials like
sand & glass stored by a desert
obsidian. In the past, I’ve
dweller, snow cubes by another
discussed this mechanism as the
player in the tundra, and lumber
“chips and salsa” design, so
for the forest resident. This means
called because when the salsa
that the player who wishes to have
bowl is empty but we still have
a full palette of materials available
chips, we refill salsa, and when the
for their construction projects is
chips bowl is empty but we still
unlikely to be a total hermit,
have salsa, we refill chips, until
instead reaching out to exchange
one or the other runs out.
some local excess for what’s
VALUE IN TRADING
abundant elsewhere.
All the reasons stated above
adding to the value of materials – ABSTRACTED VISUALS
Part of the appeal of pixel art,
unpredictability in finding them,
whether we’re talking about Space
uneven supply needs, risk of their
Invaders or Passage, is that the
loss – combine to make them
simplicity saves our attention from
valuable for trade or gifting.
being wasted on nuances like
Different biomes and varying
bump-mapping giving everything a
distributions of minerals can lead
wet plastic look. We don’t see
412
cubes in Minecraft after only a few cartoon, comic, movie, or game
minutes playing: we instead see character, it’s hard to mess up too
an ocean, a fortress, a tunnel, or a badly when drawing a 64×32
tree house. To someone new to texture. That simplicity extends in
Minecraft, screenshots of the an even more dramatic way into
terrain all look clunky and the world, where everything fits
arbitrary. To a Minecraft player tightly on a 1-meter grid.
those same images look inspiring, Alignment is easy, symmetry is
magnificent, and ripe for settling. easy, and the player is never
LOW DETAIL = LESS ROOM FOR ERROR paralyzed deciding between minor,
The player’s custom texture is fractional differences in
64×32 pixels. Whether players dimensions. Anyone can throw
want avatars resembling their real- together a decent little house in a
life appearance or their favorite single play session, and with
practice and a bit of
experimentation, come up with
something both creative and
presentable.
MASSIVELY MULTIPLAYER LEVEL EDITOR
From a purely functional
perspective, Minecraft is a
multiplayer real-time level editor.
Combined with the simplicity of 1-
meter block units, it’s easy to
create novel and engaging spaces
for others to explore, between
exploring the spaces created by
others. It’s MS Paint for 3D level
creation.
413
INFINITE WORLDS Minecraft uses procedural map
Players can – and do – throw away
generation to counter the
and initialize new random worlds
irresistible temptations that spoil
until they’re happy with where the
our fun (we have no choice, really
central spawn location is situated.
– because if we don’t utilize online
And no matter where the players
resources, other players will,
start, walking far enough in any
leaving us behind). No one can
direction will yield major
give away the secrets of the world
differences in the environment.
a Minecraft player is in, since
Each random world generated has
every world’s geographic secrets
the potential to become almost
are unique.
twice the surface area of Earth, if
LOW-FI MODS
players wander out in every
Modding for feature expansion
direction.
and new art is simple, with still
UNCHARTED WORLDS (NO MAPS OR GUIDES) more support for mods being built
A side effect of infinite worlds is
into the game’s next iteration.
that there’s no single guide of
Already people are adding more
quests and locations, which helps
animals to the game,
save the gameplay from becoming
improvements to world
an exercise in following directions,
generation, and inventing new
as has become increasingly
modes. Though modding is
common among MMORPGs and
possible for many commercial
single player games alike. For the
games, in this case Minecraft‘s
same reason that the game thrives
low fidelity again becomes a
without a tutorial, many games
benefit, since getting homemade
suffer in playability from the
mod content to blend seamlessly
prevalence of online tips sites.
with the original game’s visuals
Though a game can be designed
doesn’t require a team of 3D
as though the internet does not
artists and months of dedicated
exist, no players will be fooled;
414
effort. This enables mod creators Creeper enemies – but they
to think and compete over design, devastate caves, can be used to
rather than emphasizing produce fearsome traps, and are
production quality. an anarchy player’s dream (well,
WATER AND LAVA SOURCES that plus lava source buckets).
When moving water or lava by Thanks to the respect for
bucket, it isn’t the bucket full materials, inventory, and general
which is moved, but rather the property that derives from the time
source. Frequently, filling a bucket necessary to accumulate and put
or two at the top of a waterfall can it all to good use, carrying even a
stop the waterfall – because the few TNT items can feel a bit like
waterfall is inside the buckets. how one might imagine it would
Likewise for lava – plucking up be for a civilian to be in
one source cube grants the power possession of a hand grenade.
to drench a mountain or fill a Gone is the triviality common to
narrow channel will lava. This explosives in action games, and in
design choice reflects a very its place is reverence for the
unnatural contrivance which does weapon’s potential to save or
wonders for gameplay, by destroy time.
removing the tediousness of FARMING
moving liquids and instead The player can make a hoe, gather
allowing the player to take action seeds, till grass, and plant wheat
at a conceptual level. to be turned into bread. Reeds
EXPLOSIVES can be planted, then chopped
Without TNT, the game simply down each time it grows to full
wouldn’t be the same. Explosives height, for pressing into pages
are made of materials difficult to then books to join with lumber for
acquire – sand mixed with the shelves. Trees and cacti can also
sulfur dropped by the exploding be planted, to farm lumber or
415
A huge server was due to be reset on Dec. 20 for a
Wheat farm, for bread. major update. The night before, we were all given
unlimited TNT and permission to destroy the world
before its imminent deletion. The scene was surreal.
416
CROSS-PLATFORM SUPPORT 2), to “there are side quests the
There aren’t many commercial
player can optionally complete,
games built on a Java foundation.
and in any order” (Fallout 3). In this
Other than Minecraft the only
case, the world is actually akin to
other prevalent example is…
a massive sandbox filled with
RuneScape? Yet the OpenGL
huge grains of sand – millions
support through the Lightweight
upon millions of them – just
Java Game Library enables
waiting to be piled into castles,
unusual graphical complexity and
dragon sculptures, and rivers.
performance for a cross-platform
Minecraft is a sandbox, in the
format. For a game that relies
most important sense of the word.
heavily upon word of mouth to
WISH FULFILLMENT
achieve more sales, this avoids
There was a time when the relative
dead ends due to Windows, Mac,
simplicity of homes meant they
and Linux divides within peer
could be built entirely by the
groups. (This is likely more
individual or family expecting to
relevant among Minecraft‘s
live inside. Sometime between log
disproportionately geek audience
cabins and today’s mountain of
than among mainstream computer
logistical paperwork, wiring,
users or game players.)
plumbing, etc. that largely came to
ACTUAL SANDBOX GAMEPLAY a halt in the industrialized world.
Sandbox gameplay became a
Minecraft gives players a way to
buzzword a few years ago, but
design and build their own home.
bear with me. In the past, sandbox
It’s a similar enjoyment to
gameplay has meant anything
architecting space in The Sims,
from “the player can cause chaos
and although the fidelity is lower,
between advancing the
the player gets to live inside it,
missions” (Grand Theft Auto), “the
instead of merely observing other
player has to cause chaos to
characters from the outside.
advance the mission” (Just Cause
417
SOCIAL BONDING of hardship from Creepers, fires,
Finding materials as a team,
and resource scarcity, plus current
fighting enemies together,
players assisting newcomers, a
coordinating massive construction
very dynamic and interconnected
efforts, and seeing how the world
community of shared
transforms over time forms a bond
understanding takes shape.
with the other players. With each
SURVIVAL HORROR + SCARY AUDIO
world being unique, and each
The enemy sounds in Minecraft
server going through its own
are not much fancier than the
architectural history, a highly
graphics. And yet, because of the
compressed feeling of growing up
danger they pose to the player
together is simulated. Players
inventory, the proximity of the
share common knowledge of
enemies implied by the sound is
location names, local happenings,
genuinely terrifying. Player
and histories of peer personalities
weapons are weak – arrows are
on the server. Thrown in with a bit
scarce, swords are short range,
418
signaling either the need to seek
shelter or to prepare for
adventuring out another day.
During the sheltered down time at
night, a break is imposed on play,
giving outlet to web browsing,
book reading, homework doing,
TV watching, or even indoor
Minecraft tasks (smelting ore,
harvesting indoor farms, crafting,
deep mining…). This helps keep
12 pumpkins, 14 moss stone, 8 gems,
19 brick blocks, 29 obsidian, 21 TNT, set of the outdoor activity from feeling
diamond armor/gear… bad time to die.
The better you’re doing, the scarier the game.
like it’s completely dominating the
(Picture for sake of illustration; players stash player’s time, and makes being
their best goods in chests before going out.)
outside more exciting since
and rare materials are needed to attention must be paid to either
make strong blades. Attacks are leaving enough time to return to
relentless, and come not only at shelter, or carrying enough
night, but from any dark place, supplies to create a provisional
including a natural cave or a dark site on short notice.
corner of the player’s home. Since CHARMING CUBIC ANIMALS
at any given time the player is Boom Blox introduced the gaming
likely carrying supplies either mid- world to cute blocky animals.
gathering or mid-building, there’s Minecraft animals are in a similarly
always something at stake when adorable, low-poly style. Finding
the player encounters enemies. cows hopping around a
construction area, chickens
FORCED BREAKS FOR NIGHT
Short music tracks play when the wandering around a house, and
sun is about to go up or go down, sheep riding in mine carts is
419
delightful and unexpected, update to the game includes
breathing life into an otherwise undocumented feature additions –
static world, without adding to the new materials, new crafting
danger. That the animals yield combinations, and other new
useful materials when hit (feathers features are thrown in
for arrows, meat for health, hides unexpectedly. Halloween ond year
for armor, dyeable wool for included a massive update,
colorful building and decorating) including a few minor touches like
only increases the positive pumpkin blocks, but also a whole
association with these animals, extra dimension, “Nether” (Hell)
who remain unaggressive even with new monsters and materials
while under attack. which can be accessed by making
KID-FRIENDLY portals from the main world. More
No swearing, no sultry cutscenes, recently, music blocks were
no political or religious added, creating another
philosobabble, no blood, and no opportunity for people to develop,
torture. A lot of games and media teach, and show off talent within
out there are almost kid friendly, the game.
but fail on account of carelessness IN A WORD
on the part of the authors. Minecraft is a game about
Minecraft doesn’t need those discovery. Discovering what’s
gimmicks to work, so it doesn’t beyond the horizon, discovering
have them, making it possible for new cave systems, discovering
families and young peer groups to incredible projects others have
adventure and build together. done, discovering new features
SURPRISES IN UPDATES snuck into updates, discovering
If there’s a roadmap of what new like-minded people,
features the developers intend to discovering architecture,
add next, it’s kept secret. Each electronics, sculpture, texturing,
420
landscaping, action, photography,
decorating, music, trading,
storytelling, adventure, modding,
and discovering that we all love to
make things, provided that we
have an accessible and cost-
effective way to do so.
421
SE C TI ON 2
425
of outside obligations, he wound included pressing a key to time
up parting before really getting deployment of a second wave of
started. That type of uncertainty is units, using the mouse to fire an
simply a risk of making hobby or orbital super weapon, toggling
extracurricular videogames, since some AI variables, or directly
we have no pay nor course credit controlling a lone commander unit.
to offer. The core gameplay still In the end we went with pure
works with the mostly functional spectatorship, with shared camera
AI I stitched together. control, which has a very different
feel than being involved during the
We were considering having
action by prolonging a sense of
multiple rounds per configuration,
hope rather than demanding
with players able to make changes
constant focus. Although we
to their AI or weapon settings
added little smoke and sparks to
between rounds but not to which
damaged units, we opted to leave
vehicles are included, but I’m glad
precise vehicle health bars out of
that idea didn’t make it. Part of the
gameplay, partly for the
fun is quickly mixing up fresh
uncertainty that their absence
scenarios, and being forced to
adds to excitement. Being able to
watch a poorly chosen team lose
identify the clear winner well
again and again would be rough.
before the end of the match,
The single round simplicity of our
which could have messed up the
matches and how quickly they can
experience, is much harder to do
be set up even made it possible
reliably since it’s unclear how
for my friend Henry and I to play
many more hits the units left on
indirectly via Facebook.
the field will be able to sustain.
The team had a bit of back and
Huge robots walking past one
forth about whether the players
another mid-battlefield just looked
should be able to do anything
wrong, and combined with their
during the match. Proposals
426
sword (instant kill to any unit), the
chicken walker kicks, and the
spider performs a stomping
action.
We didn’t mean to make melee so
rare as it came out, that happened
only by late accident while trying
to patch up other tuning
imbalances. These attacks played
a pretty pivotal role in the first
build or two we released, with
matches often coming down to
mechs destroying each other point
blank in the middle of the stage.
The inevitable melee gave extra
importance to fielding a humanoid
walker. In later tunings (including
the current version, 1.04) we
improved the weapon accuracy for
slow speed we couldn’t get away most units, decreased mech
with it as we did with the tanks armor slightly, and increased the
and jets. Instead, we programmed effectiveness of machine gun
the mechs to stop and fight toe- usage between mechs at medium
to-toe with one another until one range. These changes combined
or the other exploded. All three to make mech melee virtually
mechs also have a special mech- never take place, though
vs-mech melee attack technically it’s still there and will
implemented: the humanoid happen if matches unfold in a
walker slashes with the energy sufficiently peculiar way.
427
In hindsight, a way to save a
launch team configuration for
more rapid experimentation in
sandbox would have been nice.
Not only would it help players
experiment faster, but it also
would have made testing and
iterating on game balance easier
for us.
428
ZYLATOV SISTERS Zylatov Sisters was successful in
80s-ish Arcade Action producing a good amount of
Platformer, designed for shared variety and giving a number of
screen co-op beginning developers in our
Released Dec 2011 videogame development club a
mix of experience.
300,000 plays as of Feb 2014
Many players find it unacceptably
Unlike most other games that I’ve
difficult, though we understood
worked on, after finishing work on
from the outset that we wanted to
this I still really enjoy playing it.
make a game with pinball or
An experiment in modular game classic-arcade pacing: constant
design to help reduce overhead, vulnerability, typically 1-3 minute
429
sessions after a modest amount of This was never meant to be a
practice, and replaying to earn commercial game though, so we
increasingly higher scores. felt okay with simply making the
Furthermore, we knew that the game that we wanted to play.
usual in-browser gaming audience
Our decision to make any level
might not necessarily go for this
equally eligible for selection as the
type of structure since it’s an
first level gives the game variety
outdated taste. Players widely
for a high level of play and makes
accustomed to videogames that
it easier for students on the team
are designed to be plowed
to show their work to peers. We
through by persistence are
also randomized which level
presented here instead with levels
shows up first, so that every
that aren’t meant to be
player gets a slightly different first
consistently completed.
experience. However the lack of
There’s also a steep learning curve any intro, tutorial, or beginning
in that the arena-nature of each levels served to further alienate
level means it’s hardest right when players that found the game too
each stage begins, when all difficult at first. We perhaps ought
enemies are still alive. Start the to have at least picked out a few
round carefully enough to survive of the easiest levels, and made the
and aggressively enough to cut first level upon game start
down some of the horde, and with randomized from between those
the remaining lives the odds of instead of all maps.
survival within that level improve
We also received frustrated
considerably. Fewer enemies left
feedback about the game’s default
in a stage also makes it easier to
controls, which we set with co-op
retrieve gun/item boxes, which
in mind. Even though the controls
can help improve survival odds for
can be reconfigured from the main
the start of the next level.
menu, relatively few people seem
430
to be taking advantage of that. We On the plus side, more so than the
perhaps should have gone with other games I’ve mentioned here,
our original plan of using different people that do like this game
default key mappings for single seem to be returning to play it
player vs co-op play, which we semi-regularly. That makes sense
strayed away from late in given the arcade model we were
development from fear that doing trying to emulate. By comparison
so would throw people off when though, it doesn’t really make
trying co-op. Supporting that much sense to play VbP:SE more
decision would also require a than once, and MechStrike‘s
slightly different menu system, novelty and mechanics favor
which we didn’t have time left to head-to-head play but don’t offer
do late in the schedule. much single player replay.
Unfortunately some players find
Our inclusion of co-op only
the single player controls
support weapons worked out well
needlessly cramped, then simply
for two-player, but may have
quitting forever before either trying
strained our single player weapons
co-op or realizing that the controls
offering a bit by comparison. We
can be easily reconfigured.
partly mitigated this by the three
In other words: fully reconfigurable types of special weapons that can
controls cannot make up for appear for getting a 5X or higher
default controls that people don’t multiplier. However because it
like. Especially with a free game, takes a bit of practice and luck to
people have no investment in earn those, they don’t do much to
making the experience work for help first impressions. The two-
them and can easily switch to player support weapons can be
something else, so if they don’t really powerful for assists if used
immediately like the default effectively with the other player’s
mapping it’s over – player lost. help, though here again, tuning the
431
game to keep those co-op
weapons from being overpowered
rendered single-player even more
unforgiving.
Co-op also lets players revive one
another indefinitely. As long as at
least one player remains alive and
can find a chance to either finish
the current level or kneel briefly
by the fallen sister, it’s possible to where I could more easily observe
just keep going. Two experienced and ask questions. It led to some
players working together can go important spot fixes to several
on a roll for quite awhile, which in stage layouts and assets, tweaks
light of the game’s harsh difficulty for more responsive controls
can be especially rewarding. (running then turning used to slip
much more, as if on ice), and
The aftermath stat and throwaway
focused us on which wish list
“award” screens (GoldenEye 007
items were most important to
style) worked well for giving
implement with the time we had
players a moment to reflect on
left (including saving high scores
each round. Without them I think a
locally and the option to
hard jump from game over right
customize controls).
back to level select menu would
have been too jarring. One of our members oversaw
narrative design in addition to
Outside testers really helped out a
helping out as another technical
lot near the end of the project. I
game designer and artist. That can
put out a call via Facebook and
be a tricky role to play on a project
Twitter, and also had a few
that aims for an mid-80s action
classmates try it out in person
arcade aesthetic, but he
432
understood from the outset that Of course, the best way to browse
the goal was low-fi retro, and he the game’s music, see who’s
was flexible to the specific needs responsible for each track, and to
of the project. Since the genre is find out more about the game is to
pretty light on written text outside play Zylatov Sisters (it’s free - just
of the intro (which players of this search for it!).
sort of game tend to skip anyhow),
he instead improvised other ways
to help establish the game’s
atmosphere: recommending the
game’s main font, drawing the title
screen background to set the
mood, and authoring his levels
with a deliberate progression.
Our team members making
chiptunes for this project really
shined, pulling off a Castlevania,
MegaMan-ish vibe pretty well in a
number of tracks. I’ve been
enjoying the soundtrack
separately from the game. Tying
specific songs to each stage
helped give each level a
consistent personality, beyond
what feel we could achieve
through changes in layout, tile art,
and enemy, item, or spawn
placement.
433
SE C TI ON 3
436
discrete (rather than continuous) That takes nearly 40 minutes to
paddle angle segments. do.
To find out what people read into Not particularly evident in the
the image-as-a-game, rather than original ReClark Gable image is
the game-as-an-image, I posted
the game to Kongregate and
Newgrounds.
PLAYER ASSUMPTIONS
Many responses did not display
an understanding of the nature of
the work done here, suggesting
that particle effects, power-ups,
and so on would help make it a
better game. This is of course
partly a function of audience (self-
identifying videogame players),
and largely a matter of context
(anyone at a Flash entertainment
site is in the mood for
entertainment, and likely to
interpret their experiences through
that lens). that drawing lungs at this fidelity
requires a lot of bricks: 994.
This is somewhat unfortunate, Compare that to the 104 bricks in
because it means that many Atari 2600 Super Breakout (8 rows
players, rather than interacting of 13). Many of the comments
with the game in search of noted the game’s length, either as
meaningful interpretation, set a criticism of the game (“too
about to achieve the traditional long”/”boring”) or within the
goal of clearing all blocks, like so:
437
context of the game’s message winning at it. The longer someone
(“Man it takes FOREVER to kill plays this particular game, the
yourself by smoking”). Curiously, more certain it is that they are not
“FOREVER” here seems to be winning and have not caught on to
based on comparison to other the point. This was especially an
online gameplay experiences, issue in this situation since the
rather than real-time; if cigarettes feedback on player direction is
made our lungs completely delayed, subtle, and contrary to
disintegrate after 40 minutes, that clear convention.
would be quite fast indeed.
The original Breakout has an on-
Players that went for a cleared screen score display
board also noted that, eventually, demonstrating that each brick
images took shape that look removed represented progress,
nothing like lungs. In the previous with bricks closer to the back wall
screenshot, I’m tearing away at awarding more points. In this way,
what appears to be two island the player gets coaxed toward
nations. hitting the back wall, which
initiates a breakout in the classic
That point is correct: the longer
game. (Achieving breakout by
the game is played, the more the
hitting the back
concept seems to break down, or
in Breakout causes the ball to only
fall into the background. Does this
bounce upward, instead of only
mean that the opening set up –
downward, until it next touches
effectively, the still image – is
the paddle. This mechanic was
doing the work, and playing only
dropped for QuitSmoking as
interferes with the message?
tangential to its message.)
On the other hand, understanding
Because score tends to
the intended meaning of a game
demonstrate incremental
with a message often involves
advancement toward some
438
greater reward or goal, including a between the image being one of
rising score would not have made many passing states, vs the
sense here anyway. However, an totality of what is ever presented.
increasingly negative score, going
down with each lung brick broken,
could have spelled out more
clearly and immediately to players
that the goal of the game isn’t to
destroy all bricks. Without any
score numbers to provide granular
feedback, players acted on the
assumption that what they
previously learned through score
reinforcement in similar games fits
here too: brick removal means
forward progress.
A SERIES OF GENERATED IMAGES
The longer the player keeps the
ball in play, the more bricks get
knocked away, producing a series Also worth consideration is that
of images, one of which (in theory) the player has a purely subtractive
could be the exact same effect on bricks. They can be
arrangement in ReClark Gable’s taken away, but never added nor
original depiction. However even if moved. A side effect of this is that
that exact same brick only subsets of the starting bricks
configuration appears, is it are possible images –
experienced the same when we’re combinations of the 994 bricks
the cause of it? If nothing else, being either present or destroyed.
there is surely a difference Naturally, physical collision
439
mechanics make many of those functionally makes sense.
theoretically potential Representationally and
configurations less likely than behaviorally, however, the ball
others (or impossible, such as a looks and acts in no way like
hole in the center of a thick ring). smoke.
The lack of precise control over
Does it matter whether it’s smoke,
the ball tends to yield uneven
or pure abstraction that steadily
edges.
delivers damage to the lungs from
Were a more geometric or clean the cigarette?
figure hidden deliberately in the ATTACKING
bricks, as say a key or a smiley The sensation of playing ball-and-
face, even a few imperfections or paddle games is not so much like
incorrect hits could disturb the attacking, as it is like juggling. To
image. However since the hidden this point, the original static image
image in this game is the crispy, suggests a more direct attack than
tar-destroyed lungs picture that playing the game does. In the
we’ve seen in so many anti- constructed snapshot it’s on a
smoking campaigns, any image of one-way course for the lungs,
lungs with the bottom and edges though in play it’s a constant
unevenly carved away produces a back-and-forth.
similar enough image to recall the
Attacking isn’t necessarily only
intended memory.
shooting, Pinball games – digital
MISSING METAPHOR as well as analog – have long
As a quick aside: is the ball in this
contained enemies to be “shot” or
game “poisonous smoke”?
“hit” with the ball. Because pinball
It is kept between the lungs and paddles rapidly accelerate a ball, it
the cigarette, and it is what does seems more like an attacking
damage to the lungs, so in terms mechanism than simply keeping
of its role, the ball being smoke the ball in play. Here, in Super
440
Pinball: Behind the Mask on
SNES, the Wizard board contains
an enemy that can be “shot” (top-
right):
441
CLOSING THOUGHTS from the ice cream man. Though
When Alleyway came out on
there is a dramatic differences
Game Boy, and there were levels
between recognizing some part as
arranged to mimic the sprites of
represented, and thinking of the
classic characters, did we think of
representation as the part
the activity as killing Mario or
represented.
Koopas? At some basic level, we
of course realized that the part we Did any fan or player of Super
were breaking corresponds to his Mario Land ever refuse to advance
leg, or his head, as when eating in Alleyway, not wanting to hurt
Animal Crackers, or biting into Mario, or out of concern that
Ninja Turtles heads purchased doing so might cost a life?
442
Image Credits
443
Getting Started
Fan Habits and Focus are Not Developer Habits and Focus -
Crowd-Surfing by Hum from The Noun Project
Programming
Float and Int Variables: Casting and Other Issues - Image in public
domain
Hack then Refactor - Arrows by Juan Pablo Bravo from The Noun
Project
Get Motivated
445
Think by Building, Build to Answer Questions - User by Wilson
Joseph from The Noun Project
Game Design
Team Projects
Industry
447
Indie Game Development as Career - Art Collector by Piotrek
Chuchla from The Noun Project
Game Analysis
448