IFDM 250 – Fall 2014

Introduction to Game Development, Flyer

Instructor: Nathan Fabian, ndfabian@gmail.com (Use subject “IFDM 250” or it’ll end up in spam)

Teaching Assistant: Javier Pena, jpena50@unm.edu, 505-280-7437

Course Syllabus: tosos.com/ifdm-250

Course Textbook: The book is out of print and no longer required for the class. Amazon Returns If you would like it as an additional reference to my notes, there are some copies still available in the bookstore and here

Game Engine: GameMaker: Studio by YoYo Games.

Course Schedule: Fall 2014, Tue & Thurs, 4:00 – 5:15 pm, Mesa Del Sol Rm: 210

Office Hours: 
Nathan, Fri, 12:00 – 1:00 pm or by request, Hartung outside the PC Lab.
Javier, Tue, 5:00 – 6:00pm, Wed 10:30 – 11:30am, Mesa Del Sol 210 or Hartung outside the pc lab.

Summary: In a very brief history of their existence, video games have evolved, and continue to evolve, into a medium of expression, learning and a much wider variety of entertainment.  The argument has changed from whether video games can ever be art, to which games might be.  However, as the arguably preeminent means by which technology and art intersect, video games continue to be at their core mechanisms.

This class will teach students how to build these mechanisms using code to generate the algorithms to bring life and interactivity to the game.  Students will do this hands-on by modifying existing games and building them from the ground up in the final project.  Each student will be expected to learn and to know all the aspects of writing the code individually.

Class Structure: Class meets every Tuesday and Thursday at 4:00pm.  Tuesdays will normally be reserved for lecture and discussion.  Thursdays will normally be for quizzes, midterm and class assignments.

Assignments: There is a theory that the first 9 games a person makes are terrible.  It is only the 10th game that will finally be a gem.  We will endeavor to get at least a few of those bad games out of the way through the semester, to get a good head start toward making that gem.  In lieu of a final exam there will be a final project where students will use what they’ve learned to construct a game from the ground up.  Quizzes and the Midterm will test student’s understand of the lectures and reading through the course.


  • 13% Semi-Weekly quizzes: 50 points (200 total)
  • 25% Mid-term: 400 point
  • 31% Lab assignments: 100 – 200 points (500 total)
  • 31% Final project: 600 points

Grading Criteria:


  • Is there an answer?
  • Is it correct?
  • Is it a good answer?


  • 33% Does it work
  • 33% Game design
  • 33% Visuals and Sound

Grade Levels:

  • Level of Master > 1440 points (Grade A)
  • Level of Journey(wo)man > 1280 points (Grade B)
  • Level of Tinker: > 1120 (Grade C)
  • Level of Youngling: > 960 (Grade D)
  • Level of Noob: < 960 (Incomplete)

Defending Grades: Because there is a lot of subjectivity in the creation and interpretation of the designs, grades can be defended.  Only assignment or project grades can be defended.  It must be done at office hours within 1 weeks of receiving the grade.  I will give my reasoning.  The student may give his or her rebuttal and defense.  I will change the grade by 10% of its total possible points.  However, I reserve the right, given increased scrutiny, that the grade may go up *or* down.  It is important to remember that there is an artist *and* an audience, both must be present or the game isn’t played.

Late Assignments: Assignments are due sometime during the date given.  That is they must be turned in on that date before the clock strikes midnight and it become tomorrow.  Every day that a project is late is 15 points off the grade.  Modifying the project after the deadline will be considered late.

Attendance: Attendance will only be verified during the first few weeks to ensure there are students who need to be dropped for never attending.  Otherwise attendance is not mandatory.  There will be no make up for quizzes without 2 hours prior notice for the class being missed.  The email subject *must* contain IFDM 250.  The student’s full name must be included somewhere in the body.  The proposed time for making up the quiz must also be included.  Quizzes must be made up within a week.  If any of these things are missing the quiz will not be made up.  The same may apply for midterms but only for extreme situations.

Collaborating: I strongly encourage collaboration in this class, especially if you can find a partner who compliments your weakness (e.g., pairing an artist with a coder).  However, each assignment must be turned in individually and code and art must be created individually.  Help should be in discussion and ideas, general problem solving, not in using cut and copy to duplicate work.  I will be checking for that.

Honor CodeWe will not lie, cheat, or steal nor tolerate others who do.  You will be expected to perform each lab assignment and final project individually. Those who plagiarize code from other students or external sources without citation will receive no credit for the assignment.


week subject notes
Aug 19 & 21 Introduction Intro – class notes
History of Games – class notes
Footage from “Vanishing of Ethan Carter”
CodeCademy Javascript Tutorial
Aug 26 & 28 Game Design Game Design – class notes
Players Who Suit Muds
Multitask Game
Five Nights at Freddies
Sep 2 & 4 Game Production Game Production – class notes
Quiz 1 – Game Design
Assignment 1
Sep 9 & 11 Programming Foundations: OOP, Search, and Sort
Intro to Game Maker
Programming Fundamentals – Notes
Assignment 1, Due Sep 10
Quiz 1 Key
Assignment 2
Assets for Assignment 2
Sep 16 & 18 2D Collision and Physics Collision and Physics – Notes
Quiz 2 – Production and Programming
Physics Examples
Sep 23 & 25 AI: Sensors, State Machines, Waypoints AI Part 1 – Notes
Path finding example
GameMaker Game Programming with GML
Quiz 2 – Key
Sep 30 & Oct 2 2D Graphics Assignment 2, Due Oct 5
2d Graphics – Notes
Assignment 3
Assignment 3 Start
Quiz 3 – AI and Physics
Michael Abrash Article
Oct 7 & 9 No class (UNM Fall Break) Quiz 3 – Key
Oct 14 & 16 Advanced AI: Pathfinding and Movement Midterm
Notes – Advanced AI
Oct 21 & 23 3d Graphics 3d Graphics – Notes
Assignment 3 lab
Oct 28 & 30 Networking Networking – Notes
Assignment 3 due Oct 29
Final Project
Quiz 4 – 3d Graphics and Advanced AI
Nov 4 & 6 Business Final Project Pitches in class on Thursday
Business – Notes
Nov 11 & 13 Introduction to Unity Unity notes
Final Project – Play Tests
Nov 18 & 20 No class 18th Final Project – Play Tests
Nov 25 & 27 Serious Games, No class 27th (Thanksgiving) Notes – Serious Games
Dec 2 & 4 Final Project pre-release demos Final Project due Dec 3
Dec 9 & 11 No class (Finals week)


  1. No comments yet.
(will not be published)