DesInv198-1: Video Game Design & Development

Table of contents

  1. Course Info
  2. Course Description
  3. Prerequisites
  4. Course Structure
  5. The Projects
  6. Labs
  7. Written Responses
  8. Required Readings
  9. Required Materials
  10. Grading
  11. Late Policy
  12. Attendance Policy
  13. Academic Honesty
  14. Accommodations
  15. Schedule

Course Info

Time: Mondays/Thursdays 6:30pm - 8:00pm

Location: Jacobs 10

Facilitator: Jackie Dai, Joshua Almario

Faculty of Record: James O’Brien

Course Email: berkeley.gamedev@gmail.com

Course Description

This course is a deep dive into the creation of games, from beginning to end. Over the course of the semester, students will pitch a game, form small teams, and build a project from start to finish with help from the instructors. Students are not required to have any prior game development experience but it is required that a student taking the course either has basic art, music or programming abilities. They will also learn about the different roles that exist within the industry, how to apply their skills to them, and form an understanding about how to best prepare themselves to find their way into these roles. This will be a rigorous class, one that will require a lot of time and dedication. Students will be selected via the application due Friday, September 8th at 11:59 PM, to ensure that the class’ composition reflects a diverse range of skills, backgrounds, and proficiency levels.

Prerequisites

This class is open to both programmers and artists. Artists of all experience levels are encouraged to apply. You are not required to have any prior game development experience.

Programmers:

  • Have completed CS61A (exceptions may be granted per our discretion)
  • Have completed or concurrently taking CS61B

Artists:

  • Example of previous works
  • Capability to create digital art

Course Structure

  • The class meets twice a week, for an hour and a half each meeting. Classes begin at 6:40 sharp, and we cannot accommodate for students who arrive later.
  • Weeks 1-4: Meetings will be tutorial lectures, designed to provide students with knowledge of how the Unity engine works and best practices for implementing game mechanics.
  • Week 5: Students will be formed into small teams to work on Project 2. This project is designed to give students the opportunity to collaborate on and execute a small scale game before working on the final project.
  • Week 6-14: Final project teams are formed around Week 6 and the course will assume the following structure:
    • The first ~20 minutes of class will be a short lecture.
      • On the first class of the week, facilitators will check in with their respective groups. This entails
      • On the second class of the week, students will have in-class project work time.
    • Occasionally, classes will be replaced with a guest lecture or playtest.
    • Lectures from Week 6 onward will be determined during the semester based on student needs.

The Projects

Project 1 (Solo): Programmers will follow along a series of tutorial videos to create a game from scratch. After completing the game, each student will be required to design and implement their own mechanics, artwork, or SFX and music. This project will reinforce key concepts introduced in the lectures given in the first four weeks of the class. Programmers will learn the fundamentals of creating a project in Unity by following the tutorial. Artists will learn to create their own assets for a game they design. These assets must feel cohesive and be game-ready as a learning experience for the following projects.

Project 2 (2 - 3 people): A one week “game jam”; the goal is to build a game in a week. The main purpose of this project is to teach students about scope by giving them the opportunity to see what can be done in a week. It will also serve as a way for each student to see what kind of group dynamic works best for them.

Project 3 (4 - 5 people): The flagship project for the course is a game designed and built by the students themselves over the course of approximately two months. Students will begin preparing pitches in Week 5 with guidance from the instructors, and will present their pitches to the entire class in Week 6. Students will then select which projects they are interested in, and the instructors will form teams based on their interests and skills. From there on out, the teams will work with the instructors and their team leads to create a schedule and scope for the game. While working on the project, the teams will work with and receive feedback from the facilitators and other students. All projects will be graded based on how well they achieve the five milestones.

At each milestone (except for the zeroth milestone), all projects are shared with the rest of the class. These milestones are as follows:

  • Milestone 0: Each team is expected to have a game design document completed. The design document needs to include an explanation for the vision of the game as well as the specifics for the core aspects of the game. The teams are also expected to create a rough week by week breakdown of tasks.
  • Milestone 1: Minimum Viable Product (MVP): Playable prototype of the original pitch. The core mechanics and the first iteration of the core art assets of the game should be implemented. Effectively this milestone exists to ensure that the games are fun, and to provide teams with feedback regarding how their game can be improved.
  • Milestone 2: Alpha Build: All of the main mechanics should be in place. The general art style should be decided on and the main assets (character, environment) should be in place. A first pass should be done on the rest of the art assets. There should be a basic but complete level as intended to appear in the final game. This build can have bugs.
  • Milestone 3: Beta Build: The main mechanics should no longer have any bugs. Most of the art assets should be completed and in the game. The game and its levels should be mostly complete. This build needs to have a certain level of polish; having a few small bugs and incomplete minor assets is fine at this build.
  • Milestone 4(showcase): Release Build: Finished Project. The game should be complete, and in line with the original pitch. It should be polished, playable from start to finish, and mostly bug free.

At each milestone, team members will fill out team evaluations that will be factored into each member’s grade. For milestones that include playtests, students must also fill out feedback forms for other groups.

Labs

In the first few weeks, students will work through instructor-made, CS-style labs that are focused on teaching a particular aspect of Unity that will aid students in making their projects throughout the semester. Labs will be assigned in class and due the following week.They are completed upon answering check-off questions with a facilitator. Each lab is graded by completion.

Written Responses

Students will be responsible for several written assignments. One is a reflection for project 2 to journal their progress within the week that they develop their game. The second is a game design document for the final project that details the design of your game as well as a week by week breakdown of tasks. Lastly students will be required to submit a short write-up detailing their thoughts on the final project and the course as a whole.

Required Readings

Students will be required to read one article on game design concepts and principles every week. Basic questions will be asked to the students to ensure that students have been keeping up with the required readings. A link to each week’s reading is provided in the syllabus below and also posted on the course website.

Required Materials

Every student will need a laptop capable of running Photoshop, Illustrator, and Unity3D. In addition, students will be required to join our course Discord for announcements and other information. No textbooks are required. Two recommended resources are articles from Gamesutra and videos from GDCVault. Required readings are listed in the week-by-week schedule.

Grading

Overall:

  • Labs: 20%
  • Project 1: 20%
  • Project 2: 20%
  • Project 3: 40%

Project 1 and 2:

  • Graded on completion of project specifications
  • Grading will consist of a P/NP and some feedback

Project 3 (Per milestone):

  • Mentor evaluation: 40% of project 3 grade, 24% of overall grade
  • Peer evaluations: 40% of project 3 grade, 24% of overall grade
  • Project score: 20% of project 3 grade, 12% of overall grade
    • Project score is based on progress made, not percentage of pitch completed.

Grades will not be readily available until the end of the semester due to the timing and weight of assignments. Students who are not doing well will be notified and worked with accordingly.

A minimum of 70% is required to pass the course.

Late Policy

For Projects 1 and 2, a 30% deduction will be applied on the assignment for the first day late. Any day past that is an automatic no pass for the assignment. All other assignments are graded on a pass no pass basis with a no pass if it is late.

Attendance Policy

Attendance matters! If you cannot be at class, you must inform an instructor via the course email, berkeley.gamedev@gmail.com. Only two unexcused absences will be allowed, and any further absences will result in your grade dropping 10% per absence. If you are in danger of not passing by the middle of the semester, the instructors will let people know what can be done to remedy that.

Academic Honesty

The goal of this course is to teach you the fundamentals of game development from start to finish. As such, we are strictly forbidding the following in our class:

Generative AI. This means no ChatGPT, Github Copilot, Dall-E, or any other type of AI tool that automates anything for you. Usage of assets made outside of the class. Copying large amounts of code from others/online. Unapproved usage of asset libraries or packages (must ask facilitating staff).

Violation of any of the above policies will be an automatic fail on the assignment/project, and we will pursue the appropriate Academic Misconduct procedures.

Accommodations

We will do our best to provide academic accommodations so that students can have the best possible chance of success. Any students facing hardships or extenuating circumstances should not hesitate to reach out to an instructor via the course email so that we can reach an arrangement.

Schedule

Guest lecture dates are subject to change based on availability of the guests, and the lecture schedule itself may end up in a very different order than written here, but the topics will remain largely the same. We reserve the right to update the schedule and class content according to circumstances. All changes will be announced to the class.

See our Home page for our semester schedule.