A coding puzzle about while loops!

Taking inspiration from such classics as TIS-100 and Shenzhen IO, we tried to do something which looks and feels in a same aesthetically pleasing way, and tried to add something new to it.

The main idea is pretty simple - you have a plain while-loop which ends when game character reaches the exit. Your goal is to write code which will take him to that exit.

Each level has a set of available low level instructions and a memory limit, each instruction takes 1 B in memory. Instructions are added by drag&dropping them into the code, or by simple clicking on them. You can use right mouse button to delete instructions from code.

Rate on Ludum Dare



Turns out that designing levels for such a simple mechanic can be quite a fun challenge! Over the course of three days we managed to create 16 playable levels. With a help of simple text based level editor we can make twice as much in the future. 

Besides, we invite you to try making levels yourself!

Adding custom levels

Custom levels are supported only in the desktop version of the game.

To get started, copy-paste the example below to a separate .txt file in CustomLevels directory. The level will be available from main menu. Your level will be reloaded from file each time you open it.

The format is pretty self-explanatory, but you have to follow it strictly.

- Use 'O' for empty tiles, '#' for wall tiles, 'E' for exit tile
- PlayerPos and StarPos are specified like this: (row number starting from 0) (column number starting from 0)
- Full list of instructions: `MoveForward MoveBackward MoveLeft MoveRight PlaceWall TurnLeft TurnRight Turn180 Flip`


YourName-01.txt

Name YourName-01
MaxInstructions 8
AllowedInstructions MoveForward MoveBackward MoveLeft MoveRight PlaceWall
ScoreConditionInstructions 6
ScoreConditionInstructions 5
ScoreConditionStar 1
PlayerPos 7 0
StarPos 6 6
DefaultCodeComment // This crystal is so lonely
OOOOOOOO
O#OOOOOO
O#OOOOOO
O#OOOOOO
O#OOOOOO
O#OOOOOO
O#OOOOOO
O#EOOOOO 

If you will publish your level anywhere - please include your nickname in the title of a file.

We hope you'll enjoy our game!

Credits

Music is by Anonymous420, in public domain.

StatusReleased
PlatformsHTML5, Windows
Rating
Rated 4.0 out of 5 stars
(6 total ratings)
AuthorsAbvadabra, GloomyFolken
GenrePuzzle
Made withUnity
Tags2D, 3D, coding, Hacking, Ludum Dare, Ludum Dare 47, programming
LinksLudum Dare

Download

Download
MonkeyVM.zip 29 MB

Comments

Log in with itch.io to leave a comment.

Fun stuff man

Are you supposed to skip 1-4? I literally have no Idea how to solve it
(dont spoil the answer to me please just tell me if it is possible or not

It's totally possible. We thought that comment about skipping would be fun to add because 1-4 level looks much scarier than it actually is. 

(2 edits)

thanks for clarifying.
edit: how the f did I just send the same reply twice when clicking the send button once? anyway the deleted post is also "thanks for clarifying."

(1 edit)

Welp, guess who took literally 3 years to finally solve a puzzle and now feels stupid about it? :'D

I have no idea how I did not realize that if I put 2 move back lines that doesn't mean I'm not allowed to place more than 3 move forward lines. I'm facepalming at myself rn.