John Carmack on QuakeWorld latency and business model (1996)
raw.githubusercontent.com
John Carmack on QuakeWorld latency and business model (1996)
1–10 of 169 posts
Re: John Carmack on QuakeWorld latency and business model (1996)
#2I really like his ability to take out code and 'shoot it'. Back to the drawing board. It's a quality of a great engineer, to be able to reflect on what's been done and admit it's not good enough.
Re: John Carmack on QuakeWorld latency and business model (1996)
#3If you don't know what that is, Valve has some good documentation on it (relating to Source engine, but it's the same concept).[1]
Latency was still a problem even with CSP because we didn't yet have lag compensation on the server. So although you got an authoritative server (no cheating) and instant inputs (no round-trip wait), you could still shoot someone on the client and miss them on the server. You had to shoot ahead of them, further if your latency was worse. As far as I know, Source engine was the first to add lag compensation, which has the server rewind the other players to be where you would have seen them on the client.
Since client-side prediction can be performance intensive, and lag compensation can be difficult for anything beyond simple raycast checks, many games still don't do both. Team Fortress 2 for instance does lag compensation on basic guns but not on things like the soldier's rocket or the pyro's flamethrower. Some games simply allow the client to decide who they hit, which removes the need for either solution, but totally opens things up to cheaters without some very careful server-side validation.
[1] https://developer.valvesoftware.com/wiki/Latency_Compensatin...
Re: John Carmack on QuakeWorld latency and business model (1996)
#4Someone correct me if I'm wrong, but I believe this was the genesis of client-side prediction for games. If you don't know what that is, Valve has some good documentation on it (relating to Source engine, but it's the same concept).[1] Latency was still a problem even with CSP because we didn't yet have lag compensation on the server. So although you got an authoritative server (no cheating) and instant inputs (no ro…
Re: John Carmack on QuakeWorld latency and business model (1996)
#5Someone correct me if I'm wrong, but I believe this was the genesis of client-side prediction for games. If you don't know what that is, Valve has some good documentation on it (relating to Source engine, but it's the same concept).[1] Latency was still a problem even with CSP because we didn't yet have lag compensation on the server. So although you got an authoritative server (no cheating) and instant inputs (no ro…
Yeah probably. JC created a lot of standards for the ones to follow. And I remember reading the valve stuff the first time, it blew my mind.
Overview of Source engine networking: https://developer.valvesoftware.com/wiki/Source_Multiplayer_...
Ways they combat latency: https://developer.valvesoftware.com/wiki/Latency_Compensatin...
Lag compensation (server): https://developer.valvesoftware.com/wiki/Lag_compensation
Prediction (client): https://developer.valvesoftware.com/wiki/Prediction
Re: John Carmack on QuakeWorld latency and business model (1996)
#6I agree with his use of a double etc there.
Re: John Carmack on QuakeWorld latency and business model (1996)
#7Re: John Carmack on QuakeWorld latency and business model (1996)
#8Someone correct me if I'm wrong, but I believe this was the genesis of client-side prediction for games. If you don't know what that is, Valve has some good documentation on it (relating to Source engine, but it's the same concept).[1] Latency was still a problem even with CSP because we didn't yet have lag compensation on the server. So although you got an authoritative server (no cheating) and instant inputs (no ro…
“GoldSrc is a game engine developed by Valve Corporation, first showcased in the 1998 first-person shooter game Half-Life. Elements of GoldSrc are based on a heavily modified version of id Software's Quake engine. “
Re: John Carmack on QuakeWorld latency and business model (1996)
#9"He gave the example of increasing the refresh rate on the Gear VR during development. He was working, at that time, with its Galaxy S III phone. Android triple-buffers graphics, inducing a 48 millisecond delay into the system -- making VR impossible.
Carmack pulled apart Android to hack that out. Though he'd written several emails to Samsung in attempts to convince them to give back that buffer, "It's easy to argue against an email, but it's much harder to make the argument when you can have the two things and stick them on your face and, 'Tell me this isn't better.'"
Re: John Carmack on QuakeWorld latency and business model (1996)
#10Someone correct me if I'm wrong, but I believe this was the genesis of client-side prediction for games. If you don't know what that is, Valve has some good documentation on it (relating to Source engine, but it's the same concept).[1] Latency was still a problem even with CSP because we didn't yet have lag compensation on the server. So although you got an authoritative server (no cheating) and instant inputs (no ro…