McMaster University, Communication Studies and Media Arts
MEDIAART 3L03: Game Design
Course Outline – Winter 2023

Instructor: Dr. David Ogborn (“Dr. 0”, he/they), ogbornd@mcmaster.ca
Office Hours: Tuesdays, 3:00 – 4:30 PM in TSH-306; or by email appointment (Zoom or TSH-306)
Full-class meetings: Tuesdays, 11:30 AM – 2:20 PM, TSH-201 & Media Arts Wing (TSH-202B)
Online Content: Avenue-to-Learn, MacVideo, Discord

Course Objectives

Welcome to MEDIAART 3L03: Game Design, a course in which we will explore game technologies in a hands-on way, using them to create video games both individually and collectively. This is how the course is described in the McMaster undergraduate calendar for 2022-23: “Students will develop designs and assets for digital games, informed by readings and discussions of game design theory.”

This will be the 64th course I have led as a university instructor, and my 4th time teaching this particular course, which I first proposed as new addition to the Media Arts (then “Multimedia”) program back in 2013 (teaching it for the first time in 2014-15). My motivation to champion this course is rooted in the perception that making games is (1) an amazing vehicle for exploration and learning in Media Arts, and (2) a milieu full of diverse career/life possibilities for students with Media Arts skills and understandings. I am very much looking forward to what we will make together over the next three months!

During the second half of the semester, we’ll work together as a unified team on a single, collective game project, producing a more substantial game than any of us could achieve individually in such a short time frame. We’ll aim to share this game widely: with the McMaster campus, with the wider community of students working on game projects at multiple institutions around this corner of Lake Ontario (via the annual Level-Up showcase), and as free software on the Internet. Our weekly meetings in the second half of the semester will be entirely devoted to working together on this collective project (substantial independent work on this project between meetings will also be required).

Our work in the first half of the course will be focused on developing what we’ll need, individually, for our collectively-made game. We’ll develop theoretical vocabulary to describe the features of video games and their design/development processes, and consider how game design interacts with social difference. We’ll produce “game assets” (especially 3D models) and incorporate them into game engine projects, and explore implementing different types of game rules or “mechanics”. We’ll get to know each other, get used to working together, and develop our readiness to share ideas about game elements.

Our weekly meetings in the first half of the semester will typically go like this:

  • We all arrive at TSH-201, shortly before 11:30 AM each Tuesday
  • I lead us through about 30 mins of lecture and game analysis
  • We spend about 25 minutes on five 5-minute “lightning talks about game details”, delivered by individual members of the class
  • We take a 5-minute break
  • I lead us in a demonstration and discussion (about 20 minutes) of the week’s technical goals
  • We move to the Media Arts Wing (TSH-202B) and spend the entire remainder of the time (until 2:20 PM) working there – individually, in small groups, with occasional full-group check-ins, etc – on the week’s technical milestone

Regular, in-person attendance for the entire duration of each of our weekly meetings is a strong expectation of this class. In order to become an effective game-making team, we need every one to show up for each other as much as possible. That said, taking care of oneself and each other as a learning community is even more important. So, PLEASE DON’T ATTEND our meetings when you are feeling ill NOR when there are compelling circumstances that mean that you would not really benefit from or contribute to those meetings (e.g., personal/family emergencies, mental health crises, challenges meeting basic needs such as food or shelter, etc). You don’t need to explain such absences to me, although if you feel it would help to talk to me about it, I’m certainly here for that. If you miss a full-class meeting though, you ARE required to contact me (as soon as possible) to start a conversation about how we will make sure you get caught up and stay in touch with the evolution of our work together.

We’ll communicate between class meetings via a Discord server for the class, that everyone is expected to join (link on Avenue). Avenue To Learn will be used as a place to acquire readings, and to learn the requirements of, and submit, weekly reflective logs, technical milestones, and the individual game project produced during the first half of the course (see Method of Assessment, below). I also strongly encourage people to visit me during my office hours (Tuesdays, 3:00 – 4:30 PM, TSH-306) - I’m happy to talk about anything related to this course, and I’m also happy to talk about other things as well!

Textbooks, Materials, & Fees

You DON’T need to buy any books or texts: the online modules (videos, readings) constitute the “textbook” for the course and will be available to you through Avenue (the central starting point for all things relating to this course) and MacVideo.

We’ll be using two pieces of free-and-open-source software heavily: the Godot game engine (version 3.5.1, standard NOT mono) and the 3D modeling software known as Blender (version 3.3.2 LTS). This software will be installed and available in the Media Arts wing. If you expect to work on your own computer as well, you’ll need to install the exact versions of both of these software packages on your computer.

You DO need to sign up for keycard access to the Media Arts wing (TSH-202B), equipment reservation system, and surround sound studio. This requires the purchase of a key card for $10.00 (non-refundable, charged to your student account) in TSH 209 between 8:00am-12:00pm and 1:00pm-4:00pm Monday to Friday (times subject to change, see https://hmcservicecentre.humanities.mcmaster.ca/ for further details). Please sign up for this as soon as possible.

The use of an external three-button mouse (ie. one that you plug into your computer with a USB cable and can move separately from the computer) is strongly recommended during this course (especially when working with Blender).

Method of Assessment

The approach to assessment in this class is based on a combination of ideas from specifications grading and labour-based grading. Specifications grading (Nilson 2015) is an approach where grades are earned by submitting work that meets specific, objective, measurable criteria. Labour-based grading (Inoue 2019) is an approach to grading where grades are earned based on the quantity of work that is completed. Concretely: your grade is not the sum of my judgements about how well or how poorly I think something you made works; instead, your grade is the sum of points that you earn for successfully completing tasks (labour), and you will be just as capable as I of determining that something has successfully met the standard; moreover, for many (but not all) tasks, there will be the chance to resubmit work that did not meet the standard, for full credit.

My motivation for taking this approach is two-fold: on the one hand, it is a matter of “epistemic peace” - an attempt to drastically limit the extent to which I deliver judgement on others’ ways of knowing and expressing themselves; on the other hand, it is also about encouraging you to take risks in the artistic work you produce in this class: have an idea for a project but are worried about pulling it off? Don’t let worries about the grade stop you – go for it!

Rest assured that you’ll still receive lots of qualitative feedback from me, and from your peers, and that feedback will DEFINITELY involve interpretation of, and response to, the artistic choices you make! And I encourage you to consider that feedback carefully, and to think about what you can learn from it. However, the nature of that interpretive feedback will have NOTHING to do with the grade you earn.

Here’s the overall picture of the labour we will do in this course, and how it earns points towards the final grade in the course:

  • Up to 11 pts: Attendance and Weekly Reflective Logs (1 pt per week, during weeks 1-12)
  • Up to 15 pts: Technical Milestones (6 milestones worth 3 points each, during weeks 1-6)
  • Up to 10 pts: Reading Responses (6 responses worth 2 points each, during weeks 1-7)
  • 4 pts: Lightning Talk About a Game Detail (schedule TBD, talk during weeks 2-6)
  • 24 pts: Individual Game Project (due Monday 27 Feb)
  • 36 pts: Collective Game Project (work every week between Feb 28 and April 11)
  • (100 points total)

Attendance and Weekly Reflective Logs: These brief weekly logs ask you to pay attention to, and reflect upon, the nature of your work in this class. While answering the questions is one of the basic requirements for everyone in the class, how you answer the questions is not connected in any way to your grade in the course (as long as you do answer the questions). Be honest with yourself and with me. I will always read these reflections with interest and will sometimes respond to them in writing. Reflective logs are due each Friday at 10 PM, after attending our full-class meeting and completing whatever other independent work you do for this course during the week. It should usually take 5-10 minutes to complete a reflective log. The following is an example of the kinds of questions most of the logs ask you to answer:

1. How many hours did you spend working on course requirements this week (including but not limited to time attending our full-class meetings)?

2. On a scale of 1 to 5 where 1 is "barely engaged at all" and 5 is "highly engaged" how engaged were you during/with your work for this class this week?

3. In this space, please provide a brief reflection (minimum 125 words, no maximum) on this week's work and learning in this course – both activities you completed independently, and those we did together in full-class meetings. Some things you might reflect on: when and where did you do the work and how did that impact your engagement or the results? If you were more or less engaged, why? What is the most memorable, or important, or surprising, or difficult, or enjoyable (etc) thing you/we did this week? What is something you are thinking about differently as a result of your/our work this week?

In some weeks, there may be a few additional questions to answer. For example, at the beginning of the course, the log will ask you to introduce yourself to the teaching team, as well as reflect on the abilities and experiences you bring into this class – and I can guarantee that all of you do bring important abilities and experiences into this class.

Note: these logs can only be completed for credit (1 point each) when you attended all of a given week’s full-class meeting (from the beginning to the very end) or have had a conversation with me (Dr. 0) about a specific absence that has led to an agreement about how the missed labour and participation will be made up. In the absence of such a timely conversation and agreement, reflections from those who do not attend the full-class meeting will not be awarded a point. A maximum of one reflective log per semester can be resubmitted (within 5 business days of the date of initial feedback from me) if it does not receive a point.

Technical Milestones: During each of the first six weeks of the course, there is a technical milestone to complete. Each milestone involves doing some kind of practical, technical task with Blender (3D modeling) and/or Godot (game engine). In most cases, you should be able to complete the milestone during our full-class meeting on Tuesday. Nonetheless, to accommodate circumstances where people need just a little bit more time, the milestone is due before the end of the same week (Friday, 10 PM), after which time a late penalty will be applied. If the submitted work meets the stated specifications, then you’ll receive full credit (2 points) for that milestone. If it doesn’t meet all the stated specifications, then you won’t receive any points (yet) and will have one chance to resubmit by an extended deadline of 5 business days after the date of initial feedback from me (this potential for resubmission applies to all technical milestones). The schedule of Topics and Readings lists the basic task of each milestone, and full details will be available on Avenue and MacVideo.

Reading Responses: Over the first seven weeks of the course, there are six required readings from scholarly literature in game studies (and adjacent fields). To earn 2 points, you will need to carefully read the assigned reading, and then prepare and submit a short, prose response (minimum 250 words) that emphasizes your personal, individual reception of the assigned reading. For example: What parts of the reading resonate with you? What are connections you can see to games, game dynamics, game features (etc) that you are particularly familiar with? What parts of the readings were more opaque or difficult for you? How do you think we should consider the ideas in the reading as we move towards working on a collective game project together? Responses that do not emphasize your personal, individual reception of the assigned reading, or responses that are too brief, will not receive any points. A maximum of one reading response per semester can be resubmitted (within 5 business days of the date of initial feedback from me) if it does not receive points. The due dates for the reading responses are indicated on the schedule of Topics and Readings (they are always on a Monday, at 10 PM).

Lightning Talk About a Game Detail: During the first half of the course, you will be scheduled (via a sign up process during the first week of the course) to deliver a 5-minute “lightning talk” about a game detail. The purposes of this activity are (1) to focus our attention on the details of game designs, (2) to get comfortable sharing ideas about games with each other, and (3) to learn, as a team, what kind of things we are each interested in. Here’s how the lightning talk goes: (1) you’ll identify a detail (of a 3D model, a mechanic, a UI element, or something else) of a game that you find interesting; (2) you’ll share a slide in advance via a shared slide presentation; (3) at the scheduled time you’ll talk to the class for 3-4 minutes about the detail and what you find interesting about it; (4) we’ll discuss it further as a group for a minute or so. For completing this individual class presentation at the scheduled time you will receive 4 points towards the final grade.

Individual Game Project: The individual game project is a complete tiny game, created with Godot and Blender. Completing it successfully earns 24 points towards the final course grade. The following are the full specifications for the project, together with the number of points that are subtracted from 24 (to a minimum of 0) if the specification is not met:

  • 24 pts: The individual game project is a complete, tiny, original game, created with Godot and Blender, and submitted as a Godot project folder inside a ZIP archive
  • 8 pts: The game includes original visual assets (images and/or 3D models)
  • 8 pts: The game includes functioning mechanics, implemented from scratch with GDScript
  • 6 pts: The game includes 2D UI elements (such as menus, score/info displays, etc)
  • 4 pts: The game includes original sound assets
  • 4 pts: Any and all borrowed materials are clearly documented as public domain, or available under the terms of a clearly documented and applicable Creative Commons license
Submissions that meet some but not all of the specifications will have one chance to resubmit, with an extended deadline of 5 business days after the date of initial feedback from me. Everyone is expected to share their individual game in our in-class showcase during week 7.

Collective Game Project: The collective game project is a complete small (not tiny) game, created by the entire class, working together, with Godot and Blender. During Week 7 of the course, we will determine specific roles and responsibilities for every member of the class. Our weekly meetings in the second half of the semester will be entirely devoted to working together on this collective project, and it is expected that students will also work at least 2 hours per week independently (outside of class time) on their contributions to the game. A demonstrable record of regular contributions to the completion of this game project earns 36 points towards the final course grade. Contributions are documented by sharing them in the class Discord server. Points for labour on the collective game project are earned as follows (if the total of points is greater than 36, points will be capped at 36 points):

  • 6 pts: documented contribution during Week 7 (Feb 28 - Mar 6)
  • 6 pts: documented contribution during Week 8 (Mar 7 - Mar 13)
  • 6 pts: documented contribution during Week 9 (Mar 14 - Mar 20)
  • 6 pts: documented contribution during Week 10 (Mar 21 - Mar 27)
  • 6 pts: documented contribution to production of alpha-version (Mar 28 - Apr 3)
  • 6 pts: documented contribution to final week fixes/refinement (Apr 4 - April 10)
  • 3 pts: attend McMaster showcase of collective game (April 11)

Course Policy on Missed Work, Extensions, and Late Penalties: If you encounter difficult circumstances (such as personal or family crises, physical or mental health challenges, difficulty meeting basic needs like food and shelter, etc) please communicate that to me as soon as possible, so that we can strategize about how course requirements might still be met under such circumstances. You don’t need to explain the nature of the difficulty, although I am happy to talk if it is helpful.

Generally: The late penalty is 10% of the assignment weight per business day (or partial business day). For example, something worth 24 points that is submitted a day late would receive 21.6 points instead (24 – 2.4). A business day, for these purposes, is a day that is not Saturday nor Sunday, is not on McMaster’s list of holidays, and is not a special day in an individual student’s cultural/religious background (please communicate with me about the latter if it becomes relevant).

While I’m here and since we are talking about due dates... Have you been wondering why all of the due dates in this course outline (and on Avenue) are set at 10 PM? Because sleep is vital to our health and wellness! The 10 PM due dates are intended to communicate that, wherever possible, as a matter of healthy and sustainable working habits, we should plan to complete our work in a way that allows us to sleep during the night.

Topics and Readings

Week 1

Week 2

Week 3

Week 4

  • Lecture & Game Analysis (Tue Jan 31): Total Annihilation (1998, Cavedog Entertainment)
  • Technical Milestone #4 (due Fri Feb 3): Use Blender to create characters and environmental features with photographic textures. Then, use Godot to create a game in which multiple player avatars move following mouse-and-keyboard commands, non-player avatars move “by themselves”, and new player and non-playar avatars are instantiated according to some or other mechanic.
  • Reading Response #4 (due Mon Feb 6): Josh Noble and Michael Ferber (2016). “Universe of Teleological Illth: A Critique of StarCraft 2.” Loading... 10:15

Week 5

Week 6

  • Lecture & Game Analysis (Tue Feb 14): A Short Hike (2019, Adam Robinson-Yu)
  • Technical Milestone #6 (due Fri Feb 17): Use Godot to create an environment that can be navigated by a player, in which proximity to virtual sound sources affects what the player hears, and in which some foreground sounds are triggered by game events (such as player actions, collisions, or timers).

Individual game project due Mon Feb 27

Week 7

Weeks 8-11: Mar 7, 14, 21, 28
Work in progress on collective game project

Week 12: Apr 4
Alpha version and playtesting of collective game project

Week 13: Apr 11
McMaster showcase of finished collective game project

Wed Apr 19 – probable date of Level-Up games showcase, downtown Toronto (attendance optional but encouraged)

Other Course Information

Acknowledgements: I would like to thank all the past students of this course, whose enthusiasm and creativity have both shaped its successive iterations and made it a pleasure to teach. A special thank you to Nicolas Hesler for reaching out to connect this class with the Level Up showcase many years ago, and to the organizers and sustainers of the Level Up showcase for providing such a wonderful, shared venue for all of us. Many thanks also to all the amazing people from around the world who have contributed to the Godot game engine and Blender as free and open-source software projects!

Works Cited

Asao B. Inoue (2019). Labor-based grading contracts: building equity and inclusion in the compassionate writing classroom. Boulder: University Press of Colorado.

Nilson, Linda (2015). Specifications Grading: Restoring Rigor, Motivating Students, and Saving Faculty Time. Sterling, VA: Stylus Publishing