CDAN-221: GAME DESIGN

"The worst thing a kid can say about homework is that it is too hard. The worst thing a kid can say about a game is it's too easy." -- Henry Jenkins


"Usually, the best ideas come from having to fix a really hard problem."
--Jesse Schell

"The great challenge for us today... is to integrate games more closely into our everyday lives, and to embrace them as a platform for collaborating on our most important [personal and] planetary efforts."
--Jane McGonigal

"What part of my game is fun? Why? What would make it more fun?"
--Jesse Schell

 
Final Project Game Trailer Sample from a Spring 2020 Class:
      See past games by MassArt student teams
Download Syllabus
Submit all assignments digitally on our PIAZZA SITE
(Email teacher for invite)
Please also note the MassArt
Animation dept Website and Discord Server

Teacher: Jason Wiser     TA: Connor Pahl,
Please email with questions as soon as they arise!

Fall 2023, September 7 - Dec 21
Thursdays, 1:30pm - 6:30pm
Tower Room T330

DESCRIPTION:
This course introduces students to the dynamic field of Game Design and Development. Games are an enormously effective tool to motivate problem solving, inspire community interactions, and improve personal well-being. Art and Audio in games must support the gameplay. This course uses paper prototyping and game industry digital tools to explore the creation of meaningful play experiences with the goal of understanding the game development process.

NOTE #1: The most critical skill for product design is listening: to your colleague, testers, and your intuition.

NOTE #2: Email the teacher and TA quickly and often, so we can help you find resources for solutions!

NOTE #3: Every software production team needs to regularly assess what features are critical and what can be cut to meet production deadlines. Always work on the highest priority items and bravely cut features.
  WEEKLY BREAKDOWN:
"TABLETOP" GAMES:  01   |   02   |   03
BRANCHING NARRATIVES:   04    |   05   |   06   |   07
SOLO LEVEL DESIGN WEEK:   08  
FINAL PROJECTS:  09   |   10   |   11   |   12   |   13   |   14   |   Final  

Required Materials / Docs |  Projects Breakdown | Online | Past Projects
INTRO TO THE UNITY GAME ENGINE:
See this Unity Learning page for Game Dev tutorials, and our GitHub Desktop page.

Here are our 3 Main Unity Games Tutorials:
And our Game Art Tutorial: Pixel Art, Tilemapping, Character Animation:
Weekly Materials appear below. Press the header to expand:
LECTURE: Introduction to course, projects, and Team Expectations.
Discussions: What is a game? How do we approach design?
Player Verbs. Game Flow and Fiero.
Design Method 1: Design Playful Experiences within constraints.
EXERCISES:
     Pixel Art #1: Make a Tree (64x64, 72ppi)

     Teams: Discuss and design tabletop game interactions inspired by provided mechanics.
     Demo: PlayingCards.io for multiplayer tabletop games.
     TUTORIAL #1: Unity Interface and C# Scripting: Intro to the Interface, creating a script, console, GameObjects and Components


DESIGN NOTES:
When designing the homework games, consider ways to enhance player choice and opportunities to feel progress with each move.
Avoid mechanics with turn loss.
Don't allow dice to run the game.
If players can get cards or tokens let them choose how and when to use them (by having multiple at a time, and multiple uses).
Avoid a linear "back-of-the-cereal-box" path.
If players move pieces across a board, consider ways to make every move feel productive (flow) and awesome (fiero): big moves and action choices!



How do we help a game take just 10-15 minutes?
Make players more powerful!
Try cutting in half the cost to act and doubling the result.


Some Custom Board Options:
     
Import process for PlayingCards.io
 



MEET A DESIGNER:
Brenda Romero (Wizadry 8, Train): Game to Understand

WEEK 1 MATERIALS:
PowerPoint #1

Please try to follow this
Team Communication Checklist

"TABLETOP" GAME MECHANICS
Explore this 1 page list of Game Mechanics
Review this enormous list on BGG (or 1-doc version).
Consider these improv games played over a call

HOMEWORK #1:
TEAM 1a:

As a team, design a 2-10 player game using PlayingCards.io or real-world materials. Avoid player running, or throwing objects.
Consider options for SOCIAL MECHANICS, an image to frame action, ways to track progress.
Play it multiple times and adjust rules for more "Flow" and "Fiero," and to be sure it can be played in 10-15 minutes. Revise and type up the rules (be concise) and include photos of Set-Up and Gameplay. Post rules and materials to Forum 1team at least 24 hours before class.

Individually:
Acquire course software and books (see links below):
Sign up for a free Unity ID.
Download the Unity Hub (but not the newest Editor).
Get our Unity Editor from the Archive (2022.2.21).
Once Editor is installed: Open Unity Hub > Installs > [Locate] to add the Editor from Program Files folder.

Get a Scripting IDE. PC: Note++ or MAC: Atom.
Get Adobe Photoshop (free from school)
Get a free GitHub.com account and install GitHub Desktop App (also free)
BOOK 1: Jesse Schell's "Art of Game Design"
BOOK 2: Dr Jane McGonnigal's "Reality is Broken"

Next week we start using Unity!

OPTIONAL:
Learn Photoshop basics for 2D assets (40 min video):
Don't yet have Photoshop? Try PhotoPea.com.

2D IMAGES:
Dull Photo
Flesh parts

NOTE: Using Procreate?: Start with PSD files, 72ppi.
LECTURE: Teamwork expectations.
Design Method 2: Testing Methods: Focus Testing for player observation and non-interference. Class playtesting practice.
Evaluating and incorporating user testing
Design Method 3: Radical Revision.
TUTORIAL: Intro to Unity Interface and C# scripting for interaction.
EXERCISES:
     Playtest each other’s games, fill-out testing doc
     Tutorial: Introduction to PlayingCards.io
     Teams: Meet to plan radical revision (only keep one element)
      Pixel Art #2: Paddle-Platform (256x256 72ppi, paddle 256x32).

KEY EXPECTATIONS FOR TEAMWORK:
To be good teammates, you are expected to:
Check all agreed communication channels daily.
Respond to all communication asap, at least within a day.
Set meeting times/places by end of class, and make every effort to be timely for every meeting. Communicate time conflicts as early as possible.
Use professional language: do not use any language that is demeaning or hateful towards any group, including in regards to gender, race, ethnicity, sexuality, religion, ability, or nation of origin.
Meet Deadlines: submit work every week at the agreed time to the agreed place, and communicate production problems as early in the week as they occur, so that these problems can be solved BEFORE the materials are due. Always ask us for help as soon as possible!
Practice good transactional communication: When sending files, explain what you are sending. When receiving files, check them and confirm you got them and they are what you expected.
Work with your team to solve problems: divide work evenly, communicate issues, help each other, and don't try to take on everything.

MEET A DESIGNER:
Radical revision as "Follow the Fun"
Greg Costikyan: Uncertainty in Games
"Extra Credits": Fail Faster
WEEK 2 MATERIALS:
PowerPoint #2

Unity #1: Intro to Unity Interface

PLAYINGCARDS.IO

Getting Started with PlayingCards.io to make an original "Tabletop" game: cards, tokens, spinner, custom boards. Export .PCIO files to save / import the game.
Sample cards: back | front1 | front2 | front3 | front4

Some Custom Board Options:
     
Import process for PlayingCards.io


HOMEWORK #2:
TEAM 1b:
Create a PlayingCards.io game for 2+ players.

Attempt “Radical Revision” to redesign around the mechanic your players most enjoyed in your first game. Playtest multiple times to revise for more "Flow" and "Fiero." Type up the new rules, including new photos, a paragraph explaining your radical revision, and how it relates to the reading.
Post to Forum 2team, at least 24 hours before class.

Individually: Read from Schell's "Art of Game Design":
Ch 12 on Game Mechanics (optionally, continue to the chapter on Game Balance)
LECTURE: How do we design games which are new but recognizable?
Design Method 4: Designing for Disruption.
Design Method 5: Discussion of “Workplace” Games
Design Method 6: "Service Niche" Games
EXERCISES:
      Pixel Art #2: Explosions! file 64x64 72 ppi, four stages 32x32:
            Start, Build, Max, Dissolve). See more 2D VFX tutorials
      New Teams: Brainstorm ideas for a new game that Disrupts an
            existing game. Choose a genre and make a specific design.
      Teams meet to discuss Workplace games (mechanics inspired
            by the routines, goals and feedback job -- no baristas, please).

PAST STUDENT DISRUPTION GAMES:
(All concepts are property of the creators)
Spring 2018: Sand Wizard of Catan
Spring 2015: Ticket to Westeros   |   Fickle Checkers

Fun: McSweeny story on fixing Candyland

Samples of past student Workplace-inspired tabletop games


MEET A DESIGNER: Matt Leacock (Pandemic, Forbidden Island) and Rob Daviau (Legacy): The Making of Pandemic Legacy
"Extra Credits": Playing Games as a Designer Part 1 and Part 2
WEEK 3 MATERIALS:
PowerPoint #3
PowerPoint #4

Unity #2: Intro to C# Scripting
Unity C# Scripting 2: Structure and Methods:
Classes and Functions. Start() and Update().
Transforms and Colliders. If-conditions and While Loops.
Using .SetActive() to control object visibility.

HOMEWORK #3:
TEAM 2: Research, discuss, and design a “Workplace” Game for 2+ players. Playtest multiple times to revise for more "Flow" and "Fiero." Type up the rules (be concise) and include photos of Set-Up and gameplay. Build in PlayingCards.io, playtest, and be ready to play in class! Post to Forum 3team, at least 24 hours before class.


Individually: Intro UnityScripting, Part 1!
Please continue this tutorial from class, to finish Part1:
Post a screenshot of your finished Part 1 work to your Solo Forum thread.
LECTURE: Introduction to Game Narrative, and Project Planning.
Branching Narrative Systems.
TUTORIAL: Unity 2D game tutorial: Moving and Scoring.
Making Prefabs for repeating assets and team work.
EXERCISES:
        Teams meet to brainstorm and plan a branching narrative game.
        Unity Narrative Games #1: Basic Structure and Scripts.

Considerations for Creating Branching Narrative:

Make specific the location/scenario, but leave general the description of the player more open (give them a job / role, but not a gender/ age/ race, so the plyer can imagine themselves as they choose).
Every "card" in your Flow Diagram = one Unity Scene: a specific location, characters, interaction. Every card must include at least one choice with 2-3 options, either to define the path or the player character, BEFORE the scene-changing choice that goes to next Scenes.
Consider the voice of the characters in word choice and sentence structure. What is their POV? What does their language reveal?

TEAM HOMEWORK NOTE: How to split the work:
Each teammate should take on a roughly equal amount of work each week, documented on the Design Doc Backlog, and make every effort to communicate daily and complete all tasks early in the week to support the team build. Not quite finishing all you agreed to do will NOT affect your grade; I am looking to see you contribute significantly to production each week, to communicate frequently with your teammates, and for you to document what went well for you and what issues you encountered.

Designing for Players (Audience):
SIGNIFIERS: What do elements design communicate about the history of those elements, and what does that lead the player to expect about this experience?
AFFORDANCES: How do signifiers combine with player capabilities to communicate what the player can do?
FEEDBACK: How does the game uphold or contradict our expectations (Schema)?
Sample 1: GoW Lancer and breakdown
Extra Credits: How Design Teaches Us Without Words
Razbuten: What games are like for those who does not play games

MEET A DESIGNER:
Bio of Lucas Pope, creator of Paper's Please
John Romero (Doom): The Early Days of id Software
(NOTE: I disagree with some principle here, such as skipping prototyping)
"Extra Credits": Affordances Part 1 and Part 2
WEEK 4 MATERIALS:
PowerPoint #5


Unity #3: Intro to C# Scripting
Building game components on art assets in Unity
Three MP3 Sound FX
Unity C# Scripting 3: Player Controls, Scoring, Randomness.
Game Writing Articles: 01, 02, 03





HOMEWORK #4: TEAM 3a: Unity Story Games:
1. Create a Flow Diagram for a Choice-Driven Story (at least 10 cards/Scenes, multiple paths to win or lose).

2. In a shared Google Doc type an Art Backlog (to-do list) of all needed Art assets (backgrounds, objects, NPC character poses for each Scene. Also menu splashscreens, UI, and logo). All teammates put their names by the assets they want to make.

3. In the same Google Doc type your Scene Outline and Zero-Draft as much Dialogue as you can (at least 10 lines per scene and one choice with 2-3 options BEFORE the final scene-change choice): at least the first 4 Scenes.

4. Zero-Draft all Art (1280x720, 72ppi): character poses (with transparent backgrounds), backgrounds, and splash-screens (MainMenu, Credits, EndLose and EndWin).
Also UI (300 x 80). Export each as a PNG:
at least the first 4 Scenes.


Post your Flow-Diagram, Art Backlog List / Dialogue Doc, and Art PNGs to Forum 5team.
We will set up your team GitHub with your handles.



Individually: Intro UnityScripting, Part 2!
Please complete Part 2 of this tutorial!:
Post a screenshot of your finished Part 2 work to your Solo Forum thread.
LECTURE: Building Team Games in Unity
TUTORIAL: Using GitHub and GitHub Desktop to collaborate
UNITY NARRATIVE GAME #2:
   Build these in Unity from our Narrative Tutorial:
        1. Framing Scenes (MainMenu, Credits, Win, Lose)
        2. Game Handler and Pause Menu prefabs
        3. Story Scenes (with prefabs), and Dialogue Scripts
        Time to meet, make art, write more dialogue


NOTE:
The goal of this day is to draft all basic Unity parts of your game.
Split the tasks among your teammates, follow the tutorial and teacher.
For homework you will populate copies of the Story Scene with all dialogue and art, so make drafts of all character and background PNGs as fast as you can!



MEET A DESIGNER:
Robin Hunicke (Journey, Boom Blox, Luna):
We Care a Lot - Making Games with Value

Robin Hunicke and Keita Takahashi: Introducing Wattam
Keita Takahashi: Introducing Katamari Damacy
WEEK 5 MATERIALS:

Get a free GitHub.com account (Save your GitHub handle and password!), install GitHub Desktop App (also free), and login to GitHub Desktop using the same login. We use your handle to invite you to team collaboration!

Unity Implementation and GitHub for Collaboration
Our Unity Branching Narrative Tutorial
Our GitHub resources page


HOMEWORK #5: TEAM 3b:
Start Unity Branching Narrative Games:
Add all Scenes, art and story (as far as you can get).
Add GameHandler and Build settings.

OPTIONAL TEAM LABS: You are encouraged to meet with the teacher out of class this week to get help building your game. Please do not wait for class to ask questions!

Individually: Read McGonigal's "Reality is Broken" Part 2: Reinventing Reality (pp119-215).
LECTURE: Building Team Games in Unity
Progressing the Narrative Unity Games: making a GameHandler prefab and adding to all scenes. Creating Win and Lose scenes.
Introduction to Game Audio: Ambient and Triggered SFX
UNITY NARRATIVE GAME #3:

        More Character Poses and Backgrounds
        UI and Splashscreen Planning
        Story meetings to revise dialogue for clarity and voice
        Player Stat Planning: Using a static variable to change results based on player choice / health / etc




AUDIO DESIGN CONSIDERATIONS:
Footstep files: raw, trimmed, individual
Record Foley work to lay tracks in Audacity
Recording on iPhone? Convert M4A to WAV.
Virtual Piano for recording ambient music
Getting Creative with Foley Sounds
Unity trick to vary repeating sounds (footsteps).
Music Composition: 1 | 2
Dynamic Audio: Try Wwise, FMOD, or Elias (download) for music (1 | 2 | 3) and Fabric (download) for sound effects.





MEET A DESIGNER:
Kim Swift: Our Journey From Narbacular Drop To Portal
WEEK 6 MATERIALS:
PowerPoint #6
Game Audio Considerations

Our Unity Branching Narrative Tutorial
Our GitHub for Unity Tutorial
Unity C# Scripting 3: UI and Scene Changes. Creating a GameHandler, and tracking player states with public static variables. Referencing GameObjects.
Read Lost Pig Interactive Fiction game (instructions).

UNITY: How to update an art asset:
In the Assets folder, Rightclick the asset to be replaced, to "Show in Explorer" (open the folder outside of Unity).
Drag the new file into that folder, to replace the original with a file of the same name.
All setting in Unity that were applied to that file are unchanged; only the underlying asset is updated!


HOMEWORK #6:
TEAM 3b:
Revise Branching Narrative Games:
Complete a draft of all Scenes, art and story.
Add UI, Splashscreens, plan Stats, VFX, and Audio.
 Individually:
Submit PPR #1: What you took on, what you completed, who helped you, who you helped, URLs for any tutorials.
Please post as a reply to your Solo Forum thread.
LECTURE: Completing Narrative Unity Games
Class check-in. How are we all doing?
Unity Narrative Games #4: Completing the Narrative Unity Games with VFX, Stats, and Exporting WebGL builds.
Final Project Ideas: Discuss scope and possibilities, including Tilemaps, NavMeshes/NPCs, and provided script functionality.
Design Method 7: Misery Solutions / ARGs. How can games improve our world? Alternative Reality Games (ARGs) and designing to solve human suffering.
EXERCISE: Teams identify suffering, design an ARG ruleset.
     With your team create an ARG Game Concept:
           Choose a misery to ease with a game, per Reality is Broken.
           What activities do you want to encourage?
           What mechanics would create unnecessary obstacles?
           Type rules and post to Forum under ARGs.


Process for making an ARG:
     1. Identify a source of misery.
     2. List the misery's mechanics.
     3. List real-world solutions for the misery-- behaviors people might do if they were not too busy, distracted, or embarrassed.
      4. Focus on one tangible behavioral solution at a time, and consider game mechanics that could encourage that behavior.
Iterate: What can make those mechanics more meaningful, more specific to the behavioral solution desired?




PAST STUDENT ARG SAMPLES (All concepts property of creators):
[Dining Discomfort] [Shovel Wars] [Crunch Time]
[Ready Set Cook] [End of the Line] [Procrastination]
[Dog Walk Bingo] [Exercise Demons] [Water Buffalo]


WEEK 7 MATERIALS:

Our Unity Branching Narrative Tutorial
Our GitHub for Unity Tutorial

Unity C# Scripting 4: Stats and Visual Effects:
GameHandler static variables to track player Stats
Type-on-screen
Image fade-in or fade-out (and using randoms)
Text shake
Player name input (Referencing methods in other scripts/classes).
Particle effects (Instantiation)
Refactoring


HOMEWORK #7:
TEAM 3c:
Revise Branching Narrative Games:
Everone PLAYTEST your game to make revisions!
Revise all Scenes for "Final" art and story:
  Characters, Backgrounds, and UI.
Add Splashart and game logo to all Frame Scenes
Implement at least one static variable Stats
To Build Settings add all final Scenes, MainMenu first.      Optionally add a game icon and custom cursor.
Optionally add Visual Effects.
Export WebGL builds ( ZIP and upload to itch.io or simmer.io). Post links on Forum 7team.
Optionally: Make a poster to share your work.


Individually:
Please submit PPR #2: What you took on, what got done, who helped you, who you helped, tutorial URLs.

Please post as a reply to your Solo Forum thread.
LECTURE: Level Design for Action Games, Final Project Inspiration
Inspiration Sources: Disrupting Movement, Wild Visuals.
EXERCISES:
        Basic Level Builder (BLB) Practice: Notes, Rhythm, Melodies, and Harmonies to build an engaging experiences.
        Pixel Art #4: Character Animation Spritesheets for Unity

MICRO LEVEL DESIGN:
Base Speed: How far we can jump, if holding down the right-arrow key (in BLB, this is 9 spaces).
Rhythms: alternating challenges (jump over ground hole, wall, stairs, through holes in walls, off leap-of-faith jumps, etc, all in "Base Speed"= 9 spaces per platform/challenge).
Melodies: ABABC where the rhythm is interrupted by a new challenge (hole, wall, hole, wall, hole, stairs)

Harmonies: Combine a series of the same basic Melody 3 times in a row, with the challenges appearing to get progressively more difficult (wider holes and smaller platforms) while maintaining "Base Speed" (still 9 spaces per platform/challenge).
For example: in the first "Melody" the jump-holes can be 2-wide with platforms 7-wide, and in the second Melody the holes can be to 4-wide with platforms at 5, and in the final Melody in the set the holes can be 6 and platforms only 3. This results in a huge change in APPARENT difficulty, with no change in actual jumps (since it is all based on a 9-space jump in BLB).

TIMING NOTE: A full "Harmony" (3 Melodies) takes about 5 seconds to traverse at Base Speed (continuous run-jump).

MACRO LEVEL DESIGN

Build multiple Harmonies into a longer experience (1-3 minutes) with gradually increasing difficulty:
1. Intro: No death, just get accustomed to running and jumping
2. Hook: No death, but introduce us to the key mechanic of this level
3. Rising Action: The player learns to use the mechanic in increasingly difficult (and possibly deadly) encounters and challenges
4. Climax ("the Turn"): The most challenging and deadly encounter!
5. Resolution: A short distance of simple running and jumping, perhaps more rewards, leading to the end of the level (flag, door, etc). No death; a chance to reflect on the awesomeness just experienced.

MEET A DESIGNER: Warren Specter (Deus Ex, Epic Mickey, System Shock) and Doug Church: Practical Game Design
Warren Specter Deus Ex Postmortem and Dream Projects
WEEK 8 MATERIALS:
PowerPoint #8

2D Level Design:
Let's explore designing for Rhythm and Harmony:
Download DigiPen's Basic Level Builder (BLB)
PC version
Mac version (Mac version needs setting permissions)

Instructions for Saving, Sharing, and Opening BLB levels.
PC: find Basic Level Builder levels folder in Documents >
MAC: Basic Level Builder folder in Users > YourName >

BLB unfortunately treats each block as unique in memory, so avoid crazy big areas of "mountain" that eat memory!

Please also check out:  Ken Bowen Sidescroller Notes 


HOMEWORK #8:
Individually
:
Use the Basic Level Builder (BLB) to create a level that demonstrates principles of Micro and Macro level Design. 1-3 minutes of play (by a player of moderate skill).

Submit both your level and a testing document, with at least one observed tester, sharing what you observed. What did they most enjoy? Where did they get stuck?
Post to Forum under Basic Level Builder.

ALSO: Please post an idea for a Final Project Team Game: a 2D Sidescroller or Top-down explorer, puzzler, or battle game, with a unique twist. Post a brief description: Include a title, genre, and what is unique or interesting to you about this idea. For example (from a student):
" 'Red or Blue' is a 2D platformer where the player is a bullied teenager with the power to switch the lighting between red and blue, making escape platforms appear of the opposite color, and turning off enemy pants."

ALSO: MIDTERM PEER EVALUATIONS
(Give each teammate a unique integer for points. Save as a .DOC or .TXT, rename with your name and game name, and Email directly to teacher AND TA this week):
3 members   |   4 members   |   5 members
LECTURE: Dynamic Team Creation workshop based on roles and brainstormed designs!
EXERCISE:
        Students brainstorm designs based on theme, present concepts, and choose projects and teams.


Notes for Multi-Player Games:
Has your team decided to make a multi-player game?
In most cases, this means each team-member needs a couple of XBox controllers for work from home: wired USB, to work on laptops (Have a Mac? You will also need an adaptor for your USB-C ports).


THINK BEFORE YOU CODE: "PAPER" PROTOTYPING:
STEP 1: A Paper Prototype starts with a "Risk Question," the more specific the better. What is a mechanic in your game that you are wondering how players will understand or use, or how it might interact with other systems you are planning?

STEP 2: The next stage is to imagine solutions: ideas for how things should work, to answer the Risk Questions. For example of the many ways a flying mechanic could be implemented-- jetpack, propellers, drift and yaw vs kryptonian precision, etc, which one/s do you want to try?

STEP 3: The next stage is to test the solutions. These tests are non-digital prototypes; you want to make and test them as fast as possible. You want to "Fail Faster" through lots of early ideas to get to the good designs! Watch this intro to Prototyping game elements for ideas.

STEP 4: The last stage is to evaluate the results of the paper prototype playtest and draw conclusions! Is this mechanic a good idea? In a game studio, we can save months and enormous amounts of money with these early protoypes, to avoid going down wrong paths!




MEET A DESIGNER:
"Extra Credits": Making Your First Game: Minimum Viable Product
WEEK 9 MATERIALS:
PowerPoint #9
Including notes on Paper Prototyping and Design Documents.

INSPIRATION:
Watch these videos to help think of paper prototypes:
Intro to Prototyping game elements
Extra Credits' excellent "Fail Faster" video

PRODUCTION:
Read this doc: Game Development Roles
Good Game Producer
Valve Handbook
Game Art Bible Guidelines


HOMEWORK #9: TEAM 4 (Final teams!):
Meet outside of class at least twice to:
Brainstorm user functionality and create Playable Paper Prototypes in Tabletop Simulator or PlayingCards.io to playtest and revise your core game mechanics. Consider player User Stories to decide core functionality! Draft your initial Design Document (include a few URLs with tutorials on implementing features specific to your game).
Set up free online team resources:
    A Google Doc for your Designs, Backlog, Ref-links.
    A Discord channel for team communication.
    A Trello account for task-tracking.
    We will set up your GitHub when we have your handles.

NOTE: Do not worry about populating a Production Schedule/Backlog this week (Prioritized List of User Story functionality and when you hope to have them done, based on course schedule).
Focus on design, on player verbs: what do you want your player/s to be able to DO in your game? What will be innovative in the mechanics?

Individually: Please read Jesse Schell 's Art fo Game Design chapter on Prototyping called The Game Improves Through Iteration (pp75-95 in the fist edition).

LECTURE: Final Game Digital Prototypes 1, Kitboxing, Agile.
Final Github projects established.
Peer playtesting to respond to each team game. Review of Unity modules and project scope.
Notes on Zero Drafting for production (Greyboxing). Teams start working on digital prototypes. Team Communication and Production planning.Software Development Cycle.
2D Unity modules on player movement.
Game Audio Considerations.

EXERCISE:
        Teams playtest Paper Prototypes, meet to plan production.

Your team will use GITHUB to manage project collaboration. We will set up your repository for you with an initial 2D or 3D Unity Project.
Please review the class GitHub Instructions
Each time you sit down to work, please "Fetch" and "Pull" the current build before making changes to the game, to be sure you are working on the latest version (and do not create "conflicts").
When you are done each day, type a summary of changes, hit "Commit", then "Push".
Please do not change any other settings in GitHub without consulting with the teacher. In particlar, please do not "Revert" the project, as it can cause a great deal of data and work to be lost (it rolls back the version everyone can access to an older version).

NOTE: Not quite finishing all you agreed to do will NOT affect your grade; we are looking to see you contribute significantly to production each week, to communicate frequently with your teammates, and for you to document what went well for you and what issues you encountered.

LEVEL DESIGN #1: Drawing the Plan
Each team member is responsible for building a game level!
Levels should be of controlled difficulty, should relate to the levels before and after, should show macro and micro pacing, and should progressively teach the player how to succeed in that level.

Coordinate with your team: decide who will do which level.
Draw your level ideas for a 1-3 minute experience (consider Micro and Macro principles, and level length from the BLB project).
Consider hazard, NPC, and pickup placement, as well as designing visual depth with background and foreground elements.
Save as PNG and bring as background into a new Unity Scene.

MEET A DESIGNER:
Will Wright (Sims, Spore): Lessons in Game Design
Eric Lang (Blood Rage, Duelyst): Designer vs Designer Panel and CMON Interview
WEEK 10 MATERIALS:
PowerPoint #10a
PowerPoint #10b

Our Unity Action 2D Tutorials
Our GitHub for Unity Tutorial

Intro to 2D Art Pipeline notes

Final Game Team Production Schedule #1:
Use the course Unity 2D Action Tutorial to draft all key elements of your game not unique to your design with placeholder art:
Basic environment and Player movement
GameHandler, PauseMenu, Canvas HUD
GameHandlerCanvas and Framing Scenes
Pickups, NPCs and Enemies, scoring.

HOMEWORK #10: Teams: DISCUSS your paper prototypes and Revise Design Documents for more meaningful player choice.
SET-UP your local copy of the online repository (Github username, desktop app, and download the repository). Decide your naming system, and document Asset Pipeline: where your team files will go
Using your Backlog to DECIDE what core features of your game you will attempt to get working in Unity this week. Discuss and divide Unity and Rough Art production work evenly.
WORK this week to attempt initial 2D Modules of core game features! Use only simple "zero draft" placeholder art. and "scratch" audio- simple shapes sufficient to test playability, not yet for appeal. Meet at least once outside of class to revise your prototype.

Individually:
PPR #3: Post typed page to your Solo Forum thread: What you agreed to produce, what you accomplished. Who helped you and who you helped. List of research links read/watched. Include related screenshots.
ALSO post: A draft of your drawn level plan:
PNG, 72ppi.
LECTURE: Unity 2D Modules for Feedback: Game responses to player actions: sprite color flashing, instantiating particle systems, creating UI. Tutorializing your game to onramp players with a gradual difficulty curve.
EXERCISES:
     Level Design workshop #2: RGD and Difficulty Curves
     Character Animation spritesheet workshop
     Teams meet to plan project revisions, including game responses to player actions (feedback).

Rational Game Design Notes
Rational Game Design Article

LEVEL DESIGN #2: Designing Tilemap Sprtesheets
Each team member is responsible for building a game level!
You should have your level plan PNG in a new Unity Scene.
ART: Rough-Draft your Scene Tilemap Spritesheet PNG.
    Dot the empty squares!
Coordinate with your team for consistant style and resolution
(16 pixel squares in 256x256, or 60 pixel squares in a 1024x1024?)
UNITY: Follow the tutorial to implement the Tilemap in Unity.
    Add rough draft of your Collider layer to playtest.
Consider including stand-alone sprites for large objects.
Add a door at the end to get to the next level!

Adding Game User Interface Design:
Intro to Game UI and list of Best Practices
Intro to Game User Experience (UX)
"Games That Can be Understood at a Glance"
    by Zach Gage: article and video
Use cases: Good and Bad Game UI
Design process, including influences


MEET A DESIGNER: Ken Levine (Bioshock): Narrative Legos and Career Interview 2017
Peter Molyneux (Fable, Black and White) The Rebirth Of Design
WEEK 11 MATERIALS:
PowerPoint #11: Rational Game Design (RGD)
RGD Failure Case: Avatar Dog Sequence

Unity C# Scripting 6: Basic NPC AI follow the player, follow at a distance, look around.
Unity C# Scripting 7: Health and Inventory Systems
User Interface Considerations: Intro and end scenes, HUD design and integrated UI elements.
Unity C# Scripting 8: Pause Menus and Volume control.


Final Game Team Production Schedule #2:
Identify core functionality that is unique to your game design. We need to test this in game ASAP!
Work with tutorials and teacher to implement a draft of these core features in your game, to test the fun.
Implement first playable drafts of your levels (likely using our Tilemap Spritesheet Tutorial).
Draft character animations as Spritesheets.
Continue to implement non-unique features with placeholder art using our Unity 2D Action Tutorial.


HOMEWORK #11: Teams: Review your backlog and divide work evenly! Meet at least once outside of class to revise your prototype. Test clarity: at least 2 new players.

Individually: Typed PPR #4: What you took on, what you completed. Who helped you and who you helped. List of research links read/watched. Related screenshots.
Post to your Solo Forum thread.
[ No class November 23 for Thanksgiving ]
LECTURE: Encountrer Building and Multiple Player Personas
PLAYTESTING: In-Class Assessment of Functional Prototypes!
Is the game fun? What radical steps could help by end of term?
Lighting topics.
EXERCISE 1:
        Level Design workshop #3: Encounter Building.
        Teams meet to plan project revisions, including tutorial levels.

What do your players want?
Design for your target audience.
This short SNL skit exemplifies designer/player intention conflict.

Please Read these excellent Level Design articles:
"Where the Rubber hits the Road" by Jay Wilbur
"No More Wrong Turns" by Martin Nerurkar

And these articles on Lighting Design and Implementation:
"Functional Lighting"
"Level Design Lighting Theory"
"Lighting in Unity3D"

Lighting and Post-Processing Resources
Lighting makes a big difference in the feel of a game. Solid black shadows can feel outdated and uninviting.
Intro to LightMaps (15 min) and Global Illumination (10 min)
Light Probes bake lights / shadows for static & dynamic objects (10)
Try this tutorial on Post-Processing for better lighting using
    the Universal Render Pipeline (URP).

LEVEL DESIGN #3: Revise Art and Unity Scene
Each team member is responsible for building a game level!
You should have a rough, working collider layer to playtest.
ART: Revise your Tilemap art for more detail.
UNITY: Revise background, foregound, collider layers.
Add NPCs, hazards, pickups, etc.
Playtest and revise! Coordinate with your team: is the degree of difficulty appropriate for when your level appears in the game?


MEET A DESIGNER:
Richard Bartle: Player Type Theory: Uses and Abuses
"Extra Credits" take: Bartles' Taxonomy and MMO Balancing


WEEK 12 MATERIALS:
PowerPoint #12: Lighting and Encounter Building
Design for Player Improvisation


CLARITY AND FEEDBACK:
Consider ways to give the player feedback on their actions with GameFeel: color changes, particles, squash/stretch, recoil, screenshake, sounds, etc
How will your game communicate player state like health, collected items, map progress, current tool, speed? UI HUD elements, or a Diagetic (immersive) solution?
Unity Particles: Use Particle emitters to create effects like energy, weather, water, or impacts



Final Game Team Production Schedule #3:
Implement more unique features, placeholder art.
Revise features based on player feedback.
Define final art style: characters, environments, UI. Revise animations.
Continue to implement non-unique features with placeholder art using our Unity 2D Action Tutorial.



HOMEWORK #12:
Teams: Review your backlog and divide work evenly. Revise digital prototype and start planning your game tutorial: introduce key player abilities in a series of progressively more challenging levels/experiences. Meet at least once outside of class. Test game clarity with at least two new players.

Each team member should design at least one level, on paper and then draft as much as possible in Unity.

Individually: MID-PROJECT PEER EVALUATIONS
(Give each teammate a unique integer for points. Save as a .DOC or .TXT, rename with your name and game name. Email directly to teacher by next class):
3 members   |   4 members   |   5 members
LECTURE: Game Marketing: Websites and Trailers
Game Feel and User Interface Design considerations.
Marketing: Websites and Trailers. Types of marketing materials and expected elements of each: website, gameplay trailer, game description narrative and title logo. Factoring audience into the design of marketing materials. How can the intended user of the website influence the design and presentation?
EXERCISE:
        Game Testing
        Teams meet to plan last stages of production.

USER INTERFACE: Revise for clarity and style!
What elements in your game could be better explained?
What features are players missing?
How can the UI buttons and HUD elements feel integrated?
Consider adding fonts, painting buttons and the framing elements.

LIST OF FINAL TEAM DELIVERABLES:
[1] YOUR TEAM GAME! (Due before final class meeting)
WebGL build on itch.io.

Please include:
MainMenu: Title Logo, play instructions, credits.
End Conditions / Screens (win/lose/etc)
Legible interface, with support graphics (framed in shapes, with a buffer to the screen-sides)
Pause Menu with audio slider in all Scenes.
Art and Audio populated
At least 1 level created by each team member, directing player to encounters and goals.
Bugs fixed to the best of your ability (through much playtesting).
[2] MARKETING MATERIALS (Due at presentations):
Team Website with:
Game Logo
Play / Download Links
Gameplay Trailer
Game Description / Press Release
3-6 Game Screenshots
Team Pics / Bios / Portoflios
[3] FINAL PRESENTATIONS:
1 minute per person:
What you created on the project.
What you learned.
What you enjoyed working with this team.

For ZOOM: Please have your video on for presentations.
Let teacher know any concerns.
[4] OTHER DOCS (Due day after final presentations):
Final Peer/Self/Course Eval (please fill out completely)
Playtest Report (please observe a playtest with at least one new player to make revisions, submit notes).
Event write-up (extra credit, if you attended in-person or online).


MEET A DESIGNER:
Mark Brown/Game Maker's Toolkit: How to Pace a Game Trailer

Jonathan Blow:Prototyping for Indies and How To Design Deep Games (Braid, The Witness) IGN Game Changer interview

Sid Meier and Bruce Shelley: Classic Game Postmortem: Sid Meier's Civilization. IGN Game Changer interview
WEEK 13 MATERIALS:
PowerPoint #13
PowerPoint #14

Adding Game Feel:
Unity Tools like Screen shake, color change, etc
A tour of common Game Feel Techniques.
Mark Brown's intro video on Game Feel
Juice it or Lose it (Breakout Game Feel demo)
Game feel case study/interview: Celeste
Make better buttons (1 min)
Game Feel by Steve Swink (text, Ch 1)

Marketing:
Marketing Color Choices
Marketing Color Theory
Press Releases:
Industry example and review: Dejobaan Games
Sample student project: Cat-astrophe

TRAILER EXAMPLES:
Student Sample 1:
Red vs Blue website
and game trailer:
Student Sample 2:
Midnight Cleaning Company
website and game trailer
Beetle Royale (spring 2020)

Industry Cinematic Trailers:
(Adventure) World of Warcraft Shadowlands
Team Fortress 2: Expiration Date
Star wars Knights of the Old Republic
(Horror) Dead Island Announcement
(Horror) Metro, Last Light Mobius Trailer

Final Game Team Production Schedule #4:
Everybody playtest to find areas to fix!
Revise features based on player feedback.
Replace art with revised content.
Add Game Feel: screen shake, audio and VFX, etc using our course Unity 2D Action Tutorial.

HOMEWORK #13:

Teams:
Submit Final Prototypes: Review your backlog and divide work evenly. Populate final levels to demonstrate difficulty progression. Polish final assets. Meet at least once outside of class.
Create marketing materials: Wix Website with Game Logo, Gameplay Trailer, Screenshots of key moments, game description, Team Bios/Pic, webGL/itch.io link.
Individually:
Prepare your 1-minute presentation: Your role on the game, what you enjoyed working with this team, and what you learned.

Individually:
Typed PPR #5: What you took on, what you completed. Who helped you and who you helped. List of research links read/watched. Related screenshots.
Post to your Solo Forum thread.
Typed PLAYTEST REPORT (Forum, same post):
Please observe a new player trying your game for the first time, and report on what you learned!
Final Meeting Schedule:
1: Final Games and Websites posted by 1pm
2: 120 minutes: Playtesting!
3: 90 minutes Team Presentations!
4: 60 minutes team meetings on final revisions
5: Farewell Notes


Want to take your passion for games further?
Learn more here!

MEET A DESIGNER: Chris Crawford (founder of Game Developer's Conference): 1992 Dragon Speech and 1989 Whip Speech


You are encouraged to meet once with your team
after the final class meeting
to make any
final fixes and revisions before your
game is added to the course archive!




HOMEWORK #15: Fill out forms for FINAL PEER EVALUATION, including Self, TAs, and Course notes.
Give each teammate a unique integer for points.
Save as .DOC or .TXT, rename with your name and game name. Email to teacher in response to Eval email by Monday after final class meeting:
3-Members   |   4-Members   |   5-Members
Schedule subject to change per class needs. Please coordinate with teammates
AND instructor if you will be absent to confirm assignments.

 
  REQUIRED TEXTS:
The Art of Game Design:
A Book of Lenses

by Jesse Schell

(1st reading assigned week #2)

Reality is Broken
by Jane McGonigal

(Reading assigned week #4)
COURSE SOFTWARE/HARDWARE:
Download and install:
(1) Unity3D: 2022.2.21:
Our Game Engine. Create a free Unity account. Download Hub and our version from the archive. Run the program.
Also choose a free scripting IDE.
The teacher likes Note++ (PC) or Atom (Mac). (Needed week 1)

(2) Adobe Photoshop
2D textures, background art, tilesets and sprites. It is free for MassArt students (contact Adam and Peggy).
Alternatively, try the free web emulator PhotoPea.com.
NOTE: If you choose to use Procreate instead, please be sure all files are 72ppi, and start with provided .PSD files.

(3) PlayingCards.io
We use this free tool to collaborate and playtest your tabletop games online.
Fully customizeable boards and cards, real-time multiplayer manipulation.
Export a .PCIO file to preserve your work (web games expire after 7 days of unuse).
(4) GitHub Desktop App
Each team will use GitHub to collaborate on their Unity games. The teacher will be join your GitHub repository to help you with your projects!

(5) Audacity
Audio editing for sound FX and voice recordings.

Optional: Pyxel Edit. For 2D Sprite Animation, consider learning this elegant tileset tool ($9 one-time purchase).
See these notes by Ralfi Salhoun.

IMPORTANT HARDWARE:
Please have a 3-BUTTON MOUSE for all classes starting week #2!
You want at least 20-50 gigs available for software and work.
ART TABLETS: Digital drawing tablets/pens are needed for 2d art. Wacom Intuos tablet recommended (basic model is around $80).


  REQUIRED DOCUMENTS:

DESIGN DOCUMENTS:
Weeks 1-4, 9: Instructions


 
PERSONAL REPORTS:
Weeks 5-6, 10-14: PPR Instructions
PPR Template


PLAYTEST REPORT:
Week 13: Observe at least one new player trying your game. Consider revisions for clarity and to encourage desired behavior.
Instructions   |   example questions


 
NETWORKING EVENTS:
Attend at least one event online this term to learn about the game industry.

Submit a Write-up


TABLETOP GAMES:
Keep your design docs concise: One page of text! See this example by N. Greenberg:

 
MORE GAME DESIGN LEARNING RESOURCES AND MEDIA:
MassArt Game Design Club
MORE SUGGESTED READINGS:
Game Design Narrative Architecture by Henry Jenkins
Digital Games History by J. Kirriemuir
Why We Play Games by N. Lazzaro
Level-Design.org: Articles

Gamasutra read game dev articles by Game Industry Pros!

GDC Vault: Watch free video talks by industry professionals from past Game Developer Conferences.

Indie Developer Survival Skills
GDC talk by Jake Birkett


Learn about modern card games and board games through entertaining playtest videos
featuring Hollywood celeb geeks.

Design Theory and Reviews
in fast-paced videos

Celebrations of developers and Gaming culture:
"Indie Game the Movie"
Trailer   |   Film ($6)
Podcast on Games Culture: Robert Ashley's
A Life Well Wasted
1 | 2 | 3 | 4 | 5 | 6 | 7
Discussions on the dark side of "Gamer" culture:
"This is Phil Fish" a video essay by Innuendo Studios Feminist Frequency Tropes vs Women by Anita Sarkeesian
GamerGate Analysis:
Essays by Innuendo Studios:
1 | 2 | 3 | 4 | 5 | 6
GamerGate in 2016-2017:
Samantha Bee
 
GAME STORYTELLING:
If you want to explore branching narrative in its purest form, take a look at Interactive Fiction:
Read Lost Pig
Learn about IF on Zarf's Page
3 Articles: Explainer | Choice of Games | Branching Narrative
Finally, try TWINE: Learn and Create! Jason Wiser Tutorial
Rise of the Videogame Zinesters by Anna Anthropy

 
Team Projects
There are three smaller paper game projects and a final digital game prototype.
For each smaller game you will form a new team for two weeks.
"Mechanics-Based Game" Team A, due week 2
"Radical Revision" Team A, due week 3
"Disruptive Mechanics" Team B, due week 4
"Workplace Games" Team B, due week 5
Narrative Games Team C, due weeks 6-8

Final Project: Digital Game Prototype
For the final project you will work with a final team for six weeks, starting week 9. Together you will design and create a prototype of a digital game using the Unity game engine (Note: all listed dates subject to change).
Design and Preproduction due week 9
Initial Unity Prototype Production due weeks 10-12
Revised Unity Prototype
and Initial Marketing Materials
due weeks 13-14
Final Prototype Project
and Marketing Materials
due Final Meeting
Your team can make any game you want. For the clearest path to success, consider a 2D platformer or top-down game using the provided tutorial modules here.


SOLO WORK: TUTORIALS
There are six required tutorials to support your tech learnign in this course. For each, please submit screenshots showing completion, all in a single Classwork thread on the course forum.
Intro Unity 2D / C# due week 3 - 4
Photoshop Pixel Art (3) due week 2, 3, 4
Audio SFX Clip due week 7
BLB Level due week 9

SOLO WORK: PPRS
Describe your contribution to the team game this week.
Include screenshots.
Midterm Project Reporting: #1 due week 7
#2 due week 8
Final project Reporting: #3 due week 11
#4 due week 12
#5 due week 14

SOLO WORK: LEVEL & CHARACTER DESIGN
Each student is expected to design and implement at least one level and one animated chaacter for their final team game.
Tilemap and character spritesheets can be shared among levels and revised collaboratively, but every students should create an initial environment tilemap and character spritesheets.
Drawn Plans due week 11
Rough Spritesheets
and initial Unity Tilemaps
due week 12
Revised Art and Unity Level due week 13
Final Level and Character due week 14


Teamwork
All students are expected to enter into teamwork in good faith, with every intention of communicating with teammates daily, attending all classes and at least one out-of-class team meeting a week, and submitting significant progress to the team project every week. The Peer Evaluations help to support this expectation. Please listen to each other, be kind, and communicate problems to the teacher for help.


Critiques
This course includes in-class and emailed feedback. In-class feedback is on playable prototypes after in-class playtesting. Emailed feedback will occur after more in-depth playtesting outside of class. Projects are evaluated for the following:
CLARITY: Are the instructions, mechanics, and visuals
    concise and easy to understand? In the digital games,
    are player abilities and goals progresively on-ramped?
INNOVATION: What new/ exciting/ challenging gameplay
    mechanics are included to stimulate interest?
IMMERSION: Is the story compelling
    (setting, action framing, art, and music)?
FLOW: Does the player feel constantly productive,
    able to act and have those actions matter every turn?
    (Sense of agency, able to advance their agenda).
    In the final game, we are also looking for a reasonable
    difficulty curve to support medium-skilled players.
FIERO: Multiple big victory moments for players?
    (sense of achievement, especially against the odds)

Please Note: this scale is to evaluate the strength of the games, but your grade for each project is as much for your collaboration with each other and experimentation and risk-taking in your design and development as its success as a game.

All games before week 7 are pass-fail; make the game (as fun as you can) with all of your team's participation and get full credit.


Grading
30% - Course Participation (attendance, in-class work, and professional manner. Particpation in team meetings outside of class. Participation in at least 3 labs and attendance at one or more Games Industry event)
20% - Weekly Homeworks (team and individual submissions, including PPRs. You are expected to contribute assets to your team games EVERY week).
20% - Peer Evaluations (weeks 12 and at Final Presentations)
30% - Final Game Presentations (A final Unity Game Prototype and related marketing materials at end of term are required to complete the course).

Document Submission
Please post all digital assignments using the PIAZZA SITE (starting week #2, email the teacher for an invitation) along with printed copies to be handed in during class (paper prototypes). This includes Design Documents, Personal Project Reports, Industry Event Write-up, and any other assignment EXCEPT for Peer Evaluation.

 
IN CASE OF ONLINE LEARNING: ONLINE COMMUNICATION POLICY

ONLINE CLASS LINK
A Zoom link wil be emailed to all students enrolled inthe course. Each week we will use this same link for both classes.
Please Note:
  • We will also use this link for any individual team meetings with the teacher.
  • Please only join this link during the time of your class, unless you have arranged with the teacher to visit the other class.
  • Zoom will record classes automatically, as soon as the first person enters the meeting. The teacher can make these available as needed.
  • Please join on time at the start of your class and type a greeting on the chat when the class begins. The chat is recorded and is used to record attendance.

    Classes on Zoom will consist of small group discussions, full class discussions, some lecture, and design exercises. There will be two breaks each class.
    When not on break, you are asked to be at a laptop, desktop, phone, or tablet with your cameras on, if at all possible.
    Please allow your focus to be on the class in progress by closing email, social media, entertainment, or other classes.

    Of course, there can be good reasons not to be on camera. If this is the case for you, you don’t need to say anything at the time, and the teacher will not call you out about it; it’s fine for this to happen occasionally. In those cases, please have a photo of yourself (or a drawing) for your icon in Zoom.

    VIRTUAL BACKGROUNDS: Using a virtual background is fine. I recommend the Studio Ghibli collection
    Subtly animated backgrounds are fine as well. Please avoid dramatically animated backgrounds that could be a distraction.
    Naturally, please choose visuals appropriate to a professional artistic setting (this may seem obvious to many of you, but I have had some unfortunate surprises show up in classes this Summer).

    Please be on mute when you are not speaking, so background noises do not disrupt the audio. Relevant questions, statements, links, etc. can also be typed in the chat.
    Please contribute to the class discussions in a professional manner. Please frame feedback positively and constructively, be mindful to not insult others, and do your best to avoid exclusionary language.
  •  
    FINAL PROJECTS FROM PAST SEMESTERS OF MASSART GAME DESIGN:
      Spring 2023 (Final Action Games and Midterm Narrative Games)
           
     
      Fall 2022 (Final Action Games and Midterm Narrative Games)
           
     
      Spring 2022 (Final Action Games and Midterm Narrative Games)
           
     
      Fall 2021 (Final Action Games and Midterm Narrative Games)
           
     
      Spring 2021 (Final Action Games and Midterm Narrative Games)
           
     
      Fall 2020
           
     
      Spring 2020
           
     


    Last modified September 2023.

    Course content and materials on this page © 2015-2023.
    Some Projects © 2020-2023 staff and students of CDAN221 at MassArt.