The repository contains AWK scripts to generate a random maze and find a path in the maze.
To generate a maze, you can use one of two scripts: maze-gen-one.awk or maze-gen-two.awk. These two scripts work the same but use completely different algorithms to generate the maze. Both scripts have two mandatory parameters - the number of rows (Rows) and columns (Cols) in the maze. You can also specify an optional Seed parameter.
Every time you run the script, you will receive a random maze.
gawk -f maze-gen-two.awk -v Rows=8 -v Cols=36 However, if you specify optional Seed variables, you will get the same maze every time you run the script with a specific Seed value.
gawk -f maze-gen-two.awk -v Rows=8 -v Cols=36 -v Seed=42 You can set the execution flag for scripts.
chmod +x maze-gen-two.awkThis will allow you to run scripts directly without specifying an interpreter.
./maze-gen-two.awk -v Rows=8 -v Cols=36./maze-gen-two.awk -v Rows=8 -v Cols=36 Seed=42 > docs/sample.mazeYou can run the test script to check the correctness of the maze generator.
gawk -f maze-test.awk -v Rows=18 -v Cols=76 docs/sample.mazegawk -f maze-runner.awk sample.mazeIn case pseudographic characters are not supported on your computer, there is a version for generating a maze using only asc characters.
gawk -f maze-gen-asc.awk -v Rows=9 -v Cols=21➜ awk-maze-generator git:(release/5) ✗ gawk -f maze-gen-asc.awk -v Rows=9 -v Cols=21
######################################################################################
## ## ## ## ## ##
## ###### ## ########## ###### ## ## ############## ###### ## ## ###### ##
## ## ## ## ## ## ## ## ## ## ## ## ## ##
## ## ########## ## ###### ###### ###### ## ########## ###### ###### ## ##
## ## ## ## ## ## ## ## ## ## ## ## ##
## ###### ########## ## ###### ## ## ## ###### ## ############## ###### ##
## ## ## ## ## ## ## ## ## ## ## ## ## ##
## ## ## ## ## ###### ## ## ## ## ###### ## ############## ###### ## ##
## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
## ############## ## ## ## ## ## ########## ############## ## ## ###### ##
## ## ## ## ## ## ## ## ## ## ## ##
## ## ## ########## ################## ## ###### ## ###### ###### ## ## ##
## ## ## ## ## ## ## ## ## ## ## ##
## ## ###### ## ###### ################## ## ###### ###### ## ##############
## ## ## ## ## ## ## ## ## ## ##
## ###### ## ############## ## ## ############## ###### ## ## ## ###### ##
## ## ## ## ## ## ## ##
######################################################################################
➜ awk-maze-generator git:(release/5) ✗

