Zana

Generate entire fantasy worlds from a single integer seed. Terrain, biomes, rivers, civilizations, settlements, dungeons, and more. Drop it into Godot or Unity and start building.

Coming soon
Launching soon — one-time purchase, 3 device activations, lifetime updates.

Built for Your Engine

Godot 4 (C#)
Unity 2021.3+

What You Get

Terrain Synthesis

Fractal noise elevation, moisture, and temperature fields with hydraulic erosion. 14+ terrain types from ocean to volcanic peaks.

Rivers & Hydrology

Two-pass simulation: erosion carves valleys, then water placement scales from creeks to huge rivers based on watershed area.

Civilizations

Factions with tech levels, governments, religions, economies, military profiles, and unique linguistic styles for naming.

Settlements & Landmarks

Villages, towns, cities, ports, and strongholds placed by habitability. Shrines, caverns, ruins, and titan bones dot the landscape.

Local Zones

68x42 detail maps generated on-demand from any world cell. 16 local terrain types, rivers, roads, buildings, and functional spots.

Dungeon Generation

Multi-floor BSP/cave hybrid dungeons with 35 room templates. 7 cavern biomes from crystal to magma to corrupted.

Geology & Materials

Geological strata, ore deposits, gem deposits per region. 44 material definitions across stone, metal, gem, wood, bone, hide, fabric, exotic.

Custom Naming

Phoneme-based language generation. Ship your own .phonemes file so your game's names sound nothing like anyone else's.

Deterministic

Same seed, same world. Every time. Share seeds with players, reproduce bugs, build around specific world features.

How It Works

1
Download the plugin for your engine
2
Drop it in your project and activate with your license key
3
Call Generate() with a seed and get a complete world back
4
Access regions, factions, settlements, zones, dungeons via simple API

Simple API

var generator = new WorldGenerator();
var world = generator.Generate(new WorldGenerationSettings(12345)
{
    RegionCount = 32,
    MapWidth = 512,
    MapHeight = 512,
});

// Regions with biomes, factions, settlements, landmarks
foreach (var region in world.Regions)
    Debug.Log($"{region.Name}: {region.Biome}, pop {region.Settlements.Sum(s => s.Population)}");

// On-demand local zone from any world cell
var cell = world.Surface.GetCell(100, 50);
var (zone, dungeon) = LocalZoneGenerator.Generate(cell, world.Regions[cell.RegionId], 42);