Smooth Sync: Sync your Transforms Smoothly across the network

Hum, I don’t know how to detecting the collision on the server? there is a way to do that? Because, actually, I detect the collision on the client and send all information needed (Location of the Hit and who hit who) to the server who send to hitted client that a Radial Force happening at the impact location and there is the lag.

My screenshot only show simpliest mechanics, easy to reproduce, from the Physical Ball template present by default in UE4 and this screenshot come actually from the PhysicalBallBP.

I have also tried to fake colision detection by using distance between****2 balls, when distance is less than the ball size, the server fire a Radial Force, but same result, a 300-500ms lag.

I noticed that when a ball hit another one, the other ball become blur for 1-2 frames like it want to move but is stuck in place then it move half a second later. My internet connection don’t let me send vidéo easily, but If you try to reproduce the BP from my first screenshot (top of this page) in PhysicalBallBP, you will see what happen (I know that the BP don’t send anything to the server in this case, but the result is the same)

@Syedhs There is a new version out now that may fix the “second time loading in to a level” issues. I’m not totally sure though as I wasn’t ever able to replicate the issue, but I did fix some things in related code that seems promising. Let me know if it’s fixed for you and if not maybe give me some more details on how you are spawning and changing levels.

Thank you!.. But it may take some time for me to test it… I am on ‘other areas’ of coding…
Btw, briefly what has been changed for that fix?

@Syedhs I added a bit of code that forces a full resend whenever an “initial” replication happens on an object, which should be every time you load in to a scene. Hopefully that will fix any values that are somehow getting stuck in an incorrect state.

@Lee.J8 Can you get me a log from when it crashes on the quest? I don’t have a Quest to test with myself, but I did just recently re-confirm that it works on Android in general.

Hello, a few days ago you asked me in my review of the Marketplace what was not working with the plugin. Here you have a video that shows that the crouch animation is not synchronizing between the client and the server. Also if you look at the legs of the Mannequin shakes while in the server itself do not. All this is synchronized without problem using Unreal’s default replication system.

@FireblitzSpain Thanks for the video. I’m looking in to it.

@FireblitzSpain Would it be possible for you to send me a copy of that project? The default Third Person Template does not include crouching and I want to make sure I’m setting things up the same way you are.

@FireblitzSpain I recently submitted a new version of the plugin that should fix the stuttering issues. It should show up on the marketplace soon.

I’m a little stumped on the crouching issue though. It seems to me that crouching is handled via replicating the bIsCrouched boolean, so it should work exactly the same regardless of if you are using Smooth Sync or Replicate Movement, since it doesn’t seem to depend on Replicate Movement at all. As long as you are setting that boolean on the server it should be replicated and the character should crouch. And it does in fact seem like crouching is happening in that video (that’s why the character sort of twitches through the floor for a second), but for some reason the crouch animation isn’t playing. I suspect this has something to do with how you are triggering the crouch animation. None of the templates seem to have the crouch action / animation hooked up though so I’m not totally sure what the “right” way to do that is. It seems like you’re saying the crouch animation does play for you when you use Replicate Movement though. Is this the case? It would really help if you could either send me your project or walk me through how you’ve implemented crouching so that it works and plays the animation using Replicate Movement.

Hi. I’ve tried the update and it works very well indeed except for the crouch that still doesn’t work. Unfortunately I can’t share my project because it’s my main project. Besides, it is almost a 60gb. project. But I can tell you that the crouch (from the character in the video) belongs to this asset:

that a few months ago was given as a gift at the Marketplace.

As I said, without smooth sync, the crouch replicates without any problem.

@FireblitzSpain
Awesome, glad it helped!

We’ll take a look and see what we can find out.

Hello again. I’m having serious problems replicating something as simple as moving a character to a specific point and attaching it to a component using a timeline.
With the plugin activated the character starts shaking from his position to the place where he has to go and flies through the air.
The same happens detaching the actor.
If I deactivate the plugin everything works correctly and replicates as intented.
I have tried to deactivate the plugin and to activate it again when I perform this action but it doesn’t work. The character moves hyper fast after this.
Finally I have desisted in using the plugin in my project because I think it is not 100% polished and is more focused for simpler games. I hope to test the plugin again in a few months and who knows if it will finally work as it should. Cheers.

Good luck.

@FireblitzSpain Sorry for the issues. Thanks for the information though. Hopefully it will help us figure out what’s going wrong for you.

Hey guys! I’m having a problem in UE4 v4.22 and this plugin.
When I compile for Android arm v7 it works just fine, but when I compile for arm64 I get this error message when I open the game:
“Plugin ‘SmoothSyncPlugin’ failed to load because module ‘SmoothSyncPlugin’ could not be found. Please ensure the plugin is properly installed, otherwise consider disabling the plugin for this project.” And the game closes.

Any ideas?

Hey I was having a similar problem with my car game and the problem was that the mesh component of my pawn was with “replicate component” enabled. I think you should give it a try!

I managed to solve it by copying the plugin folder from engine/plugins/marketplace/SmoothSyncPlugin to the plugin folder on project origin :slight_smile:

@Douglas
Glad to hear! And thanks for the tip to the other user!

“Replicate movement” is not cheked since the beginning. The plugin has several problems with things like “Set position”, root motion animations or the crouch/uncrouch nodes from the character movement component. I hope that someday all this will be solved because I paid for this plugin and I think it’s a good addon that I would like to use in my project.

We are having issues with this on our “Vehicles”, is this something common which others are having?

We have tried several vehicle types & physics from Sedan/Advanced BlueMan and others. Using Smooth-sync is so much better than standard UE4 Replication however… we still have issues with the following. [HR][/HR]Example = 2 Vehicles

  • Both Accelerating from standstill, on occasion Host and/or Client = Jerky/Not Smooth
  • High Speed = Jerky/Not Smooth

Is there any particular settings that you suggest would improve this? or any tips on improving vehicle movement for smooth game-play in general. [HR][/HR]
Any help would be much appreciated.

Kind Regards

@PerfsPC
We have an update we are working on that adds some extra smoothness for these scenarios.

I’ll let you know when it’s up.