Announcement

Collapse
No announcement yet.

Smooth Sync: Sync your Transforms Smoothly across the network

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

    e3pojedi
    Ah, you are using Unreal 4.18. Unreal doesn't let code plugins put out updates for versions earlier than the three latest versions of Unreal. I have messaged Unreal in the past about this because it seems kind of ridiculous but they gave me no response. I think I'm going to try again because it really is an insane policy.

    I have PMed you a copy of the newest Smooth Sync files, I definitely had some null fixes between then and now. I think you can just copy over the SmoothSync and State scripts and then restart Unreal for the changes to take affect? Unreal is weird, I always had issues editing engine plugins.

    Either way I'll take a look at it to confirm myself, but I don't have Unreal 4.18 so it might be until tomorrow when I respond.
    Last edited by fuestrine; 04-13-2019, 11:15 PM.
    Sync your transforms Smoothly across the network.

    Comment


      e3pojedi
      When I use Karting Template 4.18 with SmoothSync not enabled, I still get the crashing issue on your level change.

      "SetActiveLevelCollection attempted to use an out of date NetDriver: GameNetDriver"

      is the error I get over and over right before it crashes.
      Last edited by fuestrine; 04-14-2019, 01:00 AM.
      Sync your transforms Smoothly across the network.

      Comment


        I'm using UE 4.21.2, I just converted the template over to that version. I'll give the plugin a shot now. fuestrine

        Comment


          Is the plugin you provided the same on the marketplace (because I am using that already)? I upgraded to 4.22.0 and the error is completely gone on my project, maybe that's the issue? I really have no clue. fuestrine
          Last edited by e3pojedi; 04-14-2019, 07:15 AM.

          Comment


            e3pojedi
            Yes, the version I sent is the same that's on the Marketplace. It all works now for you?
            Sync your transforms Smoothly across the network.

            Comment


              Yes, however, I encountered a new issue of de-sync that can be replicated (in my project)- https://drive.google.com/open?id=1HZ...go4_gLWgAjD1OM

              Adding a lag of 500ms (Net PtkLag=500) BEFORE spawning into a smooth-sync controlled pawn works perfectly fine, but adding the lag AFTER spawning causes major desync in a few seconds. See the video above for details. fuestrine

              Comment


                e3pojedi
                Raise your TimeCorrectionSpeed if you want snappier changes to consistently large lag spikes.
                Sync your transforms Smoothly across the network.

                Comment


                  e3pojedi
                  Ah, "in a few seconds". I thought you said "for a few seconds". I'll see what I can find.
                  Sync your transforms Smoothly across the network.

                  Comment


                    e3pojedi
                    I don't see this issue in the Vehicle Advanced template or Third Person template when I use Net PktLag=500 in the console after connecting. Do you have any other tips on how I might be able to replicate this issue? Try reverting back to default SmoothSync settings if you haven't.
                    Sync your transforms Smoothly across the network.

                    Comment


                      e3pojedi

                      I'm just wondering, did you modify the fps limit in the project settings?
                      Because I had that exact desyncing problem which you described, with SmoothSync synchronized pawns, if I did so.
                      My solution was to remove the fixed fps limit in the project settings and just limit it via the t.maxfps command instead.


                      [PLUGIN] Free Radar Chart Widget

                      Comment


                        When turning off replicate movement on the third person character the player animations no longer replicate. Are there any simple solutions for this? Enjoying the plug-in so far, great work!

                        Comment


                          tschmi22
                          I've been trying to rewrite everything to allow custom syncing of any variables but I ran into some walls.

                          So I ended up converting what I have now to do animations (it syncs MovementMode and velocity on movement components) but I didn't really check everything to make sure it's running perfectly since I'm in the middle of rewriting some things.

                          I'll PM you a copy.
                          Sync your transforms Smoothly across the network.

                          Comment


                            e3pojedi
                            I think I came across an error in Smooth Sync that may cause the issue. I'm not sure on the solution yet, but I should have it done this weekend. I'll message you again then.
                            Sync your transforms Smoothly across the network.

                            Comment


                              Hey there,

                              So I also had the same issue that e3pojedi discovered with the 500ms ping, after hours of debugging and going over the C++, at least on my occasion, it was related to extrapolation not working, usually around 400-500ms ping that's when interpolation stopped working and extrapolation kicked in, but it never ran, because isSimulatingPhysics was always set to false since my character's root component doesn't have physics on. So I removed all mentions of isSimulatingPhysics and extrapolation started working again, which fixed the issue of massive desync, getting stuck in place during high ping, I'm using character movement with the smooth sync comp, if that helps anyone else.

                              For the animation issue, you simply need to use the latest velocity/rotation in the SmoothSync comp instead of get actor velocity/rotation, what I did was use the default methods in autonomous proxy and used the SmoothSync velocity as a simulated proxy.

                              Thanks for the plugin, very helpful.

                              EDIT: Scratch that, for some reason I can't get extrapolation to work, I've modified the code to use character movement and disabled position updates so only extrapolation runs, it calls the event and applies the velocity but the simulated proxy stays in the same place always, I've noticed that this also affects rotation as well, so once the ping is over 500ms+ rotation stops working until you stop sending any inputs and rest kicks in, that's when things are updated.
                              Last edited by BioXide; 04-23-2019, 08:51 AM.
                              Founder & Lead Developer @ Far Frontier Studios
                              My Website: https://theindiedev.com

                              Add me to your LinkedIN Network CLICK HERE!

                              Comment


                                BioXide
                                Sorry about the issue. I've got a solution already but it needs cleaning up. I plan on putting it on the Marketplace tomorrow. I've also got a fix for automatically using Velocity for running animations and I'm also syncing the MovementMode so that things like the jump animation plays in the Third Person Template.
                                Sync your transforms Smoothly across the network.

                                Comment

                                Working...
                                X