

Game Development, Spring 2009
Lectures:
Tuesdays 10:00-12:00 @ 3A12
Lab
sessions: Tuesdays & Fridays 13:00-15:00 @ GameLab
EXAM SCHEDULE
Teachers: Georgios Yannakakis (yannakakis[at]itu[dot]dk) (office: 4B09, phone:
7218 5078) & Aki Järvinen (aki[dot]jarvinen[at]itu[dot]dk) (office: 4B02,
phone 7218 5288)
Teaching assistants:
Michael Schmidt (michael[at]thefuture[dot]dk) and Lawrence Johnson (lkj[at]itu[dot]dk)
Course Description: The objective of this course is to give you a practical &
conceptual introduction to game development as well as the relevant theory
behind game technologies. The focus of the course is on the development of a 3D
game and working within a formal team context.
After successful completion of the course you should
be able to:
- explain phases in game development (from idea to
product)
- discuss the various team roles on a development
project
- produce a method and schedule for a production
- describe basic
game system architecture
- discuss level, story, and character design
- integrate 3D games engines into your production
process
- address the issue of AI, character design and
animation, for a game production
Course Format: Teaching consisting of lectures and lab sessions. Lectures take place
on Tuesdays from 10:00-12:00 and lab sessions take place on Tuesdays and
Fridays from 13:00-15:00. There will be occasional additional lectures on
Fridays from 10:00-12:00. Lectures will be given by a variety of teachers who
specialize on various aspects of game development.
The hand-in: The final product for this course is a written project that includes:
- Design document
- Development plan
- Final report on the development process
- The game
- A website promoting the game, including a
marketing trailer for the game that includes game-play footage. Website
must be accessible online, at least up to the end of the exam period.
The game:
- Must be graphically 3D.
- Created in the Unreal game engine, or a game
engine of the team’s choice, provided that the team can show evidence –
e.g., a previous production – that they can deliver with the engine.
Please note that technical assistance will be provided for the Unreal
Engine 3 only.
- Should be of the size and scope of a game entered
into the Independent
Games Festival.
- Should be able to be put on the web and could get
feedback on it beyond "this is not playable".
- Should be playable for at least 20 minutes (can
be quick sessions but then repeatability becomes a factor)
Literature: Handouts.
Examination: External examiner, 7-point marking scale, B4: Oral examination with written
work but without time for preparation at the exam. The hand-in must be
submitted by May 20th at the Exam Office no later than 3 PM. Exams then take
place in June.
Course Blog
Unreal Game Engine Resources: Lawrence's Unreal
webpage
Course E-mail: MSU_F2009@itu.dk
Course
plan
(subject
to changes; last updated: 14/03-09)
Jan 27 – Week 1: Introduction - Lecturers: Georgios Yannakakis &
Aki Järvinen
Lecture
- Go over class
content.
- Explain difference between this course and game
design.
- Explain what is possible on this course and
expectations for final projects.
- Show examples of work that can serve as
inspiration for design.
Lab
exercises
- None (begin to familiarize yourself with Unreal;
get a Gamasutra account if you don't have one)
Feb 3 – Week 2: Development
Methodology & Teams (and Eye/Brain controlled game presentation) - Lecturer: Miguel Sicart
Readings
- "Team Roles and the Pipeline" from Game Level Design
(handout)
- Chapter 2 from Mastering Unreal Technology
(optional reading)
- Game
ideas developed
through the lab exercise session
Lab
exercises
(GameLab)
- Getting in teams and assigning roles (lead
designer, lead programmer, etc and someone on the team taking on project
management).
- Team name, member names, email addresses, and
roles (making sure to specify who is handling project management) sent to
Aki before Feb 10.
Feb 10 – Week 3: Introduction to the Unreal Engine
(GameLab) - Lecturer: Michael Schmidt
Readings
Lab
exercises
- Teams begin to work in Unreal, with guidance from
TAs.
Production
tasks
- Make a 1-page game concept document (See Tim
Ryan's "Guidelines for a Game Concept".)
- Begin exploration of tool and possibilities for
the design, evaluate the viability of the game concept in terms of engine
functionalities
- Make a development plan for the production
(schedule, tasks, etc.)
- Send concept document and development plan as
a pdf - with your team name clearly stated - to Aki before next
Tuesday (17/2). (Note if you have not finalized a team name you need to do
so.) - Hand-in guidelines
Feb 17 – Week 4: Unreal Engine in More Detail (GameLab) -
Lecturer: Michael Schmidt
Readings
Optional readings
Production
tasks
- Really get a Gamasutra account if you haven't already.
- It is recommended that you have Wiki and CVS/SVN
in place.
- All team members try working with the tools they
are going to work with.
Feb 24 – Week 5: Story Design – Lecturers: Aki Järvinen (link to slides)
& Espen Aarseth (lecture material will be available as paper copies)
Readings
Production
tasks
- Make a level, or prototype the core mechanics,
try playing it. Revisit development schedule and concept document: Does it
need to be changed?
- Try out content pipeline: Create 3d model and
sound, import into engine. Identify the amount of graphics/animation/audio
assets needed for the game; schedule their production.
- Create a story design chapter/appendix into the
game design document that defines how the story element can be implemented
with the editor/engine.
Feb 27 – Week 5: Computational
Representation of Stories in Games – Lecturers: Arnav Jhala
Readings
- ”A Behavior Language: Joint Action and Behavioral Idioms” Michael
Mateas and Andrew Stern Book chapter in Life-like Characters. Tools,
Affective Functions and Applications, eds. H. Prendinger and M.
Ishizuka, Springer, 2004
- “An architecture for integrating plan-based
behavior generation with interactive game environments,” by R. Michael Young, Mark O. Riedl, Mark
Branly, A. Jhala, R.J. Martin, C.J. Saretto, Journal of Game
Development, 1, 2004.
March 3 – Week 6: Advanced Game Design - Lecturers: Miguel Sicart & Aki Järvinen
Readings
·
Sicart,
Miguel: “The Ethics of Game Design” Chapter 7 from forthcoming book.
·
M.
J. Taylor, D. Gresty, and M. Baskett: “Computer game-flow
design”. Computers in
Entertainment, Volume 4 , Issue 1
(January 2006)
Production tasks
- Make a small corner of the game, perhaps a single
room with graphics, sound, and gameplay logic. (A "slice".)
Schedule and concept document: Does it need to be changed?
- Evaluate your story design; make sure the slice
selected is representative of the story design. Create game flow
specifications of key scenarios or
storytelling elements and review their implementation/viability among
the team.
March 6 – Week 6: Game AI (basic) - Lecturer: Georgios Yannakakis
Readings
Optional
Readings
- A-Life resources at GameAI.com
- Chapter 12 of Mastering
Unreal Technology
March 10 – Week 7: Character Design
+ Critical Stage Analysis guidelines - Lecturer: Aki Järvinen
Readings
- Chapters 1, 2 and 8 from Better Game Characters
by Design
Optional readings
- Chapter 13 from Fullerton: Game Design Workshop
"Stages of Development"
Production
tasks
- Make a critical stage analysis.
- A corner of the game should be playable.
March 13 – Week 7: Game AI (advanced) - Lecturer: Georgios Yannakakis
Readings
- Damian Isla, "Handling Complexity in the
Halo2 AI"
- Michael Mateas, "Expressive AI". Leonardo: Journal of the International Society for Arts,
Sciences, and Technology 34 (2), 2001. 147-153.
- Andrew Stern, "Creating Emotional Relationships With Virtual
Characters". In
Emotions in Humans and Artifacts, eds. R. Trappl, P. Petta, and S.Payr,
MIT Press, April 2003.
- Mat Buckland, "Fuzzy
Logic" in
Programming Game AI by Example.
March 17 – Week 8: Project Management & Agile Methods - Lecturer: Søren Lundgaard
Production
tasks
- Preproduction
should be complete
- Plan production.
Reconsider schedule.
- Email Aki
& Georgios an updated plan and design doc by Friday, March 20th.
March 24 – Week 9: Project Work (TAs available during
class hours to assist)
Production
tasks
- Work on game.
- Start working on a website design for your game.
March 31 – Week 10: Project Work (TAs available during
class hours to assist)
Production tasks
1. Work on game (and website).
2. Prepare a group presentation for the Game Workshop – April 14
April 14 (No class April 7 – Easter week) – Week 11: Rendering and Performance / Becoming a game
developer /
Game Workshop - Lecturer:
Michael Schmidt / Students
Production
tasks
- Work on game
& website.
April 21 – Week 12: User Testing and QA - Lecturer: Jacob Buck,
Guppyworks.
Readings
- Chapter 5 from Isbister & Schaffer: Game Usability,
Henriette H.N. Hoonhout: ‘Let the Game Tester Do the Talking: Think Aloud
and Interviewing to Learn about the Game Experience”.
Production
tasks
- Make a QA & playtest plan – what are you
testing? how? - & conduct the playtest.
- Analyse results in the team, and apply lessons
learned to game.
- Prepare to present a build to next week’s
visiting lecturer.
April 28 – Week 13: Crunchtime
and working in the Games Industry – Lecturer: Jason Booth, Harmonix.
Readings
- 3.5 from Steve Rabin: Introduction to Game
Development, "Debugging Games".
Production tasks
- QA test your game, according to the guidelines.
- Present the game to visiting lecturer.
May 5 – Week 14: Game Business Development - Lecturer: Sonja Kangas, Guppyworks.
Readings
Production tasks
- Make a marketing trailer for your game. Include
game-play footage.
- Prepare playtest session for May 12th for game
group faculty members.
May 12 and 19 – Project Work (TAs
available during class hours to assist)
Production
tasks
- Polish final hand-in, including demo video and
website.
May 20 before 15:00 – Hand-in due
May 29th – Play Day
June 16,17,18th – Exams (more detailed schedule to be
announced)