COMP 1671, Fall 2006
Course Information and
Syllabus
Scott Leutenegger
Professor and Director Game Development Programs
COMP 1671 Section 1 Instructor
leut@cs.du.edu
Office: JGH 119, x12821
Office Hours: Mon - Thur, 9:00 - 10:00 or by appointment
|
Jeff Edgington
Adjunct Lecturer
COMP 1671 Section 2 Instructor
jedgingt@cs.du.edu
Office: JGH 321, x13297
Office Hours: Mon 2-3, Tue 2-5, Wed 2-3, or by appointment
|
About This Course
This course will cover inroductory computer science
topics including structured programming techniques,
introduction to classes, abstract data types,
and object-oriented programming. Implementation of
solutions will be in Flash ActionScript 2.0.
The objective is to learn the fundamental programming
techniques using 2D animations and game programming as project assignments.
Course Meeting Times
The lecture is held in JGH 316.
Section 1 (Leutenegger) is Tue/Thu from 10:00 PM to 11:50
and Section 2 (Edgington) is Mon/Wed from 12:00 to 1:50.
Pre-requisite
High School Algebra
Required Resources
- A laptop and Ethernet card/cord
- Software: Flash 8 on your laptop. (Note, if
you have Flash MX you can use that, but if your partner
has 8 you two will need to make sure that the person
with 8 always saves files in MX 2004 format).
Flash is expensive if you pay full price, you can
get it at the bookstore at the student price.
- Book: There are no good books yet covering this subject!
We will be putting notes online throughout the quarter.
Optional Resources
The following are possible reference books. They truly are not
"needed" for this class, but, if you have the money and like having
reference books, you might find these useful.
We will do very little with UML so this would be my last choice, but,
if you groove on UML you might want them.
- Flash:
- Sams Teach Yourself Macromedia Flash MX in 24 Hours, by Philip Kerman
- Macromedia Flash MX 2004 Hands-On Training (H.O.T), by Rosanna Yeung
- Macromedia Flash MX 2004 for Windows and Macintosh : Visual QuickStart Guide, by Katherine Ulrich
- Actionscript:
- Essential ActionScript 2.0, by Colin Moock
- ActionScript for Flash MX: The Definitive Guide, Second Edition, by Colin Moock
- Macromedia Flash MX ActionScript for Fun and Games, by Gary Rosenzweig
- Macromedia Flash MX Game Design Demystified, by Jobe Makar
- UML:
- UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition, by Martin Fowler
- UML Weekend Crash Course, by Thomas A. Pender
Grading
projects |
35% |
in-class labs (can drop 2) |
15% |
midterm | 25% |
final | 25% |
The 35% for the project will be broken down as (10%, 10%, 10%, and 5%)
for (P1, P2, P3, and P4) respectively.
Final Exam
The final for section 1 (Leutenegger) is scheduled by the
University for Tuesday Nov 21, 9:00 - 10:50 AM.
The final for section 2 (Edgington) is scheduled by the
University for Monday Nov 20, 11:00 AM - 12:50 PM.
There are no exceptions to this time, plan any travel for AFTER the
final.
Late Assignments
You are granted two "grace periods" for the quarter.
You can trade in a "grace period" for a 48 hour extension.
After your grace periods are used you must turn in what you have, finished or not.
You may not use both grace periods on the same assigment.
The idea is that work builds on previous assignments, hence, I am not
allowing you to fall behind.
{\bf NOTE, you can NOT use a grace period on the final project, you must
demo the game in class with everyone else.}
Missed Labs
Your lab grade is calculated based on the labs you do in class
the day they are assigned. There is no outside makeup of labs.
Labs are graded at the end of the hour as {0, 50%, or 100%}.
You will be allowed to miss two labs without
penalty, after those two misses are used up you can NOT make up labs.
The two free miss days are intended to accommodate illness, necessary trips,
snowboarding, whatever!
Collaboration and Academic Honesty
You will be working in grops of two. The
basic presumption is that the work you hand in was done
by you two, and ONLY you two.
Occasionally on your programs (but never on exams!), it may be
necessary to ask someone for help.
You are permitted to do so, provided you meet the following two
conditions.
- You specifically acknowledge the help on the work you hand in.
- You understand the work that you hand in, so that you could explain
the reasoning behind the parts of the work done for you by another.
Note, exams will test this knowledge also, so it is in your best
interest to fully understand the problem.
We shall not deduct credit for small amounts of acknowledged assistance.
Such shared interest can be beneficial to all concerned.
We do reserve the right to give less than full credit in circumstances
where it appears that there has been large-scale division of labor, and
you are not getting as much learning out of the assignment as you should.
Unadknowledged help will be deemed as cheating and will result in a
grade of F for the course and cheaters will be brought to the attention of
the Dean. Cheating on an exam will be result in a grade
of F for the course and cheaters will be brought to the attention
of the Dean.
Flash keyboard shortcuts you might find useful
- Shortcut: F2 = Close output (from trace command) window
- Shortcut: F5 = Add frame
- Shortcut: shift-F5 = Delete frame
- Shortcut: F6 = Add keyframe
- Shortcut: F8 = Convert To symbol
- Shortcut: F9 = open/close actionscript window
- Shortcut: F11 = open/close library
- Shortcut: F12 = Publish and run in a browser
- Shortcut: ctrl-w = close window
- Shortcut: ctrl-enter = test movie (including output from trace commands)
- More Flash Shortcuts
The calendar below contains links to homework assignments, links to
programming projects, as well as important dates for you to keep in mind.
First is brief topic guide, followed by the full calendar.
Note, this is a guide, we may deviate from this order.
Topic Guidline
Weed 1 Flash Intro, AS Programming Intro
Week 2 Variables, Statements, Input/Output, Simple Flow Control
Week 3 Movie Clip Objects and Movement, Collision Detection, Functions
Week 4 Functions, Scope, Looping Flow Control
Week 5 Arrays, Arrays of MovieClips, Looping, Classes and Objects
Week 6 MIDTERM, OO Concepts: Information Hiding/Encapsulation
Week 7 UML Design, Testing/Debugging, Sounds, Buttons, Game Phases, Timing
Week 8 Event Driven Programming: Keyboard and Mouse Control
Week 9 Physical Simulation, Recursion, C++
Week 10 Review, Supervised Work Time, Game DEMOS
Calendar
This page was last modified on: