Interaction and Grab Sessions
The CAT Grab Component is the player's entry point for picking up and assembling parts. A Grab Session starts when a valid focused target is grabbed and ends when that target is released or the grab is canceled.
A session uses one of two behaviors:
- Physical Hold: Holds and moves an object freely.
- Assembly Placement: Previews connector snapping and submits an Assembly command when placement is confirmed.

Basic setup
- Add a CAT Grab Component to the player character or pawn.
- Ensure the target Assembly Actor has its default CAT Grabbable Component.
- Leave Input Mode set to
Managed, or selectExternaland connect your own input to the Grab API. - Configure trace distance, placement distance, collision checks, and rotation controls.
How input controls a Grab Session
| Input Mode | Behavior |
|---|---|
Managed |
CAT adds and removes its Input Mapping Contexts and binds the configured Input Actions to the Grab Component automatically. |
External |
CAT does not manage contexts or bindings. Your Blueprint or C++ input code calls Begin Grab, End Grab, rotation, distance, and detach functions directly. |
The default Managed input configuration is available under CAT Grab Component > Input.

The default managed setup changes contexts as they are needed:
IMC_CATGrabModeremains available for enabling or disabling Grab Mode.IMC_CATGrabbecomes active while a valid target is focused or a Grab Session is active.IMC_CATGrabActivebecomes active for controls used while placing or rotating a grabbed object.
The matching IA_CATGrab... actions call the Grab Component API. Starting or ending a grab is then validated by the server. Grab Mode only enables targeting and input; it is not itself a Grab Session.
Grab Session lifecycle
Find focused target
↓
Begin Grab on server
↓
Physical Hold or Assembly Placement preview
↓
Rotate / adjust distance / select snap
↓
End Grab and finalize
Connector snapping
When the grabbed part approaches a compatible connector, CAT evaluates a snap candidate and displays a placement ghost. On release, a valid placement is converted into an authoritative Assembly command.
Useful Blueprint checks
Has Focused Grab TargetIs GrabbingGet Current Grabbed PartGet Current Grabbed Assembly ComponentIs Current Ghost SnappedDetach Looked Connector
Grab Session and Control Session
An active Control Session blocks conflicting grabs. For managed input, CAT temporarily removes the Grab bindings and contexts, then restores them after the Control Session ends.