Contents
Chapter 1. Thinking Like a Designer
You Are a Game Designer
Bartok: A Game Exercise
The Definition of Game
Summary
Chapter 2. Game Analysis Frameworks
Common Frameworks for Ludology
MDA: Mechanics, Dynamics, and Aesthetics
Formal, Dramatic, and Dynamic Elements
The Elemental Tetrad
Summary
Chapter 3. The Layered Tetrad
The Inscribed Layer
The Dynamic Layer
The Cultural Layer
The Responsibility of the Designer
Summary
Chapter 4. The Inscribed Layer
Inscribed Mechanics
Inscribed Aesthetics
The Five Aesthetic Senses
Inscribed Narrative
Inscribed Technology
Summary
Chapter 5. The Dynamic Layer
The Role of the Player
Emergence
Dynamic Mechanics
Dynamic Aesthetics
Dynamic Narrative
Dynamic Technology
Summary
Chapter 7. Acting Like a Designer
Iterative Design
Innovation
Brainstorming and Ideation
Changing Your Mind
Scoping!
Summary
Chapter 8. Design Goals
Design Goals: An Incomplete List
Designer-Centric Goals
Player-Centric Goals
Summary
Chapter 10. Game Testing
Why Playtest?
Being a Great Playtester Yourself
The Circles of Playtesters
Methods of Playtesting
Other Important Types of Testing
Summary
Chapter 11. Math and Game Balance
The Meaning of Game Balance
The Importance of Spreadsheets
Examining Dice Probability with Sheets
The Math of Probability
Randomizer Technologies in Paper Games
Weighted Distributions
Permutations
Using Sheets to Balance Weapons
Positive and Negative Feedback
Summary
Chapter 12. Guiding the Player
Direct Guidance
Indirect Guidance
Teaching New Skills and Concepts
Summary
Chapter 13. Puzzle Design
Scott Kim on Puzzle Design
Puzzle Examples in Action Games
Summary
Chapter 16. Thinking in Digital Systems
Systems Thinking in Board Games
An Exercise in Simple Instructions
Game Analysis: Apple Picker
Summary
Chapter 17. Introducing The Unity devELOPMENT environment
Downloading Unity
Introducing Our Development Environment
Launching Unity for the First Time
The Example Project
Setting Up the Unity Window Layout
Learning Your Way Around Unity
Summary
Chapter 18. Introducing Our Language: C#
Understanding the Features of C#
Reading and Understanding C# Syntax
Summary
Chapter 19. Hello World: Your First Program
Creating a New Project
Making a New C# Script
Making Things More Interesting
Summary
Chapter 20. Variables and Components
Introducing Variables
Strongly Typed Variables in C#
Important C# Variable Types
The Scope of Variables
Naming Conventions
Important Unity Variable Types
Unity GameObjects and Components
Summary
Chapter 21. Boolean Operations and Conditionals
Booleans
Comparison Operators
Conditional Statements
Summary
Chapter 22. Loops
Types of Loops
Set Up a Project
while Loops
do...while Loops
for Loops
foreach Loops
Jump Statements within Loops
Summary
Chapter 23. Collections in C#
C# Collections
Using Generic Collections
List
Dictionary
Array
Multidimensional Arrays
Jagged Arrays
Whether to Use Array or List
Summary
Chapter 24. Functions and parameters
Set Up the Function Examples Project
Definition of a Function
Function Parameters and Arguments
Returning Values
Proper Function Names
Why Use Functions?
Function Overloading
Optional Parameters
The params Keyword
Recursive Functions
Summary