HytaleDocs
WorldGen

Zones

Asset path: Server/WorldGen/Zones/*.json

Parent

When set this asset will inherit properties from the named asset.

When inheriting from another ZoneAsset most properties will simply be copied from the parent asset to this asset. In the case where both child and parent provide a field the child field will simply replace the value provided by the parent, in the case of nested structures this will apply to the fields within the structure. In some cases the field may decide to act differently, for example: by merging the parent and child fields together.

Type information: String

Tags

Tags are a general way to describe an asset that can be interpreted by other systems in a way they see fit.

For example you could tag something with a Material tag with the values Solid and Stone, And another single tag Ore.

Tags will be expanded into a single list of tags automatically. Using the above example with Material and Ore the end result would be the following list of tags: Ore, Material, Solid, Stone, Material=Solid and Material=Stone.

Type information:

(Nullable) Map of the following:

KeyType
any StringArray of String

SeedName

The generation seed label. Preserve converted values. Omitted values inherit only for same-key overlays. Different-key assets retain their own seed identity.

Type information: (Nullable) String defaults to: ``

CaveConfig

The case-sensitive cave configuration name used by this zone. Configurations are created automatically. If absent, the zone generates no caves.

Type information: (Nullable) String that matches the pattern: [^\s] and is at least 1 characters long

Worlds

The inherited world memberships for this zone. A membership with no color claims or unique rules is a valid dormant candidate.

Type information:

(Nullable) Array of the type: Declares one world membership for this zone.

WorldMembershipValue with the following properties:

KeyTypeDescription
World(Nullable) String is at least 1 characters long

Reference to a WorldGenWorldAsset asset

The required nonempty exact WorldGenWorldAsset key for this membership.

OrderInteger

The nonnegative converter position for candidate and zone build order. ConvertedPin must be true. Unmarked values log a WARNING, are ignored, and use native order.

ConvertedPinBoolean defaults to: false

Whether the adjacent Order enters the converted partition. The converter writes this marker. The default is false.

Colors(Nullable) Array of the type:
ColorClaimValue

ColorClaimValue with the following properties:

KeyTypeDescription
Color(Nullable) String that matches the pattern: ^#[0-9A-Fa-f]{6}$

The required mask color in #[0-9A-Fa-f]{6} form. Equality uses the parsed 24-bit RGB value. The converter emits lowercase.

RankInteger

The nonnegative converter position in one legacy color row. ConvertedPin must be true. Unmarked values log a WARNING, are ignored, and use native order.

ConvertedPinBoolean defaults to: false

Whether the adjacent Rank enters the converted partition. The converter writes this marker. The default is false.

The ordinary mask color claims owned by this zone in this world. An empty array is valid.

UniqueZones(Nullable) Array of the type:
UniqueZoneValue

UniqueZoneValue with the following properties:

KeyTypeDescription
Color(Nullable) String that matches the pattern: ^#[0-9A-Fa-f]{6}$

The required emitted color in #[0-9A-Fa-f]{6} form. Equality uses the parsed 24-bit RGB value. The converter emits lowercase.

ParentColors(Nullable) Array of String that matches the pattern: ^#[0-9A-Fa-f]{6}$

The raw RGB mask colors use #[0-9A-Fa-f]{6} form. An empty array is valid. They are never zone or world asset keys. The converter emits lowercase.

RadiusInteger defaults to: 1

The unique placement radius in horizontal blocks. The default is 1.

PaddingInteger defaults to: 0

The extra placement spacing in horizontal blocks. The default is zero.

RankInteger

The nonnegative converter position in the world's unique rule sequence. ConvertedPin must be true. Unmarked values log a WARNING, are ignored, and use native order.

ConvertedPinBoolean defaults to: false

Whether the adjacent Rank enters the converted partition. The converter writes this marker. The default is false.

The non-climate unique placement rules owned by this zone in this world. An empty array is valid.

BiomeGenerator

The point generator used to select tile biomes.

Type information:

(Nullable)

BiomeGeneratorValue with the following properties:

KeyTypeDescription
GridGenerator(Nullable) PointGeneratorValue

The point generator that selects tile-biome cells.

Discovery

The optional player-facing discovery notification for this zone.

Type information:

(Nullable)

DiscoveryValue with the following properties:

KeyTypeDescription
DisplayBoolean

Whether entering the zone displays a discovery notification. The default is false.

ZoneName(Nullable) String

The localized zone name shown by discovery. The default is Void.

SoundEventId(Nullable) String

The optional sound event played by zone discovery.

Icon(Nullable) String

The optional icon shown by zone discovery.

MajorBoolean

Whether discovery uses the major presentation. The default is true.

Duration(Nullable) Either Number or String that matches the pattern: ^(-?Infinity|NaN)$

The discovery display duration in seconds. The default is 4.

FadeInDuration(Nullable) Either Number or String that matches the pattern: ^(-?Infinity|NaN)$

The discovery fade-in duration in seconds. The default is 1.5.

FadeOutDuration(Nullable) Either Number or String that matches the pattern: ^(-?Infinity|NaN)$

The discovery fade-out duration in seconds. The default is 1.5.

On this page