Generate a Map
Use Mimir’s mapgen tool to procedurally generate Dungeondraft-format maps from biome presets or custom YAML configurations.
What Mapgen Creates
Section titled “What Mapgen Creates”Mapgen generates .dungeondraft_map files containing:
- Noise-based terrain with blended textures
- Trees, grass, and other vegetation
- Roads and rivers that follow the terrain
- Rooms with walls, doors, and windows
- Water bodies, elevation contours, and lighting
- Polygon-based layouts for irregular room shapes
Output files open directly in Dungeondraft for further editing or UVTT export. Mimir cannot open .dungeondraft_map files directly — to use a generated map in Mimir, open it in Dungeondraft (a paid tool) and export it as Universal VTT.
Quick Start: Using a Preset
Section titled “Quick Start: Using a Preset”Prerequisite: the mimir-mapgen binary is not bundled with the Mimir app. Either download a pre-built binary from GitHub Releases (attached to each release for every platform) or build it from source with cargo build -p mimir-mapgen --release. See Install and Use Mapgen as a Standalone Tool for details.
Generate a map from one of 12 built-in biome presets:
mimir-mapgen generate --preset forest --output my-forest.dungeondraft_mapUse a specific seed for reproducible results:
mimir-mapgen generate --preset forest --seed 42 --output my-forest.dungeondraft_mapList Available Presets
Section titled “List Available Presets”mimir-mapgen list-presetsExample presets:
| Preset | Size | Description |
|---|---|---|
forest |
32x32 | Dense temperate forest with dirt paths, scattered rocks, and natural clearings |
cave |
24x24 | Underground cavern with rocky terrain and dark ambient lighting |
forest_river |
32x32 | Dense forest bisected by a meandering river with rocky banks |
See the Mapgen Reference for the full table of all 12 presets and their aliases.
Custom YAML Configs
Section titled “Custom YAML Configs”For full control, write a YAML configuration file:
name: "Forest Clearing"width: 32height: 32seed: 42
terrain: slots: - texture: "res://textures/terrain/terrain_grass.png" lower: 0.0 upper: 0.5 - texture: "res://textures/terrain/terrain_dirt.png" lower: 0.4 upper: 0.7 - texture: "res://textures/terrain/terrain_stone.png" lower: 0.6 upper: 0.9 - texture: "res://textures/terrain/terrain_gravel.png" lower: 0.8 upper: 1.0 blend_width: 0.05 smooth_blending: true
trees: - tree: textures: - "res://textures/objects/more_trees/oak_01.png" - "res://textures/objects/more_trees/oak_02.png" min_distance: 500.0 noise_lower: 0.4 noise_upper: 0.75 probability: 0.5 scale_min: 0.8 scale_max: 1.2 layer: 300 random_rotation: true random_mirror: true
roads: - {}Generate from the config:
mimir-mapgen generate config.yaml --output clearing.dungeondraft_mapValidate a Config
Section titled “Validate a Config”Check a config for errors without generating:
mimir-mapgen validate config.yamlIterating on Maps
Section titled “Iterating on Maps”Maps are deterministic — the same seed and config produce the same map. To iterate:
- Generate with a specific seed
- Open in Dungeondraft and review
- Adjust config parameters
- Regenerate with the same seed to compare changes
- Try different seeds for different terrain layouts
Using via AI Assistant
Section titled “Using via AI Assistant”Mapgen is also available as an MCP tool (generate_map) through Mimir’s AI assistant integration. Describe the scene you want — “a misty forest clearing with a road” — and the assistant will build the YAML config and generate the map for you.
See Also
Section titled “See Also”- Install and Use Mapgen as a Standalone Tool — Installation and a full worked example
- Upload a Map — Import maps into Mimir modules (UVTT or image files)
- Mapgen Reference — Full YAML schema and configuration details