Skip to content
🌽 flexible perfect maze generator
JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
index.js
license
maze.png
package-lock.json
package.json
readme.md
test.js

readme.md

maze

Flexible perfect maze generator

This module generates "perfect mazes" (i.e. no loops) by connecting "nodes" from a given list.

Isometric maze

Note that a "node" does not necessarily have to be a regular grid cell - it can be of any shape or size!

install

npm install maze

usage

See test.js for an extensive example. You could also clone this repository and run the script locally if you'd like to run the maze generator on your machine.

maze = generate(nodes, adjacent, choose)

Maps each node in nodes to a list of connections and stores the resulting Map in maze.

  • nodes: A list of nodes to connect
  • adjacent: A function of the form adjacent(a, b) which determines if node a and node b can be connected
  • choose: A function of the form choose(array) which chooses a random item from array

license

MIT © Brandon Semilla

You can’t perform that action at this time.