Pages: [1]
  Print  
Author Topic: Bug: TEAMATE kill for enemy player (0.8.5)  (Read 6875 times)
faoa
Nub


Cakes 0
Posts: 24



« on: April 27, 2010, 04:25:05 PM »

Hello,
every now and then I notice frags on enemy players which are displayed as "TEAMATE kill". I couldn't observe so far if they are actually counted as teammate kills (whats the punishment btw: -1 ?).

All these false TM kills I remember so far had the following scheme:
1. hit on flying target with railgun
2. target hits/touches the ground
3. target falls out of map (aka "... was in the wrong place")

So these are not direct/instant frags, but falls you get the credited for.

I noticed all of them on the "ROFL CTF 4 FISHES 0.8.5" Server with the OA_CTF4ISH map.

faoa

PS:
This happened not only to me, I noticed also other player getting false TM kills. But maybe other can report here if they noticed this also on other maps/servers?
Logged
Cacatoes
Banned for leasing own account
Posts a lot
*

Cakes 73
Posts: 1427


also banned for baiting another to violate rules


« Reply #1 on: April 28, 2010, 09:23:36 AM »

I can add:

* I had nominated myself as admin with the new admin system, only on this ROFL server, and it may have brought a few issues.
* The server has g_awardpushing 1.
* !putteam commands may also bring confusion in who is in which team, but I don't use them each time. There are times teams are bad without me playing with that command.
* I'm not sure about the scenario of when I'm "teamkilling" someone, I'm not sure they can be due to direct hits, so maybe they are killed when falling on the ground after a hit.

I may try to disable g_awardpushing, and see if that still happens. One point also is: sometimes g_awardpushing is not so revelant (i.e: hitting with minigun someone who is already falling into space should not be very rewarding)... but we can't really solve that issue.




Logged

Todo: Walk the cat.
sago007
Posts a lot
*

Cakes 62
Posts: 1664


Open Arena Developer


WWW
« Reply #2 on: April 28, 2010, 09:48:53 AM »

One point also is: sometimes g_awardpushing is not so revelant (i.e: hitting with minigun someone who is already falling into space should not be very rewarding)... but we can't really solve that issue.
Originally I checked that the weapon made a significant push effect before counting it as a hit but someone mentioned that continues machingun fire while enemy was in air could potentially kill. One could check if the enemy was already hit by a larger push (like a rocket) before changing the "last sent flying client".

"last sent flying client" is supposed to be cleared after the player has touched the ground for more than 200 ms (so it can be assumed the player has regained ground control).

As a principle I will always make it a "kill" rather than a "suicide" then possible.

It should not be possible to get noted for a team kill for fragging a teammate. However to display the "TEAMKILL" message I use a generic flag that I believed was unused. It is possible that the flag is used and therefore writes the TEAMKILL message.

g_awardpushing was made before I added the TEAMKILL message (in previous versions killing a teammate would display the normal message). Because the old game did not send the information to the client and because this game structure cannot be changed without breaking mod compatibility, I had to transfer the data somehow and generic1 seamed perfect.
Logged

There are nothing offending in my posts.
ikao
Nub


Cakes 1
Posts: 15


« Reply #3 on: April 28, 2010, 08:54:57 PM »

"last sent flying client" is supposed to be cleared after the player has touched the ground for more than 200 ms (so it can be assumed the player has regained ground control).

I think this would also explain the long delayed hits I get from time to time. If you hit someone and he recovers on-air and strafe-jumps for a while before hurting himself, it is quite possible he never hits the ground for more than 200 ms at a time(Is that at at time or in total?).

I can see the point, eg in space maps where you are pushed and touch the ground or jumping pads a few times before your ultimate demise, but I wonder if it could be fixed.
Logged
Cacatoes
Banned for leasing own account
Posts a lot
*

Cakes 73
Posts: 1427


also banned for baiting another to violate rules


« Reply #4 on: April 29, 2010, 04:41:18 AM »

So we have 2 issues in this topic:

About the first one,
I can confirm, I shot someone in air, he felt, message was: you killed TEAM MATE blablabla. This of course happens when hitting an _enemy_ and with friendly fire off.

About that 200 msecs delay, there are both false positive and false negatives. I'd say it's not a big deal. For expl, I minigun someone who just lands, he is pushed while still hitting the ground but falls into space, I'm responsible of this but the game doesn't think I am Wink
There are a few things which could be considered and may improve detection:
- g_knockback ; I suppose the higher it is, the higher chances are "you are responsible of pushing someone". This is only a small hint and I'm not sure it would be relevant.
- more relevant IMO : the sum of damages done in a certain time. If you hit someone with 7hp, I doubt you're responsible of making him fall. If you hit him hard (let's say 6 or 7 minigun bullets), it's more likely you made the guy fall.
Maybe the algo could be a combination of several tricks. But all this may turn a bit complex and I'm not sure it's worth the effort.
Logged

Todo: Walk the cat.
sago007
Posts a lot
*

Cakes 62
Posts: 1664


Open Arena Developer


WWW
« Reply #5 on: April 29, 2010, 10:07:08 AM »

I believe I found the problem... uninitialized variable.
Logged

There are nothing offending in my posts.
Pages: [1]
  Print  
 
Jump to: