In Regards to SetReplicateMovement

So first off Rider does tell me Call to a virtual function inside a constructor is resolved at compile time when placing this under the Constructor. Not a big deal, I’ve been placing it in BeginPlay and I do believe at some point he did mention doing this in BeginPlay.

My question really is in relation to replication, I have noticed that the movement appears clean and smooth on the server but on the client it appears slightly choppy. It’s almost imperceptible but it’s there and It’s not really a big deal I suppose but is this normal?

Actually I’m wondering if maybe it’s an optical illusion since the server window can’t be in focus at the same time the client window is and perhaps this might effect the rate of replicated movement data I am receiving?

Just wondering because I know Unreal by default goes into power save mode or low performance mode or whatever when it loses focus.

Also I should note that when the platforms are moving up sometimes the player standing on them falls through when it stops at the top. I’m wondering if the two are related, it happens more often on the client then the server though.

EDIT: I’m not actually sure why it did it, I tried recreating it but was not successful so I’m not sure why it was falling through.

Alright, so I’m not 100% sure yet but I think this may be a replication thing. When I activate the trigger from the server it’s fine. When I activate the trigger from the client it’s choppy and the Server Player will sink into the platform while it’s moving up.

I used T.MaxFPS to reduce the framerate so that it was more obvious what is happening. This is only happening to the Server when playing as Listen Server, I wanted to clarify that.

When I run this as a Dedicated Server (Both are Clients) this problem is Non-Existent. It literally only happens to a Server which is what makes this so confusing for me.

I was looking for this earlier and was sure i posted it on here but only just now stumbled across it.

The problem was that I was using a Timer to Move the Platform.

It still did it in Stand-Alone. So, it’s not actually a replication problem at all…It’s simply a bad idea to do that for moving platforms because they are going to run on a separate thread and just like how using weapon sockets as targets for the Hand IK in an Anim Graph (Since Anim Graphs also have their own thread separate from the Game Tick) that discrepancy between the GameTick and the TimerTick is what causes the problem since the Character Movement is on a separate thread and not in-sync with the timer. This leads to a situation where the Character can lag behind because as far as it is concerned…the platform has not moved yet.

1 Like

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.

Privacy & Terms