Recently I made some tests from multiplayer client - client replication. I was in shock when I tried some different floor (made from cube tiles) for characters. It seems it matters and replication fails every time.
Please explain me this character behavior. Why there is difference on dedicated server and client.
In my opinion is critical error and it shouldn’t be possible to walk through other characters or other static meshes like that.
I was sure it was because of customized characters I use. But when I download Content Examples and check Network Features it fails too.
It only occurs when I make floor dynamically. When I place actors one by one is fine.
Shape or size of static mesh components doesn’t matter.
Only matters if I use manual attachment then is ok. If not and components are automatically attached to root it causes problems with replication.
Ok, I figured it out. Just because component as default was movable. If I change to static I don’t see any moves not being synchronized.
If You watch movie You have exactly what it is. Just basic floor made dynamically from tiles (cubes). I feel that any movable actor placed on the scene causes problems with characters desynchronization.
It’s not an issue for me but I had to resign from using movable actors. Instead of moving my collision actors I need to destroy them and make new one on the new place. It’s not good for performance. Especially If I run this code on dedicated server.
Thanks for the report! I was able to reproduce this in 4.8.3, 4.9.0, as well as our internal build, and I’ve entered a bug report for the issue (UE-20914). It does appear that when moving past the Server character, the Client character can get split between Server and Client while on top of a Movable Actor. I’ll let you know when I see any update on the bug. Thanks again!