4 ms·
> As a result, regardless of tick rate, your moving and shooting will be equally responsive and your grenades will always land the same way. Is this a signal t
by nonethewiser 4y ago
> As a result, regardless of tick rate, your moving and shooting will be equally responsive and your grenades will always land the same way.
Is this a signal that they will reduce tick rate? Based off what they said, what would the reason be not to?
I’m familiar with tick rate as a user but I’m not sure how it manifests in the code/hardware. Like, if it’s some setting they can easily change or if it’s the consequence of something else. I wonder if they can easily reduce it to lower costs or something.
- takoid 4y agoValve is getting rid of tick rate entirely. Here is a video which explains it briefly: https://www.youtube.com/watch?v=GqhhFl5zgA0 https://www.youtube.com/watch?v=GqhhFl5zgA0
- nonethewiser 4y agoInteresting, I will watch that when I get a chance. Maybe it addresses some of these thoughts already. I wonder how much this is just reframing the concepts though. It kinda seems like they are just increasing tick rate tremendously because the type of system we call tick rate has changed. I mean, there has to be some interval at which the game is updated right? Wouldn’t that be the tick rate?
- Thaxll 4y agoThere is no such thing as removing tick rate, the video is confusing, I think it's improvement with rollback and also gameplay improvements with how grenades work etc ...
- haunter 4y agoSounds more like rollback netcode to me. You can’t just remove tick rate.
- bakugo 4y agoThe concept of "rollback netcode" is something that generally only applies to fighting games, shooters with dedicated servers use lag compensation instead which just means that, every time you shoot someone, the hit detection is done on the server but the server rolls back the player's position depending on your ping to make sure their position roughly matches what you saw when you shot. CSGO2 is just improving this so the rolled back player positions can be interpolated between frames instead of only being able to roll back to wherever a player was on an exact tick, which is what it currently does.
- Laremere 4y agoDefinitely not. Games operate in a loop: gather input, run update (tick), and then render the frame. The problem with the above is when sub-frame timings matter. What they're doing is being smarter about how they're calculating things. Eg: A 'naive' approach to movement could be: forward_pressed() { moving_forward = true; } update_position() { if (moving_forward) { pos += time_since_last_update * player_speed; } } But an approach which would improve timings is: forward_pressed() { forward_pressed_at = time.now(); moving_forward = true; } update_position() { if (moving_forward) { time_since_pressed = forward_pressed_at - time.now(); if (time_since_pressed < time_since_last_update) { pos += time_since_pressed * player_speed; } else { pos += time_since_last_update * player_speed; } } } Except things are more complicated as you need to consider exact position someone was when someone else pressed the shoot button, etc. To answer grandparent's question: They'll likely reducing tick rate to save server costs. However they can't lower too much without having noticeable effects for systems which don't account for sub-frame accuracy. Nits: Above is a simplification and theoretically you could do things differently, but as this is in Source Engine 2, they're definitely using ticks still.
- adamwk 4y agoAren’t you describing frame rate? Tick rate is different; it’s when the server synchronizes state across clients
- squeaky-clean 4y agoFrame rate is often an interpolated and predicted view over a fixed tickrate.
- mckirk 4y agoWe'll have to see whether there even still _is_ a tick rate. Afaik you only need ticks if you need to simulate something in your world that needs iterative updates, such as objects following a complex motion that doesn't have closed-form movement equations. I can't think of anything like that in CS, so basically all the events can just happen at arbitrary times, and the server and clients will still know the world's state at any other point in time just from extrapolating from the start time. Take e.g. grenades. So far they were updated through iterations at either 64 or 128 ticks per second, with both having a slight divergence from an actual parabola (the 64 tick variant diverging more than the 128 one), since between the ticks the moment would only be interpolated. That meant that nades were behaving differently depending on tick rate. Now, the grenade just has a start time and start vector, and you can know exactly where it is at any point in time using the closed form movement equations for an object in parabolic flight.
- bakugo 4y agoNot all source engine games play nice with variable tickrates but CSGO mostly does, that's why you can play on either 64 or 128. With this change to hit detection though, 128 tick will probably become redundant so 60-70 will probably become the standard across both casual and competitive play. I doubt they will reduce it under 60.