Game Discussions Star Citizen Discussion Thread v12

By the way, in that 1 minute video of yours, at 40'' we can also observe that the player who goes to the red zone (on the red server) turns around and shoots against a Pico below... on his way he drags another Pico, but that displacement is not observed on the other 2 servers. On the other hand, that Pico bounces against the wall, but its subsequent displacement is completely different in the 3 servers (in the green one it has a very exaggerated bouncing movement and in the others it does not). In addition, shortly after, another player appears in that area, and we can also see that there is a disynchrony of Picos in the 3 servers...

All this in a closed and controlled demo, with 3 mini-servers in 3 mini-scenarios with a small group of entities. CIG wants me to believe that they already have the Server Meshing... please tell me how they intend this to work with hundreds of servers in a real MMO with thousands of users doing crazy things with millions of entities, and all this with different connections, with different pings, with the desync and lag inherent in a MMO, etc...

I just rewatched this again, and yeah it's a right old mess. The red server is regularly mis-reading the entity behaviours in other servers.

I guess my question to those who might know is:

What's driving the red server's entity view there? Is it the green server relaying state information incorrectly to the RL perhaps? The RL botching the transfer of state information on its end maybe? The red server doing some physics prediction guesswork on its end?

(NB the RL is supposed to be handling 'networked entity streaming and state replication', leaving game logic / animation / physics etc to the servers).

---

Anyways, FWIW some guy who vaguely seems to know his stuff left these comments on one of the vids. No idea if he's right, or genned up on this, but he seemed to sniff issues¯\(ツ)/¯

the implication on that is harrowing. Tells my that something is still clogged like crazy. Something on the Live PU server have an delay that mounts up with time and lets stall everything.

and it is that bad that even on such a small ass server the authority can't properly transferred and the entity is not properly deleted nor transferred.

My guts telling me that this is some REALLY deep sitting bug in the Code. probably on ASM Level...have fun fixing that... and these are the guys that have flipping CREATED that very engine....not able to find that bug...holy moly

to be frank i don't know if the guys who get over to CIG are the Core tech designer of the cryengine, but given how fast they had rewritten the whole code from 32bit to 64bit, i assume that at least one of them is with CIG now. For one person to find a Bug on ASM level in several GB of code...yeah that is "crawling under the desk and crying" level of boned.
 
Just leaving this here since I had to check what had been said about it before given the community is taking that carefully worded summary to be "Quanta depends on meshing",

Reddit in 2023:

"So basically, they need server meshing before. It was obvious tbh."
"Quanta needs meshing."
"[...] But like... this is kind of circular if you don't understand why it's waiting on meshing." (this whole post is comedy)

Chris in 2020:

"As far as Server Meshing being a prerequisite for Quantum, that isn’t the case. [...] Quantum is not dependent on the server mesh as it’s a level above the server mesh, but Quantum is what allows the server mesh to reflect dynamic state of the Universe."
 
That content creator corner kinda reminds me of something.

starcon 2023.jpg
 
I just rewatched this again, and yeah it's a right old mess. The red server is regularly mis-reading the entity behaviours in other servers.

I guess my question to those who might know is:

What's driving the red server's entity view there? Is it the green server relaying state information incorrectly to the RL perhaps? The RL botching the transfer of state information on its end maybe? The red server doing some physics prediction guesswork on its end?

(NB the RL is supposed to be handling 'networked entity streaming and state replication', leaving game logic / animation / physics etc to the servers).

---

Anyways, FWIW some guy who vaguely seems to know his stuff left these comments on one of the vids. No idea if he's right, or genned up on this, but he seemed to sniff issues¯\(ツ)/¯


I understand this stuff isn't simple, and i probably don't understand fidelity development, but i'm pretty sure if i was a better programmer (i haven't written any network code since the early 90s!) something like this shouldn't exactly be rocket science.

Imagine a more basic version, let's say we have 2 servers with an entity X on one server and another Y on the other, and X shoots = at Y.

So you'd have something like this:

[Server 1][Server 2]
[ X = ][ Y ]

So, tick by tick, the = moves one space to the right and at the border, server 1 says to server 2, hey, = has left me and now entering you at your left most space, so then you get. Server 1 removes = and server 2 adds it at the right position.

[ X ][= Y ]

Yeah, this is very simplistic, but i just don't see why CIG with many skilled programmers have taken so many years to get a somewhat wonky version of it semi-working.

By this point they should have cracked it or understood due to some limitations that I'm not seeing, its not actually possible to do how they want it to.
 
Yeah, this is very simplistic, but i just don't see why CIG with many skilled programmers have taken so many years to get a somewhat wonky version of it semi-working.
I don't think they've ever had skilled networking people, and networking has remained hard over the years unlike other aspects of vidya. And I don't think they had any distributed systems people at all, not even clowns.

The way games usually approach it is some spatial decomposition algorithm to define the regions (usually just quadtree), and then actors near the borders (where "near" is as small as they can get away with) are replicated from the authoritative region to the neighbors. The neighbor's actors near the borders then go about their business of doing raycasts and collisions and such against a mix of their own region's actors and the replicated neighbor actors, with some interactions with the proxies sent back to the authoritative server, like via RPC. It's the same approach as in client-server games, but now the server is also acting like a client to other servers. The main difference is actors are migrated to another region in some cases, like when they physically move into that region. And then if you want to adapt to load, that method of migration is used to shuffle the actors around as you redefine the regions. If you did the other parts well, then that last part isn't bad. Both networking and migration are things that should be planned from the beginning. There will always be some jank near borders, how much of it you perceive depends on the skill of the developer.

It's not the only way to do it, but it's the one that's easy for people who are experienced with multiplayer games to work on, and it works with sloppy gamedev code where server ticks aren't stable.
 

Viajero

Volunteer Moderator
Anyways, FWIW some guy who vaguely seems to know his stuff left these comments on one of the vids. No idea if he's right, or genned up on this, but he seemed to sniff issues¯\(ツ)/¯

Linky please, so to see the context of those replies?
 
Yeah, this is very simplistic, but i just don't see why CIG with many skilled programmers have taken so many years to get a somewhat wonky version of it semi-working.

I have less than zero clue as a non tech-head ;)

But I've always assumed authority transfer is harped on about not because the transfer is super hard per se, but because the implications are bad if it's not totally robust etc.

(And this didn't look that robust ;))
 
I have less than zero clue as a non tech-head ;)

But I've always assumed authority transfer is harped on about not because the transfer is super hard per se, but because the implications are bad if it's not totally robust etc.

(And this didn't look that robust ;))
It's a time sensitive task. Most is, lol, but this is time sensitive of a "what you see is what you get"-type. If you keep getting what you don't see - you know the kind in MP - you maybe try out another server, browse your router settings, light a candle at the altar of infinite internet and if nothing helps you play something else.
 
Back
Top Bottom