{"id":19463685,"url":"https://github.com/4s4v1n/maze","last_synced_at":"2025-10-14T01:37:50.253Z","repository":{"id":143557741,"uuid":"530106367","full_name":"4s4v1n/Maze","owner":"4s4v1n","description":"Generation of labyrinths by the Eller method and their solution + cellular automaton for cave generation","archived":false,"fork":false,"pushed_at":"2022-09-07T15:04:59.000Z","size":591,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-25T12:53:18.757Z","etag":null,"topics":["algorithms","cpp","labyrinth"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/4s4v1n.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2022-08-29T07:11:31.000Z","updated_at":"2022-10-03T02:58:39.000Z","dependencies_parsed_at":"2023-10-21T16:21:34.476Z","dependency_job_id":null,"html_url":"https://github.com/4s4v1n/Maze","commit_stats":null,"previous_names":["4s4v1n/maze"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/4s4v1n/Maze","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4s4v1n%2FMaze","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4s4v1n%2FMaze/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4s4v1n%2FMaze/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4s4v1n%2FMaze/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/4s4v1n","download_url":"https://codeload.github.com/4s4v1n/Maze/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4s4v1n%2FMaze/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279017495,"owners_count":26086084,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithms","cpp","labyrinth"],"created_at":"2024-11-10T18:11:49.397Z","updated_at":"2025-10-14T01:37:50.218Z","avatar_url":"https://github.com/4s4v1n.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MAZE\n\n![logo](./images/icon.svg)\n\n## Content\n\nThis project implements the generation of a maze and the search for the shortest path between two given points on the constructed\nmaze. Additionally, there is a function of building caves.\n\n1) The generation of caves is carried out by the Eller method (http://www.neocomputer.org/projects/eller.html ).\n2) The generation of caves is carried out on the basis of a cellular automaton (https://en.wikipedia.org/wiki/Cellular_automaton ).\n\nTo build , you need:\n\n1) `CMAKE 3.5` or higher\n2) `QT 5.15.2` or higher\n\nTo build from the root of the project:\n\n```shell\ncmake -S ./src/ -B ./build/ \u0026\u0026 cmake --build ./build --target Maze\n```\n\nThe path to the archive with data from the project root:\n```shell\n./datasets/data.tar.gz\n```\n\n## Work example\n\n![maze](./images/maze.gif)\n![cave](./images/cave.gif)\n\n## Mazes\n\nAs already mentioned, the construction of mazes is carried out using the Eller algorithm, finding the path\nby searching in depth.\n\n1) Generation is carried out by pressing the `GENERATE` button with the specified parameters of the number of rows and columns\n   of the maze.\n2) The number of rows and columns of the maze are adjusted using the SpinBox (1-50).\n3) To find the path, you need to use the `LMB` to click on the first point and repeat the steps for the second point.\n   The shortest path from point 1 to point 2 will be constructed.\n4) To clear the built path - click `PCM` on the rendering scene.\n5) To load the maze from a txt file - the `LOAD` button.\n6) To save the maze to a txt file - the `SAVE` button.\n\n\n## Caves\n\nThe construction of caves takes place on the basis of a cellular automaton, but with a slight difference in that it is possible\nto adjust the parameters for birth and death. Automatic operation mode is also provided for convenient visualization.\nTo switch to cave mode - you need to press the `CAVE MODE` button\n\n1) Generation is carried out by pressing the `GENERATE` button with the specified parameters of the number of rows, columns, the limit of birth,\n   the limit of death and the chance of the initial appearance of the cell.\n2) In order to move to the next state of the caves - the `NEXT STEP' button.\n3) The number of rows and columns of the cave are adjusted using the SpinBox (1-50).\n4) The limits of birth and death of cells are adjusted using the SpinBox (0-7).\n5) The chance of the initial appearance of the cells are adjusted using the SpinBox (1-100).\n6) You can switch to automatic generation mode, there is an `AUTO` button for this.\n7) For automatic operation mode, you can set the step frequency in milliseconds (300-2000).\n8) To load a cave from a txt file, use the `LOAD` button.\n9) To save the cave to a txt file - the `SAVE` button.\n\nAuthors:\n1) A. Savin aka telvina \u003csav1nru@mail.ru\u003e\n2) A. Degtyarev aka sreanna\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F4s4v1n%2Fmaze","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F4s4v1n%2Fmaze","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F4s4v1n%2Fmaze/lists"}