0.1.6 • Published 5 years ago

@sbj42/maze-generator-backtrack v0.1.6

Weekly downloads
-
License
MIT
Repository
github
Last release
5 years ago

maze-generator-backtrack

A recursive-backtracking maze generator algorithm

This is a plugin for the sbj42/maze-generator package.

Recursive-backtracking is like a randomized depth-first search of the grid. A random passage is dug from a random starting location, making sure that the passage doesn't intersect itself. At some point it becomes impossible for this initial passage to make any more progress. Then we travel back along the passage until we find a cell where we can create a branch. That branch is then extended randomly until it can no longer proceed. This process repeats until all cells have been connected to the maze.

Recursive-backtracking tends to generate long, winding passages, with few dead-ends.

___________________________________________________
| | ___________ _____ | ___________ _ __|__ | _ _ |
| __|________ | | | __| | _______ | | | ____| | |_|
| |__ ___ | __| | | | | |_| ______| | | | __| |__ |
|_____| | | _ | |_____|____ | ___ | | | | ______| |
|____ | __| | | | _______ | | |_____|_| |_____| _ |
| ___ | |___| | | | ___ |___| | ________| ______| |
|__ |_| | _ | |___|__ | _ | __|______ | __| _ __| |
| _ | __| |______ | __| |_|__ _ | _ | |__ |_| | __|
| |_|__ |__ | __| |___|__ _ | |_| | |_____| __|__ |
| | ____| __| _ |______ | |_|_____| _____ | | _ | |
| | |__ _ | __|____ _ |__ | _____ |____ | __| |___|
| |__ | | |____ | __|_| __|____ | | ____| | __|__ |
| __| |_| | __| |____ | |____ | |___|_____|______ |
| | __| __| ____| ____|____ | |______ | _____ __| |
|_______|_______|___________________|_______|_____|