When you move, baba moves. Escape from maze before baba finds you.
A minimalistic console game combines recursive backtracker, A* pathfinding and fractal Brownian motion.
[w]
,[s]
,[a]
and[d]
for step up, down, left, right respectively[k]
forfeits round (generates new maze, restarts positions, baba gets a point)[ctrl + c]
exits game
Create a custom game with command line arguments, for example
.\MazeEscape.exe w 64 h 16 o 16 nco1 1 nco2 2 nco3 1 nco4 2 nco5 1 pco 5
creates a game like this:
Long | Short | Description | Default |
---|---|---|---|
Width | w | Width of maze | 64 |
Height | h | Height of maze | 24 |
WallChar | wch | ASCII character of walls | # |
Holes | o | Number of holes in walls punched randomly after maze was generated with recursive backtracker | 12 |
WallColor | wco | Color code of wall | -1 (noise) |
PlayerColor | pco | Color code of player | 1 (blue) |
PlayerChar | pch | ASCII character of player | @ |
BabaColor | bco | Color code of baba | 4 (red) |
BabaChar | bch | ASCII character of baba | B |
KeyUp | ku | Keyboard key (char) to step up | w |
KeyDown | kd | Keyboard key (char) to step down | s |
KeyLeft | kl | Keyboard key (char) to step left | a |
KeyRight | kr | Keyboard key (char) to step right | d |
KeyForfeit | kf | Keyboard key (char) key to forgeit round | k |
NoiseColor1 | nco1 | 1st color for noise* | 8 (gray) |
NoiseColor2 | nco2 | 2nd color for noise* | 2 (green) |
NoiseColor3 | nco3 | 3rd color for noise* | 5 (purple) |
NoiseColor4 | nco4 | 4th color for noise* | 6 (yellow) |
NoiseColor5 | nco5 | 5th color for noise* | 3 (aqua) |
NoiseScale | nscl | fBM noise scale* | 0.0004 |
NoiseOctaves | noct | fBM noise octaves* | 8 |
NoisePersistence | nper | fBM noise persistence* | 32.0 |
*) only relevant when WallColor (wco) is set to -1 (noise)
Color | Code |
---|---|
Noise | -1* |
Black | 0 |
Blue | 1 |
Green | 2 |
Aqua | 3 |
Red | 4 |
Purple | 5 |
Yellow | 6 |
White | 7 |
Gray | 8 |
LightBlue | 9 |
LightGreen | 10 |
LightAqua | 11 |
LightRed | 12 |
LightPurple | 13 |
LightYellow | 14 |
BrightLight | 15 |
*) -1 is only relevant for WallColor (wco) parameter
These are foreground color codes on default background, you can change background color too with numbers higher than 15. The formula is B * 16 + F
where B is color code for background color and F is for foreground color. A few examples:
Foreground/Background | Code |
---|---|
Black/Blue | 16 (1 * 16 + 0) |
Blue/Blue | 17 (1 * 16 + 1) |
Green/Blue | 18 (1 * 16 + 2) |
Black/Green | 32 (2 * 16 + 0) |
Black/Aqua | 48 (3 * 16 + 0) |
Black/Red | 64 (4 * 16 + 0) |
Blue/Red | 65 (4 * 16 + 1) |
Green/Red | 66 (4 * 16 + 2) |