This course will consist of readings (with associated questions), discussion-based lecture periods to discuss readings, their relationships to our experiences, and implications towards game design, labs to develop technical skills, and a group design and implementation project that brings together everything learned in the course. Students will make presentations about their project progress as well as lead a discussion on a learning subject. Finally, there will be a final write-up in addition to the video demonstrating their game.
We do not make use of Canvas; We will use piazza instead - CMSC 209 Computers for Learning.
If you have questions about the course, and those questions are in a sense impersonal — that is, they are about course material or course logistics — we ask that you post those questions publicly on piazza, rather than contacting any of the staff members directly. This ensures you will receive the fastest, most consistent possible response from the staff. Since students usually have common questions, posting public questions is also very efficient for your classmates as well. As yet another advantage, it avoids duplication of work on the part of the staff.
If you have a specific question about your implementation - if any code or partial solution is involved - then ask a private question on piazza, which is invisible to your classmates.
In general, there should be no reason for personal email unless it is for extenuating circumstances.
Students must register for and attend lab sessions each week. Lab sessions are held in the Computer Science Instructional Laboratory (also known as the CSIL); it is located on the first floor of Crerar Library. Attendance at the lab session for which you are registered is mandatory.
Because of the group project, once the groups have been formed, you may not attend the opposite lab period for credit.
Textbook: Game Design Workshop: A Playcentric Approach to Creating Innovative Games, Third Edition 3rd Edition
Software: The only software we will provide support for is IntelliJ. This is an IDE for compiling, debugging, and running Java programs. If you choose to do so in another way, you will be responsible for figuring out the development process.
There will be weekly reading / writing assignments as well as programming assignments to build your game engine.
Each student’s final grade will be computed according to the following formula:
For in-class participation and reading assignment questions, I will drop the lowest score, allowing you grace for a single missed or sub-par submission.
Reading questions are submitted electronically prior to class time.
Groups obviously share code amongst themselves, but they are not allowed to share code between groups in any shape or form.
We will enforce the following rule as well: any student who is under suspicion of having violated academic honesty rules will not be allowed to withdraw from this course.