This document is available at url: csciun1.mala.bc.ca:8080/~wesselsd/courses/csci171/outline.html
Calendar Description CSCI 171 (3) Introduction to Game Design and Development
|
Course Motivation and overview
This course is intended to give interested students an introduction to the concepts, practices, and processes used in the design of computer games, along with some experience with programming tools and techniques for game development. The only pre-requisite is an interest in computer games and gaming.
A substantial portion of the course mark will be based on a game design project, in which students will develop a game proposal and design document and either implement a proof of concept (for students interested in the programmatical aspects of game development) or substantially expand their game design and supplementary materials (for students wishing to concentrate on the design/conceptual aspects of game development).
Theoretical topics will be discussed in the lectures, while the weekly labs will guide the students through the use of tools and programming techniques necessary to create and deploy fully functional games.
The labs themselves will focus on the use of open source tools in a linux environment. In particular, the students will get an introduction to the Python programming language and its PyGame extension.
A more detailed topics list is included in the Topics and Schedule section below.
Contact information, materials
Timetable and assessment
The Project
One of the most important components of the course is the Game Project, involving the design, development, and demonstration of a game that is the student's own creation. Students can work on their project individually or in pairs, but must pass the project to pass the course.
Equipment requirements
If students wish to work on audio portions of their game project in the labs they will also need to bring their own headphones.
Labs/Tutorials
You must be enrolled in, and fully participate in, the weekly lab sessions. During these session the students will apply the concepts discussed in lectures to their own game projects (using graphic/sound editing tools to create game effects, learning and applying Python/PyGame programming techniques, documenting and describing their game design, storyboarding, creating game installers, etc.).
Certain lab sessions will have an associated set of exercises and deliverables, which must be completed and submitted by a specified date (announced in the labs themselves).
Computer accounts
To work on your tutorials and assignments, you will be given accounts for the computer labs. There is a user id and password associated with each account. Each student is responsible for their account, and for following both the departmental and university-college policies. These may be found through www.viu.ca/computerscience/resources.asp#Lab_and_Computer_Usage_Rules
An approximate list of topics by week is as follows:
Week | Lecture topics | Lab topics |
Jan. 4-7 | Game design processes | (no lab) |
Jan. 11-14 | Describing a game | Intro linux/labs |
Jan. 18-21 | Choices, drama, tension, and fun | Intro to PyGame |
Jan. 25-28 | Classic game structures | Images, sound, screens |
Feb. 1-4 | Game difficulty and balance | Sprites, layers, and motion |
Feb. 8-11 | Game interfaces I | User I/O and events |
Feb. 15-18 | Game interfaces II | Collision detection |
Feb. 22-25 | none (study break) | none |
Mar. 1-4 | AI Part I | A closer look: Python fundamentals |
Mar. 8-11 | AI Part II | Functions and objects |
Mar. 15-18 | Testing and playtesting | Drawing and effects |
Mar. 22-25 | "Faking" 3D with a 2D engine | AI control |
Mar. 29-1 | Multiplayer design | Testing and debugging |
Apr. 5-8 | Cheats and exploits | Good programming practices |
Appeals of Grades:
Any exercise or examination grade may be appealed. However, the appeal must be made to the instructor, in writing and attached to the work in question, and within 7 days of the grade being made available to the class. The instructor reserves the right to re-grade the entire piece of work submitted on appeal, not necessarily just the component that the student believes is in error.
Grade Conversion:
The following scale will be used but the instructor reserves the right to lower the numerical score required for a particular letter grade if that seems appropriate, but the same conversion will be applied to all persons in the class. Under no circumstances will the numerical score required for a particular letter grade be raised.
95-100 | 90-<95 | 85-<90 | 80-<85 | 75-<80 | 70-<75 | 65-<70 | 60-<65 | 55-<60 | 50-<55 | <50 |
A+ | A | A- | B+ | B | B- | C+ | C | C- | D | F |