Proteus: Procedurally generated island and soundscape

Game as Engine

What is a game engine? Project 3 is about considering the potential for games, systems, and other digital objects to act as generative engines for ideas, experiences, arguments, perspectives, subversions, meditations, and everything in between.

So far in this class, you’ve been learning to build projects using the Unity game engine. For project 3, you will explore other aspects of what a game engine can do. These can be techniques for creating games, focusing on aspects of gameplay and interaction outside of the game engine, or even remixing existing games.

Prepositions are to parts of speech as metagames are to games. A signifier for everything occurring before, after, between, and during games as well as everything located in, on, around, and beyond games, the metagame anchors the game in time and space.

Metagaming: Playing, Competing, Spectating, Cheating, Trading, Making, and Breaking Videogames. Stephanie Boluk and Patrick LeMieux. 2017

There are lots of options for what you can make, and we’ll cover a few possibilities in class (simulation, music, alternative inputs, sampling other games). But there are many more techniques than we can cover in class, especially when it comes to modding or hacking a specific media source.

Feeling stuck?

Here is one option based around simulation:

Create a game that can run independent of player input. Use randomness, simulation, and generative techniques to introduce unpredictability. Consider timescale, progression, the audience/spectator, and who or what might interact with the system. Optionally, the game can be influenced, but only minimally, via external input from a player or environmental sensors.

You might choose to make a generative landscape, a music/sound machine, a random character generator, a program that creates different buildings with modular parts, a simulation of creatures or natural systems, an abstract art generator, procedurally generated stories, or anything else that you can imagine.

When building your game, especially one that involves generative objects, sounds, paintings, animals, worlds, etc., consider the 10,000 bowls of oatmeal problem, described by Kate Compton:

So your algorithm may generate 18,446,744,073,709,551,616 planets. They may each be subtly different, but as they player is exploring them rapidly, will they be perceived as different? I like to call this problem the 10,000 Bowls of Oatmeal problem. I can easily generate 10,000 bowls of plain oatmeal, with each oat being in a different position and different orientation, and mathematically speaking they will all be completely unique. But the user will likely just see a lot of oatmealPerceptual uniqueness is the real metric, and it’s darn tough.

Kate Compton. So you want to build a generator

Deliverables

  • Consideration of engine. What runs the game and how does the game relate to the things “in, around, and beyond” it?
  • Consideration of inputs. Does a player need to interact directly with the work? Consider the player/spectator and how they should view the work. Is it meant to be meditative, overwhelming, funny? Should it run ambiently in the background, should it run on extended cycles (hours, days, seasons, lifetimes, every rainy day, etc.), should it use external sensors or react to network data?
  • 2D, 3D, XD. No restrictions on the format.
  • You can freely use any projects you’ve already done in class, or make something entirely new!

San Andreas Streaming Deer Cam. Brent Watanabe

1. Early Experiments

Due by Tuesday 5/28

What are you creating and how will it run? How do you imagine someone viewing or interacting with it? Does the work live somewhere beyond a screen or projection?

Make a simple experiment in Unity that shows a simplified version of what you’re trying to do.

For example:

  • You want to use sound as an input: Show that you can connect a microphone to Unity.
  • You want to build a custom controller, show that you’re able to receive inputs in Unity or construct a simple version of the hardware.

Block Bills. Matthias Dörfelt

3. Build it

Due by Thursday 6/6

Submit Project 3 Here

  1. Build your game. It should be able to run without crashing, bugs, etc.
  2. If you have an alternative outputs or inputs (custom controllers/sensors, external data, prints, artifacts, etc.) Please include documentation in the screen shots.
  3. Document the context of the game, that is, how should it be viewed. As a website, downloaded and run on a laptop/desktop (full screen or windowed), projected on a wall, sound only, or some other context.

Please refer to the page on preparing your game for submission for more information on the build and documentation process.

Blaseball (2020 - 2023) - A game that primarily existed in the meta of a fantasy baseball simulation. (brief overview)

Some Games/Projects for reference:

Just a small selection of examples. Most games include some degree of random generation in character spawning, random variation in damage, enemy AI, etc.