Syllabus for

Computer Game Programming

COSC 457/557

(T/Th 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. 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/7, 9 Ch 1, 2 Introduction  
1/14, 16 Ch 3 Game analysis  
1/21, 23 Ch 4, 5 Game design layers  
1/28, 30 Ch 5,6 Game design layers Game proposal
2/4, 6 Ch 7,8,9 Design and prototyping
2/11, 13 Chapter 10-13 Design and testing Game Design
2/18, 20

Chapter 14, 16, 24, 27

Unity
   Spring Break    
3/4, 6 Ch 17, reading  C#  Midterm Test
3/11, 13 Ch 28, 29  Agile Development Scrum 1
3/18, 20 Ch 30 AI in games  
3/25, 27 Ch 31 Protoype development Scrum 2
4/1, 3 Ch 32 Protoype development  
4/8, 10 Ch 33 Protoype development Scrum 3
4/15, 17 Ch 34  Protoype development In-class demos
4/22     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 (each as a GPA on a 4-point scale) received in each of the following categories, as specified: Group project 48%, Other assignments 30%, Midterm Test 10%, FinalExam 10%, Class participation 2%. For example, suppose a student's average of the grades received on the group project was 3.17, and for the other assignments was 2.97, they got a B+ (3.33) on the midterm, a A- (3.67) on the final, and an A for class participation. Their weighted average would be .48 * 3.17 + .3 * 2.97 + .1 * 3.33 + .1 * 3.67 + .02 * 4.0 = 3.1962. This is closer to a B+ (3.33) than to a B (3.0), so the student would receive a B+ for the course.

Beware Canvas "Grades": I use Canvas to record grades of assignments, 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.

Tardiness Policy: If not otherwise stipulated in Canvas, 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: There will be group work in this course as well as lab work. Consequently you should strive to attend class regularly. Your teammates will not be happy if you miss a class in which you were expected to work with them. Missed assignments shall only be excused by a doctor's written note, verifying that the student was medically indisposed to attend class that day. Study after study has shown that regular attendance is strongly correlated with better grades. I urge you to attend class as often as possible!!  Keep in mind, too, that class participation is part of the grading methodology.  

Announcements and Canvas:

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

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 from what is written at the beginning of the semester.


Zoom Recordings

I may record course lectures. 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.

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; swd_office@emich.edu) 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.

Other Resources

University Writing Center: The University Writing Center (UWC) offers writing support to all undergraduate and graduate students. In doing so, we value the diversity of our campus and honor all students and the languages they bring with them to the university.

Holman Success Center:  Provides Academic Support through a variety of virtual and in-person services.

University Library: Research support is available to all students, 24/7. This includes getting started with research, identifying sources to search, developing search strategies, evaluating resources, and more. See https://www.emich.edu/library/help/ask.php for all of the ways in which you can get help with research. Some University Library services have changed, and may continue to change, in response to the pandemic. Please check for current information at https://www.emich.edu/library/news/covid.php 

Student and Exchange Visitor Statement (SEVIS): For international students, the Student Exchange Visitor Information System (SEVIS) requires F and J students to report numerous items to the Office of International Students & Scholars (OISS)

Title IX: Title IX of the Education Amendments of 1972 prohibits discrimination on the basis of sex under any education program or activity receiving federal financial aid. Sexual assault and sexual harassment is a form of sex discrimination prohibited by Title IX. What you need to know about Title IX 

Academic Irregularities:

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 Responsibility (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, unless specifically allowed.  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.

The Computer Science Department maintains a plagiarism policy, which can be found on the department's web site. 

In addition to the articulated course specific policies and expectations, 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 resource, please contact the Office of the Ombuds: 248 Student Center, 734.487.0074, emu_ombuds@emich.edu, or visit the website at www.emich.edu/ombudsCLICK HERE to access the University Course Policies