Back to search

What do we know is causing [desync] at this point? What are we doing to resolve it?

TL;DRBeausejour says the cause isn't pinned down yet, but some server meshes run below the target frame rate, and the team is tracking six to eight optimizations, including lock contention in the area component, for the hotfix channel.

Benoit BeausejourChief Technology Officer

Well, so what we know about right now is that there are some meshes, and when I say meshes, I mean a dedicated game server inside a shard, that are running way below the FPS spec that we want. And so we don't have a handle just yet on what is actually causing it. We do have performance captures, and we're tracking at least six to eight very specific optimizations that need to happen. One of them is within the area component, which is used all over the engine. Area and zone component, they kind of go hand in hand. Again, because we're pushing more content, the hierarchy tree of the game world is much bigger. So there's more areas, more zones, more subdivision, more, more, more. There are some areas of that where you add a lot of entities that enter or exit these areas, and the engine provides the listeners to track entities entering areas or leaving areas or zones changing, right? And obviously there's concurrency constructs around this to prevent one thread from accessing another thread, right? And so, just keeping it simple without diving too much into the low level, which we will probably do in some of our desync areas, there's lock contention in the area component at the moment in some places. There's lock contention in some areas of the game. Well, I literally mean area: if there's many entities in this spot, because of the way it's configured, we're seeing basically FPS drops in those areas. And so we're tracking, like I said, about six to eight major optimizations that we're trying to get in our hotfix channel, to try to get this FPS back up to the spec that we want, which is above 20, across the...

Jared HuckabyHost, Community

Server FPS.

Benoit BeausejourChief Technology Officer

Server FPS, correct.

Jared HuckabyHost, Community

Somebody's going to take that clip and say Star Citizen's only looking for 20 FPS in gameplay.

Benoit BeausejourChief Technology Officer

No, no, no. And it's important to note that when a server is running low FPS, it doesn't mean that it will create desync, but especially when you're interacting with entities that are simulated on that DGS, AI characters, NPCs, then you're going to perceive these things, because the source is slow at creating its output. The traffic goes from your game client to the replication node, replication node to game server. Now, if the game server is running slow: at the beginning of the frame, he's taking the state from the network to the game and applying it. At the end of it, he's applying the changes back to the network. If that loop is slow, then your client's going to predict something, and then that prediction will get corrected the next frame, and that will create a rubber band, right? And so that's the gist of why there's desync in general. Why does the client have to predict? Because if he doesn't predict, then you're going to be at the tick of the server, and you'll see...

Jens LindDirector of Gameplay Programming

Even if it was running perfect, you'd see it in an FPS. Because your need for it to be so, so responsive is too high.

Star Citizen Live›Tech Talk·
Published on this date.18 Jun 2026