@sbj42/maze-generator-backtrack

0.1.6 • Public • Published

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.

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

Package Sidebar

Install

npm i @sbj42/maze-generator-backtrack

Weekly Downloads

4

Version

0.1.6

License

MIT

Unpacked Size

8.64 kB

Total Files

6

Last publish

Collaborators

  • sbj42