Corpses, gibbing, antilag and disappearing bullets

Discussion for Bani's Tournament Mod

Moderators: Forum moderators, developers

Nogen
Posts: 93
Joined: Mon Aug 30, 2004 4:31 pm

Post by Nogen »

ReyalP wrote:
Nogen wrote:Does anybody actually deliberately shoot through people? Do you ever shoot at someone EXPECTING your bullets to go through them at hit what is behind them?
There are two corpses close together that you are trying to gib. With your 'fix' it takes you longer to gib them both.

If, on your client, the corpses are actually lying on the ground it would be unusual to be able to draw a straight line from your gun through both of the two corpses. (the exception being i suppose when the corpses are right on top of each other).

If, on your client, the target (who is a corpse on the server) is still alive then you would NEVER expect to shoot through them. If you wanted to gib a target behind them then your brain would tell you there was an obstacle in the way and you would adjust your firing position so the the target behind wasn't being obscured.
ReyalP wrote: Imagine there is a corpse between your line of fire, and the person you are trying to kill. With your "fix" it protects them longer, based on your ping.

Notice that both of these cases your "fix" just artificially punishes high pingers.
Yes I agree that there would be some penalty for high pinging players compared to the current situation. But is that current situation currently awarding them unfairly by allowing them to shoot through solid objects that they weren't aiming at? What if the person behind the target is a teammate? They certainly don't want their bullets to go through the solid object then.

Consider this also. Higher pinging players can track a target on their client for longer and gib them (at least partially) before they become a corpse on their client. This is already an unfair advantage since they don't need to adjust their crosshair OR "miss" the shots due to the instantaneous hitbox transition. If you have a crossfire situation then the high pinging team can easily kill and gib without needing to ever shoot at "corpse level".

Basically my position is this. Antilag is supposed to put the truth in the hands of the shooter. Something is under your crosshair and you pull the trigger then you score a hit (unless dead at the server when the shots arrived). I think this is a strong ideal to aim for. If players actually expected to be able to shoot through solid objects then it wouldn't be a problem. But players don't. They expect to hit what they are aiming at. If bullets start going through solid objects as some function of ping then thats some randomness that shouldn't exist in the game.

Just thought of this as well:

Add to the fix that limbo'd corpses only block bullets if the target was ALIVE at the client at the time of shooting. This would mean that gibbing two corpses lying on top of each other wouldn't be affected by the fix.
User avatar
Lagger
Posts: 316
Joined: Mon Sep 29, 2003 8:30 am

Post by Lagger »

Consider this also. Higher pinging players can track a target on their client for longer and gib them (at least partially) before they become a corpse on their client. This is already an unfair advantage since they don't need to adjust their crosshair OR "miss" the shots due to the instantaneous hitbox transition. If you have a crossfire situation then the high pinging team can easily kill and gib without needing to ever shoot at "corpse level".
This is easily evened out by the fact that the low pingers actions reach the server faster thus giving the low pinger a 1 or 2 shot lead on the high pinger. Likewise if you are a high pinger and want to gib an opponent, you will waste more shots at the end. Don't say the high pinger has an unfair advantage, it's simply not true.
User avatar
ReyalP
Posts: 1663
Joined: Fri Jul 25, 2003 11:44 am

Post by ReyalP »

Adding a bunch of special cases to hit detection is a terrible idea. It stinks, and I wouldn't touch it with a 10 foot pole.

The effects you are talking about are minor unless you are playing at a very high ping. If you spend a lot of time playing with a 200+ ping, you'll just have to get used to it.
send lawyers, guns and money
Nogen
Posts: 93
Joined: Mon Aug 30, 2004 4:31 pm

Post by Nogen »

Lagger wrote:
Consider this also. Higher pinging players can track a target on their client for longer and gib them (at least partially) before they become a corpse on their client. This is already an unfair advantage since they don't need to adjust their crosshair OR "miss" the shots due to the instantaneous hitbox transition. If you have a crossfire situation then the high pinging team can easily kill and gib without needing to ever shoot at "corpse level".
This is easily evened out by the fact that the low pingers actions reach the server faster thus giving the low pinger a 1 or 2 shot lead on the high pinger. Likewise if you are a high pinger and want to gib an opponent, you will waste more shots at the end. Don't say the high pinger has an unfair advantage, it's simply not true.
Oh get off your high horse. I'm not trying to advocate that because of this one thing high pingers get some overall advantage. I was using that point to illustrate that ping spread causes so many pluses and minuses on both sides of the fence and that:
ReyalP wrote:Imagine there is a corpse between your line of fire, and the person you are trying to kill. With your "fix" it protects them longer, based on your ping.

Notice that both of these cases your "fix" just artificially punishes high pingers.
Is really an insignificant issue when compared to others.
ReyalP wrote: Adding a bunch of special cases to hit detection is a terrible idea. It stinks, and I wouldn't touch it with a 10 foot pole.
How is this any more of a special case then deciding that hits on a target that is alive on the client but dead on the server get applied to the ungibbed corpse?

The answer is it isn't. It is a perfectly logical thing to do to create total consistency in the shooting side of the game.

Before Proposed fix

State on client------State on server----------Action taken

--------Alive---------------Alive----------------Damage applied to target
--------Alive---------------Ungibbed----------Damage applied to corpse
--------Alive---------------Gibbed-------------Bullets go through target and hit whatever is behind
--------Ungibbed---------Ungibbed----------Damage applied to corpse
--------Ungibbed---------Gibbed-------------Bullets go through corpse and hit whatever is behind
--------Gibbed------------Gibbed-------------Bullets go through corpse and hit whatever is behind

After Proposed fix

State on client------State on server----------Action taken

--------Alive---------------Alive----------------Damage applied to target
--------Alive---------------Ungibbed----------Damage applied to corpse
--------Alive---------------Gibbed-------------Bullets hit corpse and are terminated
--------Ungibbed---------Ungibbed----------Damage applied to corpse
--------Ungibbed---------Gibbed-------------Bullets go through corpse and hit whatever is behind
--------Gibbed------------Gibbed-------------Bullets go through corpse and hit whatever is behind


ReyalP wrote: The effects you are talking about are minor unless you are playing at a very high ping. If you spend a lot of time playing with a 200+ ping, you'll just have to get used to it.
Yes I agree. These fixes wouldn't change gameplay very much at all. I play generally with a 50ms ping and my motivation for bringing them up is just a minor annoyance. To me they make the shooting side of the game feel like its not quite a finished product. I only notice it occasionally but I'd still class it as something that should be fixed before the end of the games development.
User avatar
ReyalP
Posts: 1663
Joined: Fri Jul 25, 2003 11:44 am

Post by ReyalP »

Nogen wrote: How is this any more of a special case then deciding that hits on a target that is alive on the client but dead on the server get applied to the ungibbed corpse?

The answer is it isn't.
Not sure how you come to that conclusion. I meant it would be a special case in the code, and I don't think you are in any position to argue about that.
It is a perfectly logical thing to do to create total consistency in the shooting side of the game.
I already pointed out some of the inconsistencies it would create. You may feel they are minor, but they certainly exist.
send lawyers, guns and money
User avatar
Deus
Posts: 1053
Joined: Fri Mar 12, 2004 2:24 am
Location: Germany
Contact:

Post by Deus »

ClosePlzKThxBye
Nogen
Posts: 93
Joined: Mon Aug 30, 2004 4:31 pm

Post by Nogen »

ReyalP wrote:
Nogen wrote: How is this any more of a special case then deciding that hits on a target that is alive on the client but dead on the server get applied to the ungibbed corpse?

The answer is it isn't.
Not sure how you come to that conclusion. I meant it would be a special case in the code, and I don't think you are in any position to argue about that.
I didn't say it wasn't a special case. I said it wasn't any more of a special case than the current situation.
ReyalP wrote:
Nogen wrote: It is a perfectly logical thing to do to create total consistency in the shooting side of the game.
I already pointed out some of the inconsistencies it would create. You may feel they are minor, but they certainly exist.
And my point was i'd much rather those inconsistencies than being able to shoot through solid objects.

What is your answer to these questions:

1. Would you rather have your bullets pass through solid objects as they appear on your client or have them blocked?

2. Which is the more realistic scenario?

3. Which will "feel" more correct to someone playing the game?

4. Which one is more consistent with the intended WYSIWYG nature of the shooting side of the game?

Whatever the answer the shooter never intends his bullets to pass through whats in front of his crosshair so whether its advantageous or disadvantageous it shouldn't happen.
User avatar
ReyalP
Posts: 1663
Joined: Fri Jul 25, 2003 11:44 am

Post by ReyalP »

Nogen wrote: I didn't say it wasn't a special case. I said it wasn't any more of a special case than the current situation.
Saying it doesn't make it true. The current way doesn't have to think about who was dead when and who thought they were dead and who didn't know they were dead yet.
send lawyers, guns and money
Nogen
Posts: 93
Joined: Mon Aug 30, 2004 4:31 pm

Post by Nogen »

ReyalP wrote:Saying it doesn't make it true. The current way doesn't have to think about who was dead when and who thought they were dead and who didn't know they were dead yet.
Well you know more about the code than I would...I simply meant that somewhere in the code something has to say whether the damage is applied the player or to their ungibbed body.

If a player has 2hp left then gets hit with a body shot (18 damage) would I be correct in saying that after subtracting off the 2hp the remaining 16 damage just gets forgotten? (ie not applied to the ungibbed corpse).

If thats true then and there is a definite switch between when damage is applied to the player and when it is applied to their ungibbed corpse. Thats no worse than the logic I am proposing here.

Its all semantics anyway. I don't believe you can reject the idea because you think the logic is somehow too involved. If it meant it would be too difficult to implement then thats a reason. If it was really difficult to implement for the size of the reward then thats a reason. If it negatively affected gameplay or balance to a large extent then thats a reason.
ReyalP wrote:Adding a bunch of special cases to hit detection is a terrible idea. It stinks, and I wouldn't touch it with a 10 foot pole.
Which I interpret to be actually be only a very small logical change - is not a reason.
uber-noob
Posts: 285
Joined: Sat Dec 20, 2003 2:02 pm
Location: Germany
Contact:

Post by uber-noob »

Nogen wrote:If players actually expected to be able to shoot through solid objects then it wouldn't be a problem. But players don't.
Not true, at least for me. I do expect it and make use of it. By this I've killed many enemy medics trying to heal/revive their teammates. If the bullets would be blocked that wouldn't work anymore and I would waste precious ammo. Then I would start complaining here ;).
User avatar
zinx
Posts: 267
Joined: Fri Jan 16, 2004 12:37 pm
Location: US
Contact:

Post by zinx »

Nogen wrote:I simply meant that somewhere in the code something has to say whether the damage is applied the player or to their ungibbed body.
There is not - as far as the hit detection and damage application is concerned, ungibbed corpses are the same as players (the entity number doesn't even switch.). What the damage does, however, is different (and in a completely different part of the code). Once the corpse is gibbed, it is a different entity and different rules apply (in particular, those aren't even antilagged).
Nogen wrote:If a player has 2hp left then gets hit with a body shot (18 damage) would I be correct in saying that after subtracting off the 2hp the remaining 16 damage just gets forgotten? (ie not applied to the ungibbed corpse).
No.
Nogen wrote:If thats true then and there is a definite switch between when damage is applied to the player and when it is applied to their ungibbed corpse. Thats no worse than the logic I am proposing here.
No. If it were true (it's not), it would be because the health is being reset to zero when the player turns in to an ungibbed corpse. As stated earlier, ungibbed corpses are handled exactly the same way as players, and even share the same entity number.
Nogen wrote:Its all semantics anyway. I don't believe you can reject the idea because you think the logic is somehow too involved. If it meant it would be too difficult to implement then thats a reason. If it was really difficult to implement for the size of the reward then thats a reason. If it negatively affected gameplay or balance to a large extent then thats a reason.
Yes we can. However, it's not because the logic is "somehow too involved". Here are the reasons:
  • * No one with any skill whatsoever aims at their teammates anyway, even if they are behind an enemy.
    * High pingers would be punished fairly badly for it (missing shots they should have made, in the more common case that an enemy is behind that enemy), so there would have to be yet another cvar so sane people aren't forced to use it. There is very little reward for this - In the very rare case, you will miss a teammate.
    * It's a special case, which means that it not only requires more code, it means it also doesn't work like the rest of the system, or integrate well with it (in terms of gameplay).
    * And lastly - I don't like it.
Zinx Verituse http://zinx.xmms.org/
User avatar
Nail
Posts: 425
Joined: Fri Jan 02, 2004 3:47 pm
Contact:

Post by Nail »

And lastly - I don't like it.

best reason evah !!!!!!
Improvise, Adapt, Overcome
User avatar
Deus
Posts: 1053
Joined: Fri Mar 12, 2004 2:24 am
Location: Germany
Contact:

Post by Deus »

Deus wrote:ClosePlzKThxBye
User avatar
ReyalP
Posts: 1663
Joined: Fri Jul 25, 2003 11:44 am

Post by ReyalP »

Nogen wrote:I don't believe you can reject the idea because you think the logic is somehow too involved.
I don't like it because it's ugly. And believe me, ET is already so ugly, that if we make it any more ugly it might collapse into a singularity of uglyness and swallow the whole universe.

You wouldn't want that, would you ?
send lawyers, guns and money
Nogen
Posts: 93
Joined: Mon Aug 30, 2004 4:31 pm

Post by Nogen »

Thanx zinx. Those were the reasons I was interested in :D .

You don't have to totally cut me down though. If I write a premise and say "if the premise is true then so must this other thing", and the premise is false then obviously I know the "other thing" must not be true too. :P

I've learnt a whole bunch of stuff through this thread which at the very least was part of the original intent. I now understand why my bullets sometimes pass through a target without a hitsound and sometimes hit something behind them - the mystery has been revealed.

One more loose end though. The dying animation hitbox transition...too hard to do? too big a change to balance? Not worth it for the effort involved?
Post Reply