CS/INFO 3152: Introduction to Computer Game Development

Assignment 17
Golden Master

Due: Tuesday, May 12th at 11:59 pm

Because we have pushed everything back a week, this "final" release is during finals period. Given the weeks that we have lost, it is possible that class will be extended into this period. However, we are not counting on it. Until we hear otherwise, this will be a submission-only release with no presentation.

The purpose of this release is too-fold. The first is to ensure that you can ship your game with an installer. Far too many people leave packr up until the last minute before Showcase, and then struggle to get a build that works. An online Showcase is not going to work if we do not have proper installers. So we want a test build now.

The other purpose of this release is to give you one last round of feedback before your final submission at Showcase. In general, the game that you present as your golden master should be something that you are comfortable making available for download. If you have to drop the class to finish your other classes, this should be a release you can live with. But by giving you one last round of feedback we can help you earn the grade that you want to earn.

For this release, we will make another round of grade predictions. Unfortunately, we will not have the grade predictions until later in the week, well after the drop/S-U deadline on May 12th (I did not vote for that date). However, you can still use this information to make sure that you get the grade that you want at Showcase.


Presentation

There will not be any separate design presentation this time. If it is not in the game then it does not exist (and we assume that it will never exist). Most of your presentation should be spent playing the game. You should take us through the early levels and discuss how your level progression works. We have seen individual levels from you; now we want to see how they fit together.

However, for this presentation, we have a new rule. Everyone on the team must take a turn talking during the presentation. This is the end of a team effort, and we are not allowing the presentation to be the voice of one person. Ideally, each of you should talk about something in the game that you did that you were really proud of. However, we will leave the division up to you. It is only okay for someone to not talk during the presentation if that person is the one giving the postmortem.


Postmortem

The last 4 or so minutes of your presentation should be a slide presentation that provides a postmortem of your game production. A postmortem is a review of your game development process. In the postmortem, you identify the following:

  • What you wanted to do at the very beginning.
  • What you were actually able to achieve and how it differed.
  • What prevented you from achieving those goals.
  • What you would have done differently if you could do it again.

To give you some idea of the types of questions you should be answering, here are some postmortems for a couple of commercial games. These are clearly essay format, which is not what we want. We just want slides from you with the high-level bullet points. In other words, your slides should look like the bolded parts of these essays and you should talk about the non-bolded parts.

Baldur's Gate: Enhanced Edition

This is a postmortem for the relaunch of the classic RPG Baldur's Gate (published in 2000) on tablets and modern OS's. The sequel to this game (which was released for tablets by the same team) is considered by many people to be one of the greatest western RPGs ever made.

Rocketbowl

This independent game was the 2005 winner for Technical Excellence at the Independent Games Festival. It is simple and straight-forward.

Oasis

Oasis was the winner of the IGF's 2004 Game of the Year and Innovation in Game Design awards in the web/downloadable category. It has also been used as a case study in past semesters of CIS 3000.


Presentation Schedule

The last week of class is abbreviated. We only have class Monday and Tuesday. We will need one more class to present. We have posted a poll in Piazza to determine that time. Based on that poll, I am choosing Monday 4:00-5:00 pm as the alternate time. If have a legitimate conflict, that is okay, but please send me e-mail confirming the conflict so that I know you will not be attending.

Monday (May 11)

Lecture (10:10-11:00am) [Zoom Recording]

  • Unclear Studio (Rekindle)
  • Nonstop Soup (Octoplasm)
  • SOYA Studios (Night Bite)

Extra Class (4:00-5:00) [Zoom Recording]

  • TeamOne (Tempus)
  • Zenith Games (Fallen Flame)
  • Duodecimal Games (The Night Watch)

Tuesday (May 12) [Zoom Recording]

Section 201 (11:15-12:05pm)

  • Overplayed (Low On Ink)
  • Team Waypoint (Parole in On)
  • Octave Games (Astrobeat)

Section 202 (12:20-1:10pm)

  • Glassbox Games (Rubato)
  • Snip Snip Studios (No Strings Attached)
  • Lucid8 (Modosu)

Submission

Due: Tuesday, May 12th at 11:59 pm

Here is where things get different. A golden master means that you have actually put the game in the state that you will release it (e.g. placing it on a physical DVD or getting it authorized for download). We want you to do that. That means no jar files. We want a proper executable

Isn't a JAR file executable? It is if you have Java installed. But you cannot assume that everyone has Java installed on their computer. Or that they have the right version of Java installed (these days they very likely do not considering how fast Java is moving).

That is why you need to make a version of your game that packages it with the correct Java runtime. That is the purpose of packr; it combines your application with a specific version of Java so that a person running the application uses exactly that version of Java. This guarantees uniform performance across all computers, no matter what the person has installed.

The instructions for packr are on GitHub. To run packr, you need a version of the JDK for the platform you are creating. So if you are Windows, and want to make a release for macOS, you must have a macOS version of the JDK (and vice versa). We highly recommend that you use OpenJDK for this. Licensing restrictions prevent you from redistributing the Oracle JDK past Java 8. You can redistribute Java 8, but not higher. And honestly, we are recommending Java 9 right now. So download the appropriate packages (9.0.4) from the OpenJDK page.

We want releases for Mac and Windows both. Windows builds are easy, but the Mac build must be named with the .app suffix. Otherwise, you will get a normal folder and not an application (Mac applications are folders with the .app suffix, making them double-clickable). And also, it would be nice if you added an icon to the Mac release. Just go into the Contents/Resources folder and add an .icns file. While it is possible to add an icon on Windows, this is harder and requires an external tool.

In addition to the release, we would like your slides that you made for the presentation. Submit a file called postmortem. This file should be a PDF, just like all other documents. We will give you a place in CMS to submit this.

Finally, you should not forget to turn in your last two week report. This will help us in determining final grades at the end of the course.