Pause bug
#1

When someone pause and you shoot him, then if he is still paused and another player shoots him after you, kill is getting assigned to 2nd player who shot the paused player last. It theory, when paused player is getting killed, kill must be assigned to 1st player who shot him 1st and not to the second player who shot him after you.

This is pointless because if someone is paused and you kill him, then someone else will shoot that paused player and you won't get the kill.

Thus it would be better if the kill would get assigned immediately after you shoot a paused player, so if he quits to avoid death, you will still have killed him so won't matter.

Thanks to Zhao for better explanation:

Quote:
Originally Posted by Zhao
Посмотреть сообщение
He's reporting something different though. He has no issue with people dying when they are no longer paused.

His issue is this:
Player 1 is paused
Player 2 shoots Player 1's HP down to nothing while Player 1 is still paused.
Later Player 3 shoots Player 1's HP down to nothing while Player 1 is still paused.
Player 1 is no longer paused and the kill registers to Player 3 instead of Player 2 who originally shot his health down.

He means to say the kill should register to Player 2 because he shot him originally.
Reply
#2

https://sampforum.blast.hk/showthread.php?tid=488547
Reply
#3

Seems many people complaining about it, this code below should disable the player who is tabbed/paused from dying.

pawn Код:
#define STATE_ONPLAYERCONNECT    (0)
#define STATE_ONPLAYERDISCONECT  (1)
#define STATE_ONPLAYERUPDATE     (2)

new stock
    PlayerState[ MAX_PLAYERS ], StartOPUTick[ MAX_PLAYERS ];

public OnPlayerConnect(playerid) return PlayerState[ playerid ] = STATE_ONPLAYERCONNECT, true;
public OnPlayerDisconnect(playerid, reason) return PlayerState[ playerid ] = STATE_ONPLAYERDISCONECT, true;
public OnPlayerUpdate(playerid) return PlayerState[ playerid ] = STATE_ONPLAYERUPDATE, StartOPUTick[ playerid ] = gettime(), true;

public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
{
    if( hittype == BULLET_HIT_TYPE_PLAYER && PlayerState[ hitid ] == STATE_ONPLAYERUPDATE && ( gettime() - 10 >= StartOPUTick[ hitid ]) ) return false;
    else return true;
}
Reply
#4

You both didn't even read what I wrote. I didn't mean anything of the above. Paused players should be killed but there are some bugs in this feature, just read carefully what I wrote at the 1st post.
Reply
#5

Quote:
Originally Posted by Lordz™
Посмотреть сообщение
Quote:
Originally Posted by pds2k12
Посмотреть сообщение
Seems many people complaining about it, this code below should disable the player who is tabbed/paused from dying.
He's reporting something different though. He has no issue with people dying when they are no longer paused.

His issue is this:
Player 1 is paused
Player 2 shoots Player 1's HP down to nothing while Player 1 is still paused.
Later Player 3 shoots Player 1's HP down to nothing while Player 1 is still paused.
Player 1 is no longer paused and the kill registers to Player 3 instead of Player 2 who originally shot his health down.

He means to say the kill should register to Player 2 because he shot him originally.
Reply
#6

Quote:
Originally Posted by Zhao
Посмотреть сообщение
He's reporting something different though. He has no issue with people dying when they are no longer paused.

His issue is this:
Player 1 is paused
Player 2 shoots Player 1's HP down to nothing while Player 1 is still paused.
Later Player 3 shoots Player 1's HP down to nothing while Player 1 is still paused.
Player 1 is no longer paused and the kill registers to Player 3 instead of Player 2 who originally shot his health down.

He means to say the kill should register to Player 2 because he shot him originally.
That's exactly the issue I was trying to describe. Right now the anti pause which is implemented to 0.3z is 50% pointless.
Reply
#7

It's kind a old bug (since 0.1b I'm here it always was here). The thing works like:

1. Player1 is shooting Player2.
2. Player2 has runned away.
3. Player2 died by killing himself (i.e. he died of falling the building)
4. SendDeathMessage will say that Player2 has been killed by Player1.

That is actually the same thing, but different case/example.
Reply
#8

Quote:
Originally Posted by Riddick94
Посмотреть сообщение
It's kind a old bug (since 0.1b I'm here it always was here). The thing works like:

1. Player1 is shooting Player2.
2. Player2 has runned away.
3. Player2 died by killing himself (i.e. he died of falling the building)
4. SendDeathMessage will say that Player2 has been killed by Player1.

That is actually the same thing, but different case/example.
That's right. It has always existed. Whoever shot the player last gets the kill, so I'm assuming the same is going on here.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)