Mg Hitreg
#1
Posted 27 April 2023 - 12:38 AM
I had heavy Machinguns.
I've been shooting in the legs without leading, and crosshair was Red. Does it mean I've been hitting him? Or I've might been missing because of leading, hitreg, ping compensation reasons?
#2
Posted 27 April 2023 - 01:07 AM
#3
Posted 27 April 2023 - 01:13 AM
Orion_, on 27 April 2023 - 01:07 AM, said:
Yes, they are. But its not clear that if target in crosshair on my client - same goes on server.
In other words: The red crosshair - is the sign of hitting target on client or server?
Edited by SlavesOfPain, 27 April 2023 - 01:17 AM.
#4
Posted 27 April 2023 - 03:53 AM
#5
Posted 27 April 2023 - 04:17 AM
LordNothing, on 27 April 2023 - 03:53 AM, said:
Yes, we know, but question is about hit registration
#6
Posted 27 April 2023 - 04:28 AM
#7
Posted 27 April 2023 - 04:30 AM
SlavesOfPain, on 27 April 2023 - 12:38 AM, said:
I had heavy Machinguns.
I've been shooting in the legs without leading, and crosshair was Red. Does it mean I've been hitting him? Or I've might been missing because of leading, hitreg, ping compensation reasons?
SlavesOfPain, on 27 April 2023 - 04:17 AM, said:
If your question is "crosshair was Red. Does it mean I've been hitting him?" answer would be yes you are hitting target.
Are 100% of your bullets hitting target even if crosshair stays red, no most likely not.
#8
Posted 27 April 2023 - 05:04 AM
Orion_, on 27 April 2023 - 04:28 AM, said:
What is a 'rewind' system?
Is it correct?
Crosshair on the running target -> I shoot MG/Laser for one tic -> Client shows me the Red crosshair -> info goes to server -> on server target is not in the crosshair (because of ping + ping compensation + high target speed) -> target doesn't recieve damage
Curccu, on 27 April 2023 - 04:30 AM, said:
Might be I am hitting target only on client but not on server?
#9
Posted 27 April 2023 - 11:14 AM
#11
Posted 27 April 2023 - 03:23 PM
Meep Meep, on 27 April 2023 - 11:14 AM, said:
hitscans are stupid easy to collision detect. rotate the scene into ray space and use point in polygon algorithm. you dont even have to check z if its an infinite ray. this is probibly why hit scans are the most reliable lag free weapon there is. its an entirely on frame algorithm. projectile weapons on the other hand require integration and convex hull/box on hull/box/sphere algorithms. and because the projectile has velocity it is most sensitive to lag as time is a factor.
im not sure how that applies to hsr. my understanding is its to rewind everything to the previous server tick to facilitate the server authoritative model. then its just a matter of keeping the clocks well synced to ensure server side collision detection reflects what the player sees. my understanding is that it is applied to the whole scene before any hit detection is done to make sure its hit detecting on the correct time stamp.
one problem i identified is players assuming the cosmetic trail effects have any hit box at all. they do not. people walk through ppc trails and assumed the ppc hit because its going throught the center of the mech. but what happens is the projectile stepped forward, and the mech steps towards the trail in the same frame. there is no inter-frame hit detection. gauss rifles are the fastest moving projectiles before quirks and the shot can move 73.3 meters in one tick. if your mech's cross section along that vector is less than 73.3 meters, and its centered perfectly, no hit is registered. the dead band increases linearly with velocity. so you got to be really careful with how fast you make the projectiles. if you want higher resolution detection, the easiest way is to lengthen the server tick. you can also fake it by elongating the projectile hitboxes, but thats a whole other can of worms (then you have to be careful of multiple hits and figure out which one ate the shot).
#12
Posted 27 April 2023 - 03:42 PM
LordNothing, on 27 April 2023 - 03:23 PM, said:
Very true but the lag compensation is for the server not the client. That way you can use hitscan even on very laggy connections and have the server correctly tally the damage since its passed on by the client instead of the server doing a calculation. Basically the client is storing the hit to then transmit to the server instead of the server trying to calculate a hit based off where the server thinks the mech is after the client sends the data. This is why cheating is so easy in this game because of so much of the work being is done clientside and able to be reached by hax. Same with projectiles in that the client is doing the hit detection and passing it on to the server instead of just a fire command then the server calculates off what it currently has stored in memory. World of tanks works that way so that its impossible to do client side hax but is notorious for the atrocious rng mechanics it uses to make its pseudo projectile simulation. Iirc this is why the mwo servers work on a 1 second tick so its easy to keep people synced up and allows sea server players to play on eu servers and still have a fairly lag free experience unless they are playing very fast mechs.
#13
Posted 27 April 2023 - 11:56 PM
Meep Meep, on 27 April 2023 - 03:42 PM, said:
Very true but the lag compensation is for the server not the client. That way you can use hitscan even on very laggy connections and have the server correctly tally the damage since its passed on by the client instead of the server doing a calculation. Basically the client is storing the hit to then transmit to the server instead of the server trying to calculate a hit based off where the server thinks the mech is after the client sends the data. This is why cheating is so easy in this game because of so much of the work being is done clientside and able to be reached by hax. Same with projectiles in that the client is doing the hit detection and passing it on to the server instead of just a fire command then the server calculates off what it currently has stored in memory. World of tanks works that way so that its impossible to do client side hax but is notorious for the atrocious rng mechanics it uses to make its pseudo projectile simulation. Iirc this is why the mwo servers work on a 1 second tick so its easy to keep people synced up and allows sea server players to play on eu servers and still have a fairly lag free experience unless they are playing very fast mechs.
Totally not related, but from my info it's exactly the opposite. Hit detection is 100% server side and your client just gets the Infos. How much harder or not this makes cheating? No clue. In den theorie it should be harder, but larger games struggle to fight this off. Who wants to will find a way.
Edited by Ignatius Audene, 28 April 2023 - 12:09 AM.
#14
Posted 03 May 2023 - 03:22 AM
Meep Meep, on 27 April 2023 - 03:42 PM, said:
Very true but the lag compensation is for the server not the client. That way you can use hitscan even on very laggy connections and have the server correctly tally the damage since its passed on by the client instead of the server doing a calculation. Basically the client is storing the hit to then transmit to the server instead of the server trying to calculate a hit based off where the server thinks the mech is after the client sends the data. This is why cheating is so easy in this game because of so much of the work being is done clientside and able to be reached by hax. Same with projectiles in that the client is doing the hit detection and passing it on to the server instead of just a fire command then the server calculates off what it currently has stored in memory. World of tanks works that way so that its impossible to do client side hax but is notorious for the atrocious rng mechanics it uses to make its pseudo projectile simulation. Iirc this is why the mwo servers work on a 1 second tick so its easy to keep people synced up and allows sea server players to play on eu servers and still have a fairly lag free experience unless they are playing very fast mechs.
Are you sure? AFAIK HSR is about placing locust to the point where you see it on client. Calculations based on ping values. Its emulating client-side hit-reg on server. Its done vs cheating on modified client.
I've heard about another system - "client prediction with lag compensation", probably from Battlefield 4.
Target position rewinds on client, then goes simple hit detection on server.
#15
Posted 03 May 2023 - 11:42 AM
SlavesOfPain, on 27 April 2023 - 05:04 AM, said:
Is it correct?
Crosshair on the running target -> I shoot MG/Laser for one tic -> Client shows me the Red crosshair -> info goes to server -> on server target is not in the crosshair (because of ping + ping compensation + high target speed) -> target doesn't recieve damage
Might be I am hitting target only on client but not on server?
"Host State Rewind," or HSR is what PGI calls it. It's lag compensation.
It should be...
Crosshair on the running target -> You shoot MG/Laser for one tic ->
The system isn't perfect, but it generally works as long as your ping is < 500 ms. Beyond that, it can't rewind mech positions as it discards that info. The end result is that you should generally be able to play and shoot like normal, without having to lead your targets more than you naturally would (in the case of ballistics). A byproduct though is if you duck in cover, you can take damage because to an enemy, you could still be exposed for that split second. So when the server calculates HSR for their shot, from their client it looked like you were still uncovered, so it belatedly will tell your client that you took damage. It can also affect where you get hit at, given twisting speeds and angles of fire with network latency. Anyone with an unstable ping or dropped packets will also see oddities. The red crosshair also is harder to read because it tells you you hit, but because it's server authoritative, there is a delay given your ping. It also doesn't tell you if you did .00001 damage with a shot or 100. So this is far less informative for lasers to some extent and definitely MGs which are honestly the hardest weapon to get reliable feedback on because it's hitscan and continuous, the visual means nothing, and the red crosshair is delayed slightly per tic and lingers for probably a few tics (just like paperdoll damage is delayed thanks in part to the animation).
Of note, your walking is rendered client-side so there is no lag or sluggishness. However, all movement has to be confirmed by the server. For terrain, it doesn't change so there's not really anything to confirm other than if you have packet loss or jitter, you will rubberband. That's because your client is accepting your moves until the server comes back and says, hey, no, you didn't (maybe it didn't see the last few packets where you turned left and assumed you took your hands off the keyboard for those milliseconds) and resets your position. It's obvious when this happens. A similar situation can happen if two mechs collide. Your client will try to determine collision based on the data it has, but HSR might lead to slightly different numbers and the server will force your positions accordingly. I've been in a few matches where I've lost connection and all the other player mechs were walking in place but I was free to roam around the whole map until it dropped with an error message about lost connection.
Edited by TheCaptainJZ, 03 May 2023 - 12:01 PM.
#16
Posted 04 May 2023 - 06:38 AM
TheCaptainJZ, on 03 May 2023 - 11:42 AM, said:
"Host State Rewind," or HSR is what PGI calls it. It's lag compensation.
It should be...
Crosshair on the running target -> You shoot MG/Laser for one tic ->
Yes, "It should be..." a server side color, but I doubt it is.
TheCaptainJZ, on 03 May 2023 - 11:42 AM, said:
Its acutally very funny that we can't expirience this in MWO because of the invisible walls. Almost every cover has an invisible aura. It's also more difficult to aim due to the spaced weapons outside the cockpit. Thus, the MWO player must learn the boundaries of the obstacles and his barel placement to understand that he was shot in cover due to HSR
TheCaptainJZ, on 03 May 2023 - 11:42 AM, said:
Yes, its harder with tics, but I can see from which tic I started to deal damage.
Also I've tested the light MG on the Jenner at the testing grounds. From 350 meters, I could damage side torso or arm without affecting the adjacent hitbox. Looks like MG is pretty accurate inside its range. However from 450 meters the Light MG has a splash.
About your testimony red crosshair has a delay - maybe it's really server-side.
I've paused this investigation because of being swallowed by Mechwarrior 5. Its too good, only the next generous MWO event will save me.
The second question I will search - the exact calculation of ping for "rewind".
#17
Posted 04 May 2023 - 07:09 AM
SlavesOfPain, on 04 May 2023 - 06:38 AM, said:
Also I've tested the light MG on the Jenner at the testing grounds. From 350 meters, I could damage side torso or arm without affecting the adjacent hitbox. Looks like MG is pretty accurate inside its range. However from 450 meters the Light MG has a splash.
You shouldn't test pretty much anything in testing grounds (which is kinda funny) because it is 100% client side and doesn't work like real game works always. Lobby with friend is the best place to test stuff.
And yes All MGs have cone of fire, heavier the MG -> bigger the cone.
#18
Posted 04 May 2023 - 09:19 AM
Curccu, on 04 May 2023 - 07:09 AM, said:
And yes All MGs have cone of fire, heavier the MG -> bigger the cone.
Yes, this. Testing ground is all client-side so you will get different results. And it will be faster and smoother and lag free too.
#19
Posted 04 May 2023 - 10:21 AM
Curccu, on 04 May 2023 - 07:09 AM, said:
And yes All MGs have cone of fire, heavier the MG -> bigger the cone.
You forgot to point, that MG is hit reg weapon.
TheCaptainJZ, on 04 May 2023 - 09:19 AM, said:
Are you guys trolling? How it can affect the accuracy test on static target.
#20
Posted 08 May 2023 - 05:38 AM
SlavesOfPain, on 04 May 2023 - 10:21 AM, said:
Are you guys trolling? How it can affect the accuracy test on static target.
You might see it's working perfectly in the Testing Grounds but not as well on live. It could be due to HSR or lag compensation or other network variables. For instance, if your connection between you and the server has any dropped packets or your connection has jitter, it will affect how the server's calculations work. Dropped packets could mean the server doesn't know you shot at all and jitter could place some of your shots off target if your ping isn't relatively steady, or the opposing player's. None of this happens locally because there's no network involved. In the testing grounds, if you hit, you hit immediately.
In a perfect world, it should work well, but your mileage may vary is all.
Edited by TheCaptainJZ, 08 May 2023 - 05:38 AM.
2 user(s) are reading this topic
0 members, 2 guests, 0 anonymous users