Home > Store

Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#, 2nd Edition

Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#, 2nd Edition

eBook (Watermarked)

  • Your Price: $51.19
  • List Price: $63.99
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

Also available in other formats.

Register your product to gain access to bonus material or receive a coupon.


  • Copyright 2018
  • Dimensions: 7" x 9"
  • Edition: 2nd
  • eBook (Watermarked)
  • ISBN-10: 0-13-465992-9
  • ISBN-13: 978-0-13-465992-3

Master the Unity Game Engine to Design and Develop Games for Web, Mobile, Windows, macOS, and More!

If you want to design and develop games, there’s no substitute for strong hands-on experience with modern techniques and tools—and that is exactly what this book provides. The first edition was frequently the top-selling game design book on Amazon, with more than 70% of the reviews being 5 stars. In a testament to the iterative process of design, this new edition includes hundreds of improvements throughout the text, all designed to make the book easier to understand and even more useful. This book was written with Unity 2017; the book.prototools.net website will cover changes for later versions of the software.

Award-winning game designer and professor Jeremy Gibson Bond has spent more than a decade teaching game design and building great games. In that time, his most successful students have been those who combine knowledge of three critical disciplines: game design theory, rapid iterative prototyping, and practical programming. In this book, Bond distills the most important aspects of all three disciplines into one place.

Part I: Game Design and Paper Prototyping
• The Layered Tetrad framework: a synthesis of 50 years of game design theory
• Proven practices for brainstorming and refining game designs through the iterative process of design
• Methods and tools to manage game projects and small teams
• Processes to make playtesting and feedback easier

Part II: Digital Prototyping with Unity and C#
• Chapters that guide you through learning C# the right way
• Instruction that takes you from no prior programming knowledge through object-oriented programming
• Deep exploration of Unity, today’s most popular game engine on both macOS and Windows
• Methods for understanding and debugging code issues you encounter

Part III: Game Prototype Examples and Tutorials
• In-depth tutorials for seven different game prototypes, including a simple action game, a space shooter, a solitaire card game, a word game, and a top-down adventure
• Instructions to compile these games for PC, web, or any of the dozens of other release platforms supported by Unity
• Improved structure and layout that makes the steps of each tutorial easier to follow
• A completely new Dungeon Delver prototype not present in the first edition


Companion Site

Please visit the companion site for this book at http://book.prototools.net. This site includes all the files referenced in the chapters, lecturer notes, starter packages, playable examples of some of the games, updates, and more.

Sample Content

Table of Contents

Foreword by Richard Lemarchand    xxiii
Preface     xxvii

Chapter 1  Thinking Like a Designer     3

You Are a Game Designer     4
Bartok: A Game Exercise     4
The Definition of Game     10
Summary     17
Chapter 2  Game Analysis Frameworks     19
Common Frameworks for Ludology     20
MDA: Mechanics, Dynamics, and Aesthetics     20
Formal, Dramatic, and Dynamic Elements     24
The Elemental Tetrad     28
Summary     29
Chapter 3  The Layered Tetrad     31
The Inscribed Layer     32
The Dynamic Layer     33
The Cultural Layer     34
The Responsibility of the Designer     36
Summary     37
Chapter 4  The Inscribed Layer     39
Inscribed Mechanics     40
Inscribed Aesthetics     47
Inscribed Narrative     49
Inscribed Technology     59
Summary     60
Chapter 5  The Dynamic Layer     61
The Role of the Player     62
Emergence     63
Dynamic Mechanics     64
Dynamic Aesthetics     70
Dynamic Narrative     75
Dynamic Technology     78
Summary     78
Chapter 6  The Cultural Layer     79
Beyond Play     80
Cultural Mechanics     81
Cultural Aesthetics     82
Cultural Narrative     83
Cultural Technology     84
Authorized Transmedia Are Not Part of the Cultural Layer     85
The Cultural Impact of a Game     86
Summary     89
Chapter 7  Acting Like a Designer     91
Iterative Design     92
Innovation     98
Brainstorming and Ideation     99
Changing Your Mind     103
Scoping     105
Summary     106
Chapter 8  Design Goals     107
Design Goals: An Incomplete List     108
Designer-Centric Goals     108
Player-Centric Goals     111
Summary     127
Chapter 9  Paper Prototyping     129
The Benefits of Paper Prototypes     130
Paper Prototyping Tools     131
Paper Prototyping for Interfaces     133
An Example Paper Prototype     134
Best Uses for Paper Prototyping     139
Poor Uses for Paper Prototyping     140
Summary     140
Chapter 10  Game Testing     143
Why Playtest?     144
Being a Great Playtester Yourself     144
The Circles of Playtesters     145
Methods of Playtesting     148
Other Important Types of Testing     156
Summary     157
Chapter 11  Math and Game Balance     159
The Meaning of Game Balance     160
The Importance of Spreadsheets     160
The Choice of Google Sheets for This Book     161
Examining Dice Probability with Sheets     162
The Math of Probability     174
Randomizer Technologies in Paper Games     178
Weighted Distributions     182
Permutations     184
Using Sheets to Balance Weapons     186
Positive and Negative Feedback     194
Summary     194
Chapter 12  Guiding the Player     195
Direct Guidance     196
Four Methods of Direct Guidance     197
Indirect Guidance     198
Seven Methods of Indirect Guidance     198
Teaching New Skills and Concepts     206
Summary     209
Chapter 13  Puzzle Design     211
Scott Kim on Puzzle Design     212
Puzzle Examples in Action Games     219
Summary     221
Chapter 14  The Agile Mentality     223
The Manifesto for Agile Software Development     224
Scrum Methodology     225
Burndown Chart Example     228
Creating Your Own Burndown Charts     238
Summary     238
Chapter 15  The Digital Game Industry     239
About the Game Industry     240
Game Education     243
Getting Into the Industry     246
Don't Wait to Start Making Games!     250
Summary     253

Chapter 16  Thinking in Digital Systems     257

Systems Thinking in Board Games     258
An Exercise in Simple Instructions     259
Game Analysis: Apple Picker     261
Summary     267
Chapter 17  Introducing the Unity Development Environment     269
Downloading Unity     270
Introducing Our Development Environment     273
Launching Unity for the First Time     277
The Example Project     278
Setting Up the Unity Window Layout     278
Learning Your Way Around Unity     283
Summary     283
Chapter 18  Introducing Our Language: C#     285
Understanding the Features of C#     286
Reading and Understanding C# Syntax     292
Summary     294
Chapter 19  Hello World: Your First Program     295
Creating a New Project     296
Making a New C# Script     298
Making Things More Interesting     303
Summary     312
Chapter 20  Variables and Components     313
Introducing Variables     314
Strongly Typed Variables in C#     314
Important C# Variable Types     316
The Scope of Variables     319
Naming Conventions     319
Important Unity Variable Types     320
Unity GameObjects and Components     327
Summary     330
Chapter 21  Boolean Operations and Conditionals     331
Booleans     332
Comparison Operators     336
Conditional Statements     339
Summary     345
Chapter 22  Loops     347
Types of Loops     348
Set Up a Project     348
while Loops     348
do...while Loops     352
for Loops     352
foreach Loops     354
Jump Statements within Loops     355
Summary     357
Chapter 23  Collections in C#     359
C# Collections     360
Using Generic Collections     362
List     363
Dictionary     368
Array     371
Multidimensional Arrays     376
Jagged Arrays     379
Whether to Use Array or List     383
Summary     383
Chapter 24  Functions and Parameters     387
Setting Up the Function Examples Project     388
Definition of a Function     388
Function Parameters and Arguments     391
Returning Values     393
Proper Function Names     395
Why Use Functions?     395
Function Overloading     397
Optional Parameters     398
The params Keyword     399
Recursive Functions     400
Summary     401
Chapter 25  Debugging     403
Getting Started with Debugging     404
Stepping Through Code with the Debugger     410
Summary     418
Chapter 26  Classes     419
Understanding Classes     420
Class Inheritance     428
Summary     431
Chapter 27  Object-Oriented Thinking     433
The Object-Oriented Metaphor     434
An Object-Oriented Boids Implementation     436
Summary     455

Chapter 28  Prototype 1: Apple Picker     459

The Purpose of a Digital Prototype     460
Preparing     461
Coding the Apple Picker Prototype     470
GUI and Game Management     484
Summary     494
Chapter 29  Prototype 2: Mission Demolition     495
Getting Started: Prototype 2     496
Game Prototype Concept     496
Art Assets     497
Coding the Prototype     502
Summary     544
Chapter 30  Prototype 3: Space SHMUP     545
Getting Started: Prototype 3     546
Setting the Scene     548
Making the Hero Ship     549
Adding Some Enemies     557
Spawning Enemies at Random     566
Setting Tags, Layers, and Physics     568
Making the Enemies Damage the Player     571
Restarting the Game     575
Shooting (Finally)     577
Summary     581
Chapter 31  Prototype 3.5: Space SHMUP Plus     583
Getting Started: Prototype 3.5     584
Programming Other Enemies     584
Shooting Revisited     592
Showing Enemy Damage     609
Adding Power-Ups and Boosting Weapons     612
Making Enemies Drop Power-Ups     622
Enemy_4—A More Complex Enemy     625
Adding a Scrolling Starfield Background     634
Summary     636
Chapter 32  Prototype 4: Prospector Solitaire     639
Getting Started: Prototype 4     640
Build Settings     640
Importing Images as Sprites     642
Constructing Cards from Sprites     644
The Prospector Game     661
Implementing Prospector in Code     664
Implementing Game Logic     677
Adding Scoring to Prospector     685
Adding Some Art to the Game     698
Summary     704
Chapter 33  Prototype 5: Bartok     707
Getting Started: Prototype 5     708
Build Settings     710
Coding Bartok     711
Building for WebGL     750
Summary     752
Chapter 34  Prototype 6: Word Game     753
Getting Started: Prototype 6     754
About the Word Game     754
Parsing the Word List     756
Setting Up the Game     763
Laying Out the Screen     769
Adding Interactivity     778
Adding Scoring     782
Adding Animation to Letters     785
Adding Color     788
Summary     790
Chapter 35  Prototype 7: Dungeon Delver     793
Dungeon Delver—Game Overview     794
Getting Started: Prototype 7     795
Setting Up the Cameras     796
Understanding the Dungeon Data     798
Adding the Hero     808
Giving Dray an Attack Animation     818
Dray's Sword     821
Enemy: Skeletos     822
The InRoom Script     825
Per-Tile Collision     828
Aligning to the Grid     832
Moving from Room to Room     839
Making the Camera Follow Dray     842
Unlocking Doors     843
Adding GUI to Track Key Count and Health     848
Enabling Enemies to Damage Dray     852
Making Dray's Attack Damage Enemies     856
Picking Up Items     859
Enemies Dropping Items on Death     861
Implementing a Grappler     864
Implementing a New Dungeon—The Hat     872
The Delver Level Editor     877
Summary     877

Appendix A  Standard Project Setup Procedure     881
Appendix B  Useful Concepts     887
Appendix C  Online Reference     947
Index     953



To submit errata that you have found or view known errata, please visit the book's website at http://book.prototools.net.

Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership