Skip to content
/ a-maze Public

A-maze-ing maze generating algorithms in Processing

License

Notifications You must be signed in to change notification settings

ly0va/a-maze

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A-maze

Playing with various maze-generating algorithms in Processing.py.

Implemented algorithms

  1. Randomized depth-first search
  2. Randomized Kruskal's algorithm
  3. Randomized Prim's algorithm
  4. Wilson's algorithm
  5. Recursive division

Installation

Dependencies: java >= 1.8, older versions may also work.

Linux and Mac:

git clone https://github.com/ly0va/a-maze.git
cd a-maze
./install.sh              # downloads processing-py.jar

For Windows, you should run it using Processing IDE.

Usage

Run with

java -jar processing-py.jar src/main.pyde

Each player's goal is to get to the opposite corner of the maze. The game is completely keyboard-driven. After launch, press one of the digits keys (1-5) to select the algorithm.

Player 1 controls: W/A/S/D

Player 2 controls: Arrows

Other:

  • Shift+R - restart
  • C - toggle the correct path
  • P - toggle players' paths
  • F - toggle floodfill

Screenshot

A-maze