Live data from Hacker News

John Carmack on QuakeWorld latency and business model (1996)

raw.githubusercontent.com

31–40 of 169 posts

Re: John Carmack on QuakeWorld latency and business model (1996)

#31
I fondly remember the old Quake 1 days. It was pretty much the last game I played seriously. Reading Carmack .plans were a regular routine and while many of the details went over my head, it made us feel part of the whole id experience.

Finally networked Quake was an amazing experience when it came out. I had started my first job in an ASIC design company. All the computers were Solaris based Sun workstations, yet we were able to get network quake up and running on them! I just can't imagine such a thing happening today but maybe that's more to do with me being 20 years older than anything else. For sure no one is porting game engines to Solaris these days ;)

Re: John Carmack on QuakeWorld latency and business model (1996)

#32

Carmack's dotplans are always interesting history to read. If you weren't a gamer (or alive) at the time when quakeworld came around, you might not appreciate how amazing it was for multiplayer games on the internet. On dial-up, you were lucky to have 150ms latency. Before client-side-prediction, that latency applied to every action you took in game, including player movements. Hit the up-arrow, and you wait 150-300m…

>we are entering the era of cloud-based streaming game platforms, like Stadia. The latency problems of the pre-CSP 90's will be rearing their heads again. Its going to be interesting to see how these same problems will be tackled

My take is that it'll be the a primary competitive point, nearly as important as the library available. Companies that can deliver the service without introducing these issues will succeed and ones that cannot will fail. If nobody can reliably crack it, cloud gaming won't take off.

Back in the 90s there was no viable competitor aside from LAN parties, and those weren't available to you every evening.

Re: John Carmack on QuakeWorld latency and business model (1996)

#33
What were .plan files like? I've only ever heard of Carmack using them -- did other prominent devs also publish their .plans?

I wonder if there'd be any interest in reviving this. I think it would be cool to have something like an RSS feed of the .plan files from various developers I respect/follow. These days you have to settle for reading their Twitter+GitHub issues.

Re: John Carmack on QuakeWorld latency and business model (1996)

#34

Why is this article hosted on github? Obviously it wasn't created there as it was written in 1996. Are all the message boards and forums where this type of material was likely posted really defunct or unusable now? Do we now need to rely on enterprising internet historians to find gems on older platforms just to copy them to the newer platforms? Will Github be around in 20 years? Will the next historian have to unear…

> Are all the message boards and forums where this type of material was likely posted really defunct or unusable now?

The original source of this material (and the other articles) was John Carmack's .plan file. See https://en.wikipedia.org/wiki/Finger_protocol

The .plan file is by its nature ephemeral, as the user can change it whenever. But the content was archived.

The GitHub is just the latest mirror.

> Will the next historian have to unearth it from github just to copy it to the next platform?

Maybe!

Re: John Carmack on QuakeWorld latency and business model (1996)

#35
post #17

The only thing QW really added over vanilla "netquake" was client side movement prediction. Hitscan weapons (infinite velocity bullets) only let you know if you had hit or missed based on the response from the server. You had to lead your shots a certain amount based on your current latency in order to hit your target. It was great though. It meant you could bunny hop around corners at extremely high speeds without r…

Hm, I think the engineering story is the interesting aspect:

What an elegant client-as-terminal I have for this incredibly popular physics simulation! Oh no! it takes up too much bandwidth. Welp - time to throw out the old lock-step game-loop architecture, and allow each client to stream incremental updates

I'm sure many contemporary engineers had similar problems, and considered the same approach, but either shrank-from or gave-up on rustling together an elegant solution. Like many problems in the early days of 3d/internet gaming, Carmack seems to have rapidly and nicely solved it with imagination & experimentation, all informed by a broad and deep understanding of data structures, & algorithms, and presumably an industry-leading amount of experience.

Re: John Carmack on QuakeWorld latency and business model (1996)

#36

What were .plan files like? I've only ever heard of Carmack using them -- did other prominent devs also publish their .plans? I wonder if there'd be any interest in reviving this. I think it would be cool to have something like an RSS feed of the .plan files from various developers I respect/follow. These days you have to settle for reading their Twitter+GitHub issues.

I've been keeping personal .plan files since the last time I saw them mentioned on HN. So only a couple of weeks at this stage.

In some ways they reflect the way I've gone about a days work more clearly than other project management/bug tracking software I'm required to use.

Re: John Carmack on QuakeWorld latency and business model (1996)

#37

What were .plan files like? I've only ever heard of Carmack using them -- did other prominent devs also publish their .plans? I wonder if there'd be any interest in reviving this. I think it would be cool to have something like an RSS feed of the .plan files from various developers I respect/follow. These days you have to settle for reading their Twitter+GitHub issues.

I think Carmack popularized their use at the time. A bunch of news sites started tracking them. Blue's News still has an archive from back then:

https://www.bluesnews.com/cgi-bin/summary.pl

Click on a company, a person and then use the drop down to view older entries.

Re: John Carmack on QuakeWorld latency and business model (1996)

#38
post #24

“I have a T1 to my house...”

In 1996, one would have been lucky to be able to have ISDN, so having a T1 was more like 'money is no object' territory.

In the late 90s a T1 cost about US$1,500/month. It came with a bunch of service guarantees and the like because it was aimed squarely at businesses. A T1 is only 1.5mbps too, fast for the time but in absolute terms not that great. The only other options were 56k modem (48kbps on a good day) and frame relay or ISDN, which was a solid 64kbps and lower latency than a modem but also far more expensive than it should have been (US$200-300/month).

Re: John Carmack on QuakeWorld latency and business model (1996)

#39
post #15
post #12

Earlier quoted context omitted.

The Wikipedia page has a link to a thingie that says Duke Nukem 3D had clientside prediction. https://en.wikipedia.org/wiki/Client-side_prediction

I clicked your link and at first kind of brushed it off as dubious since the only linked source is a press article, but the article is an interview with Ken Silverman himself! So that's pretty credible. The source of the released game is available, so it should be possible to check, except that it's a huge mess (check out BUILD.C).[1] Seems weird that no-one has actually verified this when it could be the first game…

Here's the quote for those who don't want to deal with the bizarre pressreader interface:

In fact, in some ways Build had even managed to scoop Quake, according to Ken: "People may point out that Quake's networking code was better due to its drop-in networking support, but it did not support client side prediction in the beginning," he explains. "That's something I had come up with first and first implemented in the January 1996 release of Duke 3D shareware. It kind of pisses me off that the Wikipedia article on 'client side prediction' gives credit to Quakeworld due to a lack of credible citations about Duke 3D."

Re: John Carmack on QuakeWorld latency and business model (1996)

#40
post #9

Complete aside about Carmack and reducing VR latency from https://www.gamasutra.com/view/news/226112/How_John_Carmack_... : "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 ou…

Games usually let you control if and which buffering to use so for an OS to be stuborn about it and waste Carmacks time over a simple toggle is pretty maddening
Post reply on HN