Syllabus for

Computer Game Programming

COSC 457/557

(MW 9:00-10:50, PH 520 )

Instructor: Matt Evett ; Dept. Computer Science; Pray-Harold 511
Tel: 734-487-1227;
e-mail: mevett@emich.edu;
Course web site: http://canvas.emich.edu

Office Hours: See mattsOfficeHours.txt and mattsScripts.js (primarily via Zoom, but including by Skype and Discord), and by appointment.
(These times are subject to change. Please see my web site, http://emunix.emich.edu/~evett for up-to-date hours.) See Canvas for the Zoom link to my office hours.

Prerequisite: Significant programming experience or COSC311.

Textbooks:

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 (canvas.emich.edu) 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
1/9, 11 Ch 1, 2 Introduction  
1/18 [MLK 1/18] Ch 3 Game analysis  
1/23, 25 Ch 4, 5 Game design layers  
1/30, 2/1 Ch 5,6 Game design layers Game proposal
2/6,8 Ch 7,8,9 Design and prototyping
2/13, 15 Chapter 10-13 Design and testing Game Design
2/20, 22

Chapter 14, 16, 24, 27

Unity
2/27-3/5   Spring Break    
3/6, 8 Ch 17, reading  C#  Midterm Test
3/13, 15 Ch 28, 29  Agile Development Scrum 1
3/20, 22 Ch 30 AI in games  
3/27,29 Ch 31 Protoype development Scrum 2
4/3,5 Ch 32 Protoype development  
4/10, 12 Ch 33 Protoype development Scrum 3
4/17, 19 Ch 34  Protoype development In-class demos
4/26     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%

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.

You are strongly encouraged to turn on your camera during classes so that I can better interact with you and the rest of the class. It is so much more like an in-person class to be able to see your classmates!

Exams and Quizzes Online

Most (if not all) exams/tests/quizzes will 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.

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: https://docs.google.com/document/d/1KaCkdV59k2eo7GepHnrimPOhPcXONdXe6hh2A2KJjmE/edit

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 https://www.emich.edu/policies/index.php?p=8.1). 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.