All video games are made by programmers, but Baba Is You was made by programmers. Also the title screen contains a link to, which I feel obliged to mention.

The First Level

The premise of the game is simple. There are objects on the screen, and rules governing how those objects behave. Each object takes up a tile. "Baba Is You" means that when you press the arrow keys the little rabbit (or whatever it is?) called Baba moves around. Having this rule and "Flag Is Win" means that when Baba reaches the flag, you win. "Rock Is Push" means the rock is a physical object you can push around. "Wall Is Stop" means you can't walk through the wall tiles.

If instead "Flag Is You" and "Baba Is Win" then you have to move the flag around and reach the (unmoving) Baba. The objects have no properties other than what the rules give them. Some objects which are important in certain levels are just decoration in others, as they have no rules pointing to them to give them properties. The tile squares in the level above act in that way.

But these rules are built from words which are themselves movable objects. "Baba Is You" is a rule which exists because the "Baba", "Is", and "You" tiles are all in a row. If you (as Baba) push the word "Rock" in place of the word "Baba" in "Baba Is You", then you control all the rocks on screen at once. A lot of the puzzles rely on your limited supply of tiles to manipulate.

The hardest thing to keep in mind is that, no really, there are no rules! except those that are written on the screen. No matter how many times you've pushed rocks around in previous levels, if this level doesn't have "Rock Is Push" (or you've disrupted that rule by moving things around) then you can't push it, you might even walk right through it if there aren't any rules!

Realizing there are no rules! is often difficult. You have to put in some conscious effort to not expect rules to be followed. Because so many of the objects in Baba Is You are "loaded" in some way (like keys, doors, boxes) you often find yourself forgetting that, no, this time the key doesn't unlock the door because keys don't unlock doors unless the rules specify that.

The "ghost in the machine" type thinking is an example of this. There is no mind which looks over code to evaluate it, the mind is the code. Programming a computer might seem like giving instructions to a person, but it requires unlearning all the implicit rules which we rely on to communicate with people.

Another example is a pure maths. You can attempt to define the natural numbers by the rule "every number has a successor", but this in fact also gives you a separate chain of positive and negative numbers, and an infinite number of possible loops. But these have to be pointed out to most people. It's not obvious that the rule "every number has a successor" is more permissible than first imagined.

Noticing the consequences of fewer rules is harder than noticing the consequences of more rules. It's very easy to follow non-existent rules without seeing them. If you don't violate the rules then you'll never realize they're not there. I think of the 2-4-6 problem.

New to LessWrong?

New Comment
13 comments, sorted by Click to highlight new comments since: Today at 12:20 AM

"text is push" appears to be a rule without any text to describe it, though.

Actually that's a good point,  I think that's the only rule which doesn't need to be written (which I completely forgot to mention). Other rules regarding text can be manipulated the same way the other rules can.

I remember the designer saying that there's two rules without any text to support them. I do not remember the other one.

I would guess that the other rule is "end of field" is stop. 

"End Of Field" has never been a tile before, so I'd bet against.

Added: Though good guess, the other true rule is actually pretty close. Link to answer.

Haven't played the game so just making a guess, but maybe that if there's no rule saying "X is you" then it defaults to Baba? I'm assuming there's something like that cause otherwise breaking the "Baba is you" chain will make you stuck.

You sweet summer child :) Many levels are difficult precisely because breaking "Baba Is You" leaves you stuck.

LOL! That's awesome :)

Pretty sure the first level avatar is a sheep? That says "ba ba"?

Would any current reinforcement learning algorithm be able to solve this game?

I would strongly (>95% confidence) predict no. But not so much because there are no general rules but because the riddles are basically reverse-engineering algorithms aka riddles. 

I wonder whether the ability to solve these kinds of riddle games is a fire alarm for AGI or at least another bigger milestone.

Can you add a link from where it says "Baba is You" at the top to the page on the main website? (Homepage is here.)

I played the game and liked it. I played it with my son too a few times. That helped because it led to ask-explain-verify loops. I didn't complete it. That's partly because of lack of time and partly because good puzzles design is hard. The creators did a fair job. For example, they introduced many of the more advanced concepts one by one. An example is competing rules. Still, it requires a lot of trying out things. Sometimes just to understand how the meta-rules really work.

A good thing is that the game is forgiving: You can undo any number of steps.