Troubleshooting
Start with ED.Mounting.Dump, ED.Mounting.DrawSeats 1 and log LogEDMounting Verbose. Between them
they answer most of this list before you get here — Dump in particular prints, per seat, how many of
its doors a rider currently fits through, which is the single most common answer on this page.
Nothing happens when I press the key
The request returned a failure and nobody looked at it. Bind On Mount Failed and print Get Failure Text. The usual answers:
| Failure | Cause |
|---|---|
NoMountable | Nothing within the query's Max Distance, or the target has no mountable component. |
TooFar | In the query's range, but outside the mount's own Mount Distance. |
NoEntryPoint | Every door is blocked. Turn on DrawSeats and look for red. |
SeatOccupied | Every seat is taken or reserved. |
SeatLocked | The seat's Required Rider Tags refused this rider. |
Busy | Already mid-transition. Two key presses in one animation. |
It puts me in the far door
The near one is not usable. ED.Mounting.DrawSeats 1 — a red capsule means the clearance sweep hit
something:
- The clearance channel is
Visibilityand there is foliage, a decal actor or a trigger volume in the way. Give characters their own channel and point Clearance Channel at it. - The entry point is inside the vehicle's own collision. Entry points are relative to the seat, so a seat moved after its doors were authored drags them along.
- The capsule is bigger than your character. The defaults match the engine's 34 × 88.
The rider ends up half inside the seat
The seat transform is where the rider's root goes, not their feet. For a Character the root is the capsule centre, so the seat wants to be about a capsule half-height above the cushion.
The rider is thrown into the sky when the car hits a ramp
The rider's collision is still on. Check the seat's rider policy — Collision should be Disabled,
or Query Only if you need traces to see them.
A passenger jitters half a metre behind their seat on clients
Suppress Movement Replication is off. The seat's transform already comes from the mount, so replicating the rider's location as well is the same information twice, and the two disagree during correction.
The passenger freezes mid-pose when I look away
Always Tick Pose While Seated is off. A passenger is inside the mount's bounds, so they are culled by the mount's visibility, not their own.
The get-in animation plays but the rider never sits down
The montage has no Mount.Event.Attach notify and something is wrong with the fallback:
log LogEDMounting Verbose— the watchdog logs when it completes a transition late.- The montage must play into the slot named by the animation set's Montage Slot, and that slot must exist in the rider's anim graph. A montage playing into a slot the graph does not have is invisible and has no effect.
The animation plays a metre away from the car
Motion warping. Either the rider has no Motion Warping component, or the montage has no Motion
Warping notify state pointing at EDMountSeat / EDMountEntry.
Without warping the framework still snaps the rider to the seat at the attach moment — so a large visible correction at that instant is the same diagnosis.
The car drives off on its own after I get out
Stop When Driverless is off, or your vehicle does not derive from AEDMountableVehicle and does
not zero its own inputs. Chaos holds the last input it was given.
Also check that you forward zero on input release and not only while held — bind Completed as
well as Triggered.
A passenger can steer the car
They cannot: Apply Drive Input is a no-op unless the caller's seat is tagged Mount.Role.Driver. If
the car is moving, something else is calling the movement component directly — a leftover input binding
on the vehicle pawn itself, most likely.
Two players got into the same seat
They cannot, on the server. What you are seeing is a client that predicted and has not been corrected
yet — check ED.Mounting.DrawState 1 and compare the sequence numbers. If it never corrects, the
reject RPC is not arriving; Prediction Timeout should still recover it within a second.
If it genuinely persists past that, ED.Mounting.DisablePrediction 1 on both clients tells you whether
prediction is involved at all.
Seat handles are different on the client and the server
They reconcile themselves: the replicated seat array carries both the handle and the component it belongs to, and a client adopts the server's answer when it arrives.
Before that first replication a client uses provisional handles, which is why you should look seats up by name once at setup and hold the handle, rather than assuming a number.
It builds in the editor but fails to package
Almost always a missing include, hidden in the editor by unity builds. Run the same check the store does:
RunUAT.bat BuildPlugin -Plugin=<path>/EDMountingSystem.uplugin -Package=<out> -TargetPlatforms=Win64 -Rocket
It builds without unity and with warnings as errors, and it is the only check that catches them. The
other recurring cause is editor-only data used outside WITH_EDITORONLY_DATA.
Still stuck
Discord. Bring the LogEDMounting Verbose output and a screenshot
with ED.Mounting.DrawSeats 1 on — between them they usually contain the answer.