Jump to content

  •  

Bug Tracker Migration

June 3rd
Good news everyone! The staff has decided that it is time to slowly kill off this Bug Tracker. We will begin the process of slowly migrating from this Bug Tracker over to our Github Issues which can be found here: https://github.com/HerculesWS/Hercules/issues

Over the next couple of days, I will be closing off any opportunity to create new reports. However, I still will keep the opportunity to reply to existing Bug Reports. Doing this will allow us to slowly fix any bug reports we have listed here so that we can easily migrate over to our Issue Tracker.

Update - June 7th 2015: Creating new bug posts has been disabled. Please use our https://github.com/HerculesWS/Hercules/issues tracker to post bugs. Users are still able to reply to existing bug posts.

- Administration

Issue Information

  • #006606

  • 3 - Medium

  • Confirmed

Issue Confirmations

  • Yes (4)No (0)
Photo

Bard skill issue !!

Posted by Hercules Bot on 02 September 2012 - 10:28 AM

Originally posted by Phantasm
Require: two Bard and main-char will receive buff.
Hot-key like this:
Posted Image


How to produce:

Step 1:Bard 2 use skill Poem of Bragi then use skill Adaptation to Circumstances.
Step 2: Bard 1 use skill Poem of Bragi then use skill Adaptation to Circumstances.
Step 3:Bard 2 use skill Poem of Bragi
Step 4:Bard 1 use skill A Whistle
Step 5: Bard 1 and Bard 2 use Adaptation to Circumstances.

Then i can use skill almost without delay, duration ~ 2 minute. Normal just 30s i think

You can do that with Apple of Idun.
I havent check other skill.

Sorry my bad English...

Originally posted by Phantasm
Bump.
Can someone CONFIRM it ?
Its normal ? :(

Originally posted by malufett
sorry can't reproduce..:)
:meow:

Originally posted by Phantasm

sorry can't reproduce.. :) :meow:

malufett, please check it again.
Here my Video recorder how to produce it, watch it in quality 480.



I have been using SVN 16738, i dont MOD anything.
Check it again ~~~~

Originally posted by malufett
I think I need a strong/super fast machine..what I saw in your video you do it faster/at the same time..
cause when I do it theres is a 10~15 seconds delay when I shifted to window by window(sorry I'm a poor guy)..XD

anyway I'll try to do my best to duplicate it..:)
:meow:

Originally posted by Phantasm
Step 1:Bard 2 use skill Poem of Bragi then use skill Adaptation to Circumstances.
Step 2: Bard 1 use skill Poem of Bragi then use skill Adaptation to Circumstances.
Step 3:Bard 2 use skill Poem of Bragi
Step 4:Bard 1 use skill A Whistle
Step 5: Bard 1 and Bard 2 use Adaptation to Circumstances.

The key is: Step 4 and 5.

You make me embarrassed when you say you are foor guy :(

I must try harder
Now I was still a student so I can not help you all
Try up.
My English not good, sorry.

Originally posted by Lunar
I can confirm this, I have a explanation, and a solution :

There is a link with this issue.

static int skill_unit_effect (struct block_list* bl, va_list ap)
{
struct skill_unit* unit = va_arg(ap,struct skill_unit*);
struct skill_unit_group* group = unit->group;
unsigned int tick = va_arg(ap,unsigned int);
unsigned int flag = va_arg(ap,unsigned int);
int skill_id;
bool dissonance;
if( (!unit->alive && !(flag&4)) || bl->prev == NULL )
  return 0;
nullpo_ret(group);
dissonance = skill_dance_switch(unit, 0);					   // <----- Here is the trouble
//Necessary in case the group is deleted after calling on_place/on_out [Skotlex]
skill_id = group->skill_id;
//Target-type check.
if( !(group->bl_flag&bl->type && battle_check_target(&unit->bl,bl,group->target_flag)>0) )
{
  if( flag&4 && group->src_id == bl->id && group->state.song_dance&0x2 )
   skill_unit_onleft(skill_id, bl, tick);//Ensemble check to terminate it.
   else if ( flag&4 && skill_get_inf2(skill_id)&INF2_SONG_DANCE) // Make a exception for song/dance skill
   skill_unit_onleft(unit->val1, bl, tick);		             // <----- Using unit->val1 instead of skill_id !

}
else
{
  if( flag&1 )
   skill_unit_onplace(unit,bl,tick);
  else
   skill_unit_onout(unit,bl,tick);
  if( flag&4 )
	 skill_unit_onleft(skill_id, bl, tick);
}
if( dissonance ) skill_dance_switch(unit, 1);
return 0;
}

With my fix, skill_unit_onleft is use, but the skill_id value is wrong, skill_id is equal to 317 (dissonnance id) because of skill_dance_switch(unit, 0) Function

so that's why in this fix i use unit->val1, which is the right skill_id.

I know it is a bad way to fix that, but it works.

Better way would be to fix skill_dance_switch function, but i don't know the role of this function.

Edited by Lunar, 12 November 2012 - 05:52 AM.


Originally posted by Lunar
bumb, need more info ?

Originally posted by Lunar
bump again ;( r16881 doesn't fix it !

Edited by Lunar, 12 November 2012 - 05:55 AM.


Originally posted by Napster
confirm this problem doesn't fix

Originally posted by mkbu95
Just editting, I got some time and I'm gonna try to reproduce this.

Originally posted by arun89
bump +1

Originally posted by arun89
bump

Originally posted by donkeyg
Bump + 1 , any solution

Edited by donkeyg, 03 December 2012 - 12:53 PM.


Originally posted by mkbu95
Hopefully and let's pray, fixed in [rev=17011].
Thankyou again Lunar /kis2

Originally posted by Hobbix
Not fixed again!

Step 1.
Posted Image
Step 2.
Posted Image
Step 3.
Posted Image
Step 4.
Posted Image

Originally posted by Napster
confirm dose't fix again -_-

I think problem found in function status change clear timer

btw sc_dancer

Originally posted by mkbu95
Hell!
I leave to another dev then, I shouldn't even have began this

Originally posted by MarkZD
Fixed at: 17020

Originally posted by MarkZD
My diff didn't upload completely, just some minutes.
Never mind, it's ok now.

At least I can't reproduce it anymore.