Quick Start

1. Download

Download the latest release from the website. Unzip anywhere. No installer needed.

2. Create a Project

Launch WorldSlate.exe. The welcome screen offers three options:

3. Generate a World

Pick a generator from the Pipeline tab. Tweak the sliders. Click Generate (or press Ctrl+G). The biome map appears instantly.

4. Paint Obstacles

Select obstacle types from the palette. Use the paint tool (P key) to brush them onto the map. Switch layers with 1-N keys.

5. Build Cell Catalog

Press C to build a cell catalog from your algo layer. Press V to re-scatter with a new random seed. Same density, different positions.

6. Export

File → Export (Ctrl+E). Pick a format. Or click "Open in Godot" (Ctrl+G) to generate a complete runnable project.

Project File (.worldslate)

Every game has one project file. It defines biomes, obstacles, zones, layers, generator config, asset paths, and keybindings. All JSON.

Key Fields

FieldPurpose
biomesBiome definitions: display name, ground color, ground texture.
obstaclesObstacle catalog: sprite path, variant count, group, default scale/rotation.
zone_typesZone definitions: display name, color, default radius, behavior (exclusion/specific).
layersDynamic layer list. Each has a key, display name, and behavior (algo or manual).
generatorGenerator type + params. Determines what the Pipeline tab shows.
asset_rootPath to your sprite folder. Palette thumbnails and export sprites come from here.
keybindingsCustom keyboard shortcuts. Missing keys use defaults.

Generators

Noise Generator

FBM noise assigns biomes by threshold. Good for natural-looking terrain. Params: width, height, cell size, noise frequency, octaves, biome thresholds.

Voronoi Generator

Random seed points create organic regions. Each gets a biome. Params: region count, relaxation passes.

Radial Generator

Rivers radiate from center, creating sectors. Each sector gets a biome gradient (base → intensified → extreme). Params: world radius, river count, meander, boundary noise, moat, island.

Blank Generator

Empty grid filled with one biome. Start from scratch.

Custom Generator

Load a GDScript file that implements generate(seed: int, params: Dictionary) -> Dictionary. Must return {grid, zones, paths, boundary, params}.

Learn and Regenerate

This is WorldSlate's signature feature. Here's the workflow:

  1. Paint obstacles on an algo layer—arrange trees, rocks, and details the way you want them to look.
  2. Press C. WorldSlate analyzes your layout and learns how you arranged things.
  3. Press V. The world regenerates with a new seed—different positions, same look and feel.
  4. Adjust the randomness slider to control how closely the output follows your original layout.
  5. Obstacles automatically respect biome boundaries, rivers, and exclusion zones—no manual cleanup needed.

The result is faithful to your original placement style. Dense areas stay dense, sparse areas stay sparse, and the mix of types and variants stays consistent.

Export Formats

FormatOutputUse Case
Native JSON.worldslate.json + biome PNG + legendLossless full data
Tiled .tmjTile layer (biomes) + object layers (obstacles, zones, POIs)Tiled editor interop
Biome PNGIndexed color image + placements JSONVisual reference or custom pipeline
CSV5 flat tables: placements, biomes, zones, POIs, pathsSpreadsheet or custom tooling
RecipeWorld recipe + fill recipe as separate filesSharing generation rules
Open in EngineComplete Godot or Unity projectOne-click playable world

Keyboard Shortcuts

KeyAction
PPaint tool
SSelect tool
FFill tool
BToggle biome paint color (white/black)
CBuild cell catalog + scatter
VRe-scatter from cached catalog
1-9Switch active layer
Ctrl+ZUndo
Ctrl+Shift+ZRedo
Ctrl+SSave profile
Ctrl+GGenerate world
Ctrl+EExport dialog
Ctrl+ASelect all (in select tool)
Ctrl+DDuplicate selection
DeleteDelete selection
MMB dragPan
ScrollZoom (cursor-centered)

All shortcuts are rebindable via the project file's keybindings field or a .keybindings.json file.