Author Topic: Scoutskill "Vanish" damages too long  (Read 2480 times)

.:.FK.:.DiGGaBoON.:.

  • Jr. Member
  • **
  • Posts: 64
    • View Profile
Scoutskill "Vanish" damages too long
« on: September 19, 2011, 07:28:31 PM »
Important note for this bug: I'm running the mod on a deathmatch server.

This bug happened to me. I played with scout but wanted to change, so I entered "changerace". Waiting for someone to shoot me so that I can repick a race on respawn I used "Vanish" but was killed immediately after that, while Vanish was still active.
On my immediate respawn (deathmatch) i wasn't scout anymore, but i still suffered from the "-5% health per second" until the 8 seconds were over. It couldn't be stopped earlier.

I don't know if it happens when being killed while vanishing but not changing race.

I can make a replay if you need one.


Regards

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Scoutskill "Vanish" damages too long
« Reply #1 on: September 19, 2011, 09:22:38 PM »
good catch, but i can't fix anything until im back on my main computer....in....2 weeks

.:.FK.:.DiGGaBoON.:.

  • Jr. Member
  • **
  • Posts: 64
    • View Profile
Re: Scoutskill "Vanish" damages too long
« Reply #2 on: September 20, 2011, 04:07:07 AM »
Don't worry, I just wanted to report those 3 things that came to my ears before I forget them ;) take your time

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Scoutskill "Vanish" damages too long
« Reply #3 on: September 24, 2011, 03:17:23 PM »
fix next release / svn

.:.FK.:.DiGGaBoON.:.

  • Jr. Member
  • **
  • Posts: 64
    • View Profile
Re: Scoutskill "Vanish" damages too long
« Reply #4 on: October 25, 2011, 08:54:53 AM »
bug fixed, thx

the vanish dmg doesnt leak into next respawn but the popup text "leaving invis. cannot shoot for 1 second" still appears after respawn. I tested it, it's just the text. Neither the invisibilty nor the dmg leak into the next respawn. No major bug but might be confusing to the people as it was to me.

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Scoutskill "Vanish" damages too long
« Reply #5 on: October 25, 2011, 08:56:25 AM »
well thats just the hint engine. supporting remove message on spawn is difficult.

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Re: Scoutskill "Vanish" damages too long
« Reply #6 on: October 25, 2011, 12:54:12 PM »
Change it to the hint type that gets overridden each time you repost it. Then just do a empty hint on spawn.

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Scoutskill "Vanish" damages too long
« Reply #7 on: October 25, 2011, 12:56:00 PM »
hint engine doesnt have an overwrite feature

welcome to non object oriented programming

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Re: Scoutskill "Vanish" damages too long
« Reply #8 on: October 25, 2011, 02:09:46 PM »
Quote
enum W3HintPriorityMultiType{
   HINT_TYPE_SINGLE=0,   //show single, overrides old
   HINT_TYPE_ALL,      //show all of them
   HINT_TYPE_QUEUE,   //queue each one
}

Use HINT_TYPE_SINGLE.

W3Hint(client, HINT_COOLDOWN_COUNTDOWN, 0.1, "");

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Scoutskill "Vanish" damages too long
« Reply #9 on: October 25, 2011, 05:50:00 PM »
i dont even remember how the hint engine works anymore lol

.:.FK.:.DiGGaBoON.:.

  • Jr. Member
  • **
  • Posts: 64
    • View Profile
Re: Scoutskill "Vanish" damages too long
« Reply #10 on: October 27, 2011, 04:06:28 AM »
It looks like the same bug so I post it here.
The shaking screen from the impale skill (Crypt Lord I think) leaks into the next respawn, too.

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Scoutskill "Vanish" damages too long
« Reply #11 on: October 27, 2011, 08:52:11 AM »
theres no clear shake function that i know of

Revan

  • Hero Member
  • *****
  • Posts: 513
    • View Profile
Re: Scoutskill "Vanish" damages too long
« Reply #12 on: October 28, 2011, 01:15:37 PM »
But there is a SHAKE_STOP definition probably this will do the job
here is a snipped from the smlib
Code: [Select]
#define SHAKE_START 0 // Starts the screen shake for all players within the radius.
#define SHAKE_STOP 1 // Stops the screen shake for all players within the radius.
#define SHAKE_AMPLITUDE 2 // Modifies the amplitude of an active screen shake for all players within the radius.
#define SHAKE_FREQUENCY 3 // Modifies the frequency of an active screen shake for all players within the radius.
#define SHAKE_START_RUMBLEONLY 4 // Starts a shake effect that only rumbles the controller, no screen effect.
#define SHAKE_START_NORUMBLE 5 // Starts a shake that does NOT rumble the controller.

/**
 * Shakes a client's screen with the specified amptitude,
 * frequency & duration.
 *
 * @param client Client Index.
 * @param command Shake Mode, use one of the SHAKE_ definitions.
 * @param amplitude Shake magnitude/amplitude.
 * @param frequency Shake noise frequency.
 * @param duration Shake lasts this long.
 * @return True on success, false otherwise.
 */
stock bool:Client_Shake(client, command=SHAKE_START, Float:amplitude=50.0, Float:frequency=150.0, Float:duration=3.0)
{
new Handle:userMessage = StartMessageOne("Shake", client);

if (userMessage == INVALID_HANDLE) {
return false;
}

if (command == SHAKE_STOP) {
amplitude = 0.0;
}
else if (amplitude <= 0.0) {
return false;
}

BfWriteByte(userMessage, command); // Shake Command
BfWriteFloat(userMessage, amplitude); // shake magnitude/amplitude
BfWriteFloat(userMessage, frequency); // shake noise frequency
BfWriteFloat(userMessage, duration); // shake lasts this long
EndMessage();

return true;
}
#war3source on gamesurge