Syllabus for

Computer Game Programming

COSC 457/557

MW 9:00-10:50, Pray Harold 520

Instructor: Matt Evett ; Dept. Computer Science; Pray-Harold 511
Tel: 734-487-1227;
Course web site:

Office Hours: See mattsOfficeHours.txt and mattsScripts.js (also via Zoom), and by appointment.
(These times are subject to change. Please see my web site, for up-to-date hours.) See Canvas for the Zoom link to my office hours.

Prerequisite: Significant programming experience or COSC311.


Referenced Texts: (optional)

Course Summary: Students will become familiar with the basic processes of creating a computer game, including design, implementation and testing. Students will create a significant computer game as a group project. Students will study software technologies related to game development, as well as the art and design principles needed to create compelling games.

Course Calendar:

The following dates are subject to change. See the course shell ( for up-to-date deadlines. Any deadlines on Canvas that precede the start date of this course have not yet been assigned, and might not be assigned during this course.
Date Text Topics Assignments
8/30, 9/1    Ch 1, Ch 2 Introduction  
9/8 [Labor Day 9/6] Ch 2, 3 Game analysis  
9/13, 15 Ch 4, 5 Game design layers  
9/20, 22 Ch 5,6 Game design layers Game proposal
9/27, 29 Ch 7,8,9 Design and prototyping
10/4, 6 Chapter 10-13 Design and testing Game Design
10/11, 13

Chapter 14, 16, 24, 27

10/18, 20 Ch 17, reading C# Midterm Test
10/25, 27 Ch 28 Agile Development  
11/1, 13 Ch 29 AI in games Scrum 1
11/8, 10 Ch 30 Protoype development  
11/15, 17 Ch 31 [11/17 via Zoom or recorded] Protoype development Scrum 2
11/22 Ch 32 [Thanksgiving 11/24] Protoype development  
11/29, 12/1 Ch 33 Protoype development Scrum 3
12/6, 8 Ch 34   In-class demos
Wed., 12/15     Final Exam, 9:00-10:30


Grading Policy:

The graded components of the course consist of several assignments to be completed by each individual, as well as a final group project. The group project consists of 4 components: a concept document (5%), a design document (20%), result of intermediate scrums (30%), the final release (45%). Grading of group work will involve feedback by fellow group members--members of each group will regularly report to me confidentially, as to how much effort they and their peers are putting into the project. This information will inform my grading.

Graduate Students: Students taking this course for graduate credit grouped together and their projects graded on a more difficult scale. In particular, a higher level of difficulty and finish are expected. Examinations are also graded on a separate, more difficult scale. In addition, on some assignments, work that would be "extra credit" for undergraduates is instead required for graduate students.

The final course grade will be a weighted average of the grades received in each of the following categories, as specified: Group project 50%, Other assignments 30%, Midterm Test 10%, FinalExam 10%

Beware Canvas "Grades": I use Canvas to record your scores, not to calculate your grade.  Canvas may say that you have scored 85% of possible points.  This does not necessarily mean you are receiving a B in the course!  The methodology for determining your final grade is as described above.

Beware of old due dates in Canvas: if a due date for an assignment is not during the current semester, I have not yet assigned, nor may I do so!  In addition, if I do assign that work, it may be altered to differ from that written at the beginning of the semester.

Tardiness Policy: Programming and other homework assignments will be due at the beginning of class. After that, assignments will be accepted through the start of the next scheduled class, but will suffer a full grade penalty. E.g., if a late programming assignment is worthy of an 'A', I will mark it a 'B'. Assignments more than one class late will not be accepted, and will receive a grade of 'F'.

Attendance Policy: We're all grown-ups, when and whether you attend class is up to you. However, missed assignments shall only be excused by a doctor's written note, verifying that the student was medically indisposed to attend class that day.

Announcements and Canvas:

Students should view the Canvas course web page regularly for announcements regarding programming assignments, readings, etc. I update Canvas frequently!

Zoom Recordings

I may record course lectures to be made available to other students in this course. As part of your participation in this course, you may be recorded. If you do not wish to be recorded, please contact me during the first week of class to discuss alternative arrangements.

Students may not record or distribute any class activity without written permission from me, except as necessary as part of approved accommodations for students with disabilities. Students with such accommodations must inform me before recording any class activity. Any approved recordings may only be used for the student’s own private use.

Exams and Quizzes Online

Some exams/tests/quizzes may be conducted using the Respondus Lockdown Browser. You will be required to use a video camera for this. The system will record video as you take exams and track the orientation of your face to the camera as a way to ensure that students are not referencing notes during exams. The system also locks out other applications from using your screen during the exam. If you do not have a camera, please reach out to me well before the first exam/test.

Course Accessibility and Disability Statement

It is my goal that this class be an accessible and welcoming experience for all students, including those with disabilities that may impact their learning in this class. If anyone believes they may have trouble participating or effectively demonstrating learning in this course, please meet with me (with or without a Disability Resource Center (DRC) accommodation letter) to discuss reasonable options or adjustments. During our discussion, I may suggest the possibility/necessity of your contacting the DRC (240 Student Center; 734-487-2470; to talk about academic accommodations. You are welcome to talk to me at any point in the semester about such issues, but it is always best if we can talk at least one week prior to the need for any modifications.

The EMU Library Is Here to Help!

The Halle Library provides excellent resources for writing and research (including avoiding plagiarism). You can get more information on this at this link:

Cheating policy:

Students are required to attend to the University policy on academic dishonesty outlined in Sections V and VIII (Provisions Governing Acts of Academic Dishonesty) of EMU's Code of Community Responsbility (see the full policy at In addition, collaboration among students in solving programming and homework assignments is forbidden. If I receive programs or homework assignments that are substantially equivalent, or which are not the original work of the student submitting the material, I will not hesitate to punish all involved parties to the fullest extent, up to and including assignment of a failing grade for the course, and referral to the Office of Judicial Student Services for possible punitive action at the University level, which may include expulsion from the University. In addition, the University and the Computer Science Department maintain policies regarding proper behavior on its computer systems. Failure to adhere to these policies can result in loss of computer privileges, and possible legal action.

Other university policies:

In addition to the articulated course specific policies and expectation, students are responsible for understanding all applicable university guidelines, policies, and procedures. The EMU Student Handbook is the primary resource provided to students to ensure that they have access to all university policies, support resources, and student's rights and responsibilities. Changes may be made to the EMU Student Handbook whenever necessary, and shall be effective immediately, and/or as of the date on which a policy is formally adopted, and/or the date specified in the amendment. Electing not to access the link provided below does not absolve a student of responsibility. For questions about any university policy, procedure, practice, or resources, please contact the Office of the Ombuds: 248 Student Center, 734.487.0074,, or visit the website at CLICK HERE to access the University Course Policies