{"id":20041595,"url":"https://github.com/rozensoftware/rozdungen","last_synced_at":"2026-07-22T16:32:01.118Z","repository":{"id":65295132,"uuid":"583757332","full_name":"rozensoftware/rozdungen","owner":"rozensoftware","description":"A dungeon generator written in Rust","archived":false,"fork":false,"pushed_at":"2024-07-15T20:50:06.000Z","size":1148,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-13T16:26:27.867Z","etag":null,"topics":["dungeon-generator","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rozensoftware.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-12-30T20:20:37.000Z","updated_at":"2024-08-02T12:17:14.000Z","dependencies_parsed_at":"2024-11-13T10:47:24.758Z","dependency_job_id":"985a341e-ff49-4223-aa6f-c806997e582e","html_url":"https://github.com/rozensoftware/rozdungen","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rozensoftware/rozdungen","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozensoftware%2Frozdungen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozensoftware%2Frozdungen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozensoftware%2Frozdungen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozensoftware%2Frozdungen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rozensoftware","download_url":"https://codeload.github.com/rozensoftware/rozdungen/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozensoftware%2Frozdungen/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35769877,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-22T02:00:06.236Z","response_time":124,"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":["dungeon-generator","rust"],"created_at":"2024-11-13T10:47:12.917Z","updated_at":"2026-07-22T16:32:01.103Z","avatar_url":"https://github.com/rozensoftware.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rozdungen\n\n![dungeon pic 1](https://github.com/rozensoftware/rozdungen/blob/master/dungeon.png)\n\nSchema without decorations\n\n![dungeon pic 2](https://github.com/rozensoftware/rozdungen/blob/master/dungeon2.png)\n\nDungeon with keys, doors and chests\n\n![dungeon pic 3](https://github.com/rozensoftware/rozdungen/blob/master/dungeon3.png)\n\nDungeon type grid\n\n## Brief\n\nRozdungenlib is a library for generating simple dungeons. Chambers are filled with items, monsters and other data you can use for building your own dungeon. Below are generation type modes: \n\n```\nDungeonType::Basement, DungeonType::Grid and DungeonType::SeparateRooms.\n``` \n\nThey give slightly different dungeon schemas.\n\nIn the example a simple dungeon renderer is used. It doesn't mean the created maze looks exactly as it is presented. It might look differently according to your data visualization.\nThe dungeon interface provides you everything you need to create such labirynth and populate it with monsters, treasure, keys, doors and other stuff like that.\n\n## Purpose\n\nThis library can be used in games based on the dungeons generated content like rougelikes or in any other applications where such mazes are needed.\n\n## Use\n\nCode usage example:\n\n```rust\n    let mut d = Dungeon::new();\n    \n    let res = d.generate(\n        MAX_ROOMS, \n        DungeonType::Basement,  //or SeparateRooms\n        MAX_DUNGEON_WIDTH, \n        MAX_DUNGEON_HEIGHT, \n        MAX_ROOM_WIDTH, \n        MAX_ROOM_HEIGHT);\n\n    let dungeon  = match res\n    {\n        Ok(x) =\u003e\n        {\n            x\n        },\n        Err(y) =\u003e\n        {\n            panic!(\"{}\", y);\n        }\n    };\n\n    //Create random doors\n    dungeon.add_doors().unwrap();\n    \n    //Get number of generated rooms\n    let count = dungeon.get_rooms_number();\n\n    //Get room with index 2\n    let room = dungeon.rooms[2];\n\n    //Get corridors connected with room of index 2\n    let corrs = dungeon.get_room_corridors(\u0026room);\n```\n\n## Building\n\nThe library must be added to your project (currently there is no version that can be added as an external crate). The example dungeon renderer uses ggez (https://github.com/ggez/ggez).\n\n## Project future\n\nThe plan is to add some of the following features:\n\n- Interior decoration of chambers\n- Monsters\n- Entering and exiting the dungeon\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frozensoftware%2Frozdungen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frozensoftware%2Frozdungen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frozensoftware%2Frozdungen/lists"}