Page MenuHomeSchine - Phabricator

Starmade | Multiplayer positional sync issues
Open, NormalPublic

Description

On high-latency servers, there seems to be some trouble with the player actually being where his client thinks he is.

Here we have Ithirahad trying to go though a warpgate which won't work (his view):

http://i.imgur.com/tT9aAiT.png

Because he's actually here (from my view):

http://i.imgur.com/ySHCg0z.jpg

And in this video, I simply move between two ships, grappling them:

https://www.youtube.com/watch?v=YJCxpwxmT_E

However, watching the same routine from another account connected to the same server reveals something's not right - the ship isn't in the same spot and I teleport if I grapple:

https://www.youtube.com/watch?v=pC-hilfb2OA

Details

Task Type
Bug
Testing Results
Affected Gamemode(s)
Multiplayer
Reproducible
Not on purpose
Category
Engine
First occurrence (version)
0.19431
Hardware/Software/System
OS-Specific
No
Hardware-Specific
No
Video Card Vendor
uncertain
Serverconfig (server.cfg)
<replace this line with the file content>
Clientconfig (settings.cfg)
<replace this line with the file content>

Event Timeline

SpaceKing updated the task description. (Show Details)Oct 2 2015, 4:03 AM
SpaceKing changed Category from none/unspecified to Engine.
SpaceKing changed Affected Gamemode(s) from none/unspecified to Multiplayer.
SpaceKing changed Reproducible from uncertain to Not on purpose.
SpaceKing set Last tested (version) to 0.19431.
SpaceKing edited Serverconfig (server.cfg). (Show Details)
SpaceKing edited Clientconfig (settings.cfg). (Show Details)
SpaceKing added a subscriber: SpaceKing.
SpaceKing created this task.
SpaceKing raised the priority of this task from to Normal.
Restricted Application added a project: Issue Navigation. · View Herald TranscriptOct 2 2015, 4:03 AM
SpaceKing updated the task description. (Show Details)Oct 2 2015, 4:09 AM
SpaceKing set Task Type to Bug.
SpaceKing set OS-Specific to No.
SpaceKing set Hardware-Specific to No.
SpaceKing set Video Card Vendor to uncertain.
SmilingDemon shifted this object from the S1 Public space to the S3 Starmade space.
SmilingDemon changed the visibility from "Custom Policy" to "Public (No Login Required)".
SmilingDemon changed the edit policy from "Task Author" to "Starmade (Project)".
SmilingDemon set First occurrence (version) to 0.19431.
SmilingDemon removed Last tested (version).

Could you please add on which server this happened and what the ping rates of both watchers are when it happens?

Have you seen it on the Testserver too ?

Could you please add on which server this happened and what the ping rates of both watchers are when it happens?

StarSide. IP: http://sm.starside.space/

Happens at least once a week there. Typical ping is 50-200, in the screenshot I was getting 52 ping.

In one case, three people all saw a floating object in three different positions

Have you seen it on the Testserver too ?

Once or twice, doesn't happen regularly (that I can tell)

-Validated-
OK
though two or more player connected to a Multiplayer server do see each other in different places at the same time.
that is a syncing problem then.

  • being only 50 ms it isnt connection related then
  • maybe position update client <-> server have to have a higher priority some how than ?
  • there is a need for a proper way to cause this (maybe with a defined way to stress the server while running around and pressing buttons while someone watches or something like that)
SmilingDemon added a subscriber: SmilingDemon.
SmilingDemon removed SmilingDemon as the assignee of this task.
Dalmont added a subscriber: Dalmont.EditedNov 25 2015, 4:51 AM

Been reproducing this with some success when loading large entities or particularly on approach to planets over the 300m^3 range.

It seems to be most likely to happen when there are already a number of players in a sector with large / complicated entities; and another large or complicated entity enters the sector. The spike in ping seems to directly correlate with this; but the issue persists until the client reconnects even after the ping goes back down.

This was recently illustrated by an incident on Borst's server, and I think it shed some light on the situation.

Recently Borst and myself were both TAB + F8'd into the same core of the same ship; when we approached a large entity (planet plate).
Pings were holding at around 55 - 130 m/s.
Borst was LAN connected to the server directly.

I attempted to land on the planet plate while he was in the build mode of the same ship; and the following positional desynch bug occurred:

  • From his perspective I appeared to go through the planet plate in its entirety and continue through to the other side.
  • From his perspective he was able to no-clip the ship through the planet at will without any collision detection.
  • From my perspective I was hitting an "invisible wall" and was unable to move my ship further towards the plate.
  • From my perspective I was not in contact with anything at the time and was many hundreds of meters above the plate.

We then began attempting to fix via-relog.

I attempted to re-log first, but the "invisible wall" issue persisted.
Once Borst left the ship and re-logged himself I was able to land successfully without an additional re-log.

This illustrates some key points:

  • I was likely NOT desynched with the server.
  • Borst was desynched (The problem went away when he re-logged).
  • Because my problem was solved on his relog and not my own, we can assume the server was sending incorrect packets to my client based on the wrong information from his client.
  • This is the first and ONLY time I have ever not seen the issue immediately fixed by the first client relog.

Hopefully that helps! We're both willing to attempt to reproduce it or give any logs / blueprints / exports needed.
Its worth mentioning I have seen this happen on the test server a few times as well. Particularly near the new spawn-station.

You forgot to mention that the server is an Ubuntu Laptop 32bit OS with 1 GB assigned to SM.

And i have seen desyncs on the Testserver lately without anyone around and on the surface of an r250ish planet too.
but not as servere as the ship clipping through everything i had seen on Borsts stream. (i assume that is what you are talking about )

I have been having this issue when Teleporting using the admin commands from one sector to another. I realized that this is the only time it happens for me.

I had some odd behavior on the test server with dropped items not being able to be picked up even though both clients saw the same position of the dropped item, only the client that dropped the item could retrieve it.

https://www.youtube.com/watch?v=BSgabVZ5OMw

lancake added a subscriber: lancake.Apr 3 2016, 4:53 PM

I believe doing some actions during an auto save can trigger a desynch, I've seen it happen if you try to use a transporter right during an auto save. You ended up desynched. Could be the same for sector changes.

Asypha added a subscriber: Asypha.Jul 20 2017, 3:10 AM

I have seen this problem across many servers and it has led to plenty of disagreement about where on a ship a partner is. Most recently seen on the cake server walking a friend through my build. Neither of us appeared in the correct place for the other person.