TEAMFLY Team-Fly ® Game Development and Production Erik Bethke Wordware Publishing, Inc. Library of Congress Cataloging-in-Publication Data Bethke, Erik. Game development and production / by Erik Bethke. p. cm. ISBN 1-55622-951-8 1. Computer games Design. 2. Computer games Programming. 3. Project management. I. Title. QA76.76.C672 B47 2002 794.8'1526 dc21 2002153470 CIP © 2003, Wordware Publishing, Inc. All Rights Reserved 2320 Los Rios Boulevard Plano, Texas 75074 No part of this book may be reproduced in any form or by any means without permission in writing from Wordware Publishing, Inc. Printed in the United States of America ISBN 1-55622-951-8 10987654321 0301 Product names mentioned are used for identification purposes only and may be trademarks of their respective companies. All inquiries for volume purchases of this book should be addressed to Wordware Publishing, Inc., at the above address. Telephone inquiries may be made by calling: (972) 423-0090 Contents Foreword xvii Preface xix Acknowledgments xxi Part I—Introduction to Game Development Chapter 1 What Does This Book Cover? 3 How to Make a Game 3 First Have a Plan 3 Organize Your Team Effectively 4 Game Development Is Software Development 4 Where to Turn for Outside Help 4 How to Ship a Game 5 Post-Release 5 Success and the Long Race 5 How to Use This Book 6 Chapter 2 Why Make Games? 7 To Share a Dream 7 Games Teach 7 Game Genres Satisfy Different Appetites 8 Gambling, Puzzle, and Parlor Games 8 Military and Sports Simulations 10 Role-Playing Games 12 Youth Making Games 13 On Money 13 Why Make Games? 14 Chapter 3 What Makes Game Development Hard? 15 The Importance of Planning 15 Very Few Titles Are Profitable 15 500,000 Units to Break Even? 16 Employee Compensation and Royalties 17 What Are the Financial Expectations for Your Game? 17 The Scope of the Game Must Match Financial Parameters 17 Why Your Game Should Profit 18 Feature Storm 18 If the Game Is Worth Making, Make It Excellent 19 iii Excellence in Spades 19 Game Making Is a Long Race of Many Game Projects 20 A Brief History of Software Development 21 Overly Long Game Projects Are Disastrous 21 What Late Games Do to the Publisher 22 Our Project Plan Behind Starfleet Command 22 The Vision for Starfleet Command 23 Constraints Give Much Needed Focus 24 On Bugs Shipped in Starfleet Command 24 Well-Met Goals Enable Future Successes 25 Strong Game Developers Have Strong Foundations 25 The Tension between Preproduction and Production 25 The Power of the Console 26 Why Aren’t All Publishers Using Preproduction? 27 The Process Is Changing 27 A Strong Plan Makes Game Development Easy 28 The Gravitational Pull of Feature Creep 28 Task Visibility for Team Motivation and for Progress Tracking . . 29 Use Your Core Competencies and Outsource the Rest 29 A Pitfall of Success—Fan-Requested Features and Changes 29 The Relentless Pace of Technology 30 The Art of War and Games 32 Chapter 4 Game Project Survival Test 33 The Game Project Survival Test 33 Game Requirements 33 Planning 33 Project Control 34 Risk Management 35 Personnel 35 Calculating Your Project’s Score 35 What Does My Score Mean? 36 Part II—How to Make a Game Chapter 5 What Is a Game Made Of? 39 The Extended Development Team 39 Game Production Parts 39 Design Parts 39 Where Do Lead Designers Come From? 40 How Do You Nail Down the Game Mechanics? 40 Who Are the Level and Mission Designers? 40 Story and Dialogue Writers Are Writers for Interactivity 41 Coding Parts 41 Lead Programmers and Technical Directors 42 Game Mechanics Programmer 43 iv Contents 3D Graphics Programmer 43 Artificial Intelligence Programmer 43 User Interface Programmer 44 Audio Programmer 44 Tools Programmer 44 Mission/Level Editor Programmer 44 Network, Server, or Client Programmer? 45 ArtParts 45 Art Director 46 Concept Artist 46 2D Artist/Interface Designer 47 3D Modeler 47 Character Modeler 47 Texture Artist 48 Animator/Motion Capture Studio 48 Storyboarder 49 Audio Parts 49 Voice-Overs 49 Sound Effects 49 Music 50 Management Parts 50 Line Producer 50 Associate Producer 50 Studio Head/Executive Producer 51 Producer 51 Quality Assurance Parts 52 Publisher QA Parts 52 QALead 52 Main Team 53 Multiplayer Team 53 Fresh Teams 53 Compatibility Team 53 Localization Team 53 Beta Testing 54 Beta Testers 54 Beta Testing Program Manager 54 Business Parts 55 Business Development Parts 55 Business Development Executive 55 Publisher CEO and President 55 Studio Heads 55 Lawyers 55 Licensing Parts 56 Promoting, Buying, and Selling Parts 56 Sales Executive 56 Contents v Sales Force and Retail Purchasing Agents 57 Press Relations Manager 57 Trade Shows 57 Other Trade Shows and Events 58 The Marketing of a Game 59 Hardcore Fans 59 Manuals and Strategy Guides 60 Manual 60 Strategy Guide 60 Manufacturing Parts 61 Hardware Manufacturer Parts 61 Console Manufacturers 61 Hardware Representatives 61 Post-Release Parts 62 Chapter 6 Business Context First 65 The Project Triangle 65 Implications of the Project Triangle 66 Various Games and the Project Triangle 67 Questions for You to Answer 70 What to Do with These Answers 70 An Ultra-Low Budget Game 70 Fixed Budget, Fixed Deadline 72 High-Profile/High-Quality Projects 73 WalkAway 74 Chapter 7 Key Design Elements 75 Business Context Shapes Design, or Does Design Shape the Business Context? 76 Reconcile the Business Context and Game Idea Early 76 The Effects of a Slipped Game 77 Methods and the Unified Development Process 81 What Is a Development Method? 81 Why Use the Unified Software Development Process? 81 Requirements Capture 82 Use Cases 82 Case Studies 87 Case Study I—Diablo 87 Use Cases of Diablo 88 Quick Analysis of the Use Cases of Diablo 89 Case Study II—Gran Turismo 90 Use Cases of Gran Turismo 92 Quick Analysis of the Use Cases of Gran Turismo 93 The Key Design Elements of Your Game 94 The Battle of the Counterterrorists Games 94 The Key Design Elements of Rainbow Six 95 vi Contents Are We Playing a Mission or Planning a Mission? 95 The Key Design Elements of Counter-Strike 96 Most Popular Multiplayer Game 96 Of Intersecting Sets and Elite Forces 97 Some Straight Questions to Ask Yourself 99 What Genre or Genres Does Your Game Feature? 99 Will the Game Be Single-Player, Multiplayer, or Both? 99 What Is the Platform? 99 What Is Your Target Market? 100 What Major Technologies Are You Using? 100 Now What? 100 Chapter 8 Game Design Document 101 What Is a Game Design Document and What Does It Do? 101 What About the Proposal Document? 102 When Do You Write the Game Design Document? 103 What Should Go into a Game Design Document? 105 Section One: Defining the Game 106 Articulate What the Game Is as Clearly as Possible 106 Set the Mood 107 Section Two: Core Gameplay 107 The Main Game View 108 Core Player Activity 108 The Controller Diagram 108 In-Game User Interface 108 Section Three: Contextual Gameplay 109 Shell Menus 109 The Nuts and Bolts of Game Mechanics 109 Tutorial Mechanics 109 Multiplayer Mechanics 110 Section Four: Talk Story 111 World Backstory 112 Character Backgrounds 112 Level, Mission, and Area Design 113 Cut Scene Descriptions 114 Section Five: Cover Your Assets 115 2D Sprites or 3D Models 115 Missions, Levels, or Areas 115 Voice 116 Key Framing and Motion Capture 117 Sound Effects 121 Music 121 Special Effects 125 Stepping Back a Bit 127 Contents vii Chapter 9 The Technical Design Document 129 Object-Oriented Design 129 Purpose of the Technical Design Document 130 Why Have a Software Development Process? 132 The Unified Software Development Process 133 Core Workflows of the Unified Process 134 Phases of a Workflow in the Unified Process 134 When Should the Technical Design Document Be Written? . . 135 What Goes into the Technical Design Document? 136 Requirements Capture 136 Reverse Engineering 143 Nonobvious Requirements 143 Requirements Analysis 144 Class Diagram 145 Relationships 146 Drawing “is a” and “has a” Relationships and Ordinalities 146 Adding Annotation 147 Other UML Diagram Types 147 Dynamic Modeling 148 Architectural Diagrams 149 Large-Scale Planning and the Evil of a Long Build Time 150 Refactoring 150 Insulation 151 Forward and Backward Code Generation with a Modeling Tool 154 Testing Plan 154 Unit Testing and White Box Testing 154 Black Box Testing 155 Beta Testing 155 From Use Cases to Test Cases 155 Chapter 10 The Project Plan 157 What Is the Project Plan? 157 How Do We Create the Project Plan? 157 Gantt and PERT Charts for Organizing Project Tasks 158 Focusing on the Gantt Chart 160 Using the Technical Design Document 161 Task Granularity and Task Leveling 163 How Long Will That Task Take? 163 Short Time Estimate Possibilities 165 Estimating Research Tasks 165 Task Prioritization 166 Resource Leveling 171 Task Dependencies 172 viii Contents The Top Ten Risks Document 174 The Non-Zero Chance of Delivery 175 Chapter 11 Task Tracking 177 Production Begins—Now What? 177 Task Visibility 177 TheWall 177 Journals 179 The Cult of the Yellow Notebook 179 Walk Around 180 Milestone Orientation Meetings 180 Praise People Publicly 180 Maintain the Gantt Chart 181 Update the Risks Chart 182 Chapter 12 Outsourcing Strategies 183 Why Outsource? 183 When to Think About Outsourcing 184 What to Outsource 185 Do Not Outsource Programming—Exceptions Noted 185 On Outsourcing Art 186 Movies, Cut Scenes, or Full Motion Video 186 3D Models—Modeling 187 Animation and Motion Capture 187 User Interface Art 188 Audio 188 Music 188 Sound Effects 189 Voice-Over 190 What Else to Outsource 190 Chapter 13 Shipping Your Game 191 Shipping Is a Phase 191 How Do You Ship a Great Game? 191 Alpha—Feature Complete 192 What Is Feature Complete? 192 Additional Content 192 Feature Trimming 192 Testing Plan 193 Publisher QA 193 Team Testing 194 Project Leader Testing 195 Automated Testing 195 Focus Group Testing 195 Beta Testing 196 Open or Closed Beta Test? 196 Contents ix [...]... pushed back Background and influences on modern game genres Gambling, Puzzle, and Parlor Games Games evolved from elegant board games full of culture to a wide variety of wagering games involving dice or cards Games like Parcheesi and Scrabble took solid form during the 1800s and early 1900s Parcheesi is the father of board games and requires the players Team-Fly® Chapter 2: Why Make Games? to navigate... teams Game Development Is Software Development Games are certainly special; however, a point I will be making repeatedly throughout this book is that game development is software development Games are software with art, audio, and gameplay Financial planning software is software that is specialized for financial transactions and planning, expert systems are software with artificial intelligence, and. .. for the creation of electronic games Modern computer games have a rich history; some of the earliest games (1970s) were text adventure games such as Adventure, crude arcade games like Pong, and a little later, multiplayer games such as NetTrek These early games explored storytelling, strategy, tactics, and the player’s hand-eye coordination The sophistication of these games was, of course, limited by... often game developers hold themselves apart from formal software development and production methods with the false rationalization that games are an art, not a science Game developers need to master their production methods so that they can produce their games in an organized, repeatable manner—a rigorous manner that creates great games on budget and on time Where to Turn for Outside Help The game industry... art, programming, and design for games, but few, if any, have ever tackled game production as a topic Perhaps this is because there isn’t a standardized way of referring to production in a manner similar to programming and art Programming is done in C and C++ and usually follows standards that have been carefully crafted over many years Art uses both traditional media and a narrow range of digital art... how you can best manage risks and meet your milestones? n Is your project late? n Are you a member of a game development team and have a vested interest in the success of this game? n Are you thinking of joining the industry as a producer and need a producer’s handbook? The point is there are many different types of people responsible and accountable for the production of a game project xix xx Preface... and friends throughout the ages and teach deduction, probability, and social skills The folks at Silver Creek A partial listing of games and gamers on Microsoft’s Gaming Zone 9 Entertainment (http://www.silvercrk.com) have taken the concept of spades and hearts and have crafted the finest versions of these games, complete with a rich set of features for social interaction including chat, ratings, and. .. intuitive controls and Chapter 2: Why Make Games? mechanics and lavish production values that brought the Dungeons and Dragons world of the Forgotten Realms to life Diablo stunned the game industry with the simple and addictive gameplay of the tight user interface and online multiplayer dungeon hacking Ultima Online was the first commercially viable massively multiplayer role-playing game I spent probably... game you are making fit into a chain of game projects? 6 Chapter 1: What Does This Book Cover? How to Use This Book I suggest you first lightly skim through the entire book cover to cover to get a cursory exposure to formalized game development Parts I and II discuss the challenges of game development thoroughly and introduce you to effective methods of game development to use on your project The early... rhythm, mood, and inspiration to dance that it charges humans with Games are very special—only in a game can a player try different actions, experience different outcomes, and explore a model of a world Games Teach Games and stories are deep elements to backgammon Wei-Ch’i, or Go, can of human culture Peek-a-boo and its be traced back by one legend to 2200 more sophisticated cousin hide -and- seek teach . 8 Game Design Document 101 What Is a Game Design Document and What Does It Do? 101 What About the Proposal Document? 102 When Do You Write the Game Design Document? 103 What Should Go into a Game. 8 Gambling, Puzzle, and Parlor Games 8 Military and Sports Simulations 10 Role-Playing Games 12 Youth Making Games 13 On Money 13 Why Make Games? 14 Chapter 3 What Makes Game Development Hard?. Team-Fly ® Game Development and Production Erik Bethke Wordware Publishing, Inc. Library of Congress Cataloging-in-Publication Data Bethke, Erik. Game development and production / by Erik