In March 2019, Arvi "Hempuli" Teikari released a puzzle game called Baba Is You for PC, Mac, and Nintendo Switch. It's a game where you solve puzzles by pushing tiles around, some of which change the rules of the game and the properties of objects.
I loved the concept, and I loved the game, but somehow instead of having the itch to play it, I got the itch to run it on 8-bit hardware.
I got farther than I expected, though this isn't a complete game yet.
This is a cc65 port of my c64 BASIC demake of Baba Is You, which I've published elsewhere on github.
I worked on this mostly in late 2020, early 2021, because the BASIC version was just too slow. Compiling it with BasicBOSS made it playable, but editing it in BASIC was starting to become cumbersome. I needed to be able to expand its rule set, and maybe introduce custom graphics and better animation eventually.
So I have this version, which is about up to the point that the BASIC version is at, minus the level editor. There is even a branch that uses 2x2 tiles that look more like the original game.
The project is unlikely to be completed, though I may work on adding features as a personal challenge. Ultimately the two-layer levels I'm using aren't very robust, and I need to be able to have objects facing certain directions in order to implement MOVE tiles. But mostly, I don't think I could make it aesthetically pleasing in the same way.
If you're interested in Baba demakes, try this Pico-8 version: https://www.lexaloffle.com/bbs/?pid=149645
If you're interested in 8-bit Baba demakes specifically, try "Adam is Me" for the Atari 8-bit, which is the same concept but has many differences: https://aim.atariscene.pl/
- "R" to restart and "Z" to undo
- Parses "NOUN IS NOUN" and "NOUN IS PROPERTY" sentences.
- "A is B" causes objects to transform.
- "A is A" rule supersedes any "A is B" transformation.
- Use cursor keys or WASD to move tiles with "YOU" property.
- YOU tiles are controlled by the player.
- STOP tiles will prevent objects from moving onto them.
- PUSH tiles can be pushed by moving objects, as long as they can move in the same direction. If they can't move, they act as STOP tiles.
- The level grid can store two layers of objects, enabling the following interactions when objects occupy the same tile:
- OPEN and SHUT objects will annihilate each other.
- SINK and any other object will annihilate each other.
- MELT objects will destroy HOT objects.
- LOSE objects will destroy YOU objects.
- if YOU objects collide with a WIN objects, the game goes to the next level.