imgd 2900 digital game design i class 1: thursday 10.25
Post on 01-Apr-2015
220 Views
Preview:
TRANSCRIPT
IMGD 2900Digital Game Design I
Class 1: Thursday 10.25
Today’s topics
Class orientationCourse design and rationaleAn abstract microgame engineAssignments 1-3
What this class is not
A course in building [genre] gamesA course in “level design”A course in game programmingA course in creating game assetsA course in writing design documentsEasy
What this class is
Lehr und kunstCreatively challengingFun
Course structure
A semi-studio course
In-class: Lectures, demos, discussion, playtesting, critiquing, journaling
Out-of-class: Projects (many)and more journaling
Course structure
You will be designing and building games. Lots of them.
You will be programming, but only game logic, no hard math, graphics or 3D.
You will not be producing any art(well, maybe one or two pieces).
Final exam
Last day of class (12.13)Based solely on in-class lecturesTake notes in your journal or fail
Recommended background
IMGD 1000, Critical Studies
IMGD 1001, Game Dev Process
CS 1101 / 1102, Intro to Program Design orCS 110X, Intro to Programming for Non-Majors
Things you require
Books I recommend
Course web site
users.wpi.edu/~bmoriarty/imgd2900/
Complete official syllabusUpdated course calendarAnnouncementsDetailed assignmentsElectronic texts and documentationOther useful resourcesUse is essential and required
Student assistant
Owen Leach (oleach@wpi.edu)
Available in IMGD Lab every Wednesday (1 – 3 pm)
Also available in IMGD Lab tomorrow (Friday, 10 – 11 am)
Always available via email
Attendance
Absolutely required4+ classes missed = Automatic NREmail me ASAP if you will miss classDo not attend with flu/plague symptoms
Grading
Basic course objectives met = BExtraordinary effort, creativity = AMost objectives met adequately = C
See course Web site forassigment weightings
Emergencies
I will announce cancellations by email as far in advance as possible
Class is officially canceled if I am not here by 1:15 pm
Courtesy
Arrive at class on timeTurn off phones and audio devicesNo distracting PC / laptop / mobile appsNo extraneous conversations
Academic honesty
Do you own workRead and understand WPI policyBreach of ethics = Automatic NR
Disabilities
Visit the Disability Service OfficeSee me ASAP
Office hours
Tuesdays Noon - 1 pm and 3 - 4 pmThursdays 10 - 11 amBy appointment: bmoriarty@wpi.eduAnytime door is open (often)Location: Salisbury 211 (IMGD Suite)
Assignment 01
Choose a project partnerExactly two people per teamName your teamSit together for rest of course
Assignment 01 (cont.)
Make a team Web pageMust include:
Name of project teamNames/logins of team membersLink to main .html file of each project,
beginning with Assignment 03
Must be readily accessibleNo password, subscription, malware
Team Boring
Mark Lazy (mlazy)Mary Idle (midle)
Stupid Toy by Mark LazyLame Puzzle by Mary Idle
Dissolving a team
Before Class 6 (Monday 11.12)Set up a meeting with meAll team members must attendDefend and negotiateSoloists are strongly discouraged
and get no mercy!
Assignment 02
Begin and maintain a creative journalBring your journal to every classSubmit on last day of classUsed to decide edge grading cases
Journal requirements
Write your name on cover or first pageUse frequently, and date every entry
During or after every classAfter every reading assignmentDuring or after every team meeting
At least one substantial item per entryBe legibleNothing too private
A vocabulary ofgame design
Why bother? Lehr.
Today’s vocabulary
Play Toy Game
Design Designer
Game Designer
What is play?
What is play?
“Work consists of whatever a body is obliged to do, and play consists of whatever a body is not obliged to do.”
Mark Twain
What is play?
“Work consists of whatever a body is obliged to do, and play consists of whatever a body is not obliged to do.”
Mark Twain
Superfluous action
What is a toy?
What is a toy?
Something thatelicits play
What is a game?
What is a game?
A toy with rulesand a goal
What is design?What is a designer?
What is design?What is a designer?
The process by which a designer creates a context to be experienced by a participant,
from which meaning emerges.
Designers createmeaningful experience contexts.
What is a game designer?
Play = Superfluous actionToy = Something that elicits playGame = Toy with a rules and a goalDesigner = Creator of meaningful experience contexts
Game designer = Creator of meaningful experience contexts which elicit superfluous action with rules and a goal
Designers learn bydesigning
Designers learn best bydirectly experiencingthe contexts they create.
Kunst. Practice.
Designers learn byiteration
“Learning how to design iteratively is thesingle most important skill that a game design student can learn.”
Salen & Zimmerman
Game design is asecond-order problem
As a game designer, you cannever create the play experience,only the context that elicits it.
The players create the experience.
Problem #1Overwhelming preoccupation with production and presentation issues.
Little focus on activity design.
“The content of a game is its behavior, not the media that streams out of it towards the player.”
Hunicke, LeBlanc, Zubek
Problem #2
Game designers don’t get enough kunst.
Not enough completed projects, too much time spent on each project.
“Your first ten games always suck.”
How to quickly get to Game Eleven?
Problem #3
Digital game behavior is definedby code.
“All desired user experience must bottom out, somewhere, in code.”
Hunicke, LeBlanc, Zubek
“Game designers” are losing touchwith code; little actual authority.
A tool for teachingfunctional game design
Focus on rapid prototypingand iteration, expressed in real industrial code
Usable by non-engineers:No advanced math, graphics, 3D, etc
Usable by non-artists:No asset creation or pipeline issues
A tool for teachingfunctional game design
Industry-standard scripting language
Small enough to run on a phone
Powerful enough to makeinteresting, significant games
Cloud-based, automatic updates
Perlenspiel 2
An abstract microgame enginewww.Perlenspiel.org
“Art lives from constraintsand dies from freedom.”
Leonardo da Vinci
“The absence of limitations is the enemy of art.”
Orson Welles
Grid
Event-driven interchange
Your first script
Go to www.Perlenspiel.org
Visit the Download page
Copy PS2.zip into a personal folder and unpack it somewhere convenient
Open the new PS2 directory and open game.js for editing
Your first scriptFind:
PS.Init = function (){ "use strict";
// change to the dimensions you want
PS.GridSize ( 8, 8 );
// Put any other init code here};
Your first scriptChange to:
PS.Init = function (){ "use strict";
// change to the dimensions you want
PS.GridSize ( 8, 8 );
PS.StatusText( "Hello, world!" );};
Your first script
Find:
PS.Click = function (x, y, data){ "use strict";
// Put code here for bead clicks};
Your first script
Add:
PS.Click = function (x, y, data){ "use strict";
PS.BeadColor( x, y, PS.COLOR_RED );
PS.AudioPlay( "fx_click" );};
Using the reload icon
Find:
PS.Click = function (x, y, data){ "use strict";
PS.BeadColor( x, y, PS.COLOR_BLUE );
PS.AudioPlay( "fx_click" );};
Using the debugger
Find:
PS.Click = function (x, y, data){ "use strict";
PS.BeadColor( x, y, PS.COLOR_BLUE );
PS.AudioPlay( "fx_click" );
PS.Debug( "x=" + x + " y=" + y + "\n" );};
Adding glyphs
Find:
PS.Click = function (x, y, data){ "use strict";
PS.BeadColor( x, y, PS.COLOR_BLUE );
PS.AudioPlay( "fx_click" );
PS.Debug( "x=" + x + " y=" + y + "\n" );
PS.BeadGlyph( x, y, "P" );};
PS.Init ()PS.Click (x, y, data)
PS.GridSize (w, h)PS.StatusText (“text”)
PS.BeadColor (x, y, rgb)PS.AudioPlay (“sound”)
PS.Debug (“text”)PS.BeadGlyph (x, y,
glyph)
Assignment 03:Build a toy or gizmo
Build a toy or gizmo with PerlenspielJournal as you design and codePost your toy before noon next MondayBring your toy to Monday’s class
Objective 1:Build a toy or gizmo
Must meet definition of a toy or gizmoMust work without breakingMust be self-documentingPerlenspiel docs on web siteJavascipt docs in ebooks, onlineDesign must be yours aloneName your toyReport “engine bugs” ASAP
Objective 2:Journal as you design/code
Document your creative processIdeas, code fragments, sketchesJournals will be inspected
Objective 3:Post your toy before noonnext Monday 10.29
Make sure it runs without crashing!Include title and author with link
Team Boring
Mark Lazy (mlazy)Mary Idle (midle)
Stupid Toy by Mark LazyLame Puzzle by Mary Idle
Objective 4:Bring toy to Monday’s class
Use a USB flash driveAlways, always keep a backup
Need help?Consult etexts on course Web siteConsult examples at perlenspiel.orgVisit www.w3schools.com/js/Teaching assistant will be in IMGD Lab
tomorrow (10 – 11 am)Email him anytime with questionsReally stuck? Okay to ask an engineer
for helpBut give credit to any helpers!Toy design must be yours alone
Perlenspiel archive
Projects will be available on the Web for future classes to study
You must explicitly release your code to the public domain
// Released to the public domain
Questions?
Next class: Monday 10.29
top related