Introduction |
|
xxiii | |
Part 1 Game Design |
|
|
|
3 | (32) |
|
|
3 | (1) |
|
|
4 | (2) |
|
|
6 | (5) |
|
|
7 | (1) |
|
|
8 | (1) |
|
|
9 | (1) |
|
|
10 | (1) |
|
|
11 | (4) |
|
|
11 | (4) |
|
|
15 | (1) |
|
|
16 | (4) |
|
|
16 | (1) |
|
|
17 | (1) |
|
|
17 | (1) |
|
Case Study 1.1 The One-Page Pitch |
|
|
18 | (2) |
|
|
20 | (1) |
|
|
20 | (1) |
|
|
20 | (1) |
|
|
21 | (1) |
|
|
21 | (14) |
|
Case Study 1.2 Initial Treatment for Conquerors |
|
|
22 | (13) |
|
|
35 | (24) |
|
|
35 | (3) |
|
|
36 | (1) |
|
|
36 | (1) |
|
|
37 | (1) |
|
|
37 | (1) |
|
|
38 | (1) |
|
Case Study 2.1 Story Versus Gameplay |
|
|
39 | (1) |
|
|
39 | (3) |
|
Case Study 2.2 A Missed Opportunity? |
|
|
40 | (2) |
|
|
42 | (17) |
|
Case Study 2.3 Integrating Game Objectives |
|
|
43 | (1) |
|
|
43 | (2) |
|
Case Study 2.4 An Instance of Emergence |
|
|
45 | (1) |
|
|
45 | (2) |
|
|
47 | (1) |
|
Case Study 2.5 An Elegant Interface |
|
|
48 | (1) |
|
|
48 | (1) |
|
Case Study 2.6 The Rules Must Serve the Features |
|
|
49 | (1) |
|
|
50 | (1) |
|
Case Study 2.7 Interesting Level Design |
|
|
51 | (2) |
|
|
53 | (1) |
|
|
53 | (4) |
|
The Value of Prototypes... |
|
|
57 | (1) |
|
...And the Necessity of Documents |
|
|
58 | (1) |
|
|
59 | (28) |
|
|
60 | (20) |
|
|
61 | (1) |
|
The Dominant Strategy Problem |
|
|
62 | (1) |
|
|
63 | (4) |
|
Case Study 3.1 Environment Plus Rules Equals Gameplay |
|
|
67 | (3) |
|
|
70 | (1) |
|
|
71 | (1) |
|
Case Study 3.2 Unexpected Versatility |
|
|
72 | (2) |
|
|
74 | (1) |
|
Case Study 3.3 Balancing Compensating Factors |
|
|
75 | (1) |
|
|
76 | (1) |
|
|
77 | (1) |
|
Case Study 3.4 Shadow Costs in Age of Empires |
|
|
77 | (1) |
|
|
78 | |
|
A Final Word About Gameplay |
|
|
19 | (61) |
|
|
80 | (7) |
|
|
81 | (1) |
|
Case Study 3.5 A Different Kind of Interactivity |
|
|
82 | (2) |
|
|
84 | (3) |
|
Chapter 4 Detailed Design |
|
|
87 | (18) |
|
|
87 | (5) |
|
Case Study 4.1 A Development Timeline |
|
|
88 | (4) |
|
|
92 | (3) |
|
|
92 | (1) |
|
|
93 | (1) |
|
Case Study 4.2 The Need for Documenting the Spec |
|
|
94 | (1) |
|
Using The Design Documents |
|
|
95 | (2) |
|
Fitting Design to Development |
|
|
97 | (5) |
|
|
98 | (2) |
|
Case Study 4.3 Planning the Mini-Specs to Fit the Architecture |
|
|
100 | (2) |
|
Why Use Documents at All? |
|
|
102 | (3) |
|
|
105 | (36) |
|
|
106 | (5) |
|
|
107 | (4) |
|
|
111 | (5) |
|
Case Study 5.1 Is This Supposed to Be Fun? |
|
|
111 | (2) |
|
|
113 | (1) |
|
Let the Machine do the Work |
|
|
113 | (1) |
|
Make a Game You Play With, Not Against |
|
|
114 | (1) |
|
Case Study 5.2 The Save Game Problem |
|
|
114 | (2) |
|
Gameplay/Gameplay Balance |
|
|
116 | (23) |
|
Component and Attribute Balance |
|
|
117 | (2) |
|
Case Study 5.3 Component and Attribute Balance in Dungeon Keeper |
|
|
119 | (1) |
|
Intransitive Game Mechanics Guarantees Balance |
|
|
120 | (6) |
|
Case Study 5.4 Attribute Balance Using SPS |
|
|
126 | (6) |
|
Case Study 5.5 Using Game Theory Analysis to Achieve Balance |
|
|
132 | (7) |
|
|
139 | (2) |
|
|
141 | (30) |
|
|
142 | (6) |
|
|
143 | (1) |
|
Case Study 6.1 Sound Effects at Their Best |
|
|
143 | (1) |
|
|
144 | (2) |
|
Case Study 6.2 A Discordant Note |
|
|
146 | (1) |
|
|
147 | (1) |
|
|
148 | (4) |
|
Case Study 6.3 Meshing the Interface With Look and Feel |
|
|
148 | (2) |
|
Case Study 6.4 Sometimes Less Is Less |
|
|
150 | (2) |
|
|
152 | (17) |
|
A Toolbox of Storytelling Techniques |
|
|
153 | (4) |
|
Case Study 6.5 An Example of a Look-and-Feel Document |
|
|
157 | (5) |
|
Case Study 6.6 An Unexpected Development |
|
|
162 | (5) |
|
Case Study 6.7 An Unsatisfying Conclusion |
|
|
167 | (2) |
|
|
169 | (2) |
|
|
171 | (26) |
|
|
172 | (25) |
|
|
173 | (1) |
|
|
174 | (6) |
|
|
180 | (2) |
|
|
182 | (4) |
|
|
186 | (1) |
|
|
187 | (2) |
|
|
189 | (3) |
|
|
192 | (5) |
|
Chapter 8 The Future of Game Design |
|
|
197 | (30) |
|
|
197 | (6) |
|
|
198 | (1) |
|
Case Study 8.1 Design Saves Time |
|
|
198 | (2) |
|
|
200 | (2) |
|
Case Study 8.2 Keep the Design up to Date |
|
|
202 | (1) |
|
Essentials of Game Design |
|
|
203 | (4) |
|
|
204 | (1) |
|
|
204 | (1) |
|
|
205 | (1) |
|
|
206 | (1) |
|
|
206 | (1) |
|
|
207 | (5) |
|
Making Designs More Generic |
|
|
208 | (1) |
|
|
209 | (2) |
|
Case Study 8.3 Comparing Nonsymbolic and Symbolic Design |
|
|
211 | (1) |
|
|
212 | (10) |
|
|
213 | (1) |
|
The Strengths of Software |
|
|
214 | (1) |
|
The Crossroads of Creativity |
|
|
215 | (4) |
|
Case Study 8.4 An Example of Mise En Scene |
|
|
219 | (3) |
|
|
222 | (2) |
|
|
224 | (3) |
Part II Team Building and Management |
|
|
Chapter 9 Current Methods of Team Management |
|
|
227 | (18) |
|
The Current Development Model |
|
|
228 | (17) |
|
The Origins of the Industry |
|
|
228 | (3) |
|
The Trouble with Game Developers |
|
|
231 | (3) |
|
|
234 | (7) |
|
Excessive Long Hours Mean an Unsuccessful Project |
|
|
241 | (1) |
|
|
242 | (1) |
|
Case Study 9.1 Quake, StarCraft, and XCOM: Interceptor |
|
|
243 | (2) |
|
Chapter 10 Roles and Divisions |
|
|
245 | (18) |
|
|
245 | (10) |
|
Management and Design Division |
|
|
247 | (2) |
|
|
249 | (1) |
|
|
250 | (1) |
|
Music and Miscellaneous Division |
|
|
251 | (2) |
|
Support and Quality Assurance Division |
|
|
253 | (2) |
|
Improving Morale and the Working Environment |
|
|
255 | (7) |
|
|
255 | (6) |
|
Morale Booster Caveats and Warnings |
|
|
261 | (1) |
|
|
262 | (1) |
|
Chapter 11 The Software Factory |
|
|
263 | (30) |
|
What Is a Software Factory? |
|
|
263 | (2) |
|
Why Use a Software Factory? |
|
|
265 | (6) |
|
Solving Game Development Issues |
|
|
266 | (2) |
|
Case Study 11.1 The Effects of Losing Key Personnel |
|
|
268 | (1) |
|
Case Study 11.2 Code Reuse |
|
|
269 | (2) |
|
Organizing a Software Factory |
|
|
271 | (14) |
|
|
271 | (2) |
|
Group Responsibilities and Interactions |
|
|
273 | (1) |
|
Case Study 11.3 Ineffective Problem Handling in Action |
|
|
274 | (2) |
|
Case Study 11.4 Effective Problem Handling in Action |
|
|
276 | (5) |
|
Case Study 11.5 The Benefits Of Tool Reuse |
|
|
281 | (4) |
|
Applying the Software Factory Structure and Methodology |
|
|
285 | (5) |
|
|
286 | (1) |
|
Knowing When to Use Each Team-a Parallel Development Timeline |
|
|
287 | (2) |
|
Rotating and Reassigning Team Members |
|
|
289 | (1) |
|
Case Study 11.6 The Indispensables |
|
|
289 | (1) |
|
The Suitability of a Software Factory |
|
|
290 | (1) |
|
|
290 | (1) |
|
|
291 | (2) |
|
Chapter 12 Milestones and Deadlines |
|
|
293 | (34) |
|
How Milestones Currently Work |
|
|
294 | (5) |
|
Case Study 12.1 What Fuzzy Milestones Can Do to a Project |
|
|
297 | (2) |
|
|
299 | (1) |
|
Milestones and Mini-Milestones |
|
|
299 | (2) |
|
|
301 | (1) |
|
Making Your Milestones Accurate |
|
|
301 | (13) |
|
Case Study 12.2 The Costs of Canceling Projects |
|
|
304 | (1) |
|
Checkpoint 1.0 General Requirements Gathering |
|
|
305 | (2) |
|
Checkpoint 1.1 Technological Requirements Gathering |
|
|
307 | (1) |
|
Checkpoint 1.2 Resource Requirements Gathering |
|
|
308 | (1) |
|
Checkpoint 2.0 General Feasibility Study |
|
|
309 | (2) |
|
Checkpoint 2.1 Technological Feasibility Study |
|
|
311 | (1) |
|
Checkpoint 2.2 Resource Availability Study |
|
|
312 | (1) |
|
Checkpoint 3.0 Draft Architecture Specification |
|
|
312 | (1) |
|
Checkpoint 3.1 Project Initialization |
|
|
313 | (1) |
|
|
314 | (1) |
|
|
314 | (13) |
|
|
316 | (5) |
|
|
321 | (1) |
|
Case Study 12.3 A Real-Life Milestone |
|
|
322 | (1) |
|
Research Versus Deadlines |
|
|
323 | (1) |
|
|
324 | (3) |
|
Chapter 13 Procedures and "Process" |
|
|
327 | (40) |
|
|
328 | (13) |
|
|
329 | (4) |
|
|
333 | (8) |
|
|
341 | (7) |
|
Case Study 13.1 Process Gone Mad |
|
|
345 | (3) |
|
Procedures: Where to Use Them? |
|
|
348 | (7) |
|
|
349 | (3) |
|
|
352 | (2) |
|
|
354 | (1) |
|
Source Control and Code Reviews: A Synergy |
|
|
355 | (3) |
|
Case Study 13.2 Source Control? We Don't Need No Steenkin' Source Control! |
|
|
355 | (3) |
|
What Should Source Control Be Used For? |
|
|
358 | (1) |
|
The Importance of Information Transmission |
|
|
358 | (9) |
|
Proactive and Reactive Information Transmission |
|
|
362 | (5) |
|
Chapter 14 Troubleshooting |
|
|
367 | (42) |
|
|
372 | (37) |
|
Design and Architecture Problems |
|
|
376 | (3) |
|
Case Study 14.1 The Case of the Deaf Manager |
|
|
379 | (9) |
|
|
388 | (6) |
|
Case Study 14.2 Applied Schedule Readjustment |
|
|
394 | (2) |
|
|
396 | (2) |
|
|
398 | (1) |
|
|
399 | (2) |
|
|
401 | (5) |
|
|
406 | (3) |
|
Chapter 15 The Future of the Industry |
|
|
409 | (24) |
|
The State of the Industry |
|
|
409 | (12) |
|
|
410 | (1) |
|
|
411 | (1) |
|
|
411 | (4) |
|
|
415 | (6) |
|
|
421 | (6) |
|
Case Study 15.1 It's Hard for Developers |
|
|
423 | (4) |
|
|
427 | (6) |
|
|
427 | (1) |
|
|
428 | (5) |
Part III Game Architecture |
|
|
Chapter 16 Current Development Methods |
|
|
433 | (24) |
|
The History of Development Techniques |
|
|
436 | (16) |
|
The Rise and Fall of the Original Game Idea? |
|
|
437 | (4) |
|
The Development Environment |
|
|
441 | (11) |
|
|
452 | (5) |
|
|
453 | (4) |
|
Chapter 17 Initial Design |
|
|
457 | (54) |
|
|
459 | (3) |
|
Case Study 17.1 Abstraction in Quake II |
|
|
461 | (1) |
|
|
462 | (17) |
|
Graphics Hardware Abstraction |
|
|
463 | (5) |
|
Sound Hardware Abstraction |
|
|
468 | (2) |
|
Other Hardware Considerations |
|
|
470 | (6) |
|
"Not Built Here" Can Be Better |
|
|
476 | (2) |
|
|
478 | (1) |
|
|
479 | (3) |
|
What Is a Game? (Revisited) |
|
|
480 | (2) |
|
|
482 | (29) |
|
|
483 | (10) |
|
|
493 | (7) |
|
State Transitions and Properties |
|
|
500 | (2) |
|
Case Study 17.2 The Inflexibility Trap |
|
|
502 | (9) |
|
Chapter 18 Use of Technology |
|
|
511 | (42) |
|
|
515 | (13) |
|
The Rise and Fall of the 3D Engine |
|
|
516 | (6) |
|
The Perception of Technology |
|
|
522 | (1) |
|
Case Study 18.1 A First Impression |
|
|
523 | (5) |
|
|
528 | (14) |
|
|
531 | (2) |
|
Case Study 18.2 Losing Sight of the Ball |
|
|
533 | (5) |
|
Case Study 18.3 Tetris: A Caveat |
|
|
538 | (1) |
|
Case Study 18.4 Outcast: Good Use of Technology |
|
|
539 | (2) |
|
|
541 | (1) |
|
|
542 | (1) |
|
|
543 | (10) |
|
The Pros and Cons of Abstraction |
|
|
549 | (4) |
|
Chapter 19 Building Blocks |
|
|
553 | (54) |
|
|
555 | (52) |
|
|
555 | (1) |
|
Case Study 19.1 Reuse of Engines |
|
|
556 | (2) |
|
|
558 | (48) |
|
|
606 | (1) |
|
Chapter 20 Initial Architecture Design |
|
|
607 | (30) |
|
The Birth of an Architecture |
|
|
608 | (9) |
|
|
610 | (7) |
|
|
617 | (11) |
|
|
617 | (6) |
|
Case Study 20.1 A Database-Driven Approach |
|
|
623 | (1) |
|
|
623 | (5) |
|
|
628 | (9) |
|
Applying the Tier-Based Approach to Architecture Design |
|
|
631 | (2) |
|
Case Study 20.2 Discussing the Architecture of Warbots |
|
|
633 | (2) |
|
Architecture Orthogonality |
|
|
635 | (2) |
|
|
637 | (50) |
|
|
638 | (3) |
|
|
641 | (27) |
|
|
642 | (26) |
|
|
668 | (4) |
|
|
669 | (1) |
|
|
670 | (1) |
|
|
671 | (1) |
|
|
671 | (1) |
|
|
671 | (1) |
|
Debugging and Module Completion |
|
|
672 | (9) |
|
|
674 | (1) |
|
Case Study 21.1 Class A Bugs or Not? |
|
|
675 | (6) |
|
|
681 | (4) |
|
|
681 | (1) |
|
Case Study 21.2 Reusable Architecture |
|
|
682 | (1) |
|
|
682 | (1) |
|
|
683 | (1) |
|
|
684 | (1) |
|
Catch Mistakes as You Go Along |
|
|
684 | (1) |
|
|
684 | (1) |
|
Know When to Draw the Line |
|
|
685 | (1) |
|
|
685 | (2) |
|
|
685 | (1) |
|
|
686 | (1) |
|
|
686 | (1) |
|
Chapter 22 The Run-Up to Release |
|
|
687 | (32) |
|
|
688 | (15) |
|
|
689 | (2) |
|
Is the Game Pp to Scratch? |
|
|
691 | (1) |
|
Case Study 22.1 A Self Inflicted Disaster |
|
|
692 | (2) |
|
Case Study 22.2 A Recovery Plan |
|
|
694 | (6) |
|
Case Study 22.3 Licensing Hell |
|
|
700 | (1) |
|
Case Study 22.4 Last-Minute Madness |
|
|
701 | (2) |
|
|
703 | (5) |
|
|
703 | (1) |
|
|
704 | (2) |
|
|
706 | (1) |
|
Case Study 22.5 Giving the Game Away |
|
|
707 | (1) |
|
Case Study 22.6 Keep Something Back |
|
|
708 | (1) |
|
|
708 | (4) |
|
Case Study 22.7 How Did They Miss These!? |
|
|
710 | (2) |
|
|
712 | (1) |
|
|
713 | (1) |
|
Getting Ready for the Gold Master |
|
|
714 | (1) |
|
|
715 | (4) |
|
|
719 | (28) |
|
Case Study 23.1 A Tale of Two Projects |
|
|
722 | (3) |
|
|
725 | (5) |
|
Case Study 23.2 It's All Gone Horribly Wrong! |
|
|
726 | (4) |
|
|
730 | (7) |
|
|
730 | (1) |
|
Case Study 23.3 Misjudging the Climate |
|
|
731 | (3) |
|
|
734 | (3) |
|
|
737 | (5) |
|
|
738 | (1) |
|
Case Study 23.4 Oubliette |
|
|
739 | (2) |
|
|
741 | (1) |
|
|
742 | (1) |
|
|
742 | (3) |
|
Case Study 23.5 Secure Your Revenue Stream |
|
|
743 | (2) |
|
The Postmortem Postmortem |
|
|
745 | (2) |
|
Chapter 24 The Future of Game Development |
|
|
747 | (38) |
|
|
748 | (4) |
|
|
752 | (11) |
|
|
752 | (2) |
|
Case Study 24.1 Marketing Means Targeting |
|
|
754 | (2) |
|
|
756 | (1) |
|
Case Study 24.2 Development Without Strategy |
|
|
757 | (3) |
|
|
760 | (2) |
|
|
762 | (1) |
|
|
763 | (1) |
|
Building the Team of the Future |
|
|
764 | (7) |
|
|
764 | (3) |
|
|
767 | (2) |
|
|
769 | (2) |
|
New Directions in Development |
|
|
771 | (9) |
|
|
771 | (2) |
|
|
773 | (2) |
|
Immanent and Transcendent Worlds |
|
|
775 | (5) |
|
The Shape of Things to Come? |
|
|
780 | (5) |
Part IV Appendixes |
|
|
A Sample Game Design Documents |
|
|
785 | (102) |
|
Detailed Design Discussions |
|
|
785 | (32) |
|
|
785 | (1) |
|
|
786 | (1) |
|
|
787 | (1) |
|
|
788 | (1) |
|
5. Why Puzzle Games Aren't as Good as They Used to Be |
|
|
789 | (1) |
|
|
790 | (1) |
|
7. Why Balls! Would Be Good |
|
|
791 | (3) |
|
8. Game Design: User Interface Elements |
|
|
794 | (5) |
|
|
799 | (6) |
|
|
805 | (3) |
|
11. Special Case Block-Block Collisions |
|
|
808 | (2) |
|
|
810 | (3) |
|
13. Further Embellishments |
|
|
813 | (4) |
|
Initial Treatments and Sample Designs |
|
|
817 | (1) |
|
Racketeers: Gang Warfare in the Roaring Twenties |
|
|
817 | (39) |
|
|
818 | (1) |
|
|
819 | (2) |
|
|
821 | (3) |
|
|
824 | (1) |
|
|
825 | (6) |
|
|
826 | (3) |
|
|
829 | (2) |
|
|
831 | (2) |
|
|
833 | (1) |
|
|
834 | (1) |
|
|
835 | (4) |
|
|
839 | (4) |
|
|
843 | (1) |
|
|
844 | (2) |
|
|
846 | (1) |
|
|
846 | (1) |
|
|
847 | (1) |
|
|
847 | (2) |
|
|
849 | (5) |
|
|
854 | (2) |
|
|
856 | (29) |
|
Technical Specification: Fully 3D Plug-In Graphics Module for Balls! |
|
|
857 | (28) |
|
|
885 | (1) |
|
|
886 | (1) |
B Bibliography and References |
|
887 | (6) |
Glossary |
|
893 | (4) |
Index |
|
897 | |