This is an animated maze/dungeon carver in a vaporwave style. Made with vanilla JavaScript. Various query parameters are available to control its behavior. I use a technique explained by Bob Nystrom on his blog:
n
times.mazeWidth: Number, defaults to the result of an
estimate of the available width.mazeHeight: Number, default to the result of an
estimate of the available height.simulations: Number, default to 1, max of 500 (for
climate change), number of times to simulaterenderIntervalMs: Number, default to 50, the pace at
which to carve the maze and rooms in milleconds.renderEmptyGridPortions: Number, default to 0,
functions as boolean. If 1 will visually display a
background grid.roomCarvingAttempts: Number, default to 500maxRoomDimensionDivisor: Number, default to 5carveSecondEntryChance: Number, default to .65trimDeadEnds: Number, default to 1 (i.e., true)id: String, default to app; the id of the
element to append the table/grid.styleClass: String, default is this uuid:
56d9382b-f5d2-4921-9d90-00a28e429963; will be added to
classList of table.