Go to file
2024-07-14 22:32:23 +02:00
.gitignore Import Godot project into Git. 2024-07-14 09:29:13 +02:00
2D.profile Import Godot project into Git. 2024-07-14 09:29:13 +02:00
demo.png Update README.md for first release. 2024-07-14 22:32:23 +02:00
export_presets.cfg Import Godot project into Git. 2024-07-14 09:29:13 +02:00
icon.svg Import Godot project into Git. 2024-07-14 09:29:13 +02:00
icon.svg.import Import Godot project into Git. 2024-07-14 09:29:13 +02:00
languages.csv Import Godot project into Git. 2024-07-14 09:29:13 +02:00
languages.csv.import Import Godot project into Git. 2024-07-14 09:29:13 +02:00
languages.de.translation Import Godot project into Git. 2024-07-14 09:29:13 +02:00
languages.en.translation Import Godot project into Git. 2024-07-14 09:29:13 +02:00
languages.es.translation Import Godot project into Git. 2024-07-14 09:29:13 +02:00
languages.fr.translation Import Godot project into Git. 2024-07-14 09:29:13 +02:00
languages.pl.translation Import Godot project into Git. 2024-07-14 09:29:13 +02:00
LICENSE.txt Import Godot project into Git. 2024-07-14 09:29:13 +02:00
maze_languages.ods Import Godot project into Git. 2024-07-14 09:29:13 +02:00
maze.gd Import Godot project into Git. 2024-07-14 09:29:13 +02:00
maze.tscn Import Godot project into Git. 2024-07-14 09:29:13 +02:00
project.godot Import Godot project into Git. 2024-07-14 09:29:13 +02:00
README.md Update README.md for first release. 2024-07-14 22:32:23 +02:00

Maze generator

A dependency of a video game (Furries in the Backrooms) made by Foxarc.

Screenshot of a maze being generated for a surface size of 57x27 with a case size of 1.

The maze generator is based on Randomized depth-first search with an Iterative implementation (with stack) approach for optimization. Furthermore, the maze generator is optimized to only use a single layer of the maze to open the walls: this make uses of the 8 allocated cases surrounding a free case to be walls (purple cases) avoiding the need for another layer to open the walls. Herefrom, the algorithm is modified to jump every 2 cases as if there was nothing in-between except for when a wall needs to be opened.

Features

  • When recording is enabled:
    • Export the maze animation to a JS file that can be replayed in a web browser.
    • Locate each case where there is a 3-way intersection.
  • Generate a maze for any X and Y.
  • Export the maze into a CSV file.
  • Real-time update by hovering over a case (tooltip) while the maze is being generated.
  • Progress bar for how many cases to visit before the end of the generation.
  • Upscaling (before running the animation).
  • Localization in English, French, Spanish, German and Polish.

License

GNU AGPLv3

Maze generator, version 1
Copyright (C) 2024 Foxarc

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program. If not, see https://www.gnu.org/licenses/.