Skip to content

Make objects traversable

Traversal only considers geometry that blocks the Traversable trace channel. Everything else is jumped. Background: Traversal system.

Option 1: use the grey-box block

Place /GASPALS/Levels/LevelPrototyping/LevelBlock_Traversable and scale it. It is already set up, and is what the demo levels use.

Option 2: set the collision preset

Select the static mesh actor (or component) and, under Collision, set Collision Presets to TraversalObjectPreset. It blocks everything, including Traversable.

Option 3: custom collision

Keep your preset, choose Custom..., and set the Traversable response (under Trace Responses) to Block. Do this in the static mesh asset's default collision to make every placement traversable.

For Blueprint actors, set it on the mesh components in the Blueprint.

Shapes that work

Obstacle Typical result
Low and thin (a fence, a low wall) Hurdle or vault, depending on speed and what is behind it.
Low and deep (a crate, a table) Vault or mantle up onto it.
Chest height Mantle.
Taller than the character can reach Jump.
Narrower than 70 cm Jump (Min Ledge Width on AC_TraversalTracer).

Simple collision that matches the visible top edge gives the best results: the warp targets are placed on the measured ledge.

Debug

  1. Type DDCvar.Traversal.DrawDebugLevel 3 in the console during Play, then jump at the obstacle: the traces, ledges and room checks are drawn and the measured data is printed.
  2. Drop a BP_TraversalTester (/GASPALS/Systems/TraversalSystem) in front of the obstacle in the editor: it draws the tracer's result without playing. Its Initial Trace Distance sets how far it looks.
  3. show collision shows whether the obstacle's collision is what you expect.
Symptom Fix
The character always jumps The obstacle does not block Traversable, or it is narrower than Min Ledge Width.
The hands or feet miss the edge The collision top is not where the visible edge is.
A traversal plays into a wall behind the obstacle The room check found space; add collision for the wall, or block Visibility on it.