Remix.run Logo
axus 8 hours ago

At the absolute worst, a room full of 32-players in Quake 3: Arena would be sending 120 kilobits per second to each player. Fortnite peaks at ~400 kbps during the initial 100-player drop and goes down from there.

I understand that those are big budget games, but there is a lot of room for improvement in 10000 kbps.

gafferongames 2 hours ago | parent [-]

> At the absolute worst, a room full of 32-players in Quake 3: Arena would be sending 120 kilobits per second to each player.

OK I'll bite.

Quake 3: Arena supports 32 players. What if it supported 1000 players?

1000/32 = 31.25

theoretical quake 3 but with 1000 players (all visible) would be:

31.25 x 120 kilobits per-second = 3,750 kilobits per-second = 3.75 mbps sent per-client.

now make quake 3 more interesting by putting in 1000 NPCs in to interact with, so 2000 total objects -> double the bandwidth to 7.5 mbps per-client.

fill the rest of the bandwidth with weapon data (one shots), sounds, fx and other random events -> 10mbps is pretty easy to hit, maybe even go over, especially if a lot of stuff is going on in the level.

> Fortnite peaks at ~400 kbps during the initial 100-player drop and goes down from there.

Fortnite has 100 players.

Theoretically, if it supported 1000 players, then you would multiply bandwidth by 10 if all other players were visible, or if you had the 1000 players in the same size world, so on average you would see 10X more players than before with relevancy / culling by distance or LoS.

400 kbps x 10 -> 4000 kbps -> 4 mbps sent per-client.

Now make it more fun and add 1000 NPC characters to the level, 2000 characters per-level total.

8 mbps per-client for theoretical, 1000 player Fortnite w. 1000 NPC characters in the level.

> I understand that those are big budget games, but there is a lot of room for improvement in 10000 kbps.

This is simply not true. It would be really great if you guys would do some light math before making statements like this.

axus an hour ago | parent [-]

Why are all 1000 players visible to each other at once? The numbers I quoted were worst case, not a baseline.

Streaming sounds and FX every single time and never caching is a choice that will lead to 10Mbps, but completely unnecessary. All you "really need" is initial state, the timestamps / inputs of the other players, and reproducible physics.