Why You Might Be Missing Your Shots in CS2 - THE PROBLEM WITH SUBTICK UPDATES

Ойындар

So I've found this interesting feature of CS2, that could really mess with you aim.
If you like the video, please consider subscribing.

Пікірлер: 1 500

  • @vnc_cs
    @vnc_cs10 ай бұрын

    UPDATE (please read before you comment): There is a lot of mistakes in this video. I’ve made a new one, where I correct them

  • @armablign

    @armablign

    10 ай бұрын

    Just saw this video, and wanted to post this. See that you posted this 23min ago :D Question, since you have to use other bind methods (alias and cfg execs) in cs2. Could this possibly not create a level of 'lag'/delay with the testing? Would it not have been better to use the same bind method in CSGO to see if it works the same there?

  • @blurr3d999

    @blurr3d999

    10 ай бұрын

    This makes a lot more sense now that you added that, because with your testing your mouse technically isnt moving.

  • @raphII2

    @raphII2

    10 ай бұрын

    I was just about to correct you on that one, it doesn't really matter though, your theory might be close to what's actually happening though. I'm sure valve's servers are powerful enough to handle the load, BUT we're currently in beta testing which means valve are logging absolutely everything happening all the time which puts a ton of strain on the servers. The subtick system would be amazing for lan or very low ping games 5-10 on all players, higher ping makes it a mess though, I surely hope they have an idea of how to compensate that. Great video.

  • @padlo5489

    @padlo5489

    10 ай бұрын

    Respekt kárečku.

  • @zerando4548

    @zerando4548

    10 ай бұрын

    the only 2 flaws that ive found were about: 1 subtick partially uses 64 tick rate for things that are less demanding live grenade trajectory, that why on 128 tick even on cs2 lineups are diferente. and 2 that the sub tick need to register every movement that ur mouse does, it doenst need to process every thing, just the position of your cursor on the fire.

  • @Siieracki
    @Siieracki10 ай бұрын

    ngl this could explain why spraying feels weird as well. Interested to see if valve do something to fix this

  • @vnc_cs

    @vnc_cs

    10 ай бұрын

    Yeah, I think things like this will be fixed with/before the offical release.

  • @Renos44

    @Renos44

    10 ай бұрын

    it's not actually a bug in CS2 its actually supposed to be like this. Read my comment for more.

  • @yeeyo11

    @yeeyo11

    10 ай бұрын

    @@Renos44no way lmao, ig the game keeps like this forever its dead

  • @xdognatex9897

    @xdognatex9897

    10 ай бұрын

    @@Renos44 Your high if you think it suppose to be like this...

  • @Coolrocksta

    @Coolrocksta

    10 ай бұрын

    @@Renos44 which comment?

  • @paranoidpanzerpenguin5262
    @paranoidpanzerpenguin526210 ай бұрын

    Valve never said subtick sends server requests dynamically, and it would be pretty hard to implement something like that because the server won't have a good trigger for when it updates the clients, since it has to update them all. It's more likely subtick is just timestamped event data being sent on a fixed tick rate so teh server can theoretically simulate the events more accurately

  • @raph151515

    @raph151515

    10 ай бұрын

    I thought the client sent the tickrate right away, that's the point, not because the shots were not accurately registered in time but the objective is the faster validation and display back to the client, so we're supposed to see less missed shots that were displayed locally (happens often) or maybe as often but the false impact will disappear faster.

  • @raph151515

    @raph151515

    10 ай бұрын

    so subtick is only a minor deconfliction improvement but if the mouse pos is not updated as often, it's limited in its positive effects, maybe it shouldn't have been inflated by the valve communications @@cicolas_nage

  • @WHAT_TAHW

    @WHAT_TAHW

    10 ай бұрын

    if that was the case it would be even more data-intensive than just having 128 tick servers@@raph151515

  • @blehbleh9283

    @blehbleh9283

    10 ай бұрын

    ​@@raph151515if the client sent the update right away then we'd be on an events driven update for game networking which would be ass for FPS games

  • @trashaccount5106

    @trashaccount5106

    10 ай бұрын

    Yeah, thanks for adding that. Thought the same.

  • @brogers_
    @brogers_10 ай бұрын

    Makes so much sense, I feel like something has been fundamentally wrong since the beginning, awping feels off with flicks and so does spray control with rifles, good video man! To be fair I think this does make it unplayable to a degree, with peek advantage being so heavy at the moment everyone is trying to wiggle peek or re peek for advantage so most of us are moving, if you sit and try to hold an angle half the time you will die simply from behind a wall without seeing the other player.

  • @reecegg

    @reecegg

    10 ай бұрын

    literally. i've gone from hitting the majority of my flicks, to the bullet always going to the left/right of a player. It is actually game breaking. Raw accel also doesn't see to work so my sens is fixed unlike in csgo

  • @MontySlython

    @MontySlython

    10 ай бұрын

    The spray difference is due to the AK having higher recoil in the first 9 bullets than in csgo

  • @ownagebox

    @ownagebox

    10 ай бұрын

    Awp feels of because in CSGO when you flicked the bullet would slingshot to the position you flicked after your shot, like a string attached to the bullet and cursor, in CS2 the awp shots perfect, to perfect. the bullet will land exactly where you shot and not travel with your flick cursor thats why people missing a lot now. As a awp main i noticed that too that i sometimes shot like silver 1 in CS2

  • @institutionalinformant

    @institutionalinformant

    10 ай бұрын

    @@ownagebox how can you say in ''cs2 the awp shots perfect, to perfec, the bullet will land exactly where you shot'' When the video, CLEARLY, shows that it doesnt

  • @ownagebox

    @ownagebox

    10 ай бұрын

    @@institutionalinformant you can clearly see hes always barely moving after the shot in CS2 most visible with awp and auto the bullet holes are exactly where he triggers not where the cursor ends. I had some other article about this with a were the shots where scripted points, maybe i can find it

  • @elijahreal32
    @elijahreal3210 ай бұрын

    correction: if i understood correctly, subtick doesn't stress servers any more than normal tickrate as it just registers all inputs between ticks and executes them at that place and moment when the next tick comes instead of waiting for the next tick to execute all of that (for example, if in between ticks 1 and 2, a player was in the center of your crosshair and you fired, but then moves out of your aim when tick 2 arrives, subtick would know that and register it as a hit instead of a miss)

  • @bejibx

    @bejibx

    9 ай бұрын

    Exactly that

  • @phillipsli1017

    @phillipsli1017

    9 ай бұрын

    I don't think this is a server stress problem, but instead, a display problem - human baseline reaction time is around 10milisecond, which actually coincides with the 15ms 64 tick rate in CSGO, that is why it feels natural to most players when they flick shot timing, or even spraying because it's only after we see and register in our brain (which doesn't have sub tick lol ;) ) ak-47 start to shoot sideways that we adjust by a counter-motion using a mouse to spray control. But that doesn't explain why the macro this guy used to stop and shoot at the same time will cause the crosshair to not be on the shothole - but you can apply a similar theory, most gaming keyboards have an input latency of 1-2milisecond, and the receiver (PC) + loading into CS2 software will up this to around 5-15 ms depending on your specs. Since this issue doesn't always occur (sometimes the crosshair is on the shothole), in science, we call this unreliable, so there 'must' be a random error that is causing a disconnect between what "you see and what you get", and I suspect that sub-tick is working compartmentalized for single actions such as shooting (aim) or movement keys, but not calibrated to work well when together. You might argue that sub-tick shouldn't cause this issue (which is what Valve is insinuating), but from a practical perspective counting units such as ticks is incredibly important when trying to achieve replicable results (which is a fancy way to say reliable results). For example, if you have a ruler with millimeter units and ask 10 people to measure the length of a 4.25mm string, they are most likely going to give results such as 4mm, or 4.5mm because your measuring equipment is not accurate enough to give more decimal places, so you naturally just round to a nicer number like a half. If we do the experiment again with a ruler with a mix of units such as mm, cm, micrometer, and nanometre (to emulate how sub-tick tries to get every input in between ticks) and then ask 10 people to measure the same string, some people won't try hard to measure and just go with 4mm, some people will use the smaller units and try to get 4.2mm or even more extreme some people will attempt to go 4.2479...mm, now you have a wider array of numbers as results which represents the inconsistency that you feel, and amplify that with so many actions that you are doing in CS2, it's more likely than not that errors will occur - and reasonable that we have this problem.

  • @Ricky-zf9cv
    @Ricky-zf9cv10 ай бұрын

    Production is crazy, appreciate all the work u put into this

  • @lukemonnin7965
    @lukemonnin796510 ай бұрын

    I KNEW I WASNT CRAZY

  • @ByeBaybe

    @ByeBaybe

    Ай бұрын

    same. people will flame you for noticing what they're incapable of. visually i couldn't notice but i could feel something strange.

  • @Sebal007
    @Sebal00710 ай бұрын

    Question is, WHEN do you click? In CS2, when you click, it remembers the exact position/rotation and that's where your bullet starts of from. In CSGO, your click is queued for the next tick and THEN it looks at rotation etc, so there is a random delay between clicking and the click taking effect. Therefore it's possible in CSGO to click->move mouse and the shot fires from the new position and not from where you clicked. In CS2 it will fire from where you clicked, being more precise. What you observe right now, is that the animation is still tick and not subtick dependend so it fires on the next tick, while the actual shot got prepared on the subtick precision and therefore it feels off. The click for the shot probably happens a few moments before the rotation ends. In CSGO everything was on tick so it was executed when the rotation ends. In CS2 it's now "off" because the action is registered more precicely.

  • @ThePro821

    @ThePro821

    10 ай бұрын

    This is correct actually. It makes sense. It was actually the animation and the scope that stopped later, rather than the shot being off or registered earlier. So even if it seems off, it’s actually more accurate. It’s kinda confusing :))

  • @airbl4d3HD

    @airbl4d3HD

    10 ай бұрын

    now add imput delay 7-25ms and you get fully random shots all the time. with qued ticks you can acually understand where bullet will go.

  • @WorldKeepsSpinnin

    @WorldKeepsSpinnin

    10 ай бұрын

    @@airbl4d3HDexactly, same shit that happens in valorant most likely. Its horrible.

  • @MerrStudio

    @MerrStudio

    10 ай бұрын

    ​@@WorldKeepsSpinninvalorant has 128 tick servers, subtick is unique to cs2, what are you on about

  • @MerrStudio

    @MerrStudio

    10 ай бұрын

    ​​@@airbl4d3HDif you'd actually read the comment properly you'd understand the guy you're replying to is saying literally the opposite

  • @Tiraskaar
    @Tiraskaar10 ай бұрын

    This is all because of the subtick system, in csgo there is server compensation but in cs2 it registers 2 things, where shot started, where shot should end, immediately due to subtick. For me personally this feels really bad. After playing cs2 for a week i went on to play csgo again and god the shooting felt like a breeze of cold wind on a sunny day.

  • @hobosnake1

    @hobosnake1

    10 ай бұрын

    I wanted free leetify premium for a day, so I changed my tag within csgo and had to play a game. God damn is it such a crisp game when you put it up next to cs2. I'm really enjoying cs2. I can see the promise in it, but it needs so much work. I think Valve has no choice but to delay or fix this fast.

  • @1337Ox

    @1337Ox

    10 ай бұрын

    Exactly, for some reason the shooting in CS2 feels just weird and I could tell that almost immediately. Then I tried to go back to CSGO and man it feels so much better.

  • @wantedcat8996

    @wantedcat8996

    10 ай бұрын

    Same

  • @Kylo_tonny

    @Kylo_tonny

    10 ай бұрын

    this will prob get fixed at early release

  • @hobosnake1

    @hobosnake1

    10 ай бұрын

    @@Kylo_tonny I think it will be many fixes over the next year. I think we get a slight delay while they iron out the worst of it, but this is a new CS game on a new engine. It'll probably take time to fix like csgo did.

  • @realtoni420
    @realtoni42010 ай бұрын

    you put so much effort into this. thank you for the insights.

  • @SognisCS
    @SognisCS10 ай бұрын

    bro! the fact that this is your first youtube video, it is doing so good! the content you provide is better then most. keep up the good work and let this channel grow huge! and thank you for making this video, it explains why so many of my awp flicks miss😂

  • @K2Core
    @K2Core10 ай бұрын

    I think that bullet goes exactly where You clicked Your mouse. Animation and console command processing probably is still in ticked system. This way bullet goes where you shot, but the unscope animation and stop rotation are still processed on the end of tick. This is why it's sometimes close to the crosshair (You shoot and send stop rotation command close to the end of tick, so You stop rotation almost immediately) or really far away (you shoot on the beginning of tick and move till the end of it, so You have almost 1 tick of discrepancy (15ms) between shot and stop). This is also why it feels of, we have lagless shooting, where bullet's can go back in time to be resolved, cause they have timestamps, but rest of the game - is still bound to the ticked system. Where in CS:GO - everything was resolved on the end of the tick. And as I always say about those things - in games we can pretty easily accommodate to latency as long as it's stable (that's why we can play games in 30fps as long as it's locked, and we get new frames in stable manner) - but when latency starts to fluctuate - it fucks our gameplay. And that's why game feels bad when it dropps frames from 300 to 150 (where on stable 150 it would be playable AF for anyone after some accommodation period) and this is why shooting feels of as You can't accommodate for the lag that fluctuates between 0 and 15 ms.

  • @alexanderlund-jackson6864

    @alexanderlund-jackson6864

    10 ай бұрын

    yeah this is what it is and why spraying feels a bit off. the shot is perfectly on your crosshair at the time you shoot because that’s the whole point of sub tick the animations are just a tiny bit delayed. still feels jank because it’s out of sync but i feel like videos like this should have almost any amount of research behind them lmao

  • @scambaitspidey3470

    @scambaitspidey3470

    10 ай бұрын

    If you have so much knowledge why aren't you a game developer? What you're saying sounds like a bunch of word salad, he tested on CS:GO first for a reason to show that 64 tick is more stable using this option.

  • @K2Core

    @K2Core

    10 ай бұрын

    @@someoneelse564 Why, where?

  • @ssame9722

    @ssame9722

    10 ай бұрын

    @@scambaitspidey3470 he is literally right, 64 tick system wasnt more stable, it just sent everything a the end of the tick, making it so that if you pressed in the middle of a tick, the bullet would go where the crosshair was at the end of the tick, because this state was the one sent to the server.

  • @scambaitspidey3470

    @scambaitspidey3470

    10 ай бұрын

    @@ssame9722 everyone has to be on the same page. Without a tickrate it is impossible as there will always be input lag. Unless everyone is on LAN.

  • @KikiIsOnDw
    @KikiIsOnDw10 ай бұрын

    Such a small content creator but amazing video quality. Subbed and liked

  • @chadmacdonald996

    @chadmacdonald996

    10 ай бұрын

    yes same here! well done :D VALVE PLS FIX

  • @alsymiya413
    @alsymiya41310 ай бұрын

    It is possible that the shooting angle is a different thing in the data packet while other actions are not. So when shooting is registered, it is on the exact same angle while the second action -right is not. Also it is not done immediately. More or less it is like a rollback thing.

  • @ExplodingImplosion
    @ExplodingImplosion10 ай бұрын

    Easily my fav part of the video is the humility and reminding everyone that this isn’t some kind of confirmation of fact, and just a test. Love to see that

  • @magessm5228
    @magessm522810 ай бұрын

    Be careful with the assumption that your mouse movement input is sent to the server immediately. The subtick system just receives the input with a timestamp, indicating how far into the tick the action happened. Games can handle high polling rates, but for online games they have to linearly interpolate between frames to keep Internet traffic of inputs at a manageable level. Source: I've been programming 2d and 3d applications for about 6 years now and I'm working on a small game engine of my own. Valve will come up with a solution for this. Since this is not an easy problem to fix, it might take them some time, but they will come up with an acceptable solution

  • @fantastikboom1094

    @fantastikboom1094

    9 ай бұрын

    Is this even an problem lol? People got used to press fire a dozen miliseconds before stopping crosshair at the target, and the game registered it at the end of the tick. Simply muscle memory issue. Now it shows off as people's shots appear before the crosshair stop. Edit: Shots are still processed when the tick ends, it's that now they appear accordingly to input time. Maybe they make a line between 2 crosshair positions, and, let's say if you pressed at 0,5s after previous tick, shot will appear between 2 positions.

  • @MRworldEtIkA

    @MRworldEtIkA

    9 ай бұрын

    ​@fantastikboom1094 now I gotta do math while gaming

  • @macScsgo
    @macScsgo10 ай бұрын

    This needs more views!! Been noticing this with spraying as well. Awesome video!

  • @theninjapro7648
    @theninjapro764810 ай бұрын

    The reason this feels so wrong is because Sub-Tick is working properly, you DID actually click at those locations but the kicker is your gun didnt shoot till the actual tick update making your shot look delayed to where your bullets are actually going.

  • @overdosarN

    @overdosarN

    10 ай бұрын

    which is pretty stupid if this is the result no?

  • @PultsMoizer

    @PultsMoizer

    10 ай бұрын

    Thats wrong. If you slow down you can see where youre shooting and its not on the location. That showed at the beginning

  • @stalloneCS

    @stalloneCS

    10 ай бұрын

    no, the point is that the animation of the shot and tracer happens on the next tick. wheres your shot calculation is sub-tick. So it will look like you're shooting later than you actually are, and later than when the server calculates your shot. hence, the actual shot is more accurate than the animation and tracer. @@PultsMoizer

  • @Pedro-vm1vg

    @Pedro-vm1vg

    9 ай бұрын

    @@PultsMoizer its not, there are other videos that perfectly show that where you shoot is pretty much where the bullet lands, the animation is just very delayed

  • @mikekonkola1231
    @mikekonkola12313 ай бұрын

    This is what niko was saying if u miss your first one tap just spray,because the one tap wont register in the right spot after the first one

  • @dragonarc_gaming
    @dragonarc_gaming10 ай бұрын

    wow thx, this really explain how my awp shot somehow missed with me flicking right on the body. I was so confused since I missed like 2 shot that feels like should have hit, to the point I just stopped picking up the awp

  • @Fyr35555
    @Fyr3555510 ай бұрын

    I guess it makes sense. I'm one of those guys that when I pick up the awp I flick crazy fast like I'm trying to break my wrist, and I've struggled adjusting to cs2. My other friends who use a more passive / slow style rarely flick fast and have much more easily adjusted to it.

  • @vnc_cs

    @vnc_cs

    10 ай бұрын

    Yeah, the AWP was the only weapon I was noticing the bug with in game.

  • @AlbertWesker_GOAT

    @AlbertWesker_GOAT

    10 ай бұрын

    Same, I'm not flicking all the time, but I do flick, I need it for no scopes for example or if the enemy wasn't in the side I thought he was then I flick to shot him.

  • @eiervonsatan1679
    @eiervonsatan167910 ай бұрын

    Thank you for making this.

  • @vnc_cs

    @vnc_cs

    10 ай бұрын

    Thank YOU for this comment. It feels great having positive feedback like this.

  • @andrewconnors4544
    @andrewconnors454410 ай бұрын

    it does feel like ur right, on csgo the ssg 08 feels much snappier when moving ur crosshair around, but on cs2 you have to stop right before shooting to actually hit something

  • @ExplodingImplosion
    @ExplodingImplosion10 ай бұрын

    Quick fyi on how source/S2 networking works- the game is “simulated” at whatever tickrate it has (which is why nade lineups were different in GO). The game also sends packets every time it simulates. The current working theory for subtick is that every input is timestamped as best as possible relative to whatever frames it happens between. Additionally, chances are, they’re not recording each louse movement. They just check your mouse movement every frame and send that to the server, and then also log your mouse movement every time a shot happens, so that the shot isn’t misaligned.

  • @rayanewrld8665
    @rayanewrld86653 ай бұрын

    Still broken game

  • @MMS-pv5jy

    @MMS-pv5jy

    Ай бұрын

    Still i am having fun

  • @kin-3863
    @kin-386310 ай бұрын

    This video needs millions of views. Share this to everybody so valve can understand! Great work!

  • @SertWasAName
    @SertWasAName10 ай бұрын

    underrated asf, not only for the explanation but also for the editing!

  • @mdftx1
    @mdftx110 ай бұрын

    The real problem is that the sub tick system is a hidden 128 tik system that alternates big and small packets, so it sends 3 of the 128 tiks for example, the first one is a very small packet left over from the previous tik, the next is a big packet, and the third is whatever was left over from the big 2nd packet. Now let’s say you shot your gun. The 2nd “big packet” sent your movement and where you were aiming, while the 3rd small packet could’ve sent you shooting, which means that the shot and where you mouse is during the 3rd tik are off because your mouse already moved since the 2nd tik was sent and the 3rd tik of the shot registering is sent to be in like with the previous 2nd tik even tho your mouse is on the 4th tik already.

  • @hpgeerdes

    @hpgeerdes

    10 ай бұрын

    Thank You, good explanation!

  • @whitinnn
    @whitinnn10 ай бұрын

    It occurred to me that in cs2 i miss a lot of flicks, most of the time when it happened on cs:go I could recognize that I simply missed it, while on cs2 it happens VERY often that I genuinely say "wtf?" Since I'm pretty sure I should've hit that But I'm always too unsure to say "It's cause of new bs valve made" and most of the time I simply justify it with "I'm bad bruh"

  • @MerrStudio

    @MerrStudio

    10 ай бұрын

    That's why things like shadowplay or obs replay are a blessing, sometimes the 60FPS recording is enough to tell game's bs

  • @StarComet7

    @StarComet7

    10 ай бұрын

    You shouldn't have hit it. Shots go off position when you exactly pressed the button, but the animations plays with tick

  • @GGGmod1

    @GGGmod1

    10 ай бұрын

    And since skill no longer works on cs2, its fair to say all those hardcore top fraggers are actually hackers

  • @whitinnn

    @whitinnn

    10 ай бұрын

    @@StarComet7 From my understanding it's not exactly like that but feel free to correct me if I'm wrong; don't want to go around spreading misinformation From what I understood if we were to take 1 singular tick and divide it in 100 fragments, no matter if you shot it in the 64th or 99th of a tick, it will be registered as if you shot it at the very start of a tick (1/100) So (impossibile example but exaggerating things help out understanding) if I were to move my crosshair 500 pixel away from the registered position where my crosshair previously was, then my shot would be registered as 500 pixel before my current position Again, I'm not 100% sure I understood correctly so if I'm wrong please correct me

  • @hagarbebado

    @hagarbebado

    10 ай бұрын

    @@whitinnn what you described is actually how csgo calculates. In cs2 the tick would carry the timestamp of you click and the server would register a better guess of you crosshair position inside the tick.

  • @Summanis
    @Summanis10 ай бұрын

    I saw a video that was posted on Reddit recently where someone made a macro that would move the mouse to one side and then in less than 1 frame would flick to a target, fire, then move off the target (Sub-frame mouse input, or why flicks feel different in CS2 by MrPyber). In CSGO the shot would be fired at the same location as the next rendered frame, but in CS2 the shot was fired exactly where the mouse was when the input was received. I can't claim to know what's going on here, but it could be that while shooting is recorded at the exact ms the input is received, the visual updates like unscoping don't occur until the next frame. As for the spin test I don't have a guess. As far as how many mouse inputs CS2 needs to handle, USB mice can only send inputs to Windows at up to 1000hz independent of the DPI. Some USB mice can "pretend" to be multiple devices in Windows and feature 4000hz polling or more, but the highest I've seen is 8000hz. Maybe now that CS2's mouse inputs aren't capped at your frame rate, ultra high polling mice will explode in popularity.

  • @lanklesz

    @lanklesz

    10 ай бұрын

    I think this is arguably the best explanation as to why this is a thing. The subtick system works in-between frames - and as a result even with the most precise of slow motion recording - itll still seem like it didnt hit the same frame granted it tracks the time you hit your mouse without account for frames. If your mouse's polling rate is moved down to your monitor refresh rate (144hz, 60hz, etc) you'd likely see the bullets hitting in their exact positions similar to CSGO. Could be wrong though.

  • @Jer0nMr

    @Jer0nMr

    10 ай бұрын

    I keep my mouse at 2000 MHz polling rate, but shooting still feels off...not to mention spraying is the worst thing in the game atm. Will try 4k polling rate to see if it feels better

  • @MrRobotrax

    @MrRobotrax

    10 ай бұрын

    I think the -right command is only sent on the next tick, resulting in a delay

  • @HoxTop

    @HoxTop

    10 ай бұрын

    This is the real explanation. It isn't that the shooting uses the mouse position form the last tick but that the unscoping/movement stopping only happens on the next tick. I.e. the movement stops late which makes it look like the shot hit too early

  • @nothanks6451

    @nothanks6451

    10 ай бұрын

    He probably sends mouse events using native code to the window. Instead of moving the mouse along a spline which sends a mouse event for every coordinate on the spline he hops the mouse from coordinate to coordinate. hop(500, 500), leftclick(), hop(1000, 1000) for instance. Doing this you can basically do all the 3 actions in a time frame of 1ms. I thought CS2 used timestamps which normally uses nanosecond precision. Or maybe Valve is cheap on the data traffic and uses millisecond precision since 64 tick is 15,625ms/tick .

  • @bursucu2912
    @bursucu29129 ай бұрын

    This explains why I felt like my shot would not register on target when I turn quickly to aim at someone

  • @Venox4x
    @Venox4x10 ай бұрын

    its people like you, that i'm thankful for, to deal with problems like this. ngl - thank you very much.

  • @Jmoss7
    @Jmoss710 ай бұрын

    It definitely makes sense based on my experience. And the bit at the end about your crosshair rarely moving while you shoot, I’m not so sure. A lot of times you are making microadjustments to move to your opponent’s head as you click, in a 1v1 fight

  • @wonjez3982

    @wonjez3982

    9 ай бұрын

    there's this "flickshot" thing... It's just stupid that the speed of your mouse matters now, esp because csgo had some of the best flickshots/qs mechanics

  • @NhBleker

    @NhBleker

    9 ай бұрын

    You’re constantly moving your crosshair as to try and spray control

  • @d8a_aims
    @d8a_aims10 ай бұрын

    the DPI part is wrong to an extend. what you're saying is right but its not the DPI that determines how many inputs/sec your mouse sends. Its the hz of the mouse. The DPI determines how many counts (also called counts per inch) your sensor does when you move your mouse. the updaterate which sends this data to your computer is hz. so for a 1000hz mouse that is 1000 updates/second and it doesn't matter whether you move your mouse or not. the data will get sent anyways. i personally use a 8k hz mouse and 8k hz in cs2 feels a lot more reliable than 1000hz is all i can say. this is most likely because the 8k hz sends the data earlier (because sending more often/sec = sending earlier to the actual position of the mouse). To sum it up: DPI determines how finely-grained the mouse's sensitivity to movement is, the polling rate measures how often the mouse checks its sensors for changes.

  • @raph151515

    @raph151515

    10 ай бұрын

    no he's as right as you in a way, the mouse do not sent an move event when not moving, the maximum rate of change for the mouse is when the sensor detect any movement at each mouse refresh tick, if some tick don't contain any movement, there is no event. So the refresh rate is the maximum event rate, and the actual rate depends partially on the DPI and movement speed of the mouse as well as the resolution, I'm sure cs or the mouse driver don't consider a mouse position change until it's bigger than a pixel. What is wrong here is the scale of the argument, imagine you move half of the screen in one sec (approx 1000 px for full hd) you already max out the fastest mouse out there (1000 Hz), and a half screen flick is not uncommon and often way faster than 1 sec, so most of the quick movements will absolutely max out the refresh rate. If you play 800 600 and you have the speed of a snail, then the mouse events will be a lot less frequent.

  • @CAZEGAMING
    @CAZEGAMING10 ай бұрын

    really interesting vid bro great work!!

  • @waltuh6984
    @waltuh698410 ай бұрын

    from how i understand it the subtick system means that time data is included into every tick so the server knows when exactly something happens, but there is still a set tickrate

  • @RossWasTaken
    @RossWasTaken10 ай бұрын

    I saw something about jump-throw binds being inconsistent, but setting up an alias for them first and then binding that alias made it perfectly consistent. Do you think it's possible something like that is coming into play here? (i.e. Create an alias for shooting, then binding mouse1 to that alias)

  • @andrewandrei3062

    @andrewandrei3062

    4 күн бұрын

    Good idea

  • @pbentesio
    @pbentesio10 ай бұрын

    CS2 still runs on ticks, you can verify this because the game will send 2 data packets to the server 64 times per second. That makes 128 packets which they need to send because the subtick system really just adds metadata to each event, the metadata makes the packet too large for a single packet so two are sent. It could still be related to the subtick system but not in the way you suggest.

  • @andrehil
    @andrehil10 ай бұрын

    I thought of exactly the same solution after your explanation. I hope it's not too complicated to implement it.

  • @0tteru
    @0tteru10 ай бұрын

    this is extremely valuable information, thank you!! I hope more people see this

  • @giuseppe1026
    @giuseppe102613 күн бұрын

    10 months after and nothing has changed😭😭😭 I uninstalled the game they don't deserve my time and my money neither

  • @19XAKX96
    @19XAKX964 ай бұрын

    so this is why i feel like stupido ....

  • @LiveVisionary
    @LiveVisionary10 ай бұрын

    Good Video I def thought something felt weird when I have been playing this could be it honestly, Thank you sir!

  • @Bruhbenson
    @Bruhbenson10 ай бұрын

    bro no way you only have 700 subs, this is actually top tier content, Keep it up!!!

  • @Aldrenean
    @Aldrenean10 ай бұрын

    Your proposed solution is exactly what came to mind while I was watching this, and I am a software developer. So good job.

  • @Yoss223

    @Yoss223

    10 ай бұрын

    I'm not software developer, but wouldn't it cause the server output to force the crosshair into the earlier input possition in the otherwise tickless server?

  • @HoxTop

    @HoxTop

    10 ай бұрын

    The explanation in the video is most likely wrong. It isn't that the shooting uses the mouse position form the last tick but that the unscoping/movement stopping only happens on the next tick. I.e. the movement stops late which makes it look like the shot hit too early

  • @Aldrenean

    @Aldrenean

    10 ай бұрын

    @@HoxTop Regardless, sending the crosshair coordinates along with the fire event should resolve the desync.

  • @nashhash2380
    @nashhash23803 ай бұрын

    this game is not esports rdy

  • @shupesmerga4694
    @shupesmerga469410 ай бұрын

    It is because of physics, the time you click your mouse is the time your in-game finger pulls the trigger, from that point, the hammering pin will strike the back of the bullet, then the combustion of the powder, and then the bullet leaving the barrel of the gun then the distance of your target will all add to the delay then there's the momentum of your spinning body that's why your crosshair ends a bit ahead of the bullet's landing spot.

  • @blocksource4192
    @blocksource41929 ай бұрын

    You might not be far off, I was working a a fps shooter and what I think they did is now the fire angles arent sent when you shoot anymore which means that when you shoot you only send a shoot command and not your view angles. This means whatever last view angle the server has is the view angle that procesees the shot, so when youre moving your crosshair, it may still be sending a new view angle while you are shooting. And that view angle would not be processed by the server causing that issue. Albeit there are definitely some problems with hitboxes too so I dont think its only that, but it could definitely explain the desync between shots.

  • @Tekato
    @Tekato10 ай бұрын

    I played a lot CS2 and wondered why my AWP flicks aren't hitting anymore. Ich changed my dpi and aim speed several times but it's still a pain to hit shots right. THEN yesterday I played CS:GO with a friend without access to cs2 and instantly my shots were accurate again. I got really nice frags again and was unhappy about cs2

  • @methadonmanfred2787

    @methadonmanfred2787

    10 ай бұрын

    same this made me quit cs2 for now. its just a stupid feeling missing shots and be left wondering if its game or your fault.

  • @electric26

    @electric26

    10 ай бұрын

    My shots are hitting with CS2, because CS2 actually does it accurately :)

  • @Ayan-nz3or

    @Ayan-nz3or

    10 ай бұрын

    brooooooo i face same prblmm everdayyy i think at everynight when i go for sleep that i am became noob then i saw ur comment and now i feel that i am wrong bcz i eliminatedd many pro playerss in cs goo cs 2 is very baddd

  • @Tekato

    @Tekato

    10 ай бұрын

    @@Ayan-nz3or meanwhile I learned how to play with the new system. Doesn't work as good as before but it's getting better. Good luck for you bro

  • @mattiasgray
    @mattiasgray10 ай бұрын

    Great video! Really hope this gets fixed, cs2 doesnt feel nearly as responsive when compared to csgo.

  • @AXEONyo
    @AXEONyo10 ай бұрын

    Also curious why the 360 was not an exact 360 each time like CSGO was. It’s almost as the mouse movement depends on your frame rate like the source 1 engine was without raw input

  • @nifiga_prikolno
    @nifiga_prikolno10 ай бұрын

    It seems like it's tied to the certain tick so the difference between the spots is exactly one last tick behind and that's why it's "random". Since it's 64 tick it is possible for the shots to be landed at the closest point right before sending the data to the next tick and it's only possible to notice with at least even or 2/4/8 times more fps on footage and be conpletely in sync with the server tickrate to see the exact place and moment the shot has been made just for further research. My best guess is that it is also lag compensation issues

  • @HappyGhetto
    @HappyGhetto10 ай бұрын

    You should have used the exec cfg method in csgo as well instead of aliasing. Probably doesn't matter but there could be some minor overhead on executing multiple commands via a file instead of with aliases, it's good practice to eliminate unnecessary variables.

  • @vijelieable
    @vijelieable10 ай бұрын

    I'm not an expert either but the dpi I think it relates to the mouse sensor capability to scan the surface and the rate of transmitting these info relates to the polling rate of the mouse.

  • @Sr7Sr7Sr7
    @Sr7Sr7Sr710 ай бұрын

    The mouse polling rate is just providing insight into exactly when the event occurred. They still get processed at tick time. Therefore no, they don’t need to 1000 tick to handle 1000hz polling rate. 1000hz just gives more potential resolution (in terms of time) in which you can get an accurate time for the event start.

  • @jamesgarrison1235
    @jamesgarrison12359 ай бұрын

    i like it being behind your crosshair because it can stop the run and gunners.

  • @DebasedAnon
    @DebasedAnon10 ай бұрын

    When you combine this with the input lag being 2x and the other netcode issues that are also present it does become "literally unplayable" as far as I'm concerned. The entire game feels completely off when you play it and I personally wont bother till these issues are ironed out.

  • @keatonwastaken

    @keatonwastaken

    10 ай бұрын

    input lag is not 2x that's just misinformation

  • @S00ler

    @S00ler

    10 ай бұрын

    ​@@keatonwastakenIf you have a 60ms ping it kind is.

  • @BriJeeTVGameDev

    @BriJeeTVGameDev

    10 ай бұрын

    idk why everybody discussing 'new cs2 problems' but i actually gets perfect glock shots VS compare to csgo where i was complete noob on first round as Terr, i still have questions for scout fast stooting but meanwhile awp is just fine for me.

  • @DebasedAnon

    @DebasedAnon

    10 ай бұрын

    @@BriJeeTVGameDev Yes tap firing is more accurate than ever in CS2 but with that also comes the horrendous downside of spraying being completely screwed up and flick shots also being screwed up. The core of the issue right now is the lag between subtick and server tick. When you fire a shot subtick instantly registers it but then the server, which is 64tick, updates like 15ms later and since the weapon animations are tied to the server tickrate it means the bullets you're shooting happen way earlier (15ms is a lot for these things) then the actual animation of the gun. Search on KZread "MrMaxim Is this why shooting feels off in CS2?" and you'll understand, it has a visual demonstration.

  • @Remu-
    @Remu-10 ай бұрын

    Actually the bullets hit right where you click them thanks to subtick but the visual representation of it is only rendered at the next tick. That is the reason why they are in sync in CS:GO but in fact the shot in CS:GO is delayed until the next tick and NOT hitting the spot where you clicked. This is also the reason 128 tick in CSGO feels so much better than 64 because ticks are only half as long and your shots are then hitting closer to where you actually clicked. With subtick though it registers at that exact same moment of the click but the shooting animation comes 1-16ms after depending where you shot between the ticks and the bullet hole is represented where it is according to the subtick/where you clicked. This means it would still yield you a kill if you clicked on the enemys head even though at the time of the tick the enemy might already be away from your crosshair. When you understand how the engine works in CS2 this is actually a good thing. They just need to adjust the visual part of it to match better with the client side actions.

  • @Hyperzxz

    @Hyperzxz

    10 ай бұрын

    The red and blue are where the client and server thought the shots hit because he is shooting and stopping instantly thats where he was aiming at the time and yet the shots are not going in the same place so if it is just a visual representation and not shots lagging behind why when he is stopping spinning are the shots still behind?

  • @Tommo_

    @Tommo_

    10 ай бұрын

    yes this, the shots will happen in the server in the exact point in time when you click and it won't wait till the next tick, like in csgo.

  • @Hyperzxz

    @Hyperzxz

    10 ай бұрын

    @@Tommo_ yes but the moment he clicks on client side is the moment he stops aiming and yet the shots lag behind

  • @Tricker1266

    @Tricker1266

    10 ай бұрын

    I think your theory is right. Assume you have 0 ping and say you shoot at exactly the start of second 1 of the server's time, the mouse updates 1000 times a second, therefore, the server receives the shot at 1/1000 of second 1 but cannot send it back until at least 16/1000 of second 1 because the server is still running on 64 tick. Introduce 30+ ping and you're now waiting at least 30+30+16=76ms until your shot is sent back from the server. Do this same test with 100 or 200 ping and the distance from the shot on the wall to the crosshair should be even greater. If someone did that then it would confirm this theory. In CS:GO this shouldn't be a problem since the client and server both run on 64 tick, so they know exactly when the shot happened and if they agree, then that's it, it just gets received the same way it was sent out.

  • @Remu-

    @Remu-

    10 ай бұрын

    @@Tricker1266 Actually in CSGO the shot will just completely miss solely due to the delay of 64 tick when ever the click has happened just after a tick.

  • @jadepotgieter
    @jadepotgieter10 ай бұрын

    I noticed, because i use awp plenty of times and I'm descent at flicking i barely hit any flicks mainly straight shots are the ones i hit now, glad some one is shedding some light on this thank you

  • @c.k.demirdzhiyan
    @c.k.demirdzhiyan9 ай бұрын

    Wow, great video. Thanks for the explanation!

  • @FRANANGELICOONA
    @FRANANGELICOONA10 ай бұрын

    They pre-nerfed the game because of KennyS yet again.

  • @XmazzX
    @XmazzX10 ай бұрын

    Awesome video. You showcased the bullet inaccuracy really well, and I hope Valve looks into it. I do want to mention however that the part where you mention 160,000 updates isn't quite right. The server will only update 64 times per second. If you move your mouse 1 pixel, or 1,000 pixels, it doesn't matter. After 15.625 milliseconds the server will see your new mouse position, and your character model's view angles will be sent to all other players on that single tick. I don't know exactly how sub-tick updates work, but if I had to guess I would say all commands (or inputs) are marked by a clock independent of actual game ticks. The clock can be used to see when, within a single tick, a command was issued. For example, if the game is on let's say tick 1000 (since the map started) then the games clock would be 15.625 seconds (yes, seconds), which means tick 1001 will occur at 15.640625 seconds. Now if you send a command such as +attack in the middle of tick 1000, the clock would read 15.6328125 seconds. By marking the player's command +attack with that specific time value, when tick 1001 finally occurs, the command will go through, but not before taking that clock value into account. For example, if two players fire their weapons on tick 1000, we can determine who actually shot first by examining both of their clock values for each of their +attack commands. That would be one use case for a sub-tick clock assuming my guess is accurate. It could be used further to determine all sorts of data such as view angles between ticks, when a command occurred. It's hard to say exactly what's going on at the moment, but take my theory with a grain of salt.

  • @justcrap3703

    @justcrap3703

    10 ай бұрын

    Bullet inaccuracy? What? No. It's you who is inaccurate. Gone are the times when you guys rely on luck to hit flicks that doesn't make sense. Imagine in real life you pull the trigger and then you flick and that's only when it fires. Doesn't make sense right? This is the accurate way.

  • @raph151515

    @raph151515

    10 ай бұрын

    in fact locally on your client, the render will show the last local mouse position, if you get 300 fps and your mouse is 500 Hz, the view angle will be updated 300 times a second using a position which is max 3/5 of a frame old (I did the math at random), so the test he's doing is comparing this local position to what ever position gets recorded by the server prior to validating the shot and then displayed at the next tick when the server response gets used locally. It means that what he is showing is comparing the shift between server shots and local shots, for instance in a game, some shots seems straight, display impact, then disappear and completely missed, because the client must display something temporarily before updating with the latest info from the server. The servers send an updates every bunch of frames at the 64 tick rate, the diff between csgo and cs2 is how much the position changes. Subtick means that between ticks, the clients send more often update potentially, because it sends right away key press. Mouse events while rotating are at the max FPS (I don't think cs registers position multiple times between frames, all the code is frame based). If the subtick was triggered even for mouse events, the number of events received will be enormous (I'm all for it even then) so the cost for the servers will rise, it could improve the shift but I don't think it's even that, because csgo does better at 64 ticks without subticks, so I'm sure it's related to another difference, like the server deconfliction policies and even it could be caused by some random bugs in the new code used in cs2 (I'm sure they finally rewrote core stuff)

  • @XmazzX

    @XmazzX

    10 ай бұрын

    @@justcrap3703 I'm talking about the inaccuracy with +attack;-right as shown in the video compared to CSGO.

  • @XmazzX

    @XmazzX

    10 ай бұрын

    @@raph151515 "It means that what he is showing is comparing the shift between server shots and local shots" The problem is that he is using sv_showimpacts 1 which shows local bullet prediction as well as server prediction. If there was a shift between client and server we would see the blue and red boxes misaligned greatly every time. "Subtick means that between ticks, the clients send more often update potentially, because it sends right away key press." This doesn't appear to be the case. A KZreadr named MrMaxim performed a Wireshark analysis of game packets months ago which showed that there were no additional packets being sent. Something worth considering is that Valve cannot afford to congest the network in a fast-paced game like CS2. Fewer smaller packets is the best way to ensure low bandwidth. It's also the reason why they use UDP packets for speed. 160,000 packets per second has the potential to literally knock people offline. In MrMaxim's video, Valve's official 64-tick server transferred 64 packets per second. This is why I believe that sub-tick doesn't literally mean sending data during world update deltas.

  • @diegodapuppet
    @diegodapuppet10 ай бұрын

    Earned a sub Good Job keep on going

  • @sociabuzz
    @sociabuzz7 ай бұрын

    always a pleasure to look at these vids

  • @calmsh0t
    @calmsh0t10 ай бұрын

    Subtick is a clientside feature. The server still operates at 64 tick. The only thing that subtick means in the end is, that it has certain actions that send updates to the server at any time, not bound to a tick. Regardless, you have a very interesting find there. I hope valve sees this video. The reason why this is happening is hard to figure out from the outside.

  • @nothanks6451

    @nothanks6451

    10 ай бұрын

    Do you know this for sure? I thought sub tick would mean the server uses an event-based queue with timestamp instead of polling ticks.

  • @nexuhs.

    @nexuhs.

    10 ай бұрын

    its the opposite, the one validating your shots with the perfect timestamps is the server, not your pc, if not, hacker would validade shots however they wanted

  • @bay0r

    @bay0r

    10 ай бұрын

    @@nexuhs. yes but the client will send the stamp to the server and the server will decide. but it isnt working properly. lag, performance, latency and other issues are favouring better systems and ping

  • @calmsh0t

    @calmsh0t

    10 ай бұрын

    @@bay0r exactly. Its also worth mentioning that there are still certain activities that are strictly tick bound.

  • @Enigma1336

    @Enigma1336

    10 ай бұрын

    It doesn't even send updates to the server at any time. It is still sent in packets every 1/64 second. It's just that some actions are now time stamped, so the server can more accurately calculate when something happened and in which order.

  • @slixyyy
    @slixyyy10 ай бұрын

    Very well made video! Have you send a bug report? With this amount of evidence it should be replicable and fixable for the devs :)

  • @peconi47
    @peconi4710 ай бұрын

    now i know why i get more headshots, cause i always flick past the head

  • @nassolious
    @nassolious5 ай бұрын

    The worse your ping the more you see and feel this effect. Even now. You can still see this problem in community servers that you have 60 or higher ping in, joining a closer one feels drastically different

  • @oliver1820
    @oliver182010 ай бұрын

    Yeah i think you are definitely right. cs2 was found to still run on 64 tick BUT it has "subtick" so it remembers your inputs for whatever was done between ticks, like clicking, and they have your mouse movement which is probably just running on the 64 tick like you said.

  • @too_oden2199
    @too_oden219910 ай бұрын

    I doubt it is due to dpi, however this is a really solid showcase and experiment showing that there is a massive problem. Thanks for making this video

  • @Enigma1336
    @Enigma133610 ай бұрын

    Definitely some sort of desync between where you are aiming and where the server thinks you are aiming. It's like the positional data being used to calculate view angle is taken from the start of a tick instead of the actual timestamp in the middle of a tick that sub-tick enables. Kind of like the server knows exactly when you shoot, but the delta vector of the shot can be off by anything from 0-1 tick.

  • @AlanRunner1
    @AlanRunner19 ай бұрын

    Awesome video! I’m just gonna flick randomly and hope my fire input registers 😂

  • @arttuhintsala9717
    @arttuhintsala971710 ай бұрын

    This is actually a problem with csgo. There the info of your bullet is only registered at the next tick with the firing animation, so they are in sync. Therefore the bullet, firing animation and crosshair are all a bit too far. In cs2 the bullet info is saved immidiately and sent to the server on the next tick at the same time as the animation. This sub-tick info is then applied, so the bullet shows where it should, but the crosshair placement and animation dont have subtick so they travel too far. IMO this is better than your bullet going too far as well

  • @biot1c
    @biot1c10 ай бұрын

    This is subtick working as intended, your shot is going where your crosshair was the instant the mouse button was pressed instead of being teleported to where your crosshair is on the next tick. This is an improvement over csgo that’s simply going to take some getting used to since it is different

  • @NiceEvils

    @NiceEvils

    10 ай бұрын

    It's an improvement in theory because its more "accurate" but its worse gameplay wise and noone asked for the change. People have practiced for 15 years with it the other way we dont want it different.

  • @atlucas1321

    @atlucas1321

    10 ай бұрын

    People did ask for 128 tick servers for well over 8 years though. While it's not what people asked for it is the same idea

  • @tomklie98

    @tomklie98

    10 ай бұрын

    its obviously not as u see in the vid its pretty random, in csgo its at least consistent

  • @biot1c

    @biot1c

    10 ай бұрын

    @@tomklie98 it’s random because him pressing the fire button is not synced with the tickrate, which is the entire point of subtick. The shot lands exactly where it’s supposed to, which it doesn’t in csgo, and then a random amount of time passes between then until the next tick, at which point he stops rotating.

  • @hhhhhh-vi6sq

    @hhhhhh-vi6sq

    10 ай бұрын

    ​​@@NiceEvils "its too old now dont bother improving it" is exactly the type of thinking that prevents improvement, just get used to the new system and let the meta shift, if you cant adapt its your fault. csgo players are all about getting what you see until it doesnt benefit them

  • @genuz
    @genuz9 ай бұрын

    I was a pro player in a former lifetime (meaning 20 years ago) but I still dabble once in a while. My only way of awp'ing was flicking, and I could usually pwn a DM server easily in GO after a little warmup. Now I cannot hit with awp/scout AT ALL. I hope this get fixed so I don't have to change my playstyle at an age of 41.

  • @l3d4n
    @l3d4n10 ай бұрын

    damn, thank you! I was wondering why I don't hit any flicks in cs2...

  • @Renos44
    @Renos4410 ай бұрын

    Alright I'm going to attempt to explain whats going on here and why flicks in cs2 and csgo are not the same. basically in csgo every action was processed at the end of a tick in a certain order. i believe mouse clicks where always processed last. this lead to some jank of mouse clicks being processed not when they should have. they would follow your crosshair not where you actually shot if you do a frame by frame comparison. in cs2 subtick timestaps every action and the server follows every action according to the timestamp. So mouse clicks are always processed over what would be crosshair movement. it looks like your macro does this. +attack then +turn right. in CS2 this means you will always shoot first then move the crosshair. Compared to csgo where it would often be move the crosshair then shoot.

  • @cassnorland1974

    @cassnorland1974

    10 ай бұрын

    Maybe it is currently like this, but it really shouldn't be. If you stop spinning and shoot you should shoot when you stop not before.

  • @Renos44

    @Renos44

    10 ай бұрын

    @@cassnorland1974 It's exactly like this in play. the issue here is how he issued the commands to cs2 and why you can't really test the hitreg using console commands or macros like this anymore. sub-tick will always process commands in order and at the exact moment in time that they happened. his commands where +attack then + turn right cs2 will always read this as shoot first then turn right exactly as how you sent them to the game.

  • @MrRobotrax
    @MrRobotrax10 ай бұрын

    As a programmer, this is definately not what's happening. My guess is that the mouse angle is recorded at the exact time the sky is fired, but the command to stop spinning it's only registered on the next tick. This would result in the delay you see, but wouldn't be a problem in real games. Maybe you could try testing this with a macro instead to be sure.

  • @nd7024

    @nd7024

    10 ай бұрын

    You are wrong, inputs are processed and viewangles are updated client side on every frame, then on each tick the viewangles and player actions are sent to the server. Using a macro will make no difference. It seems like the data in each packet is not fully synchronised, probably some things are using subtick (player actions) and other things are not (viewangles) resulting in movements and actions that are synchronised client side being out of sync on the server, because the server sees the player action as happening X ms before the tick but other things it assumes as happening exactly on tick. I don't see any other logical explanation for this, especially because this is not a problem in CSGO where everything is on tick and by definition is perfectly synchronised.

  • @MrRobotrax

    @MrRobotrax

    10 ай бұрын

    @@nd7024 from mouse movement yes, every frame. But most commands like -right are only processed during ticks.

  • @dgga3877
    @dgga387710 ай бұрын

    I've seen someone that explained that in csgo the bullet goes to where your crosshair is when the animation happens. But, in cs2 the bullet goes to where was your crosshair at the moment you clicked your mouse. Im not a game developer either and no absolutely nothing but i think its a fair summary.

  • @absolute_vk300
    @absolute_vk30010 ай бұрын

    this finally explains it the Awp flicks never hit and it feels so bad i only played csgo for 64hrs and still got so used to its tick rate i can't play at all in cs2 and its very frustrating

  • @mertcolakoglu7476
    @mertcolakoglu74765 ай бұрын

    still not fixed trash

  • @kurkojo
    @kurkojo4 ай бұрын

    cs2 is trash

  • @AnimeKlipsOffical

    @AnimeKlipsOffical

    3 ай бұрын

    They fked it up soo bad, make me cry. It ran smoothly on my laptop like 60+ fps and no it's barely over 30....

  • @exhoS2

    @exhoS2

    2 ай бұрын

    ++++

  • @Aaron_A80
    @Aaron_A8010 ай бұрын

    ive noticed this yesterday, ive hit headshots while clearly overshooting my crosshair, thought it was me being delusional

  • @ggntic
    @ggntic10 ай бұрын

    Great analysis, I thought I was going crazy something felt off

  • @archiy_thepolice
    @archiy_thepolice4 ай бұрын

    CS2 IS TRASH this is the worst shooting game in history

  • @AnimeKlipsOffical

    @AnimeKlipsOffical

    3 ай бұрын

    Exactly bring back CSGO 1 man 😢

  • @p00tte
    @p00tte10 ай бұрын

    If you start a cs2 server with the cmd window up, you get an error msg every bullet you shoot saying user tick and server is diffrent

  • @auderyabhowmick5834
    @auderyabhowmick583410 ай бұрын

    I totally agree CS2 has a lot of problems like bugs and sometimes lags a lot while using awp or in general miss a couple of shots

  • @12371eric
    @12371eric10 ай бұрын

    I think its because subtick updates are calculated retroactively, shots go where your crosshair WAS when you fired the shot. If this is the case then its more accurate than cs:go.

  • @terryhedge213
    @terryhedge21310 ай бұрын

    idk why but the sometimes when i check some of my shots with show impacts on the difference of where the bullet went and where it actually registered is insane

  • @Cr9mson
    @Cr9mson9 ай бұрын

    well that explains why when I played yesterday and missed some easy AWP shots since I always flick shoot and move my mouse again in order to regain my momentum

  • @nozge7091
    @nozge709110 ай бұрын

    Well explained video mane! congrats

  • @calccalccalc
    @calccalccalc10 ай бұрын

    Technically, you only need to send the mouse data to the server when you fire a gun or throw a nade, and lock both pieces of data to that tick. However, what is concerning is that In your SPEEEN test, you can see that both the client and the server's bullets were off, so this means that there could be a local issue with what mouse data is being sent in the first place. If this was a subtick accuracy issue, shouldn't we be expecting the client to still output the expected action, with the server lagging behind? So, I am actually a multiplayer coder, but without knowing how they've implemented subtick accuracy, it's hard to tell for sure. It could actually be that the client is taking the mouse position from the first interval of the tick where you shoot, which is obviously a bug. They probably need better debug tools than just where client and server bullets land, would be useful to display the tick delta, i.e. the interval where the bullet has been shot between which ticks, so like 9.12(sub tick ms interval)/120034(tick), just to make sure we're not erroneously going back in time. Some useful data could be acquired by taking the speed of your spin, the distance of the target from you, and the distance of the bullet hole from the target, and since it's a flat wall, knowing it's tangential to the shooter. The goal of this is to check how many milliseconds of delay is present in the shot. If it's only ever less than 15.625 (that's 1000/64 i.e. a tick in miliseconds) then it's 100% a subtick accuracy issue.

  • @UnifiedCode
    @UnifiedCode10 ай бұрын

    as a gamedev i have to say, that the mouse dpi doenst affect the tickrate. in games you just get the mouse axis, x and y and then you rotate the player based on that value. (0f-1f)

  • @EvilYoshi-_-
    @EvilYoshi-_-10 ай бұрын

    great video but your theory of this happening because of mouse movement seems off to me when in your testing you used +right and did not go off your mouse input at all except for left clicking to shoot

  • @stefantheconqueror8710
    @stefantheconqueror871010 ай бұрын

    Crosshair placement isn't influenced by tickrate, but by bit value (which is probably 64 bit in this case). It allows for an X amount of possible aiming angles. I don't think that is the issue here, but I would assume it's a problem in the networking part of the game.

  • @saggyflapjax
    @saggyflapjax10 ай бұрын

    People have been over compensating for the tick rate. Being able to flick, click, then rest on the target before the bullet actually fires. The reason your spin and shot don’t line up is the buffer process of the code since you can’t dual bind a key.

  • @Adelphius22
    @Adelphius2210 ай бұрын

    Here is my take sense you requested them in the video (this is my interpretation that I think is more accurate). I'm sure some other comments have also brought this up. I don't think the server cares about the polling rate of your mouse, it just gets the players position and rotation every so often (probably once per tick) and interpolates that information for others to see. As for why the bullets don't line up, on the old tick rate system, all events that happened during a tick get pushed back to the end of the tick and happen at the same time. That is why the bullet lines up with where your crosshair stops. You may have fired your gun a few milliseconds before the tick ended, but you stopped rotating and fired at the end of the tick. On the new subtick system, a fixed 64 tickrate still exists, but events that happen are essentially timestamped with a delta time between ticks. At the end of the tick, the server looks at that delta time and does the math to find out where you were looking at the exact time you fired. Your cursor is in a new position, but the bullet is going to the spot you were looking at that exact moment a few milliseconds prior. Technically the new subtick is more accurate, but there is a perceivable difference when slowed down that you observed in this video.

  • @Ashen75
    @Ashen7510 ай бұрын

    Sub-tick is basically interpolation of an action in between two ticks - specifically shooting and WASD-movement (as stated in the valve video) which, unlike mouse movements, don't have thousands of inputs per second. Let's imagine a very minuscule moment in a game where the server tick-rate is on tick#30 and proceeding to tick#31, a span of 15.625 milliseconds. The player, while quickly swiping their mouse, points at direction XYZ and clicks their mouse button 10.000ms after the instant tick#30 was processed. The game records that the player shot their weapon at that point in time, and tells the server "This player shot at direction XYZ 10.000ms after tick#30". The server will then use that information to create the effects of such an action upon the rest of the game upon the arrival of tick#31. However, there are still 5.625ms remaining until tick#31 arrives, and because your mouse is capable of inputting to your game thousands of times per second, it has moved to direction ABC during the 5.625ms remaining until tick#31 begins. So once the final results of what happened during tick#30 are processed and presented by the server, your shot will have arrived at direction XYZ but your mouse will now be facing direction ABC, which will create the exact same discrepancy showcased in this video. What this means is that in CS2, all of your shots will go in the exact direction you shot them at regardless of tick-rate, although that exact direction is so precise to the point where it's happening in-between what is perceivable by the server's tick-rate. This is different from CSGO where your shots will only go where your mouse is pointing at upon the moment a tick arrives, which means your mouse's direction is only recorded at tick#30 and tick#31 and never anywhere in-between. So CS2's sub-tick system is definitely far more precise than anything a higher tick-rate could achieve in the most literal sense, but it also means that what you're being shown on your screen is ever so slightly different from what you're inputting into the server because you now have the freedom to input actions in between what you can perceive. In fact, it's almost like CS2 has removed the tiny input lag that is present between you inputting an action and the server's tick-rate trying to follow up with your input, but everyone's used to being dependent on the tick-rate which makes the new tick-rate-independent system feel awkward as a result.

  • @Ashen75

    @Ashen75

    10 ай бұрын

    Just to add on about the proposed solution at the end of the video, making the mouse position be sent to the point of fire will probably make things feel even worse because that's essentially preventing your mouse from moving for the remainder of that tick, which means you won't be allowed to move your mouse for upwards of ~15ms in the worst case scenario and ~8ms on average. This probably won't have too much of an impact on tap-firing, but it's gonna be super noticeable during spray-downs if your mouse is being frozen in place after every shot.

  • @kipchickensout
    @kipchickensout10 ай бұрын

    CS2 still works on 64 ticks but now additionally sends the exact time of the input with the next tick

  • @orangehax5280
    @orangehax528010 ай бұрын

    Nice video man keep it up!

Келесі