top of page
Wave Function Cat Labs

​...is inspired by a procedural content generation algorithm called wave function collapse and the Schrödinger's cat experiment. In layman's terms, the outcome of the experiment is only decided at the moment the experiment is observed. In the game, map tiles are (re)generated if you look at them, so you move through an ever-changing environment.

About:

Context:    The "AI and Games Jam 2021"

Engine:     Unity

Language: C#

Team:       2 People

Duration:   2 Days

Details and Takeaways:

Participants of the jam were tasked to build a game that incorporates some form of AI. We decided to focus on procedural content generation and came up with our idea.

​

The game uses basic constraint satisfaction to generate the tiles. Because of the game's vision mechanic, the order of tile generation is defined by the user, and only constraints of tiles that are currently visible are taken into consideration.

The original wave function collapse algorithm also generates the list of constraints out of a provided sample input. This is not the case in our game, where constraints are defined manually. This was one of the most interesting challenges of the project since this meant that the design of a map can only be defined through the constraints. A good understanding of the algorithm is required, and a few things can go wrong. For example, too many constraints can make the map very rigid, which means a less diverse map and fewer changes when regenerating a section of the map.

​

We were very happy when we found out that the game made the list of the host's favorite games and got featured on the AI and Games YouTube channel.

​

​

​

​

  • Idea and construction of the procedural content generation algorithm

  • Creation of the vision mechanics within the game that triggers the collapse/generation of a given tile

  • Player controls

Main Responsibilities

The game presented by the AI and Games YouTube channel:

Game is shown at 11:46

Examples for different sets of constraints:

WFCLMapRigid.PNG

Example of a more defined map with more constraints and more rigidness

bottom of page