The University of Western Ontario
London, Canada

Department of Computer Science

CS 641b - Video Game Design and Implementation
Course Outline - Winter 2002


Course Description

The video game market is a multi-billion dollar a year global industry, with more units of video game software distributed each year than virtually any other software product. In 2000, for the third consecutive year, an astonishing 35% of all Americans identified computer and video games as the most fun entertainment activity (according to the latest survey results released by IDSA, the Interactive Digital Software Association). A distant second was watching television (18%), surfing the Internet (15%), reading books (13%), and going out to the movies (11%). As such, the video game industry is a significant and important industry.

Building a high quality game is a surprisingly difficult and challenging process; to quote André LaMothe, CEO of Xtreme Games LLC: "Game programming is without a doubt the most intellectually challenging field of Computer Science in the world." This course provides an in-depth examination of video game design and implementation to study the many concepts and issues that bring about these challenges. Topics include: the history of video games; the game development process; principles of game design, game play, and balance; game genres and genre-specific design issues; plot, story, and level design; technical foundations from computing (graphics, artificial intelligence, networking, software engineering, and so on), and elsewhere (physics, anatomy, language studies, and so on); ethical issues in video games and the gaming industry; and the future of gaming. The course will culminate with a significant group project focussed on the design and development of an innovative video game.

Lecture Hours: 1:00 - 3:00pm, Mondays, MC 320
1:00 - 2:00pm, Thursdays, MC 320 (This time will typically be set aside for group meetings.)

Prerequisite: Enrolment in a graduate Computer Science program or permission of both the instructor and the Faculty of Graduate Studies.
Antirequisites: None.


Note: A background in computer graphics is not required for this course. Students may find it useful, but it is not mandatory. Similarly, experience with artificial intelligence, software engineering, networking, and other core technical areas used in game development may be useful, but they are not required either.


Instructor Information

Instructor: Michael J. Katchabaw
Office: MC 364
Office Hours: 4:00 - 5:00pm, Tuesdays
4:00 - 5:00pm, Wednesdays
4:00 - 5:00pm, Thursdays
Or by appointment.
E-Mail: katchab@csd.uwo.ca
Phone: UWO extension 84059


Textbooks

One book is highly recommended for this course, and is available for purchase from the University Bookstore:

This book is intended to act as a general course text. To help with game development in the course, there will also be a selection of more technical books available from the University Bookstore that cover a variety of platforms: Once you have selected your target game development environment for the group project, you will likely find one or more of these books of great use.


Course Topics

The course will address as many of the following topics as time will allow:


Lecture Notes

Course lecture notes will be made available in PowerPoint and Postscript formats on the course website on a weekly basis, as they are developed. They are provided as a courtesy by the course instructor. Possessing (and even reading) these notes is not a suitable substitute for attending lectures.


Course Website

The CS641b website is at http://www.csd.uwo.ca/courses/CS641b. Lecture notes, assignments, and class information will be posted on this website. You are responsible for reading this information frequently.


Computing Facilities

Each student will have access to an account provided by the Computer Science Department on either the senior undergraduate computing facility, GAUL, or on the Research Network, or both. In accepting the account(s), a student agrees to abide by the department's Rules of Ethical Conduct. As such, students will have access to a mixture of potential development environments, in addition to what they may have access to at home.

Note: After-hours access to certain Computer Science lab rooms is by student card. If a student card is lost, a replacement card will no longer open these lab rooms, and the student must bring the new card to the I/O counter. Likewise, if a student card ceases to provide access where it should, it should be brought the I/O counter as well. There, the operator will swipe the card, record the complaint and send the information to the Systems Group who will send notice when they have fixed the problem.


E-Mail Contact

We will occasionally need to send e-mail messages to the whole class, or to students individually. E-mail will be sent to your Computer Science e-mail address. You must make sure that you read this e-mail on a frequent and regular basis, or have it forwarded to an alternative e-mail address if you prefer to read it there.

You should note, however, that e-mail at ITS (your UWO account) and other e-mail providers such as hotmail.com or yahoo.com may have quotas or limits on the amount of space they can use. If you let your e-mail accumulate there, your mailbox may fill up and you may lose important e-mail from your instructors. Losing e-mail that you have forwarded to an alternative e-mail address is not an excuse for not knowing about the information that was sent.


Student Evaluation

Grades will be based on two assignments worth a total of 35%, a group project worth 60%, and a participation mark worth 5%. The group project will be split into separate deliverables including a proposal (10%), design document (20%), implementation (20%), and testing document (10%).

If for any reason the assignment schedule given below cannot be adhered to, the assignment marks will be prorated. (The two assignments are worth 35% of the overall mark for the course. If an assignment has to be cancelled for any reason, the remaining assignment weight will be prorated to 35%.)


Assignment and Project Feedback

Every effort will be made to have assignments and project components marked and handed back within 3 weeks of the handin date. If we are unable to comply with our intended return dates, revised dates will be posted on the course website.

Assignments

Due Dates (tentative)

Group Project Proposal: 10% (medium) Project assigned January 13, 2003 Due January 27, 2003
Assignment 1: 10% (medium) Assigned January 27, 2003 Due February 10, 2003
Group Project Design Document: 20% (heavy) Due March 3, 2003
Assignment 2: 25% (heavy) Assigned February 17, 2003 Due March 17, 2003
Group Project Implementation: 20% (heavy) Due April 7, 2003
Group Project Testing Document: 10% (medium) Due April 7, 2003


About the Assignments and Project


Submission


Late Policy


Marking


Backups

It is your responsibility to keep up-to-date backups of assignment and project disk files in case of system crashes or inadvertently erased files. Retain disk copies of all material handed in, as well as the actual graded assignment, to guard against the possibility of lost assignments or errors in recording marks. It is not safe to discard these materials until you are satisfied that your final mark for the course has been computed properly.


Ethical Conduct

All assignments are individual assignments. You may discuss approaches to problems among yourselves; however, the actual details of the work must be an individual effort. Assignments that are judged to be the result of academic dishonesty will, for the student's first offence, be given a mark of zero with an additional penalty equal to the weight of the assignment also being applied. You are responsible for reading and respecting the Faculty of Graduate Studies Regulations on Scholastic Offences, if you are taking this course as a graduate student, or the Computer Science Department's policy on Scholastic Offences, if you are an undergraduate student. All students must follow the Department's Rules of Ethical Conduct.

While the group project is expected to be a team effort, you must still follow these rules and avoid plagiarism when it comes to using other people's code and so on in the project. While the use of other code in your project is encouraged, you must clearly identify all such code in your project documentation. Failure to do so will be considered a scholastic offence.


Plagiarism

Students must write their essays and assignments in their own words. Whenever students take an idea or a passage from another author, they must acknowledge their debt both by using quotation marks where appropriate and by proper referencing such as footnotes or citations. Plagiarism is a major academic offence (see Scholastic Offence Policy in the Western Academic Calendar).


Plagiarism Checking

The University of Western Ontario uses software for plagiarism checking. Students may be required to submit their written work and programs in electronic form for plagiarism checking.