Skip to main content

build.scan_objects

Overview

  • List game objects placed in the current site with their entity IDs, table IDs, floor levels, and transforms. Works in both play mode (character must be inside a building) and build mode. Use the entity_id with build.remove_object or any build.* customization command. 'location' and 'yaw' are SITE-RELATIVE, the same space building.place_object and building.move_object take and build.scan_walls / build.scan_floors return, so you can feed them straight back in. 'world_location' and 'world_yaw' are the raw engine values; they differ because sites are rotated against the world axes (one measured at 174.5 degrees). Do not mix the two. Returns at most 'limit' objects (200 by default) - page through large sites with 'offset', and compare 'count' against 'total' to detect truncation.

Metadata

FieldValue
DisplayScan Placed Objects
Categorybuild
AccessPublic
ScopeB1Standalone
TagsExperimental
Aliases—

Parameters

NameTypeRequiredDefaultDescription
floor_levelintno—Filter by floor level (default: all floors)
deletable_onlyboolno—Only include objects that can be removed (excludes dev-locked and non-deletable). Default: false
table_id_prefixstringno—Only include objects whose table id starts with this prefix, e.g. Object_Furniture (case-insensitive)
limitintno200Maximum number of objects to return in the JSON array. 0 means no limit. 'total' in the response always reflects the true match count.
offsetintno0Skip this many matching objects before filling the array (for paging)

Usage

await inzoi.cli.execute('build.scan_objects', {
floor_level: 0, // optional
deletable_only: false, // optional
table_id_prefix: '', // optional
limit: 200, // optional
offset: 0, // optional
});