Read the thread so thought i would record two games and see if i could capture anything weird.
Granted, i am quite a bad aimer so some of the examples might not be what i think they are, but i noticed alot of incidents where blood would be generated from a hit on the model (as seen from client side) unaccompanied by a hit marker. This does make me wonder if all rifle hits are actually being registered (hard to actually tell due to rof).
<a href="http://www.youtube.com/watch?v=BPg-_uu75qo" target="_blank">http://www.youtube.com/watch?v=BPg-_uu75qo</a> I've included annotations to perhaps make the video a bit clearer in some parts about what im pointing out. Sorry if the quality isnt ns2hd level.
*edit* I should probably further say that alot of incidents that i thought were clear hits with no hit registrations were actually micro twitches that caused the aim to go off for a split second but in general viewing seem like they were hitting but not registering. As such, I've only included the ones which i've vetted in slow mo for shots that were actually hits.
I looked at a lot of videos frame by frame about this with the rifle and usually its is inaccuracy at a small level. I would say there are issues with animation transitions for the skulk that make it harder to hit when jumping around. I tried running some tests with trace on but it gets difficult to have a high level of aim with all the crap that gets drawn. I would say some of the biggest issues currently are the 150ms default interp, 30 updates a second and choke, coupled with low client fps and hitching/additional lag when people are around. For being a melee/ranged game those values can make a huge difference.
Regarding detection with the shotgun I am not sure how the random spread is calculated server/client side, but I think there is definitely some issues with it and prediction/detection, however some of it may go back to animation issues with skulks
Kouji_SanSr. Hινε UÏкεεÏεг - EUPT DeputyThe NetherlandsJoin Date: 2003-05-13Member: 16271Members, NS2 Playtester, Squad Five Blue
edited February 2012
@elodea
13s
First shot was dead on target, but not close enough to kill.
Second shot didn't register I think as it should have killed him with the damage the Skulk took from the initial shot. It hit the Skulk on the tail, so maybe the server took it for a miss, while the client still shows the bloodsplatter...
The third shot was a shot to the head and killed him.
[edit] I guess the blood splatter shows as well when the server says you didn't actually hit it... But all of this is of course guestimates as to what is happening. It does look weird though, but other then that we can't see what is happening behind the scenes.
<!--quoteo(post=1905205:date=Feb 20 2012, 12:28 PM:name=elodea)--><div class='quotetop'>QUOTE (elodea @ Feb 20 2012, 12:28 PM) <a href="index.php?act=findpost&pid=1905205"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec--><a href="http://www.youtube.com/watch?v=BPg-_uu75qo" target="_blank">http://www.youtube.com/watch?v=BPg-_uu75qo</a><!--QuoteEnd--></div><!--QuoteEEnd--> The reason your shotgun hits weren't registering is due to <a href="https://getsatisfaction.com/unknownworlds/topics/fundamental_problem_with_hit_detection_identified" target="_blank">this problem</a>. From your video, I can see that you snap your view away from the skulk after each shot, which causes it to miss.
<!--quoteo(post=1905249:date=Feb 20 2012, 10:33 PM:name=Jaweese)--><div class='quotetop'>QUOTE (Jaweese @ Feb 20 2012, 10:33 PM) <a href="index.php?act=findpost&pid=1905249"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->The reason your shotgun hits weren't registering is due to <a href="https://getsatisfaction.com/unknownworlds/topics/fundamental_problem_with_hit_detection_identified" target="_blank">this problem</a>. From your video, I can see that you snap your view away from the skulk after each shot, which causes it to miss.<!--QuoteEnd--></div><!--QuoteEEnd--> That's not all of it. You still sometimes see a buttload of alien blood but no kill. Especially on skulks with shotguns. The ping affects this a lot. The effect is really noticable even between 20 and 80 ping servers. And further on 80 and 180 ping servers of course.
<!--quoteo(post=1905249:date=Feb 20 2012, 04:33 PM:name=Jaweese)--><div class='quotetop'>QUOTE (Jaweese @ Feb 20 2012, 04:33 PM) <a href="index.php?act=findpost&pid=1905249"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->The reason your shotgun hits weren't registering is due to <a href="https://getsatisfaction.com/unknownworlds/topics/fundamental_problem_with_hit_detection_identified" target="_blank">this problem</a>. From your video, I can see that you snap your view away from the skulk after each shot, which causes it to miss.<!--QuoteEnd--></div><!--QuoteEEnd-->
that actually really explains to me why sometimes i'm not aiming at an alien, click fire, then turn and get a kill.
<!--quoteo(post=1905249:date=Feb 21 2012, 07:33 AM:name=Jaweese)--><div class='quotetop'>QUOTE (Jaweese @ Feb 21 2012, 07:33 AM) <a href="index.php?act=findpost&pid=1905249"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->The reason your shotgun hits weren't registering is due to <a href="https://getsatisfaction.com/unknownworlds/topics/fundamental_problem_with_hit_detection_identified" target="_blank">this problem</a>. From your video, I can see that you snap your view away from the skulk after each shot, which causes it to miss.<!--QuoteEnd--></div><!--QuoteEEnd-->
Im pretty sure this was fixed a very long time ago... I did spend a fair bit of time going through stuff in slow mo and to my knowledge i did not see this happen, nor did i feel it happening. In fact i tested this bug just a few days ago randomly firing and quickly snapping my view away after a frustrating spate of seemingly 'bad hit registration'- this specific bug isnt there anymore.
I am definitely no programmer, but what i suspect is that there is some networking void where bullets disappear into and/or some problem with where the client thinks the hitboxes are as opposed to where the server thinks they are. This is probably why we see blood effects generated (client side process), but no red hit markers (server side). This creates a user feedback problem obviously where some of your bullets might somehow not be registering but will be creating blood effects and also seem like you were aiming correctly from the client side.
<!--quoteo(post=1905249:date=Feb 20 2012, 09:33 PM:name=Jaweese)--><div class='quotetop'>QUOTE (Jaweese @ Feb 20 2012, 09:33 PM) <a href="index.php?act=findpost&pid=1905249"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->The reason your shotgun hits weren't registering is due to <a href="https://getsatisfaction.com/unknownworlds/topics/fundamental_problem_with_hit_detection_identified" target="_blank">this problem</a>. From your video, I can see that you snap your view away from the skulk after each shot, which causes it to miss.<!--QuoteEnd--></div><!--QuoteEEnd-->
It's true what bellow 30 fps (adding a lot of bots) it starts to behave weirdly. It seems the game update the camera position before updating the mouse buttons. But I have to say it's not so easy to be totally sure that you actually hit the mouse button before the mouse start moving.
Thinking about it: is ns1 with fps_max set to 20 a valid comparison ?
I agree with elodea (except for the 'my aim is generally bad' part lol) that the blood splatters are why we all think things aren't right ... especially now its been pointed out blood splatters don't always come with little red cross hit markers.
Maybe we just need to get used to the idea that '13 blood splatters' doesn't always kill a skulk, because half of them were toe nail hits.
I must admit I've benn getting all ragey when I see 20 blood splatters on a skulk then it eats me, however in retrospect, although not represented at a game level, why should 20 hits on the tail be the same as 20 hits on the head?
i can definitely relate to this issue, and i believe the shotgun is the largest culprit, showing lots of blood but no hit indicator often. i'd understand if the issue was the cone of fire for the shotgun, but seeing blood with no hit indicator is the real marker, here.
edit: EW.. what settings do you play in? am i the only one who plays this game maxed out? every screen i see is ugggglly, which is a shame cuz the game is so beautiful!
Yeah I see it happen to myself when I'm a marine sometimes, I see blood from a bite on the marine next to me, and I go to weld him after the skulk has died and he has 100 / 100 o_O But yeah you're going to have these things happen in multiplayer games when ping and what not comes into factor.
<!--quoteo(post=1905325:date=Feb 21 2012, 01:10 PM:name=ironhorse)--><div class='quotetop'>QUOTE (ironhorse @ Feb 21 2012, 01:10 PM) <a href="index.php?act=findpost&pid=1905325"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->edit: EW.. what settings do you play in? am i the only one who plays this game maxed out? every screen i see is ugggglly, which is a shame cuz the game is so beautiful!<!--QuoteEnd--></div><!--QuoteEEnd-->
lol, on the most awful setting r_fog 0 r_atmospherics 0 at 1280 * 720. r_fog 0 is a must on mineshaft and r_atmospherics 0 is a must on tram... Beautiful maps but it really obstructs vision. I found decreasing the res helps alot with fps especially when recording. ALSO, the lower your resolution, the bigger the crosshair relative to ingame objects so i find it easier to aim with weapons. Everything being slightly more pixellated means its a bit easier to pick out movement as well (for me anyway).
<!--quoteo(post=1905325:date=Feb 21 2012, 03:10 AM:name=ironhorse)--><div class='quotetop'>QUOTE (ironhorse @ Feb 21 2012, 03:10 AM) <a href="index.php?act=findpost&pid=1905325"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->edit: EW.. what settings do you play in? am i the only one who plays this game maxed out? every screen i see is ugggglly, which is a shame cuz the game is so beautiful!<!--QuoteEnd--></div><!--QuoteEEnd-->
I play with everything on too most of the time, also aa, and if i dont forget it shadowsfade 0. I enjoy the graphics of the game. (only flashlight atmospherics would be something i would like to get removed :P)
Do you consider this normal ? What I do is hitting vertically my mouse button with one finger, without holding the mouse at all. It press the mouse button and then the mouse start to move. In the video we can see the contrary happens in game, the camera move and then the shotgun fire.
I tried to follow the path in code from mouse click to bullet fire, but it's quite complicated. But as I understand the firing is linked to animation and is done after the camera has been updated (hard to say though).
IronHorseDeveloper, QA Manager, Technical Support & contributorJoin Date: 2010-05-08Member: 71669Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Subnautica Playtester, Subnautica PT Lead, Pistachionauts
edited February 2012
Yuuki.. i love seeing you focused on something like this! gogogo
so how is this connected with the blood effects? i mean that picture above from elodea makes me think that there are two issues: <ul><li>firing is done after the camera has been updated (should be before if anything for timing, our brain gave a signal to our finger based on what it saw previously, not what it will see which is unknown. obviously the golden way would be to average between the two frames)</li><li> and blood is shown regardless of actually hitting. (or is it hitting, but a message is not sent across to the server of success?)</li></ul>
imo, if blood is shown and your crosshair is on target that like picture, you should be getting credit for it regardless of lag - thats the job of lag compensation and a properly networked game engine, isnt it?
NS2 has pretty bad input lag with regards to key input, worse then source is, which is worse then half life. I do not think this is the issue with regards to seeing blood effects client side and there being no hit indicator server side, as the client side traces would detect and show the blood effects. Note that the hit indicator would come a couple frames after the client side blood was shown however. There is currently a bug with LMG where sparks play twice when you fire, i cannot tell if this is a bug just with the effect being triggered twice (client and server side) or some other kind of bug. Below is a video of this bug, and also of the floating structures bug.
It's client and server hits yes. The server one is lagging behind. You can add some lag using net_lag 500 in console.
If think the blood splatter is the same, it's generated client side if you hit client side, and it's also displayed latter when the server register a hit (and sometimes it doesn't it seems).
Doesn't the mouse provide a high time resolution signal ? A bit like an audio-in working at 44100Hz. I would have expected that you could know the exact timing of the mouse button hit and interpolate the correct camera position, even at low frame rate.
Well i would imagine having the blood client/server side is a bad idea, it should be one or the other, not both. Mouse input is different and seems to be handled well in NS2 now, but there is measurable delay with keyboard input (seems kind of strange to me). It could just be my FPS is rather low.
Now that i know what im looking for, this blood spatter but no hit registration mark is alot more common than i thought it would be even though the pings of relevant players are all really low. This is just from one game where the rifle was also not registering hits.
Not a single red hit marker in all the following examples but a ton of blood. Seems like the server thinks the fade is already in blink when the client is saying it isnt. <a href="http://www.youtube.com/watch?v=Ki6-dbIUiNU" target="_blank">http://www.youtube.com/watch?v=Ki6-dbIUiNU</a>
But isnt the crosshair hit indicator client side, otherwise it would take a second or so until it could give feedback?
So its more like the fade is already in blink but the bloodsplatter particle effect doesnt know it :B?
So either bloodsplatters need some tweaks(dont get drawn) if something like this happens, or it should count still as a hit... (but i wonder how it looks for the fade, guess if it would count as a hit he would be like wtf - i was in blink ages ago...)
<!--quoteo(post=1905621:date=Feb 22 2012, 12:44 AM:name=Mkk_Bitestuff)--><div class='quotetop'>QUOTE (Mkk_Bitestuff @ Feb 22 2012, 12:44 AM) <a href="index.php?act=findpost&pid=1905621"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->NS2 has pretty bad input lag with regards to key input, worse then source is, which is worse then half life. I do not think this is the issue with regards to seeing blood effects client side and there being no hit indicator server side, as the client side traces would detect and show the blood effects. Note that the hit indicator would come a couple frames after the client side blood was shown however. There is currently a bug with LMG where sparks play twice when you fire, i cannot tell if this is a bug just with the effect being triggered twice (client and server side) or some other kind of bug. Below is a video of this bug, and also of the floating structures bug.
This is it I think. If you look in this video, how far the server side hit detection lags behind, you can imagine how it plays out while targeting an moving alien. Viable solution? Higher Server tickrate (easy said, hard to achieve) or maybe, if possible build up a second network connection and multithread the hit detection so it gets its own tickrate which will be much higher.
Hit detection seems to be worse since Gorilla. Now, I've learned to aim my LMG/bitecam just a bit ahead of my target to ensure a hit. Of course, recent builds also give me lower framerate, so that could also be a factor. Also, for what it's worth, input has always felt a little slow-to-respond.
<!--quoteo(post=1906278:date=Feb 23 2012, 03:40 PM:name=elodea)--><div class='quotetop'>QUOTE (elodea @ Feb 23 2012, 03:40 PM) <a href="index.php?act=findpost&pid=1906278"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->Now that i know what im looking for, this blood spatter but no hit registration mark is alot more common than i thought it would be even though the pings of relevant players are all really low. This is just from one game where the rifle was also not registering hits.
Not a single red hit marker in all the following examples but a ton of blood. Seems like the server thinks the fade is already in blink when the client is saying it isnt. <a href="http://www.youtube.com/watch?v=Ki6-dbIUiNU" target="_blank">http://www.youtube.com/watch?v=Ki6-dbIUiNU</a><!--QuoteEnd--></div><!--QuoteEEnd-->
I think a lot of it boils down to the server tickrate being low. Clients only receive 20 updates a second which is really pretty poor especially for a game with super fast moving aliens.
Comments
Granted, i am quite a bad aimer so some of the examples might not be what i think they are, but i noticed alot of incidents where blood would be generated from a hit on the model (as seen from client side) unaccompanied by a hit marker. This does make me wonder if all rifle hits are actually being registered (hard to actually tell due to rof).
<a href="http://www.youtube.com/watch?v=BPg-_uu75qo" target="_blank">http://www.youtube.com/watch?v=BPg-_uu75qo</a>
I've included annotations to perhaps make the video a bit clearer in some parts about what im pointing out. Sorry if the quality isnt ns2hd level.
*edit*
I should probably further say that alot of incidents that i thought were clear hits with no hit registrations were actually micro twitches that caused the aim to go off for a split second but in general viewing seem like they were hitting but not registering. As such, I've only included the ones which i've vetted in slow mo for shots that were actually hits.
Regarding detection with the shotgun I am not sure how the random spread is calculated server/client side, but I think there is definitely some issues with it and prediction/detection, however some of it may go back to animation issues with skulks
13s
First shot was dead on target, but not close enough to kill.
Second shot didn't register I think as it should have killed him with the damage the Skulk took from the initial shot. It hit the Skulk on the tail, so maybe the server took it for a miss, while the client still shows the bloodsplatter...
The third shot was a shot to the head and killed him.
[edit]
I guess the blood splatter shows as well when the server says you didn't actually hit it... But all of this is of course guestimates as to what is happening. It does look weird though, but other then that we can't see what is happening behind the scenes.
The reason your shotgun hits weren't registering is due to <a href="https://getsatisfaction.com/unknownworlds/topics/fundamental_problem_with_hit_detection_identified" target="_blank">this problem</a>. From your video, I can see that you snap your view away from the skulk after each shot, which causes it to miss.
That's not all of it. You still sometimes see a buttload of alien blood but no kill. Especially on skulks with shotguns. The ping affects this a lot. The effect is really noticable even between 20 and 80 ping servers. And further on 80 and 180 ping servers of course.
Wow, just...wow.
that actually really explains to me why sometimes i'm not aiming at an alien, click fire, then turn and get a kill.
Im pretty sure this was fixed a very long time ago...
I did spend a fair bit of time going through stuff in slow mo and to my knowledge i did not see this happen, nor did i feel it happening. In fact i tested this bug just a few days ago randomly firing and quickly snapping my view away after a frustrating spate of seemingly 'bad hit registration'- this specific bug isnt there anymore.
I am definitely no programmer, but what i suspect is that there is some networking void where bullets disappear into and/or some problem with where the client thinks the hitboxes are as opposed to where the server thinks they are. This is probably why we see blood effects generated (client side process), but no red hit markers (server side). This creates a user feedback problem obviously where some of your bullets might somehow not be registering but will be creating blood effects and also seem like you were aiming correctly from the client side.
It's true what bellow 30 fps (adding a lot of bots) it starts to behave weirdly. It seems the game update the camera position before updating the mouse buttons.
But I have to say it's not so easy to be totally sure that you actually hit the mouse button before the mouse start moving.
Thinking about it: is ns1 with fps_max set to 20 a valid comparison ?
Maybe we just need to get used to the idea that '13 blood splatters' doesn't always kill a skulk, because half of them were toe nail hits.
I must admit I've benn getting all ragey when I see 20 blood splatters on a skulk then it eats me, however in retrospect, although not represented at a game level, why should 20 hits on the tail be the same as 20 hits on the head?
<img src="http://i.imgur.com/tYnpJ.jpg" border="0" class="linked-image" />
i can definitely relate to this issue, and i believe the shotgun is the largest culprit, showing lots of blood but no hit indicator often.
i'd understand if the issue was the cone of fire for the shotgun, but seeing blood with no hit indicator is the real marker, here.
edit: EW.. what settings do you play in? am i the only one who plays this game maxed out? every screen i see is ugggglly, which is a shame cuz the game is so beautiful!
But yeah you're going to have these things happen in multiplayer games when ping and what not comes into factor.
lol, on the most awful setting r_fog 0 r_atmospherics 0 at 1280 * 720. r_fog 0 is a must on mineshaft and r_atmospherics 0 is a must on tram... Beautiful maps but it really obstructs vision. I found decreasing the res helps alot with fps especially when recording. ALSO, the lower your resolution, the bigger the crosshair relative to ingame objects so i find it easier to aim with weapons. Everything being slightly more pixellated means its a bit easier to pick out movement as well (for me anyway).
I play with everything on too most of the time, also aa, and if i dont forget it shadowsfade 0.
I enjoy the graphics of the game.
(only flashlight atmospherics would be something i would like to get removed :P)
Maybe its server choke?
It seems like its not an issue with low player count
Also I have major problems sometimes as well even if my ping in 50 or less
<center><object width="450" height="356"><param name="movie" value="http://www.youtube.com/v/HEXS1BlKNXw"></param><embed src="http://www.youtube.com/v/HEXS1BlKNXw" type="application/x-shockwave-flash" width="450" height="356"></embed></object></center>
I tried to follow the path in code from mouse click to bullet fire, but it's quite complicated. But as I understand the firing is linked to animation and is done after the camera has been updated (hard to say though).
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->OnProcessMove->HandleButtons->HandleAttacks->PrimaryAttack->weapon:OnPrimaryAttack->TriggerEffects()->EffectManager:TriggerEffects->InternalTriggerEffect-> ?
In the other direction :
FireBullets<- FirePrimary <- OnTag<- UpdateAnimationState?<!--c2--></div><!--ec2-->
so how is this connected with the blood effects? i mean that picture above from elodea makes me think that there are two issues:
<ul><li>firing is done after the camera has been updated (should be before if anything for timing, our brain gave a signal to our finger based on what it saw previously, not what it will see which is unknown. obviously the golden way would be to average between the two frames)</li><li> and blood is shown regardless of actually hitting. (or is it hitting, but a message is not sent across to the server of success?)</li></ul>
imo, if blood is shown and your crosshair is on target that like picture, you should be getting credit for it regardless of lag - thats the job of lag compensation and a properly networked game engine, isnt it?
anyone?
<a href="http://youtu.be/mjbCil1lF1w" target="_blank">http://youtu.be/mjbCil1lF1w</a>
If think the blood splatter is the same, it's generated client side if you hit client side, and it's also displayed latter when the server register a hit (and sometimes it doesn't it seems).
Doesn't the mouse provide a high time resolution signal ? A bit like an audio-in working at 44100Hz. I would have expected that you could know the exact timing of the mouse button hit and interpolate the correct camera position, even at low frame rate.
Not a single red hit marker in all the following examples but a ton of blood. Seems like the server thinks the fade is already in blink when the client is saying it isnt.
<a href="http://www.youtube.com/watch?v=Ki6-dbIUiNU" target="_blank">http://www.youtube.com/watch?v=Ki6-dbIUiNU</a>
So its more like the fade is already in blink but the bloodsplatter particle effect doesnt know it :B?
So either bloodsplatters need some tweaks(dont get drawn) if something like this happens, or it should count still as a hit... (but i wonder how it looks for the fade, guess if it would count as a hit he would be like wtf - i was in blink ages ago...)
(no idea what im talking)
<a href="http://youtu.be/mjbCil1lF1w" target="_blank">http://youtu.be/mjbCil1lF1w</a><!--QuoteEnd--></div><!--QuoteEEnd-->
This is it I think. If you look in this video, how far the server side hit detection lags behind, you can imagine how it plays out while targeting an moving alien.
Viable solution? Higher Server tickrate (easy said, hard to achieve) or maybe, if possible build up a second network connection and multithread the hit detection so it gets its own tickrate which will be much higher.
Not a single red hit marker in all the following examples but a ton of blood. Seems like the server thinks the fade is already in blink when the client is saying it isnt.
<a href="http://www.youtube.com/watch?v=Ki6-dbIUiNU" target="_blank">http://www.youtube.com/watch?v=Ki6-dbIUiNU</a><!--QuoteEnd--></div><!--QuoteEEnd-->
the server doing too much?