Structural Support and Collapse¶
The structural support system determines whether a building has a valid path to a permanent world support object.
Support propagates between buildings through collision contact. World objects such as Landscapes, ground surfaces, and fixed platforms act as the final support sources.
Note
Structural support does not depend on Socket snapping.
A building's placement method does not affect the final support evaluation.
Support Types¶
| Type | Description |
|---|---|
| Building Support | Buildings such as foundations, walls, and pillars that can transfer support to adjacent buildings. |
| World Support | Permanent objects such as Landscapes, ground surfaces, and fixed platforms that act as the final source of a support path. |
The following configuration is typically used:
Buildings → Building Object Channel
Permanent world support → World Support Object Channel
Support contact queries → Support Query Trace Channel
For collision setup, see Collision Configuration.
Support Evaluation¶
Buildings do not need to be connected through Sockets. A support relationship can be established as long as the collision contact and channel configuration are valid.
The following placement methods can all participate in support detection:
- Socket snapping
- Free placement
- Surface placement
- Moving an existing building
- Project-specific placement logic
Warning
Being visually close does not mean that a support relationship has been established.
Buildings must satisfy the collision contact range and support query rules.
Related Settings¶
Open:
| Setting | Default | Description |
|---|---|---|
Building Object Channel |
WorldDynamic |
The Object Channel used by plugin buildings. |
World Support Object Channel |
WorldStatic |
The Object Channel used by permanent world support objects. |
Support Query Trace Channel |
Visibility |
The Trace Channel used to query structural support contact. |
Require World Support Tag Or Interface |
Disabled | Determines whether a support Tag or interface is also required. |
World Support Tag |
Building_SupportAnchor |
Explicitly allows an object to provide world support. |
World Support Excluded Tag |
Building_NoSupport |
Explicitly prevents an object from providing world support. |
World Support Check Distance |
5 cm |
The contact detection distance used for world support checks. |
Enable Collapse |
Enabled | Determines whether unsupported buildings are processed. |
For other project settings, see Plugin Settings.
Identifying World Support¶
Using Only the Collision Channel¶
Any object that matches the World Support Object Channel can act as permanent world support.
This configuration is suitable for projects that already use a dedicated world support channel.
Using a Tag or Interface¶
In addition to satisfying the collision requirements, the object must meet at least one of the following conditions:
- The Actor has the
World Support Tag. - The hit Component has the
World Support Tag. - The Actor implements the world support interface and allows support.
This configuration is suitable for projects where multiple objects use WorldStatic, but only some of them are allowed to provide structural support.
World Support Tag¶
Default value:
It can be added to:
or:
For an Actor containing multiple components, it is recommended to add the Tag to the Component that actually provides structural support.
World Support Excluded Tag¶
Default value:
This Tag excludes objects or components that must not provide structural support, such as:
- Decorative objects
- Grass
- Small props
- Auxiliary collision components
- Decorative HISM Components
The exclusion Tag has the highest priority. An object cannot provide support even if it also has the support Tag or implements the support interface.
World Support Interface¶
Objects whose support state depends on runtime conditions can implement the Building World Support Provider interface.
This is suitable for:
- Platforms that can be enabled or disabled
- Bridges that stop providing support after being damaged
- Moving platforms that provide support only when locked
- Other dynamic support objects
Return whether support is currently allowed from:
Tags are suitable for fixed configuration, while the interface is suitable for dynamic evaluation.
Evaluation Priority¶
Check the exclusion Tag
→ Check the collision channel
→ Check whether a Tag or interface is required
→ Check the support Tag
→ Check the support interface
→ Confirm world support
World Support Excluded Tag always has the highest priority.
World Support Check Distance¶
This value allows for small gaps between a building and its world support object.
Default value:
A value that is too small may fail to detect buildings resting on the ground. A value that is too large may incorrectly treat floating buildings as supported.
Keeping the default value is generally recommended.
Automatic Collapse¶
When the following setting is enabled:
the system checks affected structures after a building is placed, moved, or removed.
For example:
After the foundation is removed:
Buildings that no longer have a valid path to world support enter collapse processing.
In multiplayer games, the final validation and building removal are performed by the server.
When Enable Collapse is disabled, the plugin does not automatically process unsupported buildings. Building placement, movement, removal, and snapping remain available.
Common Configurations¶
Landscape¶
Also ensure that the Landscape responds to the Support Query Trace Channel.
Fixed Platform¶
In strict mode, add the following Tag to the platform Actor or its load-bearing Component:
Non-Supporting Objects¶
Add the following Tag to the Actor or Component:
Actor with Multiple Components¶
| Component | Tag |
|---|---|
| Ground Component | Building_SupportAnchor |
| Railing Component | Building_NoSupport |
| Decorative HISM | Building_NoSupport |
Troubleshooting¶
| Issue | What to Check |
|---|---|
| A building collapses immediately after placement | Check the world support channel, support Trace Channel, and detection distance. |
| Landscape cannot provide support | Check its Object Type and Trace Response. |
| Decorative objects incorrectly provide support | Add the World Support Excluded Tag. |
| Support cannot be obtained in strict mode | Check the support Tag or interface. |
| The wrong component in an Actor participates in support | Configure the Tag on the specific Component. |
| Removing a foundation does not cause collapse | Check Enable Collapse and the collision connections between buildings. |