FAQ / Troubleshooting

From the console, turn on mova.ix.Debug tags gates and aim at the object before diagnosing anything below: most symptoms below are visible instantly once you can see target resolution and gate state. See Debug overlay & troubleshooting for the full overlay reference.

Problem

Cause & fix

Client interactions do nothing (multiplayer)

The interactable's actor must have Replicates on, and clients must trigger via the Interactor (TargetInteraction), never by calling the IC's Server_* directly: a Server RPC on a server-owned actor is dropped. See Multiplayer.

The object has no interaction points

An IC with no actions and no tags resolves to zero points. Add at least one interaction tag (or a proximity tag): a tag with no matching action produces a phantom point that does nothing.

Outline highlight not visible

Enable Project Settings → Rendering → Custom Depth-Stencil Pass = "Enabled with Stencil", and add an outline post-process material keyed on the IC's OutlineStencilValue.

The mesh sinks into the floor when a montage plays

A montage blend crossfade drops the root. Play the slot animation with 0,0 blend. Prefer procedural keyframes for non-rigged geometry.

~ LOS tag isn't letting me aim past a blocker

~ on a component = "never blocks LOS". ~Handle = "count me as a hit on Handle." Put the tag on the blocking component, not the target.

Nothing happens on press, no errors

Turn on mova.ix.Debug tags gates: an [UNRESOLVED] target or a gate reading FAIL is the usual culprit.

Collapsed multi-choice shows the wrong options

A component tagged #unique opts out of collapsing. Per-IC Collapse = Always/Never overrides the project default.

A tag typo does nothing and doesn't error

It shouldn't: the panel's chips turn amber with a "did you mean" suggestion for an unresolved token. If you hand-edited JSON/text outside the panel, open it in the panel once to see the chip.

A preset doesn't fully apply to a new actor

Run GatherUnresolvedPresetNames before applying, it lists any component or target the preset references that the destination actor lacks. See Presets.

A half-open door reopens from closed after a save/load

Confirm SaveInteractiveGame/LoadInteractiveGame actually ran (not an ad-hoc transform save): timeline phase for running groups is only preserved by the save library. See Save & load.

Two objects that shouldn't both move still both move

A state is recorded on arrival. The unmarked ?@Other:!Open also covers "on its way there", so it holds mid-move. Write :=Open only when you mean "fully arrived". See States: everything one pose can drive.

Still stuck?