Map generation for games
demo | ||
src | ||
.gitignore | ||
.travis.yml | ||
Cargo.toml | ||
LICENSE-APACHE | ||
LICENSE-MIT | ||
README.md |
Game Map Generator
Generate procedural maps for games.
This library is based on the code from the Roguelike tutorial. I highly recommend it for learning how to write Roguelike in Rust.
Demo app
If you want to check how the maps look like, then:
- Clone this rep
- Go to the demo folder
- Run demo app (
cargo run
)
Features
Dungeons
- Map generators
- BSP Interior
- BSP Room
- Cellular automata
- Diffusion-Limited Aggregation (DLA)
- Drunkard's walk
- Maze
- Prefabs
- Voronoi hive
- Wave Function Collapse
- Map modifiers (filters)
- Area exit point
- Area starting point
- Cellular automata
- Cull unreachable areas
- Voronoi spawning
Usage
Add dependency to your project
mapgen = "0.1"
Using single map generator:
use rand::prelude::*;
use mapgen::dungeon::{
MapGenerator,
cellular_automata::CellularAutomataGen
};
let mut rng = StdRng::seed_from_u64(100);
let gen = CellularAutomataGen::new(80, 50);
let map = gen.generate_map(&mut rng)
For more information check the doc
License
Licensed under either of
at your option.
Contributions
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.