Skip to main content

landscape kit

149 tools. Generated from the plugin source; do not edit by hand.

Guide​

The landscape kit creates and edits ALandscape actors of the editor world without opening Landscape Mode: heights, paint layers and weights, holes, edit layers, splines and grass types. Everything goes through public engine APIs (ALandscapeProxy::Import, FLandscapeEditDataInterface, ULandscapeInfo, ALandscape edit-layer calls, ULandscapeSplinesComponent). Water bodies are in the separate water kit (Water plugin).

Conventions:

  • landscape is the actor label, object name or path; read-only calls may omit it when the level has exactly one landscape. Start with landscape.list / landscape.get.
  • Region and brush coordinates are landscape vertex coordinates (0..N, inclusive regions), not world centimetres. landscape.get returns the vertex bounds; regions outside them are rejected.
  • Heights are landscape uint16 values (32768 = zero); weights are 0..255.
  • On a landscape with edit layers, height and weight tools write the active edit layer (landscape.set_active_edit_layer), or the first edit layer when none is active — never the merged result, so edits survive the next layer merge.

1. Create, inspect and sculpt​

Coordinates: sculpt tools use landscape vertex coordinates and uint16 heights (32768 = actor Z; one unit = scale.Z/128 cm). Convert with landscape.world_to_vertex / vertex_to_world, or query in world units with landscape.sample_world (up to 1024 XY points → surface Z, normal, slope) and landscape.line_trace (this landscape's collision only; call update_collision after edits).

Building terrain from data: landscape.create_from_height_array takes a row-major height array of exactly (componentsX·sectionsPerComponent·sectionSizeQuads+1)² values; pass replace to rebuild an existing landscape in place, keeping its label, transform, material and settings. landscape.resample changes resolution but keeps the footprint (heights and paint weights resampled, X/Y scale adjusted). landscape.resize changes the component count (anchor corner|center, fillHeight or edge extension). landscape.duplicate copies heights, weights, material and settings to a new actor at offset. All four refuse world-partition landscapes (see list_proxies) and read only the first edit layer.

Shaping: stamp_shape (hill/cone/plateau/crater), flatten_path (road bed along a polyline; point z = target height or -1 to follow the terrain), stamp_height_region (set/add/max/min a block), noise_region (Perlin noise with seed/octaves/frequency), erode_region (thermal), scale_region, clamp_region, copy_region (also between landscapes), mirror_region (symmetric maps). Finish with recalc_normals, update_collision, rebuild_bounds.

Analysis: slope_map (degrees grid plus steep fraction), height_histogram, find_flat_spots (flattest vertices within slope/height limits, with world positions), get_bounds.

Settings: typed setters for LOD, lighting, collision (profile/overlap), navigation, rendering, virtual textures, bounds extension, physical material and hole material. Negative numbers and empty strings leave a value unchanged. Per-component: get_component_settings and set_component_{lod,lighting,collision_mip,bounds_extension,material_override} with sectionBaseX/Y or allComponents.

2. Paint layers and layer infos​

A paint layer is a name backed by a ULandscapeLayerInfoObject asset. The landscape material decides which layer names it blends (Landscape Layer Blend nodes); the layer infos store the weights.

  • landscape.create_layer_info {folder, name, weightBlended} creates the asset; its paint-layer name is the asset name. landscape.add_paint_layer {landscape, layerInfo} assigns it (target layer on 5.5+, editor layer settings before).
  • landscape.auto_create_layer_infos {landscape, folder, names} creates <Layer>_LayerInfo assets and assigns them — for the given names, or for every layer of the landscape material when names is empty. Layers that already have an info are listed in skipped.
  • landscape.list_layers lists names, assets and blend mode; landscape.validate_layers warns about layers without an info and material layers that are not assigned.
  • landscape.replace_layer_info {landscape, layer, layerInfo} swaps the asset behind a layer; the painted weights move to the new info (it must not already be assigned).
  • landscape.remove_layer_info {landscape, layer} deletes the layer's weights and unassigns it (the asset stays).

3. Weights and holes​

  • Read: landscape.get_weight (min/max/average over a region), landscape.get_weight_grid (row-major 0..255 values, at most 65536 vertices per call).
  • Write: paint_layer_region (constant box), paint_layer_circle (disc with falloff 0..1 of the radius; vertices outside the disc keep their weight), paint_layer_gradient (axis x or y), set_weight_grid (row-major values, the inverse of get_weight_grid), fill_layer (whole landscape), clear_layer (deletes the layer's weights, keeps the layer).
  • Weight-blended layers renormalise the other weight-blended layers of the same vertices, exactly as in Landscape Mode.
  • Holes: landscape.set_visibility_layer {landscape, minX..maxY, hidden} writes the engine visibility layer (hidden:true cuts, false restores). Holes render only with a material that has a Landscape Visibility Mask.
  • Files: landscape.export_weightmap {landscape, layer, file} writes .png or .raw through the engine exporter; landscape.import_weightmap {landscape, layer, file, minX, minY, width} reads an 8-bit .raw (row-major; width defaults to the landscape width, height = size / width). PNG import is not offered (no public decoder in the kit's dependencies).

4. Edit layers​

UE 5.7+ landscapes always have edit layers. On older engines a landscape created without them needs landscape.enable_edit_layers (UE 4.27–5.6; converts the existing data into a default layer).

  • landscape.list_edit_layers — bottom-to-top stack with visible, locked, heightmapAlpha, weightmapAlpha, active, type and blueprint brushes.
  • add_edit_layer {name} (the engine makes names unique; read editLayer.name), remove_edit_layer (not the last one; clears the active selection if it pointed there), rename_edit_layer, reorder_edit_layer {layer, newIndex}, set_active_edit_layer {layer} (empty clears), set_edit_layer_alpha {layer, alpha, target:'heightmap'|'weightmap'} (heightmap -1..1, weightmap 0..1), set_edit_layer_locked, set_edit_layer_visible (enabled), clear_edit_layer {heightmap, weightmap} (refused on a locked layer).
  • landscape.list_blueprint_brushes lists the ALandscapeBlueprintBrushBase actors per layer (Water bodies appear here when they carve the landscape).

5. Splines​

Control points and segments live in the landscape's ULandscapeSplinesComponent (created on the first point). Locations are landscape-local centimetres; indices come from spline_list and spline_list_segments and shift down after removals.

  • Points: spline_add_point, spline_set_point_transform (move/rotate), spline_set_width, spline_set_side_falloff, spline_set_point_settings (paint layer, raise/lower terrain, end falloff, mesh offset, point mesh — all fields written), spline_get_point, spline_list, spline_remove_point (also removes its segments).
  • Segments: spline_connect {startIndex, endIndex, startTangent, endTangent, layerName} (0 tangents = half the point distance with automatic flipping), spline_list_segments, spline_get_segment, spline_set_segment_tangents, spline_set_segment (paint layer, raise/lower), spline_set_mesh_entries (complete list of {mesh, scale, scaleToWidth, centerH, forwardAxis, upAxis}; empty clears), spline_remove_segment.
  • Whole network: spline_import_points {points, connect, closedLoop, layerName} appends a chain, spline_export_points returns points + segments (feed points back to import), spline_rebuild (meshes and collision), spline_apply (rasterises raise/lower and layer painting into the landscape — the splines edit layer when present; applied:false means nothing changed), spline_clear.

6. Grass​

  • Types: grass_create_type {folder, name}, grass_list_types {folder}, grass_get_type (every variety, typed), grass_audit_type, grass_set_density_scaling.
  • Varieties (by index): grass_add_variety {mesh, density}, grass_remove_variety, grass_get_variety (every reflected property as text), grass_set_variety {settings:[{key,value}]} (FGrassVariety names, dotted paths such as GrassDensity.Default, ScaleX.Min; all keys are validated first and a parse error restores the variety), grass_set_scale (Uniform/Free/LockXY + ranges), and typed setters grass_set_density, set_start_cull, set_end_cull, set_min_lod, set_jitter, set_random_rotation, set_align_to_surface, set_grid, set_receive_decals, set_dynamic_shadow, set_contact_shadow (5.0+), set_landscape_lightmap, set_cpu_copy.
  • Materials: grass is spawned from a Landscape Grass Output node in the landscape material. landscape.list_grass_outputs {material | landscape} lists its pins and assigned grass types (edit the node with the material kit). landscape.grass_flush drops cached grass so it regenerates.

Recipes​

Layered terrain in eight calls.

  1. landscape.create {name:'Terrain', componentsX:4, componentsY:4, sectionSizeQuads:63}.
  2. Sculpt with the region tools of section 1 (noise, terrace, smooth).
  3. landscape.set_material {landscape:'Terrain', material:'/Game/M_Landscape'} (a layered material).
  4. landscape.auto_create_layer_infos {landscape:'Terrain', folder:'/Game/Landscape/Layers'}.
  5. landscape.fill_layer {landscape:'Terrain', layer:'Grass'}.
  6. landscape.paint_layer_circle {landscape:'Terrain', layer:'Rock', centerX:100, centerY:100, radius:30, weight:255, falloff:0.5}.
  7. landscape.spline_import_points {landscape:'Terrain', points:[...], connect:true, layerName:'Dirt'}.
  8. landscape.spline_apply {landscape:'Terrain'}, then landscape.validate_layers.

Weight round trip. get_weight_grid a tile, change values, set_weight_grid with the same origin and width. For whole-landscape transfers use export_weightmap (.raw) and import_weightmap.

Non-destructive edits. add_edit_layer {name:'Roads'} → set_active_edit_layer {layer:'Roads'} → sculpt/paint → set_edit_layer_alpha to blend it, set_edit_layer_visible {enabled:false} to compare, clear_edit_layer to start over.

Gotchas​

  • Layer names are case-sensitive FNames taken from the layer-info asset; create_layer_info names the layer after the asset, auto_create_layer_infos after the requested name.
  • Painting is visible only when the landscape material has a matching layer; weights are stored regardless.
  • remove_layer_info, replace_layer_info and enable_edit_layers run engine operations that may show a short progress bar; they do not open dialogs.
  • Spline indices are positions in the component arrays: re-read spline_list / spline_list_segments after removing points or segments.
  • enable_edit_layers is hidden on UE 5.7+, where every landscape already has edit layers.

Tools​

Legend. risk 0 = read-only, 1 = harmless editor op, 2 = modifies asset, 3 = deletes/replaces asset, 4 = project/config/build op, 5 = potentially destructive (calls above MaxAutoRisk need "_confirm": true). mutates = runs in a transaction (edit.undo reverts). requires PIE / requires world = refused without a PIE session / an open level. requires plugin = unavailable while the plugin is disabled. dryRun = honours the dryRun argument. smoke = covered by edit.self_test.

landscape.add_edit_layer (risk 2, mutates, requires world, smoke)​

Adds a standard edit layer on top of the stack; the reply's editLayer carries the (uniquified) name.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
namestringrequired. Requested name; the engine makes it unique.

Returns: editLayers, count, editLayer.

landscape.add_height_region (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
deltaintegerHeight delta in landscape uint16 units. Default 0.

Returns: landscape, message.

landscape.add_paint_layer (risk 2, mutates, requires world, smoke)​

Assigns a layer-info asset to the landscape as a paint layer (the layer name comes from the asset). Returns the paint layers.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerInfostringrequired. Layer-info asset path (see create_layer_info).

Returns: layers, count.

landscape.area_statistics (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
stepintegerSampling interval in vertices. Default 1.

Returns: samples, minHeight, maxHeight, averageHeight, maxSlope, averageSlope.

landscape.audit (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: components, layers, hasMaterial, outdatedGrassMaps, warnings.

landscape.auto_create_layer_infos (risk 2, mutates, requires world, smoke)​

Creates _LayerInfo assets in a folder and assigns them, for the given names or for every layer of the landscape material. Layers that already have a layer info are skipped.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
folderstringrequired. Content folder for the new _LayerInfo assets.
namesarray of stringLayer names to create; empty uses every layer declared by the landscape material.
weightBlendedbooleanWeight-blended layer infos when true. Default true.

Returns: created, skipped, layers.

landscape.brush_flatten (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
centerXintegerBrush centre X in landscape vertex coordinates. Default 0.
centerYintegerBrush centre Y in landscape vertex coordinates. Default 0.
radiusintegerBrush radius in vertices. Default 8.
strengthintegerSigned height strength in uint16 units. Default 128.
falloffnumberEdge falloff from 0 (hard) through 1 (linear). Default 1.0.
targetHeightintegerAbsolute target height for flatten and terrace tools. Default 32768.
seedintegerDeterministic noise seed. Default 0.
terraceStepintegerTerrace step height in uint16 units. Default 256.

Returns: landscape, message.

landscape.brush_lower (risk 2, mutates, requires world, smoke)​

Lowers a circle by strength with falloff.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
centerXintegerBrush centre X in landscape vertex coordinates. Default 0.
centerYintegerBrush centre Y in landscape vertex coordinates. Default 0.
radiusintegerBrush radius in vertices. Default 8.
strengthintegerSigned height strength in uint16 units. Default 128.
falloffnumberEdge falloff from 0 (hard) through 1 (linear). Default 1.0.
targetHeightintegerAbsolute target height for flatten and terrace tools. Default 32768.
seedintegerDeterministic noise seed. Default 0.
terraceStepintegerTerrace step height in uint16 units. Default 256.

Returns: landscape, message.

landscape.brush_raise (risk 2, mutates, requires world, smoke)​

Raises a circle by strength with falloff (the circular raise brush).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
centerXintegerBrush centre X in landscape vertex coordinates. Default 0.
centerYintegerBrush centre Y in landscape vertex coordinates. Default 0.
radiusintegerBrush radius in vertices. Default 8.
strengthintegerSigned height strength in uint16 units. Default 128.
falloffnumberEdge falloff from 0 (hard) through 1 (linear). Default 1.0.
targetHeightintegerAbsolute target height for flatten and terrace tools. Default 32768.
seedintegerDeterministic noise seed. Default 0.
terraceStepintegerTerrace step height in uint16 units. Default 256.

Returns: landscape, message.

landscape.brush_smooth (risk 2, mutates, requires world, smoke)​

Circular smoothing weighted by the brush falloff.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
centerXintegerBrush centre X in landscape vertex coordinates. Default 0.
centerYintegerBrush centre Y in landscape vertex coordinates. Default 0.
radiusintegerBrush radius in vertices. Default 8.
strengthintegerSigned height strength in uint16 units. Default 128.
falloffnumberEdge falloff from 0 (hard) through 1 (linear). Default 1.0.
targetHeightintegerAbsolute target height for flatten and terrace tools. Default 32768.
seedintegerDeterministic noise seed. Default 0.
terraceStepintegerTerrace step height in uint16 units. Default 256.

Returns: landscape, message.

landscape.clamp_region (risk 2, mutates, requires world, smoke)​

Clamps the heights of a region into [minHeight, maxHeight].

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
minHeightintegerLowest allowed uint16 height. Default 0.
maxHeightintegerHighest allowed uint16 height. Default 65535.

Returns: landscape, message.

landscape.clear_edit_layer (risk 2, mutates, requires world, smoke)​

Clears the sculpted heights and/or painted weights of one edit layer.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Edit layer name.
heightmapbooleanClear sculpted heights. Default true.
weightmapbooleanClear painted weights and holes. Default true.

Returns: editLayers, count, editLayer.

landscape.clear_layer (risk 2, mutates, requires world, smoke)​

Deletes every painted weight of a paint layer; the layer stays assigned.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Landscape paint layer name.

Returns: landscape, message.

landscape.copy_region (risk 2, mutates, requires world, smoke)​

Copies a height block to another place, optionally from another landscape.

ArgumentTypeDescription
landscapestringrequired. Target landscape.
sourceLandscapestringSource landscape; empty = the target.
sourceMinXintegerSource inclusive minimum X. Default 0.
sourceMinYintegerSource inclusive minimum Y. Default 0.
sourceMaxXintegerSource inclusive maximum X. Default 0.
sourceMaxYintegerSource inclusive maximum Y. Default 0.
destXintegerTarget X of the source's first column. Default 0.
destYintegerTarget Y of the source's first row. Default 0.

Returns: landscape, message.

landscape.create (risk 2, mutates, requires world, smoke)​

Creates a flat landscape (height 32768) without Landscape Mode. Smallest: 1x1 components, 7 quads.

ArgumentTypeDescription
namestringrequired. Outliner label.
componentsXintegerComponent count in X (1..32). Default 1.
componentsYintegerComponent count in Y (1..32). Default 1.
sectionSizeQuadsintegerQuads in each subsection: 7,15,31,63,127,255. Default 7.
sectionsPerComponentintegerOne or two subsections per component. Default 1.
location{x,y,z}Actor location in cm.
scale{x,y,z}Actor scale; 100 means one metre per quad. Default FUeaVec3(100,100,100).

Returns: landscape, message.

landscape.create_from_height_array (risk 2, mutates, requires world, smoke)​

Creates a landscape from a row-major uint16 height array, or rebuilds an existing one (replace) keeping its transform, material and settings.

ArgumentTypeDescription
namestringOutliner label of the new landscape; empty keeps the replaced landscape's label.
replacestringExisting landscape to rebuild from the array: its transform, material and settings are kept, location/rotation/scale/material args are ignored, and the old actor is destroyed.
componentsXintegerComponent count in X (1..32). Default 1.
componentsYintegerComponent count in Y (1..32). Default 1.
sectionSizeQuadsintegerQuads per section: 7, 15, 31, 63, 127 or 255. Default 7.
sectionsPerComponentintegerSections per component axis: 1 or 2. Default 1.
location{x,y,z}Actor location in cm (new landscapes only).
rotation{x,y,z}Actor rotation in degrees (new landscapes only).
scale{x,y,z}Actor scale (new landscapes only); 100 = one metre per quad. Default FUeaVec3(100,100,100).
heightsarray of integerrequired. Row-major uint16 heights (0..65535, 32768 = actor Z): exactly (componentsXsectionsPerComponentsectionSizeQuads+1) x (same for Y) values.
materialstringOptional landscape material asset path (new landscapes only).

Returns: landscape, oldVertsX, oldVertsY, newVertsX, newVertsY, copiedLayers, skippedLayers, copiedSettings, dryRun, changedActors, message.

landscape.create_layer_info (risk 2, mutates, smoke)​

Creates a ULandscapeLayerInfoObject asset /; its paint-layer name is the asset name. Assign it with landscape.add_paint_layer.

ArgumentTypeDescription
folderstringrequired. Content folder.
namestringrequired. Bare layer-info asset name.
weightBlendedbooleanWeight-blended layer when true. Default true.

Returns: asset, message.

landscape.delete (risk 3, mutates, destructive, requires world, smoke)​

Deletes a landscape actor. Declared on the last landscape class so the self-test removes its shared fixture only after every landscape theme ran.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: landscape, message.

landscape.duplicate (risk 2, mutates, requires world, dryRun, smoke)​

Copies a landscape (heights, paint weights, material, settings) to a new actor at an offset.

ArgumentTypeDescription
landscapestringrequired. Source landscape reference.
namestringrequired. Label of the copy.
offset{x,y,z}World offset of the copy in cm from the source location.
copyLayersbooleanCopy paint-layer weights (layers with an assigned layer-info asset). Default true.
dryRunbooleanOnly validate and report what would be created. Default false.

Returns: landscape, oldVertsX, oldVertsY, newVertsX, newVertsY, copiedLayers, skippedLayers, copiedSettings, dryRun, changedActors, message.

landscape.enable_edit_layers (risk 2, mutates, UE ≤5.6, requires world, smoke)​

Converts a landscape without edit layers to edit layers (UE 5.6 and older; newer landscapes always have them). Returns the edit layers.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: editLayers, count, editLayer.

landscape.erode_region (risk 2, mutates, requires world, smoke)​

Thermal erosion: material slides from steep neighbours until slopes fall under the talus threshold.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
iterationsintegerPasses 1..50. Default 5.
talusintegerHeight difference (uint16) a neighbour may exceed before material slides. Default 64.
ratenumberFraction of the excess moved per pass, 0..0.5. Default 0.25.

Returns: landscape, message.

landscape.export_heightmap (risk 0, requires world)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
filestringrequired. Absolute output file path.

Returns: landscape, message.

landscape.export_weightmap (risk 0, requires world)​

Exports a paint layer's weightmap to an absolute .png or .raw path (engine ULandscapeInfo::ExportLayer).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Assigned paint layer name.
filestringrequired. Absolute file path (.png or .raw on export; 8-bit .raw on import).
minXintegerImport only: region origin X vertex. Default 0.
minYintegerImport only: region origin Y vertex. Default 0.
widthintegerImport only: raw image width in pixels; 0 uses the landscape width. Default 0.

Returns: landscape, message.

landscape.fill_layer (risk 2, mutates, requires world, smoke)​

Fills the whole landscape with a paint layer at full weight.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Landscape paint layer name.

Returns: landscape, message.

landscape.find_flat_spots (risk 0, requires world, smoke)​

Finds flat vertices (slope and height filters) for placing buildings, spawns or props; flattest first.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
stepintegerSampling interval in vertices. Default 1.
maxSlopeDegreesnumberMaximum slope in degrees. Default 10.
minHeightintegerLowest accepted uint16 height. Default 0.
maxHeightintegerHighest accepted uint16 height. Default 65535.
maxResultsintegerResult limit 1..1000 (flattest first). Default 50.

Returns: spots, matches, samples.

landscape.flatten_path (risk 2, mutates, requires world, smoke)​

Levels a band along a polyline (road or river bed), heights interpolated between the points.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
pointsarray of {x,y,z}required. Path points: x, y in vertex coordinates; z = target uint16 height, or -1 to use the terrain height at that point. At least two.
halfWidthnumberHalf-width of the fully flattened band in vertices. Default 2.
falloffWidthnumberWidth of the blend band outside it in vertices. Default 2.
strengthnumberBlend strength 0..1. Default 1.0.

Returns: landscape, message.

landscape.flatten_region (risk 2, mutates, requires world, smoke)​

Moves a region toward a target height with a strength; mode raise/lower restricts the direction (fill pits or cut bumps only).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
heightintegerTarget uint16 height, 0 through 65535. Default 32768.
strengthnumberBlend toward the target, 0..1 (1 = exact). Default 1.0.
modestringboth, raise (only lifts lower vertices) or lower (only cuts higher vertices). Default TEXT("both").

Returns: landscape, message.

landscape.get (risk 0, requires world, smoke)​

Landscape summary: vertex bounds, component layout, transform, material, edit-layer flag.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: landscape, message.

landscape.get_bounds (risk 0, requires world, smoke)​

World bounds of the landscape components (read-only) and collision component count.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: landscape, boundsMin, boundsMax, components, collisionComponents.

landscape.get_component (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
sectionBaseXintegerComponent section base X. Default 0.
sectionBaseYintegerComponent section base Y. Default 0.

Returns: component, materialOverride.

landscape.get_component_settings (risk 0, requires world, smoke)​

Per-component settings (LOD, lighting, collision mips, bounds extensions, material overrides, world bounds) for one or all components.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
sectionBaseXintegerComponent section base X (see landscape.list_components). Default 0.
sectionBaseYintegerComponent section base Y. Default 0.
allComponentsbooleanApply to / read every component instead of one. Default false.

Returns: components, count.

landscape.get_height (risk 0, requires world, smoke)​

uint16 height and world Z (cm) at a landscape vertex.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
xintegerLandscape vertex X coordinate. Default 0.
yintegerLandscape vertex Y coordinate. Default 0.

Returns: height, worldZ, message.

landscape.get_height_range (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
deltaintegerHeight delta in landscape uint16 units. Default 0.

Returns: minX, minY, width, height, heights, minHeight, maxHeight.

landscape.get_heights_grid (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
deltaintegerHeight delta in landscape uint16 units. Default 0.

Returns: minX, minY, width, height, heights, minHeight, maxHeight.

landscape.get_normal (risk 0, requires world, smoke)​

World-space normal, slope and height at a vertex.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
xintegerLandscape vertex X coordinate. Default 0.
yintegerLandscape vertex Y coordinate. Default 0.

Returns: height, worldZ, normal, slopeDegrees, world, layers.

landscape.get_outdated_grass_maps (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: components, layers, hasMaterial, outdatedGrassMaps, warnings.

landscape.get_settings (risk 0, requires world, smoke)​

Reads every reflected landscape-actor setting the kit manages (materials, LOD, lighting, collision, navigation, bounds, rendering).

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: landscape, settings.

landscape.get_weight (risk 0, requires world, smoke)​

Min/max/average weight of a paint layer over an inclusive vertex region.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Paint layer name.
minXintegerInclusive minimum X. Default 0.
minYintegerInclusive minimum Y. Default 0.
maxXintegerInclusive maximum X. Default 0.
maxYintegerInclusive maximum Y. Default 0.
weightintegerConstant weight, 0 through 255. Default 0.

Returns: minWeight, maxWeight, averageWeight, samples.

landscape.get_weight_grid (risk 0, requires world, smoke)​

Row-major weights (0..255) of a paint layer over an inclusive vertex region (at most 65536 vertices).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Paint layer name.
minXintegerInclusive minimum X. Default 0.
minYintegerInclusive minimum Y. Default 0.
maxXintegerInclusive maximum X. Default 0.
maxYintegerInclusive maximum Y. Default 0.
weightintegerConstant weight, 0 through 255. Default 0.

Returns: width, height, weights.

landscape.grass_add_variety (risk 2, mutates, smoke)​

Appends a variety with a static mesh and a density.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
meshstringrequired. Static mesh for the new variety.
densitynumberInitial density in instances per 10 m x 10 m (0..1000). Default 100.

Returns: grassType, varieties, settings.

landscape.grass_audit_type (risk 0, smoke)​

Reports varieties without a mesh, with zero density, or with an end cull distance below the start.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.

Returns: grassType, varieties, settings.

landscape.grass_create_type (risk 2, mutates, smoke)​

Creates an empty ULandscapeGrassType asset /. Add varieties with landscape.grass_add_variety.

ArgumentTypeDescription
folderstringrequired. Content folder under /Game.
namestringrequired. Bare grass-type asset name.

Returns: grassType, varieties, settings.

landscape.grass_flush (risk 2, mutates, requires world, smoke)​

Flushes the landscape's grass components and cached grass maps so they regenerate; returns the stale-map count.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: components, layers, hasMaterial, outdatedGrassMaps, warnings.

landscape.grass_get_type (risk 0, smoke)​

Returns a grass type with every variety (mesh, density, culling, scaling, placement, rendering flags).

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.

Returns: grassType, varieties, settings.

landscape.grass_get_variety (risk 0, smoke)​

Returns every reflected property of one variety as text in settings (keys usable with grass_set_variety).

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index. Default 0.

Returns: grassType, varieties, settings.

landscape.grass_list_types (risk 0, smoke)​

Lists grass type assets under a folder.

ArgumentTypeDescription
folderstringContent folder to search. Default TEXT("/Game").
nameContainsstringOptional case-insensitive name filter.
recursivebooleanSearch sub-folders. Default true.

Returns: grassTypes, count.

landscape.grass_remove_variety (risk 3, mutates, destructive, smoke)​

Removes one variety from a grass type.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index. Default 0.

Returns: grassType, varieties, settings.

landscape.grass_set_align_to_surface (risk 2, mutates, smoke)​

Aligns instances of one variety to the landscape surface.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_contact_shadow (risk 2, mutates, UE 5.1+, smoke)​

Lets instances of one variety cast contact shadows (UE5).

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_cpu_copy (risk 2, mutates, smoke)​

Keeps a CPU copy of the instance buffer of one variety (needed for runtime instance queries).

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_density (risk 2, mutates, smoke)​

Sets the default density (0..1000 instances per 10 m x 10 m) of one variety.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
valuenumberRequested value (see the tool description for its range). Default 0.

Returns: grassType, varieties, settings.

landscape.grass_set_density_scaling (risk 2, mutates, smoke)​

Enables or disables scalability density scaling for the whole grass type (index is ignored).

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_dynamic_shadow (risk 2, mutates, smoke)​

Lets instances of one variety cast dynamic shadows.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_end_cull (risk 2, mutates, smoke)​

Sets the default end cull distance (cm) of one variety.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
valuenumberRequested value (see the tool description for its range). Default 0.

Returns: grassType, varieties, settings.

landscape.grass_set_grid (risk 2, mutates, smoke)​

Places instances of one variety on a jittered grid instead of randomly.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_jitter (risk 2, mutates, smoke)​

Sets the grid placement jitter (0..1) of one variety.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
valuenumberRequested value (see the tool description for its range). Default 0.

Returns: grassType, varieties, settings.

landscape.grass_set_landscape_lightmap (risk 2, mutates, smoke)​

Lights instances of one variety with the landscape lightmap.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_min_lod (risk 2, mutates, smoke)​

Sets the minimum mesh LOD (-1..8, -1 = automatic) of one variety.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
valuenumberRequested value (see the tool description for its range). Default 0.

Returns: grassType, varieties, settings.

landscape.grass_set_random_rotation (risk 2, mutates, smoke)​

Enables random yaw for one variety.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_receive_decals (risk 2, mutates, smoke)​

Lets instances of one variety receive decals.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
enabledbooleanRequested state. Default true.

Returns: grassType, varieties, settings.

landscape.grass_set_scale (risk 2, mutates, smoke)​

Sets the scaling mode and the X/Y/Z scale ranges of one variety.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index. Default 0.
scalingstringUniform (X range scales all axes), Free (independent X/Y/Z) or LockXY (X for X and Y, Z separate). Default TEXT("Uniform").
scaleXMinnumberX (or uniform) scale range minimum. Default 1.
scaleXMaxnumberX (or uniform) scale range maximum. Default 1.
scaleYMinnumberY scale range minimum (Free only). Default 1.
scaleYMaxnumberY scale range maximum (Free only). Default 1.
scaleZMinnumberZ scale range minimum (Free and LockXY). Default 1.
scaleZMaxnumberZ scale range maximum (Free and LockXY). Default 1.

Returns: grassType, varieties, settings.

landscape.grass_set_start_cull (risk 2, mutates, smoke)​

Sets the default start cull distance (cm) of one variety.

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index (settings that belong to the whole type ignore it). Default 0.
valuenumberRequested value (see the tool description for its range). Default 0.

Returns: grassType, varieties, settings.

landscape.grass_set_variety (risk 2, mutates, smoke)​

Assigns reflected FGrassVariety properties of one variety (dotted paths into structs, e.g. GrassDensity.Default, ScaleX.Min).

ArgumentTypeDescription
grassTypestringrequired. Landscape grass type asset path or unique name.
indexintegerZero-based variety index. Default 0.
settingsarray of UeaKeyValuerequired. Property assignments in engine text form (e.g. {key:'GrassDensity.Default',value:'50'}, {key:'bUseGrid',value:'true'}).

Returns: grassType, varieties, settings.

landscape.has_material (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: components, layers, hasMaterial, outdatedGrassMaps, warnings.

landscape.height_histogram (risk 0, requires world, smoke)​

Height distribution of a region in buckets.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
stepintegerSampling interval in vertices. Default 1.
bucketsintegerBucket count 2..256. Default 16.

Returns: counts, minHeight, maxHeight, bucketWidth, minWorldZ, maxWorldZ, samples.

landscape.import_weightmap (risk 2, mutates, requires world)​

Imports an 8-bit .raw weightmap (row-major, width x height bytes) into a paint layer at (minX, minY).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Assigned paint layer name.
filestringrequired. Absolute file path (.png or .raw on export; 8-bit .raw on import).
minXintegerImport only: region origin X vertex. Default 0.
minYintegerImport only: region origin Y vertex. Default 0.
widthintegerImport only: raw image width in pixels; 0 uses the landscape width. Default 0.

Returns: landscape, message.

landscape.line_trace (risk 0, requires world, smoke)​

Traces a world ray against this landscape's collision only (nearest hit).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
start{x,y,z}Ray start in world cm.
end{x,y,z}Ray end in world cm.

Returns: hit, location, normal, distance, component, vertexX, vertexY, height, componentsTested.

landscape.list (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: landscapes, count.

landscape.list_blueprint_brushes (risk 0, requires world, smoke)​

Lists the landscape blueprint brushes of every edit layer.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: brushes, count.

landscape.list_components (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: components, count.

landscape.list_edit_layers (risk 0, requires world, smoke)​

Lists edit layers bottom to top with visibility, lock, alphas, active flag and blueprint brushes.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: editLayers, count, editLayer.

landscape.list_grass_outputs (risk 0, smoke)​

Lists the Landscape Grass Output entries (pin name + grass type) of a material, or of the landscape's material.

ArgumentTypeDescription
materialstringMaterial or material instance to inspect; empty uses the landscape's material.
landscapestringLandscape actor reference, used when material is empty.

Returns: material, outputs, count.

landscape.list_layers (risk 0, requires world, smoke)​

Lists paint layers with their layer-info asset and blend mode.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: layers, count.

landscape.list_proxies (risk 0, requires world, smoke)​

Lists the landscape actor and its streaming proxies (world-partition or level streaming).

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: proxies, count.

landscape.mirror_region (risk 2, mutates, requires world, smoke)​

Mirrors (symmetric map) or flips a region along X or Y.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
axisstringx mirrors across the vertical centre line (left/right), y across the horizontal one. Default TEXT("x").
modestringmirror copies the first half onto the second (symmetric map); flip reverses the whole region. Default TEXT("mirror").

Returns: landscape, message.

landscape.noise_region (risk 2, mutates, requires world, smoke)​

Deterministic fBm Perlin noise inside a circular brush (seed, octaves, frequency).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
centerXintegerBrush centre X vertex. Default 0.
centerYintegerBrush centre Y vertex. Default 0.
radiusintegerBrush radius in vertices. Default 8.
strengthintegerPeak amplitude in uint16 units. Default 128.
falloffnumberEdge falloff exponent 0 (hard) .. 1 (linear). Default 1.0.
seedintegerNoise seed (offsets the noise field). Default 0.
octavesintegerOctaves 1..8. Default 4.
frequencynumberBase frequency in cycles per vertex (0.001..1). Default 0.1.

Returns: landscape, message.

landscape.paint_layer_circle (risk 2, mutates, requires world, smoke)​

Paints a disc of weight around a vertex, with an optional linear falloff toward the rim. Vertices outside the disc are left unchanged.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Assigned paint layer name.
centerXintegerBrush centre X vertex. Default 0.
centerYintegerBrush centre Y vertex. Default 0.
radiusintegerBrush radius in vertices (the whole circle must lie inside the landscape). Default 8.
weightintegerCentre paint weight, 0 through 255. Default 255.
falloffnumberFraction of the radius (0..1) over which the weight fades linearly to 0 at the rim; 0 paints a hard disc. Default 0.

Returns: landscape, message.

landscape.paint_layer_gradient (risk 2, mutates, requires world, smoke)​

Paints a linear weight gradient over an inclusive region along x or y.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Assigned paint layer name.
minXintegerInclusive region minimum X. Default 0.
minYintegerInclusive region minimum Y. Default 0.
maxXintegerInclusive region maximum X. Default 0.
maxYintegerInclusive region maximum Y. Default 0.
startWeightintegerWeight at the start edge (low X, or low Y when axis is y). Default 0.
endWeightintegerWeight at the end edge. Default 255.
axisstringGradient axis: x or y. Default TEXT("x").

Returns: landscape, message.

landscape.paint_layer_region (risk 2, mutates, requires world, smoke)​

Paints a constant weight (0..255) over an inclusive vertex box.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Paint layer name.
minXintegerInclusive minimum X. Default 0.
minYintegerInclusive minimum Y. Default 0.
maxXintegerInclusive maximum X. Default 0.
maxYintegerInclusive maximum Y. Default 0.
weightintegerConstant weight, 0 through 255. Default 0.

Returns: landscape, message.

landscape.ramp_region (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
startXintegerStart X vertex. Default 0.
startYintegerStart Y vertex. Default 0.
endXintegerEnd X vertex. Default 1.
endYintegerEnd Y vertex. Default 1.
startHeightintegerStart height in uint16 units. Default 32768.
endHeightintegerEnd height in uint16 units. Default 32768.
halfWidthintegerHalf-width in vertices. Default 1.

Returns: landscape, message.

landscape.rebuild_bounds (risk 2, mutates, requires world, smoke)​

Recomputes cached component bounds from the heights and refreshes transforms/render state.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: landscape, boundsMin, boundsMax, components, collisionComponents.

landscape.recalc_normals (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: landscape, message.

landscape.remove_edit_layer (risk 3, mutates, destructive, requires world, smoke)​

Deletes an edit layer and its content; the last remaining layer cannot be removed.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Edit layer name.

Returns: editLayers, count, editLayer.

landscape.remove_layer_info (risk 3, mutates, destructive, requires world, smoke)​

Removes a paint layer from the landscape: deletes its painted weights and unassigns its layer info (the asset stays).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Landscape paint layer name.

Returns: layers, count.

landscape.rename_edit_layer (risk 2, mutates, requires world, smoke)​

Renames an edit layer; the new name must be unique.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Current edit layer name.
newNamestringrequired. New unique name.

Returns: editLayers, count, editLayer.

landscape.reorder_edit_layer (risk 2, mutates, requires world, smoke)​

Moves an edit layer to another stack index (0 = bottom).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Edit layer name.
newIndexintegerDestination stack index (0 = bottom). Default 0.

Returns: editLayers, count, editLayer.

landscape.replace_layer_info (risk 2, mutates, requires world, smoke)​

Replaces the layer-info asset of a paint layer with another asset; painted weights move to the new layer info.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Paint layer whose layer info (and painted weights) moves to the new asset.
layerInfostringrequired. Layer-info asset that replaces it; must not already be a paint layer of this landscape.

Returns: layers, count.

landscape.resample (risk 3, mutates, destructive, requires world, smoke)​

Changes the vertex resolution (section size, sections, components) keeping the world footprint; heights and paint weights are bilinearly resampled and the landscape is rebuilt in place.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
componentsXintegerNew component count in X; 0 keeps the current count. Default 0.
componentsYintegerNew component count in Y; 0 keeps the current count. Default 0.
sectionSizeQuadsintegerNew quads per section (7, 15, 31, 63, 127, 255); 0 keeps. Default 0.
sectionsPerComponentintegerNew sections per component (1 or 2); 0 keeps. Default 0.
dryRunbooleanOnly validate and report the new size. Default false.

Returns: landscape, oldVertsX, oldVertsY, newVertsX, newVertsY, copiedLayers, skippedLayers, copiedSettings, dryRun, changedActors, message.

landscape.resize (risk 3, mutates, destructive, requires world, smoke)​

Changes the component count keeping the quad size (crop or extend); the landscape is rebuilt in place.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
componentsXintegerNew component count in X (1..32). Default 1.
componentsYintegerNew component count in Y (1..32). Default 1.
anchorstringcorner keeps the minimum corner fixed; center grows or shrinks evenly (the actor moves so the terrain stays in place). Default TEXT("corner").
fillHeightintegerHeight for new vertices (0..65535); -1 extends the nearest edge heights. Default -1.
dryRunbooleanOnly validate and report the new size. Default false.

Returns: landscape, oldVertsX, oldVertsY, newVertsX, newVertsY, copiedLayers, skippedLayers, copiedSettings, dryRun, changedActors, message.

landscape.sample (risk 0, requires world, smoke)​

Height, normal, slope and paint-layer weights at a vertex.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
xintegerLandscape vertex X coordinate. Default 0.
yintegerLandscape vertex Y coordinate. Default 0.

Returns: height, worldZ, normal, slopeDegrees, world, layers.

landscape.sample_world (risk 0, requires world, smoke)​

Terrain height, normal and slope under world XY points (bilinear), for placing actors on the ground.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
pointsarray of {x,y,z}required. World points in cm (x, y used; z ignored), 1..1024.

Returns: samples, inside.

landscape.scale_region (risk 2, mutates, requires world, smoke)​

Scales the relief of a region around a pivot height (exaggerate or flatten).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
factornumberMultiplier 0..10 (below 1 flattens, above 1 exaggerates). Default 1.0.
pivotintegerPivot uint16 height; -1 uses the region mean. Default -1.

Returns: landscape, message.

landscape.set_active_edit_layer (risk 2, mutates, requires world, smoke)​

Selects the edit layer that height and weight tools write to (empty clears the selection).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringEdit layer that height/weight tools write to; empty clears the selection (tools then use the first layer).

Returns: editLayers, count, editLayer.

landscape.set_bounds_extension (risk 2, mutates, requires world, smoke)​

Sets the landscape-wide Z bounds extensions in cm.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
negativeZnumberExtra bounds below the terrain in cm; -1 unchanged. Default -1.
positiveZnumberExtra bounds above the terrain in cm; -1 unchanged. Default -1.

Returns: landscape, settings.

landscape.set_collision_mip (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
valueintegerRequested nonnegative setting value. Default 0.

Returns: landscape, message.

landscape.set_collision_settings (risk 2, mutates, requires world, smoke)​

Sets the collision profile and overlap/bake flags of the landscape actor; collision components are recreated.

ArgumentTypeDescription
collisionProfilestringCollision profile name (e.g. BlockAll); empty unchanged.
landscapestringrequired. Landscape reference.
generateOverlapEventsstringtrue, false or empty (unchanged).
bakeMaterialPositionOffsetIntoCollisionstringtrue, false or empty.

Returns: landscape, settings.

landscape.set_component_bounds_extension (risk 2, mutates, requires world, smoke)​

Sets per-component Z bounds extensions (for world-position-offset materials).

ArgumentTypeDescription
negativeZBoundsExtensionnumberExtra bounds below the terrain in cm (for world-position-offset materials). Default 0.
positiveZBoundsExtensionnumberExtra bounds above the terrain in cm. Default 0.

Returns: components, count.

landscape.set_component_collision_mip (risk 2, mutates, requires world, smoke)​

Sets complex and simple collision mip levels of one or all components (collision is rebuilt).

ArgumentTypeDescription
collisionMipLevelintegerComplex collision mip level (0..5). Default 0.
simpleCollisionMipLevelintegerSimple collision mip level (0..5); 0 = no separate simple collision. Default 0.

Returns: components, count.

landscape.set_component_lighting (risk 2, mutates, requires world, smoke)​

Sets static lighting resolution override and lightmass LOD bias of one or all components.

ArgumentTypeDescription
staticLightingResolutionnumberStatic lighting resolution override; 0 = use the landscape value (engine default). Default 0.
lightingLodBiasintegerLightmass LOD bias; -1 = automatic (engine default). Default -1.

Returns: components, count.

landscape.set_component_lod (risk 2, mutates, requires world, smoke)​

Sets forced LOD and LOD bias of one or all components.

ArgumentTypeDescription
forcedLodintegerForced render LOD; -1 = automatic (engine default). Default -1.
lodBiasintegerRender LOD bias (engine default 0). Default 0.

Returns: components, count.

landscape.set_component_material_override (risk 2, mutates, requires world, smoke)​

Sets or clears the material and hole-material override of one or all components.

ArgumentTypeDescription
materialstringMaterial override asset path; empty clears the override.
holeMaterialstringHole material override asset path; empty clears it.

Returns: components, count.

landscape.set_edit_layer_alpha (risk 2, mutates, requires world, smoke)​

Sets the heightmap (-1..1) or weightmap (0..1) blend alpha of an edit layer.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Edit layer name.
alphanumberBlend alpha: heightmap -1..1 (negative subtracts), weightmap 0..1. Default 1.
targetstringheightmap or weightmap. Default TEXT("heightmap").

Returns: editLayers, count, editLayer.

landscape.set_edit_layer_locked (risk 2, mutates, requires world, smoke)​

Locks (enabled=true) or unlocks an edit layer against edits.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Edit layer name.
enabledbooleanRequested state. Default true.

Returns: editLayers, count, editLayer.

landscape.set_edit_layer_visible (risk 2, mutates, requires world, smoke)​

Shows (enabled=true) or hides an edit layer in the merged landscape.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Edit layer name.
enabledbooleanRequested state. Default true.

Returns: editLayers, count, editLayer.

landscape.set_height_region (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
heightintegerTarget uint16 height, 0 through 65535. Default 32768.

Returns: landscape, message.

landscape.set_hole_material (risk 2, mutates, requires world, smoke)​

Sets or clears the hole material used where the visibility layer is painted.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
assetstringAsset path; empty clears the reference.

Returns: landscape, settings.

landscape.set_lighting_settings (risk 2, mutates, requires world, smoke)​

Sets lighting and shadow flags of the landscape actor.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
staticLightingResolutionnumberStatic lighting resolution; -1 unchanged. Default -1.
castShadowstringtrue, false or empty (unchanged).
castDynamicShadowstringtrue, false or empty.
castStaticShadowstringtrue, false or empty.
castFarShadowstringtrue, false or empty.
affectDistanceFieldLightingstringtrue, false or empty.

Returns: landscape, settings.

landscape.set_lod_settings (risk 2, mutates, requires world, smoke)​

Sets LOD screen size and distribution settings of the landscape actor.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
lod0ScreenSizenumberScreen size of LOD0; -1 unchanged. Default -1.
lod0DistributionSettingnumberLOD0 distribution multiplier; -1 unchanged. Default -1.
lodDistributionSettingnumberDistribution multiplier of the other LODs; -1 unchanged. Default -1.

Returns: landscape, settings.

landscape.set_material (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
materialstringrequired. Material asset path.

Returns: landscape, message.

landscape.set_navigation_settings (risk 2, mutates, requires world, smoke)​

Sets navigation relevance and collision fill for navmesh generation.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
usedForNavigationstringtrue, false or empty (unchanged).
fillCollisionUnderLandscapeForNavmeshstringtrue, false or empty.

Returns: landscape, settings.

landscape.set_physical_material (risk 2, mutates, requires world, smoke)​

Sets or clears the default physical material of the landscape.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
assetstringAsset path; empty clears the reference.

Returns: landscape, settings.

landscape.set_rendering_settings (risk 2, mutates, requires world, smoke)​

Sets custom depth, max draw distance and texture streaming multiplier.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
renderCustomDepthstringtrue, false or empty (unchanged).
customDepthStencilValueintegerCustom depth stencil value 0..255; -1 unchanged. Default -1.
maxDrawDistancenumberMax draw distance in cm (0 = infinite); -1 unchanged. Default -1.
streamingDistanceMultipliernumberTexture streaming distance multiplier; -1 unchanged. Default -1.

Returns: landscape, settings.

landscape.set_settings (risk 2, mutates, requires world, smoke)​

Sets allowlisted landscape-actor properties by name (see get_settings for the keys) through the details-panel route.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
settingsarray of UeaKeyValueProperty assignments: StaticLightingLOD, CollisionMipLevel, SimpleCollisionMipLevel, VirtualTextureRenderPassType.

Returns: landscape, settings.

landscape.set_simple_collision_mip (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
valueintegerRequested nonnegative setting value. Default 0.

Returns: landscape, message.

landscape.set_static_lighting_lod (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
valueintegerRequested nonnegative setting value. Default 0.

Returns: landscape, message.

landscape.set_transform (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
location{x,y,z}World location in centimetres.
rotation{x,y,z}World rotation in degrees.
scale{x,y,z}Actor scale. Default FUeaVec3(100,100,100).

Returns: landscape, message.

landscape.set_virtual_texture_settings (risk 2, mutates, requires world, smoke)​

Sets the runtime virtual textures the landscape writes to, their LOD range and the main-pass mode.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
runtimeVirtualTexturesarray of stringRuntime virtual texture asset paths the landscape renders into (replaces the list).
keepTexturesbooleanKeep the current list instead of replacing it with runtimeVirtualTextures. Default false.
numLodsintegerLowest mips rendered to the virtual texture (0..12); -1 unchanged. Default -1.
lodBiasintegerLOD bias when rendering to the virtual texture (0..8); -1 unchanged. Default -1.
mainPassstringMain pass: Never, Exclusive or Always; empty unchanged.

Returns: landscape, settings.

landscape.set_visibility_layer (risk 2, mutates, requires world, smoke)​

Cuts (hidden=true) or restores holes over an inclusive vertex region through the landscape visibility layer.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
hiddenbooleantrue cuts a hole (needs a material with a Landscape Visibility Mask to render), false restores the surface. Default true.

Returns: landscape, message.

landscape.set_weight_grid (risk 2, mutates, requires world, smoke)​

Writes row-major weights (0..255) into a region starting at (minX, minY); the inverse of get_weight_grid.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
layerstringrequired. Assigned paint layer name.
minXintegerRegion origin X vertex. Default 0.
minYintegerRegion origin Y vertex. Default 0.
widthintegerRegion width in vertices. Default 0.
weightsarray of integerrequired. Row-major weights 0..255, exactly width*height values.

Returns: landscape, message.

landscape.slope_map (risk 0, requires world, smoke)​

Grid of world-space slopes (degrees) over a region, with steep-area statistics.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
stepintegerSampling interval in vertices. Default 1.
maxSlopeDegreesnumberSlope threshold in degrees for the steep count. Default 30.

Returns: columns, rows, slopes, minSlope, maxSlope, averageSlope, steepSamples, steepFraction.

landscape.slope_statistics (risk 0, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
stepintegerSampling interval in vertices. Default 1.

Returns: samples, minHeight, maxHeight, averageHeight, maxSlope, averageSlope.

landscape.smooth_region (risk 2, mutates, requires world, smoke)​

3x3 box-blur smoothing of a region, repeated for iterations and blended by strength.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerInclusive minimum X vertex. Default 0.
minYintegerInclusive minimum Y vertex. Default 0.
maxXintegerInclusive maximum X vertex. Default 0.
maxYintegerInclusive maximum Y vertex. Default 0.
iterationsintegerBlur passes, 1..20. Default 1.
strengthnumberBlend of each pass, 0..1. Default 1.0.

Returns: landscape, message.

landscape.spline_add_point (risk 2, mutates, requires world, smoke)​

Adds an unconnected control point (landscape-local location, half-width, side falloff), creating the spline component when missing.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
location{x,y,z}Landscape-local control-point location in centimetres.
rotation{x,y,z}Control-point rotation in degrees.
widthnumberHalf-width in centimetres (positive). Default 500.
sideFalloffnumberSide falloff in centimetres (nonnegative). Default 500.

Returns: controlPoints, segmentCount, message.

landscape.spline_apply (risk 2, mutates, requires world, smoke)​

Applies the splines to the landscape: raises/lowers heights and paints the configured layers (splines edit layer when present).

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: applied, landscape, message.

landscape.spline_clear (risk 3, mutates, destructive, requires world, smoke)​

Removes every control point and segment of the landscape splines.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: controlPoints, segmentCount, message.

landscape.spline_connect (risk 2, mutates, requires world, smoke)​

Connects two control points with a new segment.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
startIndexintegerControl point at the segment start. Default 0.
endIndexintegerControl point at the segment end. Default 1.
startTangentnumberStart tangent length in centimetres; 0 uses half the point distance. Default 0.
endTangentnumberEnd tangent length in centimetres; 0 uses half the point distance. Default 0.
layerNamestringPaint layer painted under the segment when splines are applied; empty paints nothing.

Returns: segments, count, segment.

landscape.spline_export_points (risk 0, requires world, smoke)​

Exports control points and segments as typed arrays (feed the points to spline_import_points to recreate a chain).

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: points, segments.

landscape.spline_get_point (risk 0, requires world, smoke)​

Returns one control point.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
indexintegerZero-based existing control-point index (see spline_list). Default 0.

Returns: controlPoints, segmentCount, message.

landscape.spline_get_segment (risk 0, requires world, smoke)​

Returns one segment (endpoints, tangent lengths, deformation settings, mesh entries) in the reply's segment.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
segmentintegerZero-based segment index (see spline_list_segments). Default 0.

Returns: segments, count, segment.

landscape.spline_import_points (risk 2, mutates, requires world, smoke)​

Appends control points in order and, by default, connects consecutive points with segments (optionally closing the loop).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
pointsarray of UeaLandSplineImportPointrequired. Points appended in order (at least two when connect is true).
connectbooleanConnect consecutive points with segments. Default true.
closedLoopbooleanAlso connect the last point back to the first. Default false.
layerNamestringPaint layer painted under the new segments when splines are applied.

Returns: points, segments.

landscape.spline_list (risk 0, requires world, smoke)​

Lists the control points and the segment count.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: controlPoints, segmentCount, message.

landscape.spline_list_segments (risk 0, requires world, smoke)​

Lists segments with endpoints, tangents, deformation settings and meshes.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: segments, count, segment.

landscape.spline_rebuild (risk 2, mutates, requires world, smoke)​

Rebuilds spline meshes and collision of the existing network.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: controlPoints, segmentCount, message.

landscape.spline_remove_point (risk 3, mutates, destructive, requires world, smoke)​

Removes a control point and every segment connected to it; later indices shift down.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
indexintegerZero-based existing control-point index (see spline_list). Default 0.

Returns: controlPoints, segmentCount, message.

landscape.spline_remove_segment (risk 3, mutates, destructive, requires world, smoke)​

Removes one segment (its control points stay).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
segmentintegerZero-based segment index (see spline_list_segments). Default 0.

Returns: segments, count, segment.

landscape.spline_set_mesh_entries (risk 2, mutates, requires world, smoke)​

Replaces the spline mesh entries of one segment (mesh, scale, axes) and rebuilds its meshes.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
segmentintegerZero-based segment index. Default 0.
meshesarray of UeaLandSplineMeshEntryComplete new mesh list; empty clears the meshes.

Returns: segments, count, segment.

landscape.spline_set_point_settings (risk 2, mutates, requires world, smoke)​

Writes a control point's deformation (layer, raise/lower, end falloff) and point-mesh settings.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
indexintegerZero-based existing control-point index. Default 0.
layerNamestringPaint layer painted under the point when splines are applied; empty paints nothing.
raiseTerrainbooleanRaise the terrain up to the spline when applied. Default true.
lowerTerrainbooleanLower the terrain down to the spline when applied. Default true.
endFalloffnumberFalloff at a dead-end point, in centimetres. Default 0.
segmentMeshOffsetnumberVertical offset of segment meshes at this point, in centimetres. Default 0.
meshstringStatic mesh placed at the point; empty removes it.
meshScale{x,y,z}Scale of the point mesh. Default FUeaVec3(1,1,1).

Returns: controlPoints, segmentCount, message.

landscape.spline_set_point_transform (risk 2, mutates, requires world, smoke)​

Moves and rotates a control point (landscape-local), updating connected segments.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
indexintegerZero-based existing control-point index. Default 0.
location{x,y,z}New landscape-local location in centimetres.
rotation{x,y,z}New rotation in degrees (pitch, yaw, roll).

Returns: controlPoints, segmentCount, message.

landscape.spline_set_segment (risk 2, mutates, requires world, smoke)​

Writes a segment's deformation settings (paint layer, raise/lower terrain).

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
segmentintegerZero-based segment index. Default 0.
layerNamestringPaint layer painted under the segment when splines are applied; empty paints nothing.
raiseTerrainbooleanRaise the terrain up to the spline when applied. Default true.
lowerTerrainbooleanLower the terrain down to the spline when applied. Default true.

Returns: segments, count, segment.

landscape.spline_set_segment_tangents (risk 2, mutates, requires world, smoke)​

Sets the start/end tangent lengths of a segment.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
segmentintegerZero-based segment index. Default 0.
startTangentnumberStart tangent length in centimetres (negative flips the direction). Default 0.
endTangentnumberEnd tangent length in centimetres (negative flips the direction). Default 0.

Returns: segments, count, segment.

landscape.spline_set_side_falloff (risk 2, mutates, requires world, smoke)​

Sets a control point's side falloff in centimetres.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
indexintegerZero-based existing control-point index. Default 0.
valuenumberNonnegative width or falloff in centimetres. Default 0.

Returns: controlPoints, segmentCount, message.

landscape.spline_set_width (risk 2, mutates, requires world, smoke)​

Sets a control point's half-width in centimetres.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
indexintegerZero-based existing control-point index. Default 0.
valuenumberNonnegative width or falloff in centimetres. Default 0.

Returns: controlPoints, segmentCount, message.

landscape.stamp_height_region (risk 2, mutates, requires world, smoke)​

Writes a row-major block of heights (set, add, max or min) with a blend strength.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
minXintegerX vertex of the block's first column. Default 0.
minYintegerY vertex of the block's first row. Default 0.
columnsintegerBlock width in vertices. Default 1.
rowsintegerBlock height in vertices. Default 1.
heightsarray of integerrequired. Row-major values (columns*rows). set/max/min: absolute uint16 heights; add: signed deltas.
modestringset, add, max or min. Default TEXT("set").
strengthnumberBlend of the result, 0..1. Default 1.0.

Returns: landscape, message.

landscape.stamp_shape (risk 2, mutates, requires world, smoke)​

Adds a procedural feature: hill, cone, plateau or crater.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
shapestringhill (smooth bump), cone, plateau (flat top) or crater (raised rim, sunken bowl). Default TEXT("hill").
centerXintegerCentre X vertex. Default 0.
centerYintegerCentre Y vertex. Default 0.
radiusintegerRadius in vertices. Default 8.
heightDeltaintegerSigned peak height change in uint16 units (negative digs). Default 512.
innernumberPlateau: fraction of the radius that is flat top (0..0.95). Crater: rim position (0.3..0.95). Default 0.5.

Returns: landscape, message.

landscape.terrace_region (risk 2, mutates, requires world, smoke)​

No description.

ArgumentTypeDescription
landscapestringrequired. Landscape actor reference.
centerXintegerBrush centre X in landscape vertex coordinates. Default 0.
centerYintegerBrush centre Y in landscape vertex coordinates. Default 0.
radiusintegerBrush radius in vertices. Default 8.
strengthintegerSigned height strength in uint16 units. Default 128.
falloffnumberEdge falloff from 0 (hard) through 1 (linear). Default 1.0.
targetHeightintegerAbsolute target height for flatten and terrace tools. Default 32768.
seedintegerDeterministic noise seed. Default 0.
terraceStepintegerTerrace step height in uint16 units. Default 256.

Returns: landscape, message.

landscape.update_collision (risk 2, mutates, requires world, smoke)​

Recreates every collision component from the current heights (use after height edits before traces or physics).

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: landscape, boundsMin, boundsMax, components, collisionComponents.

landscape.validate_layers (risk 0, requires world, smoke)​

Reports paint layers without a layer-info asset and whether the landscape has a material.

ArgumentTypeDescription
landscapestringLandscape actor label, name, or path. Empty selects the only landscape.

Returns: components, layers, hasMaterial, outdatedGrassMaps, warnings.

landscape.vertex_to_world (risk 0, requires world, smoke)​

Converts landscape vertex coordinates (and a uint16 height, or the terrain height) to a world location.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
xnumberVertex X (fractional allowed). Default 0.
ynumberVertex Y (fractional allowed). Default 0.
heightnumberuint16 height; -1 samples the terrain at (x, y). Default -1.

Returns: vertexX, vertexY, height, world, inside, componentSectionBaseX, componentSectionBaseY.

landscape.world_to_vertex (risk 0, requires world, smoke)​

Converts a world location (cm) to landscape vertex coordinates and uint16 height.

ArgumentTypeDescription
landscapestringrequired. Landscape reference.
location{x,y,z}World location in cm.

Returns: vertexX, vertexY, height, world, inside, componentSectionBaseX, componentSectionBaseY.