Thirdperson Character not Replicating correctly after being attached to an Actor (Blueprints, Project included)

Problem description: When the Third Person Character gets attached to any other Actor (AttachToActor, Rule: Keep World), from the view of other clients the character (capsule, skeletal mesh) is out of sync (*).

(*) Out of sync in that case means two things: (1) the capsule+skeletal mesh keep moving at the velocity and with the animation that the character had at the point of attachment, so even if the pawn of the owning client comes to a halt or changes direction, the capsule and mesh do not follow (observed from other clients). (2) the capsule leaves a “ghost” collision at the point of attachment, i.e. even though the capsule moves as described in (1) as can be observed when “hidden in game” is set to false on the capsule, an active collision remains at the location the character was at when getting attached. This collision (again, which only exists for other clients) does not show when invoking the “show collision” console command.

Steps to reproduce:

  1. Create new Thirdperson project
  2. Open ThirdpersonCharacter blueprint and make sure Replication is set to true
  3. Create new Blueprint Actor, “BP_AttachmentReplication”
  4. Here, set Replicates to true
  5. Add Box Collision Component to “BP_AttachmentReplication”
  6. Set Component Replicates to true on the Box Collision
  7. Add an On Begin Overlap Event for the Box Collision Component
  8. Set up graph as in this screenshot: http://i.imgur.com/0GkisHP.jpg
  9. Place “BP_AttachmentReplication” Actor in Level
  10. Set “Number Of Players” to 2+
  11. Hit Play and walk each Character inside the collision box of the “BP_AttachmentReplication” Actor

Observed result as shown on this screenshot: http://i.imgur.com/oKCTFYL.jpg - server shows correct behavior, whereas from client1’s POV the character controlled by the server just keeps running (invisible on the screenshot, there is also a collision from the character’s capsule right where the server character should be).

  • Note 1: step 8. can be set up in various ways (e.g. https://i.imgur.com/sMUSVyz.png), result stays the same.
  • Note 2: this issue does not seem to occur with the First Person character.

I uploaded a clean Thirdperson Template project with the steps above implemented here (4.18.2): Zippyshare.com -

Hello Capitan,

Thank you for the report! I was able to repro, your issue has been logged.

Did anyone actually solve this problem?

1 Like

Stop movement on the captured player.
Disable CMC (Set movement mode: None)
Disable collision on the capsule component (No collision).
Disable movement input (depends on where your movement code is…character/controller).
Attach Actor to Component

I see, thanks. My aim is to be able to walk while attached to the “vehicle”. Have been able to do this for the server, and also the clients are able to move around, but they cannot see movement from other clients or the server once attached. Instead the characters, that are attached, will just continue moving in the direction they had when first overlapping. Any suggestions for replicating this?

Or is this method only applicable if you are placing a static player?

Are you talking more about a craft like a ship vs car?

Two separate things there.

Yes exactly! I have managed to make it work for the server, but something is preventing the clients from seing other characters correctly. On the clients, all other characters will continue to move in the same direction as when they were attached. Do you have any idea what might prevent replication to the clients? The clients can move correctly when attached themselves, it is just all other characters that are not replicated correctly when authoritative…

Try Ignore client Movement Error Checks and Correction, then Server Accept Client Authoritative Position

Try them separate first. Might only need one or the other.

Thanks, but did not work sadly… you can replicate the problem by opening a third person template, and make it so that when a character overlaps with something you attach the character in the thirdperson character bp. From the server everything seems correct, but when the client sees the server get attached, the server will just continue to move in the direction it entered. I do the attachment on the server.