Live data from Hacker News

Valorant's 128-Tick Servers (2020)

technology.riotgames.com

121–130 of 136 posts

Re: Valorant's 128-Tick Servers (2020)

#121

128 ticks per second servers. (And lo, suddenly the article's thesis is inherently clear.) A "tick", or an update, is a single step forward in the game's state. UPS (as I'll call it from here) or tick rate is the frequency of those. So, 128 ticks/s == 128 updates per sec. That's a high number. For comparison, Factorio is 60 UPS, and Minecraft is 20 UPS. At first I imagined an FPS's state would be considerably smaller…

Also for comparison, the Runescapes (both RS3 and Oldschool Runescape) have a 0.6 tick/second system (100 ticks/minute). It works rather well for these games, which I guess highlights that some games either a) can get away with high latencies depending on their gameplay mechanics, or b) will evolve gameplay mechanics based on the inherent limitations of their engines/these latencies. RS3 initially leaned into the 0.6…

OSRS exists in a pretty fascinating place, mechanically.

High level PVP play is basically a turn-based-tactics game, with some moves (attacks or spells) taking more "ticks" than others, meaning there's a lot of bluffing and mind games in anticipating what your opponent will do next.

Re: Valorant's 128-Tick Servers (2020)

#122

Earlier quoted context omitted.

> Also twice as many dollars in the future term! The downside very much does not decrease “exponentially”. The downside measured in dollars continues to decrease exponentially. If it's $100 today, soon it will be $30. It's still "twice", but the thing you're twice-ing is smaller and smaller and smaller.

I'm not sure this is true any more. Long gone are the late 90s when computing power per dollar would increase that fast.

Comparing an Epyc 7763 from 2021 and a 9965 from 2024, the newer chip is something like 35% cheaper and faster, on a per-core basis.

We're still making good progress.

Re: Valorant's 128-Tick Servers (2020)

#123
post #117

Earlier quoted context omitted.

If you look at their own stats, they says that for a server that host 150 games, at any given time, they have around 50 games that are in the buy phase. I don't know how long game rounds last, but if you tell me that you have 60s only locked in that state, that means that the playable game round last around 2 minutes. And anyway, that you will spend on average 1/3 of your time not playing when you came to play. Numbe…

> you will spend on average 1/3 of your time not playing when you came to play The buy phase is playing. It's coordinating with your team on what loadouts to get to best counter the enemy team. The decision making is fun and is play. Because you're not shooting at other players does not mean it is not playing?

How much fun is it compared to do the shooting?

For this game it is hard to say for me because I don't play it, but I still see complaints about that and the game duration:

https://www.reddit.com/r/VALORANT/comments/169ts34/solution_...

https://www.reddit.com/r/VALORANT/comments/1ekvieo/what_are_...

But generally, for other recent games I have to play, that is a strong complaint that I have. Like BO6 is awful for that for example.

One example I noticed in the past years is with racing games like Burnout. The original game was perfect for a quick relaxing session, you start the game, you play (driving) most of the time. I the last versions of Burnout, you are stuck with hours lost waiting for intro, start and end of race cinematics, that are unskippable. And the whole interface making it painful to have a long session of "really playing" in a row.

Obviously, most often when games are online, despite the fact that there is not a need for a real "loading" phase to reload the same assets 50 times when you play over and over the same game.

Re: Valorant's 128-Tick Servers (2020)

#124

Counter-Strike: Global Offensive was also able to handle 128 TPS just fine. They just chose to never implement it in official matchmaking (64 TPS). It did work very smoothly on community servers. Counter-Strike 2 implements a controversial "sub tick" system on top of 64 TPS. It is not comparable to actual 128 TPS, and often worse than standard 64 TPS in practice.

Lots of things work fine when you throw twice as many dollars at them. It’s not a matter of it working or not. It’s a matter of economics. Most game servers are single threaded because the goal is to support the maximum number of players per dollar. A community server doesn’t mind throwing more compute dollars to support more players or higher tick rate. When you have one million concurrent players - as CounterStrike…

The reason is actually related to accessibility for players whose clients can't keep up with 128 tick.[0]

[0] https://x.com/basisspace/status/993278875349041152

Re: Valorant's 128-Tick Servers (2020)

#127
post #85
post #83

Earlier quoted context omitted.

> I assume there'd be a big single rectangular bounding box or sphere, and only once a projectile is in that range, then animations occur. Now that's a fun one to think about. Hitscan attacks are just vectors right? So would there be some perf benefit to doing that initial intersection check with a less-detailed hitbox, then running the higher res animated check if the initial one reports back as "Yeah, this one coul…

This is the basis for basically every physics engine in some form of another. Collision is divided into the "broad phase" pruning step that typically uses the bounding box of an object and a "narrow phase" collision detection step that uses the more detailed collision primitives

also how raytracing works with bounding volume hierarchies

and how occlusion culling worked with BSP trees in Quake if I remember correctly as well

Re: Valorant's 128-Tick Servers (2020)

#128
post #82

Earlier quoted context omitted.

> The other reason is that the client and the server have to be written in the same language. This isn't true at all . Sure, it can help to have both client and server built using the same engine or framework, but it's not a hard requirement. Heck, the fact that you can have browser-based games when the server is written in Python is proof enough that they don't need to be the same language.

Browser game don't need performance, I'm talking about AAA online games here, which 99% are built in c++ and the rest in c#.

> Browser game don't need performance

Mobile users will hate you when your game drains their battery much faster than it should.

> I'm talking about AAA online games here, which 99% are built in c++ and the rest in c#.

It still doesn't apply. There's absolutely nothing stopping you from having a server written in Java with a game client written in C#, C++, or whatever.

I'm really curious why you think client and server must be written in the same language. A TCP socket is a TCP socket. It doesn't matter what language opens the connection. You can send bytes down from one side and decode them on the other. I mean, sure, if you're writing the server in Java and use the language's object serialization functions to encode them, you might have a hard time decoding them on the other side if the client is in C, but the answer then is to not use Java's object serialization functions. You'll roll your own method of sending updates between client and server.

Re: Valorant's 128-Tick Servers (2020)

#129

Earlier quoted context omitted.

This is not equivalent to "lobby time or end game animations" in other games. In Valorant (similar to Counter Strike), at the start of the game you have 60 seconds to buy your weapons and abilities for the round. Valorant/CS is typically a best-of-13, and before each round is a 60 second "buy" period.

If you look at their own stats, they says that for a server that host 150 games, at any given time, they have around 50 games that are in the buy phase. I don't know how long game rounds last, but if you tell me that you have 60s only locked in that state, that means that the playable game round last around 2 minutes. And anyway, that you will spend on average 1/3 of your time not playing when you came to play. Numbe…

Unless you've played Valorant or CS then I don't think it's possible for me explain, in words, the context you are missing.

This game has lots of downtime for the player. For example, a round lasts 100 seconds (then if the bomb is planted, 45 seconds until the bomb explodes). If you die early in the round, you are dead until the start of the next round. Worst case, thats 2 full minutes of downtime for a single player. On top of that the time to kill is VERY low. A single headshot can mean death before you can even react. Compare that to BO6 which in most modes will have an immediate respawns and a relatively high time to kill.

It's not something they are optimizing for financial incentives, it's how the game is played, and how it's been played for 25 years (the originator of the format is Counter Strike).

Re: Valorant's 128-Tick Servers (2020)

#130

This deep dive article is very nice. At any given time, ~50 of those games are going to be in the buy phase. Players will be purchasing equipment safely behind their spawn barriers and no shots can hurt them. We realized we don’t even need to do any server-side animation during the buy phase, we could just turn it off. That explains the current trend of "online" video game that is so annoying: For 10 minutes of play,…

Does Fortnite have a long wait? It became a phenomenon without matchmaking rank (MMR) - after all crappy players die early so they are more frequently in the queue naturally. PUBG / Battle Royale as a format solved the problem.

Can Valorant be exactly the same, and fun, but without MMR? Hmm probably not no.

Demigod (2009), the first standalone MOBA, died for two reasons: it cost money, and it lacked MMR.

Can MMR be done quickly? IMO, no. The long waits are a symptom of how sensitive such games (BO6, CSGO, Valorant, etc.) are to even small differences in skill among the players. Versus say Hearthstone, which has MMR, but it is less impactful.

Thing is, League can be offline for 24h, and people will still come back and play it the next day. This has actually happened a few times in their history. So 10m of waiting... it sucks but people do it.

Another POV - this comment is chock full of them - is that you're just not the intended audience for the Xbox / PS5 / Steam / PC Launcher channel. It's stuff for people with time. What can I say? I mean it's a misconception that this stuff isn't inherently demographics driven - the ESA really wants people to believe, which is ridiculous, that the average "gamer" is 31 years old or whatever, but in reality, you know, the audience - I don't know what "gamer" means or which 31 year olds with kids have time for this crap that you are complaining about - is a 13 year old boy with LOTS of time. 10m to them is nothing.

Looking at Apple Arcade, which has a broader audience, there are basically no multiplayer games, and you can get started playing very quickly in any of the strategy games there, so maybe that is for you.

Post reply on HN