Skip to content

unbibium/baba-is-c64

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BABA IS C64

by Nick Bensema

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. Description doesn't do it justice; watch the trailer on YouTube.

I loved the concept, and I loved the game, but somehow instead of having the itch to play it, I got the itch to copy it, using Commodore 64 BASIC.

I got farther than I expected, but don't expect to finish.

The game runs, and responds to cursor commands, but is too slow to actually play unless it is compiled. When it is compiled with Basic-BOSS, it is playable, but I haven't copied any good levels into it yet. Currently there are five tutorial-grade levels.

Supported features

  • Eight object tiles: empty, Baba, rock, wall, flag, water, key, door
  • Sixteen word tiles: all objects, properties, and "IS"
  • Seven properties: YOU, WIN, STOP, PUSH, SHUT, OPEN, SINK, LOSE
  • Screen parser understands
    • both horizontal and vertical sentences
    • NOUN IS NOUN
    • NOUN IS PROPERTY
  • Cursor keys control any number of YOU tiles
  • A tile may contain both a foreground object and a background object. (Text can only be a foreground object.)
  • Win condition is YOU tile overlaps a WIN tile.
  • Moving objects are stopped by STOP tiles
  • PUSH tiles attempt to move in the same direction when moved upon.
  • OPEN tiles combine with SHUT tiles to form an empty tile.
  • SINK tiles combine with any other tile to form an empty tile.
  • MELT tiles are destroyed when combined with a HOT tile, which remains.
  • LOSE tiles destroy any YOU tiles that move onto them.
  • Undo with "Z"
  • Reset with "R"
  • Level skip with "N"
  • Poke into the level with "P"
  • Edit the level graphically with "E"
  • Dump current level into DATA statement with "D"
  • Very trivial levels that are very hard to edit.

Build instructions

I did most of my development in C64 BASIC, but wanted to be able to track source code changes through GitHub. You should be able to build the game from the text source code file by just typing make, if you have these tools available:

There is a dev script called devbaba that will build baba.prg and run it with VICE. If you edit the program and save it, it should back-port all the changes you made to baba.bas, and recompile it to baba-compiled.prg.

Related projects

I ported this effort to C, compatible with cc65. It includes a 2x2 tile mode. https://github.com/unbibium/baba-cc65

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/

About

Commodore 64 demake of a popular puzzle game

Topics

Resources

Stars

7 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors