World Type Configuration
Define gravity, day/night length, light levels, and fall damage for a world type.
A world type defines the physical rules a world plays by — gravity, how long day and night last, ambient light levels, and fall damage tuning. It’s paired with a World Builder Configuration preset (which defines terrain), but is a separate file so the same world type can be reused across different presets. Only one world type currently ships (Genesis, used by every base-game preset), but a mod can add its own for a custom dimension.
The type’s name is its filename (Genesis.yaml → Genesis) — there is no name: field inside the file. An unrecognized key (a typo, or a stray name:) fails the whole world type at load — see Unknown Fields. A recognized key whose value fails to parse is different: that one field is logged and falls back to its default, leaving the rest of the world type intact.
File Location
Unlike other catalog files, world types are not referenced from your mod’s manifest — they’re loaded by name directly from a fixed folder:
mods/<YourMod>/world-types/<TypeName>.yaml
The file is a single object at the document root (no wrapping list):
gravity: 50.0
Minimal Example
gravity: 50.0
Every field is optional — an empty file is valid and uses the engine’s own defaults throughout.
Fields
gravity: 50.0 # Optional. Default: 10.0
block-placement-range: 10 # Optional. Default: 10
day-length-seconds: 720 # Optional. Default: 60
night-length-seconds: 480 # Optional. Default: 60
max-block-light-level: 15 # Optional. Default: 15
surface-block-light-level: 15 # Optional. Default: 15
auto-save-interval-seconds: 30 # Optional. Default: 300
item-magnet-radius: 5.0 # Optional. Default: 5.0 (0 disables)
item-magnet-speed: 10.0 # Optional. Default: 10.0
void-floor-y: 0 # Optional. Default: none (no kill-plane)
sun-light-color: # Optional. Default: white (1, 1, 1)
r: 1.0
g: 1.0
b: 1.0
moon-light-color: # Optional. Default: dim cool blue (0.16, 0.19, 0.30)
r: 0.16
g: 0.19
b: 0.30
deep-descent-milestone: # Optional. Default: none
below-y: -900 # Grant when a player descends below this world-Y
milestone: reached_the_root # A `metric: event` milestone id (namespaced to your mod)
fall-damage: # Optional
multiplier: 0.03 # Optional. Default: 0.03
safe-threshold: 30.0 # Optional. Default: 30.0
exponent: 1.69 # Optional. Default: 1.69
Light levels (max-block-light-level, surface-block-light-level) are clamped to 0–255; the game’s lighting model treats 15 as full brightness, so values above 15 are rarely useful. Counts and durations (block-placement-range, auto-save-interval-seconds, day-length-seconds, night-length-seconds) can’t go negative — a negative value is floored to 0 with a warning. Setting both day and night length to 0 freezes the world at full daylight rather than erroring.
| Field | Default | Description |
|---|---|---|
gravity | 10.0 | Downward acceleration applied to entities. |
block-placement-range | 10 | Maximum distance (in blocks) a player can place/break blocks from. |
day-length-seconds / night-length-seconds | 60 each | Real-time duration of the day and the night, in seconds. The day span is split evenly into four phases (Dawn, Morning, Noon, Afternoon) and the night span into four (Dusk, Evening, Night, Midnight), so the ratio you set is the day:night ratio you get. Sunlight is up for exactly the day span and the sky is dark for exactly the night span. |
max-block-light-level | 15 | The maximum light level a placed light source can emit. Clamped to 0–255. |
surface-block-light-level | 15 | The light level treated as “full daylight” for above-surface air blocks. Clamped to 0–255. |
auto-save-interval-seconds | 300 | How often the server automatically saves worlds of this type. |
item-magnet-radius | 5.0 | Radius (in blocks) within which a dropped item is pulled toward a nearby player who has room for it, so scattered loot gathers to the player. Set to 0 to disable item magnetism entirely. |
item-magnet-speed | 10.0 | Speed (in blocks per second) at which a magnetized item drop travels toward the player. |
void-floor-y | (none) | World-Y below which any entity is killed instantly — a void death that ignores armor, the minimum-damage floor, and invulnerability frames. Meant for sky worlds, where falling off an island into the void beneath it is the ambient hazard. Omit it (the default) for a normal world, where nothing enforces a lower bound and an entity that falls past all terrain simply keeps falling. A noclipping player is exempt. |
sun-light-color | {r: 1, g: 1, b: 1} | Color of daylight for this world type, as r/g/b channels (each normally 0.0–1.0). Multiplies the sky-light tint on above-surface blocks and the sky during the day, so a dimension can have, e.g., a warm or sickly-green sun. Alpha is not authored (sky light is always opaque). A malformed value warns and falls back to the default. |
moon-light-color | {r: 0.16, g: 0.19, b: 0.30} | Color of night light, same r/g/b shape. This is what night looks like at full moon — the default is a dim cool blue so night reads as moonlit night rather than flat gray. Lower all three channels for a darker night, or shift them for a different night mood (e.g. a red-tinged nightmare dimension). |
deep-descent-milestone | (none) | Optional binding: the first time a player descends below deep-descent-milestone.below-y in a world of this type, they are granted the named one-shot Almanac milestone (a metric: event milestone — the down-axis “reached the bottom” beat). Omit it for a world type with no such milestone. |
deep-descent-milestone.below-y | (required if the block is present) | The world-Y a player must descend below (strict <) to earn the milestone. |
deep-descent-milestone.milestone | (required if the block is present) | The event milestone id to grant. A bare id is namespaced to your mod; write OtherMod:id to reference another mod’s milestone. An id that names no event milestone is a silent no-op. |
fall-damage | (none) | Fall damage tuning — see below. |
fall-damage.multiplier | 0.03 | Scales the damage curve. |
fall-damage.safe-threshold | 30.0 | Landing speed (vertical velocity, in units per second) below which no damage is taken. |
fall-damage.exponent | 1.69 | Exponent applied to the excess landing speed (beyond the safe threshold) before scaling by the multiplier — higher values punish faster landings more severely. |
Selecting a World Type
A world’s type is chosen when the world is created (alongside the world builder preset) and stored in that world’s save data — it isn’t something a mod “activates” directly, just something it makes available by shipping the file.
Complete Example
Based on the real shipped Genesis world type:
gravity: 50.0
block-placement-range: 10
day-length-seconds: 720
night-length-seconds: 480
max-block-light-level: 15
surface-block-light-level: 15
auto-save-interval-seconds: 30
item-magnet-radius: 5.0
item-magnet-speed: 10.0
fall-damage:
multiplier: 0.03
Last updated