Baba Is You - Rule Creation Kit

"Baba Is You" is a clever puzzle game designed by Arvi Teikari, where players can manipulate the game's rules by pushing word blocks around a top-down grid. I replicated this innovative system in Unreal Engine, enabling designers to create and implement their own rules that can be applied to any object within the game.

Role

Puzzle/ System Designer

Genre

Puzzle

Made with

Unreal Engine 5

Project Proposal

The project started with a proposal made to the stakeholders. Once I received a green light, I was able to start researching the system.

Performing Research and Sketching

I began by thoroughly exploring the game’s mechanics and capturing my observations through sketches. My research included both the game itself and Unreal Engine’s capabilities to understand how best to recreate the mechanics.

“Baba Is You” Rule allows player to move as Baba

“Is” block can be used for multiple rules

Objects can be transformed into one another

Multiple Objects can share the same Quality

Recreating Baba Is You’s deeply intertwined mechanics presented a unique challenge. However, my research and experimentation provided a strong foundation, allowing me to successfully replicate much of the system using Unreal Engine’s Blueprint system.

Programming the Mechanics

Line Tracing

Working off a Sokoban template (the block-pushing game Baba Is You is based off), I started by using line tracing to have the word blocks acknowledge which words are to its left and right. Using Print Strings, I was able to have the formed rule appear on screen.

Using line tracing in my blueprints

Printing the formed rules on screen

Switch On Integers

I assigned each word block a specific integer. Through line tracing, the “Is” block, which is at the heart of every rule, was able to register which block was to its right and was able to trigger a certain function accordingly.

First, the word block on the “Is” tile´s left is checked. Based on which object was found, a piece of functionality is triggered for that object.

Creating a Gym and Showcase Level

To present the mechanic, I was tasked with creating a gym and a showcase level. Each went through multiple iterations.

For the showcase level, I wanted to copy the original game´s first level. I had to restructure it due to some of the system´s shortcomings.

Original Level

Recreation

Forcing the player to break the “Rock Is Stop” Rule

Forcing the player to use the “Flag Is You” functionality

In the gym level, I showcased the different rules created and their capabilities.

Screenshots of different areas of the gym level that explain the rules of the game

Creating a Pipeline Document and Video

The project allows developers to easily integrate an Object and a Quality of their own into the system, which can themselves be applied to any other Object. I created a video and a pipeline document that explain how to do this.