Updated Game Animation Sample Project (5.5) - Client Jitter on Multiplayer Latency

Absolutely love the Game Animation Sample Project (GASP) and the 5.5 update! I was super excited to hear that it now works with multiplayer! Awesome!

Well… Not really. If you add any amount of network latency to simulate a ‘real’ multiplayer environment (Editor Preferences → Level Editor - Play → Multiplayer Options → Enable Network Emulation), the client experiences pretty unsightly movement jitter and snapping when changing directions. Hosts/ListenServers also see others movement very jittery by default.

I have tried adjusting some settings (e.g. making the server correction more ‘forgiving’) but can’t seem to get this working. Anyone more knowledgeable with how this works able to get this working? Or is this a fundamental CMC/MotionMatching limitation in multiplayer?

I have also tried to use the ABP with the Mover Examples (using the new Mover 2.0 component) but also can’t get that to work!

1 Like

I’ve noticed the same issue when simulating the network. I used 20 min 200 max latency for both in and outs. The jitters were not very good looking.

I decided to fixate the latency to 150 for both min and max for in and out again, thinking the jitters might be caused by the simulation(never used network simulation before so I wasn’t sure how it would act between 20 and 200 latency which is a big gap) but even with the constant latency I had some bad jitters from both server and client sides, even if it was less common to 20-200 gap.

Did u manage to fix it?

As announced on the livestream by the legends that are Caleb Longmire (now at Epic) / Jose, this is a fundamental CMC issue (as I suspected to). They want to keep this a ‘BP Only’ project, and so with that limitation they have done what they can do.

…‘When Epic support good networking out of the box without code, that’s when we’ll update this Sample to do exactly that’

was the phrase used by Jose V. on the livestream. He is referring to replicating the trajectory ‘properly’.

The “multiplayer” will work OK for local clients (e.g. LAN / split screen) with ideal networking conditions. For True online multiplayer, you will need some way to replicate the trajectory for Motion Matching compatibility.

Timestamp to the recent stream with the relevant Multiplayer detail - https://youtu.be/3RlnclPo-3U?t=2124

IMHO, they shouldn’t call it multiplayer-ready with this limitation, they should call it ‘local multiplayer / split-screen ready’, but that’s just me being grumpy.

1 Like

Well, if I remember they also said it could be done better in C++ but we would need to do it ourselves.

I’m hoping someone in the community has enough experience to make a good networking solution for GASP. Or maybe there’s some plugin on FAB or something.

edit: today the download worked without any issues