3.4 KiB
title, type, weight
| title | type | weight |
|---|---|---|
| World Generation | docs | 10 |
The World Generation system creates procedural terrain, caves, biomes, and structures for Hytale worlds.
Packages:
com.hypixel.hytale.server.worldgencom.hypixel.hytale.builtin.hytalegenerator
{{< cards >}} {{< card link="world-loader" title="World Loader" subtitle="Chunk loading and generation pipeline" >}} {{< card link="chunk-generation" title="Chunk Generation" subtitle="Block placement and terrain" >}} {{< card link="cave-generation" title="Cave Generation" subtitle="Underground cave systems" >}} {{< card link="climate-biomes" title="Climate & Biomes" subtitle="Biome distribution and climate" >}} {{< card link="prefabs" title="Prefabs" subtitle="Structure and building placement" >}} {{< card link="zones" title="Zones" subtitle="Zone definitions and regions" >}} {{< card link="hytale-generator" title="Hytale Generator" subtitle="Default procedural generator" >}} {{< card link="density-functions" title="Density Functions" subtitle="Terrain shape definition" >}} {{< card link="material-providers" title="Material Providers" subtitle="Block selection logic" >}} {{< card link="prop-placement" title="Prop Placement" subtitle="Vegetation and object placement" >}} {{< card link="generation-patterns" title="Generation Patterns" subtitle="Patterns and fields" >}} {{< /cards >}}
Architecture Overview
The world generation system operates in several phases:
World Generation Pipeline
├── Climate Generation
│ └── Biome Assignment
├── Terrain Generation
│ ├── Density Functions (shape)
│ ├── Material Providers (blocks)
│ └── Surface Decoration
├── Cave Generation
│ ├── Cave Carving
│ └── Cave Features
├── Structure Placement
│ ├── Prefab Selection
│ └── Prefab Positioning
└── Prop Placement
├── Vegetation
└── Objects
Packages Overview
| Package | Files | Description |
|---|---|---|
loader/ |
75 | World loading system |
util/ |
35 | Generation utilities |
cave/ |
32 | Cave generation |
climate/ |
12 | Climate and biomes |
chunk/ |
12 | Chunk generation |
prefab/ |
8 | Structure placement |
zone/ |
7 | Zone definitions |
cache/ |
7 | Generation caching |
Hytale Generator
The built-in Hytale generator provides the default world generation:
| Package | Files | Description |
|---|---|---|
assets/ |
232 | Generator asset definitions |
density/ |
76 | Density functions |
materialproviders/ |
29 | Block selection |
props/ |
24 | Prop placement |
patterns/ |
13 | Generation patterns |
fields/ |
8 | Field generation |
Quick Example
// Get world generator
WorldGenerator generator = world.getGenerator();
// Generate chunk
generator.generateChunk(chunkX, chunkZ);
// Get biome at position
Biome biome = generator.getBiome(position);
// Check if structure can generate
boolean canPlace = generator.canPlacePrefab(prefab, position);
Configuration
World generation is configured through YAML assets:
# worldgen/my_generator.yaml
Type: WorldGenerator
Id: my_generator
Seed: 12345
Climate:
Type: StandardClimate
Biomes:
- forest
- plains
- mountains
Density:
Type: MultipleDensity
Functions:
- terrain_base
- terrain_hills
Prefabs:
- Type: Village
Frequency: 0.01