Skip to content

Subcurve struct

skzk edited this page Apr 15, 2026 · 4 revisions

Structure

Field(s) Description
token model Unit name of the curve model, as defined in /def/world/curve_model.sii.

Here's the official documentation for curve units.

u32 flags Bit 0: Invert geometry
Bit 1: Stepped geometry
Bit 2: Perlin noise
Bit 3: Ignore drop-to-ground height offsets
Bit 31: No path interpolation
u32 random_seed The seed for the RNG which determines the positions and models of randomizable elements, particularly vegetation.
float stretch_coef Coefficient for stretching the scheme along the path. For some curves, this stretches the model; for others, it places its elements further apart.
float scale A scale factor which is applied to models equally on all three axes.
float fixed_step If not 0, forces the model to repeat every n meters, overriding the default.
token terrain_material Unit name of the terrain material for models like terrain_decal_*m.
u32 terrain_color Color tint of the terrain as RGBA. The default value is #FFFFFFFF (white).
float terrain_rot UV rotation of the terrain texture.
token first_part
token last_part
token center_part_variation
Names of the first part, last part and center part.
token model_look Look of the curve model, if applicable.
u32 height_offset_count
array_float height_offsets
Defines offsets for individual elements of the curve.

Offsets are applied to elements in order. For instance, if you want the third element to have an offset of 5, the content of the array should be [0, 0, 5].

The editor uses this for the "Snap to ground" tool.

float initial_height_offset
float offset_from_base_curve_start_x
float offset_from_base_curve_start_y
float offset_from_base_curve_end_x
float offset_from_base_curve_end_y

Clone this wiki locally