

God Help Me.... Ppc Hit Reg
#1
Posted 27 March 2015 - 02:20 PM
#2
Posted 27 March 2015 - 02:40 PM
Had a similar situation a few matches later on Viridian Bog but with a Mad Dog. I blew through his CT and killed him in 3 alphas.
Edited by Apnu, 27 March 2015 - 02:41 PM.
#3
Posted 23 April 2015 - 09:12 AM
Apnu, on 27 March 2015 - 02:40 PM, said:
Had a similar situation a few matches later on Viridian Bog but with a Mad Dog. I blew through his CT and killed him in 3 alphas.
Well there's you're problem, you're confusing SCR hitreg with SRM hitreg. SRM salvos are notoriously unreliable. Stormcrow has a low profile but if you shoot it with something that works (IE lasers) then they go down like anything else.
CryEngine 3 is not my area of expertise but I've had enough experience with game engines in general to think this is an issue with rigid body collision detections. Real-time physics engines prioritize speed of simulation over accuracy and as a result, they have issues with high speed collisions with small objects. It varies depending on the engine, physics update interval, etc., but once you reach the neighborhood of 1000 m/s or so, a small enough object can start to "tunnel" through colliders between frames in the physics simulation without triggering an event. Tunneling is a pretty well known issue in game development, so I doubt its as simple as that, but the point is that rigid body collisions can spawn all kinds of bugs.
I'm fairly confident it is limited to rigid bodies because lasers are using a ray-intersection test which returns collision data instantaneously. The collision is returned the moment it is called so there's no possibility of getting lost between simulation updates. A full salvo of 12 lasers from a nova seems to register flawlessly but when you fire a lot of rigidbody physics projectiles in rapid succession (light AC's, chain firing PPCs, SRM salvos, etc), a lot of the collisions don't get picked up.
Edited by Malcolm Decker, 23 April 2015 - 09:14 AM.
#4
Posted 23 April 2015 - 09:19 AM
It even happens to my allies, once we were going after a crit dual gauss Jagger, the damn hit reg didn't pick up ANY of the 10 erppcs, that were slapped dead straight into it's center, and it got a free 2 kills before being mauled by the rest of the team later.
The only time I use ERppcs is when I have my mist lynx, the ppcs on that thing always hit

#5
Posted 23 April 2015 - 09:22 AM
Darian DelFord, on 27 March 2015 - 02:20 PM, said:
Part of the problem is the actual "object" of the PPC is tiny, like an AC5 round. But the object we see is quite large. So what looks like might be hitting is actually slipping through.
#6
Posted 23 April 2015 - 09:31 AM
BTW, did you alpha the 3 ERPPCs? Hard to tell from how you worded it.
If you did alpha, i woyldnt do that. If a target I was shooting at was that badly damaged, and I had 3 ERPPCs to shoot, I think I'd chain fire them ( since one shot is doing him in). No need to alpha strike a cherry red internal mech. That way if one shot didn't register, you have 2 more you can quickly fire to get the kill. Saves on heat too.
#7
Posted 23 April 2015 - 09:34 AM
Malcolm Decker, on 23 April 2015 - 09:12 AM, said:
Well there's you're problem, you're confusing SCR hitreg with SRM hitreg. SRM salvos are notoriously unreliable. Stormcrow has a low profile but if you shoot it with something that works (IE lasers) then they go down like anything else.
CryEngine 3 is not my area of expertise but I've had enough experience with game engines in general to think this is an issue with rigid body collision detections. Real-time physics engines prioritize speed of simulation over accuracy and as a result, they have issues with high speed collisions with small objects. It varies depending on the engine, physics update interval, etc., but once you reach the neighborhood of 1000 m/s or so, a small enough object can start to "tunnel" through colliders between frames in the physics simulation without triggering an event. Tunneling is a pretty well known issue in game development, so I doubt its as simple as that, but the point is that rigid body collisions can spawn all kinds of bugs.
I'm fairly confident it is limited to rigid bodies because lasers are using a ray-intersection test which returns collision data instantaneously. The collision is returned the moment it is called so there's no possibility of getting lost between simulation updates. A full salvo of 12 lasers from a nova seems to register flawlessly but when you fire a lot of rigidbody physics projectiles in rapid succession (light AC's, chain firing PPCs, SRM salvos, etc), a lot of the collisions don't get picked up.
Wow! That's so interesting. Thanks!
#8
Posted 23 April 2015 - 09:37 AM
Malcolm Decker, on 23 April 2015 - 09:12 AM, said:
I wish this were the case but it isn't. I've seen countless salvos of lasers not register any damage. One second they are working, the next they are nerf bats.
#9
Posted 23 April 2015 - 09:42 AM
Let's assume a terrible time step for this game:
Suppose the game calculates where everything is in time steps of 0.1 seconds (every tenth of a second it updates the location of all objects). When two objects occupy the same space at the same time, there is a collision.
The game calculates where that projectile is every 0.1 seconds.
At t=0.1, it is 150m from your muzzle.
At t=0.2, it is 300m from you muzzle.
At t=0.3 ....
Let's say there was a stationary enemy mech 200m from your muzzle. The game never calculated that the projectile was at a distance 200m away in line with your muzzle. It just appeared at 150m, then at 300m, never occupying the space of the enemy mech, so the enemy mech never got hit.
If the game has this bad of a refresh rate, you run into big problems.
Now, more realistically, the game has to calculate objects every 0.001 seconds.
At t=0.001, round is 1.5 meters away
At t=0.002, round is 3 meters away
...
At t=0.133, round is 199.5 meters away
At t=0.134, round is 201 meters away.
The mech is more than 1.5 meters thick, so if it's at that location between time 0.133 and 0.134, you will get the collision.
As the time step gets finer, you will have fewer "tunneling" problems.
#10
Posted 23 April 2015 - 11:22 AM
#11
Posted 23 April 2015 - 11:23 AM
#12
Posted 23 April 2015 - 11:25 AM
#13
Posted 23 April 2015 - 11:53 AM
Malcolm Decker, on 23 April 2015 - 09:12 AM, said:
Well there's you're problem, you're confusing SCR hitreg with SRM hitreg. SRM salvos are notoriously unreliable. Stormcrow has a low profile but if you shoot it with something that works (IE lasers) then they go down like anything else.
CryEngine 3 is not my area of expertise but I've had enough experience with game engines in general to think this is an issue with rigid body collision detections. Real-time physics engines prioritize speed of simulation over accuracy and as a result, they have issues with high speed collisions with small objects. It varies depending on the engine, physics update interval, etc., but once you reach the neighborhood of 1000 m/s or so, a small enough object can start to "tunnel" through colliders between frames in the physics simulation without triggering an event. Tunneling is a pretty well known issue in game development, so I doubt its as simple as that, but the point is that rigid body collisions can spawn all kinds of bugs.
I'm fairly confident it is limited to rigid bodies because lasers are using a ray-intersection test which returns collision data instantaneously. The collision is returned the moment it is called so there's no possibility of getting lost between simulation updates. A full salvo of 12 lasers from a nova seems to register flawlessly but when you fire a lot of rigidbody physics projectiles in rapid succession (light AC's, chain firing PPCs, SRM salvos, etc), a lot of the collisions don't get picked up.
The weird thing is SRM's are MUCH slower then other projectiles (300 m/s), so I would not not think it is an issue of "tunneling" that occurs at high velocities. If that was the case, I think we would seeing much more issues with Gauss Rifle hit reg @ 2000 m/s. IIRC, Host State Rewind has significant issues trying to register LOW velocity projectiles (like AC20/SRM), and MASSED projectiles hitting in a really small time frame (SRM/LRM volleys).
I am no expert on networking, so take this with a grain of salt, but I would think the issue is more to do with HSR then rigid body collision detections. That is not to say that these things don't happen; the Spider and Firestarter reportedly still have holes in hit boxes that can make missile/ballistic registration a real pain..
Edited by shellashock, 23 April 2015 - 11:53 AM.
#14
Posted 23 April 2015 - 12:03 PM
shellashock, on 23 April 2015 - 11:53 AM, said:
I am no expert on networking, so take this with a grain of salt, but I would think the issue is more to do with HSR then rigid body collision detections. That is not to say that these things don't happen; the Spider and Firestarter reportedly still have holes in hit boxes that can make missile/ballistic registration a real pain..
SRMs all hit within a very brief window, so I'm guessing it's not tunneling but overload to calculate all hit locations and damage updates. Something gets lost in the shuffle. If I need to calculate 18 separate hits then convert to binned total damage per location and then update the graphics for each, I'm guessing there's a few dropped packets here and there maybe?
#15
Posted 23 April 2015 - 12:07 PM
Dino Might, on 23 April 2015 - 11:23 AM, said:
#16
Posted 23 April 2015 - 12:35 PM
Dino Might, on 23 April 2015 - 12:03 PM, said:
SRMs all hit within a very brief window, so I'm guessing it's not tunneling but overload to calculate all hit locations and damage updates. Something gets lost in the shuffle. If I need to calculate 18 separate hits then convert to binned total damage per location and then update the graphics for each, I'm guessing there's a few dropped packets here and there maybe?
I have also heard people giving subjective reports of high ping player vs low ping player (and vice versa) hit reg issues, but I don't know if this has been confirmed. In general, there are many things that PGI is taking a look at and are trying to fix; so I would recommend being patient with them until they have finished their sweep of the code. As always, keep reporting the incidents to improve their database of issue tracking.
#17
Posted 23 April 2015 - 03:00 PM
The main reason I suspect rigid bodies is that their behavior is calculated in the fixed timestep and there is a lot more that can go wrong. When the physics engine detects a rigid body collision, it (hopefully) generates an event that's then handled by some code. A ray intersection test, on the other hand, is called directly by a method in the weapon code when you click the fire button. That means it doesn't depend on events getting properly generated and handled, it returns a collision in the same frame it is called. In my experience ray intersections have fewer issues since they don't depend on Δt.
On top of everything else, HSR has the final say on what did or didn't happen in the client/server simulations. I think you are right that HSR is dropping lasers too, but the problem seems much worse with physical projectiles, at least in my experience. Of course, having never seen the code, this is all just speculation but issues like these are pretty common when dealing with networked physics.
Edited by Malcolm Decker, 23 April 2015 - 03:01 PM.
#18
Posted 23 April 2015 - 03:30 PM
I would like to add that it is noticeably worse on the PPC than the AC by a shocking amount! Those 'crows drive me nuts. I now aim for the shoulder and along the top between the shoulders. I have tried legs but with mixed results but much better than aiming for the center mass where it's head hangs low. Also shooting them at their balls works OK.


#19
Posted 23 April 2015 - 04:32 PM
Scout Derek, on 23 April 2015 - 09:19 AM, said:
Alistair Winter, on 23 April 2015 - 11:22 AM, said:
This is NOT a hit reg issue. This is a visual feedback bug which I have reported multiple times. If you shoot a target while the cursor is animating from red > yellow, it won't turn red again because the animation is still happening. The exact same issue applies to the paper doll flash. You can easily test this in the testing grounds with PPCs and ACs
Edited by Troutmonkey, 23 April 2015 - 04:33 PM.
#20
Posted 23 April 2015 - 06:43 PM
Troutmonkey, on 23 April 2015 - 04:32 PM, said:
This is NOT a hit reg issue. This is a visual feedback bug which I have reported multiple times. If you shoot a target while the cursor is animating from red > yellow, it won't turn red again because the animation is still happening. The exact same issue applies to the paper doll flash. You can easily test this in the testing grounds with PPCs and ACs
That is a seperate and equally annoying bug.
Fluctuating ping, be it high, or low, creates more issues with the HSR than you can shake a stick at. IMO, it has to do with the HSR trying to resolve your position and angle of fire trajectory etc and the enemy position. PING fluctuations make HSR throw a fit trying to calculate it. High speed mechs can also. low speed projectiles, like PPC and AC10(AC20 is too short range to see it as much) also add to the HSR headaches because of the increased time for the target to move while the projectile flies.
there are times when you can just hammer and hammer an enemy and the crosshair will not run on all hits, and the enemy will tank 500+ dmg to its torso. that enemy fighting a team mate might get instaganked. it is like the HSR lottery. Lasers, in general, have been the most reliable since the last big fix they got. they still fall into this HSR lottery though sometimes.
Another thing to consider: a target that is very close will move "across your screen" at a much faster rate than something 600M away. This leads to HSR issues where it can not reconcile your crosshair position with the targets position because the speeds are too great. this is worse and worse with higher and higher ping. my ping is usually very bad, and I will tell you, unless a light mech is running right for me or sitting still/moving very slow, ballistic(and ppc) HSR for me vs them is a total nightmare. i have to lead lasers at sub 100M because of this(i have BAD ping)
IMO, this will never be resolved without some POWERFUL server hardware that can crank the game clock into UBERDRIVE allowing exponantially more checks for the HSR for position. That would require more moeny than a FTP game could generate IMO, without some greedy sponsor trying to horn in on profits and control the dev team.
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users