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

  • #008424

  • 0 - None Assigned

  • Fixed

Issue Confirmations

  • Yes (0)No (0)
Photo

TAekwon Stance/Skill Transfered

Posted by vBrenth on 04 November 2014 - 12:39 PM

I dont know how to reproduce it but its hapening on my server... and ive been searching on it.. and i found this

http://rathena.org/b...r-to-other-job/
http://herc.ws/board...rred-to-sniper/

We have so much commits this past few weeks and yeah... maybe some of those broke it again.

Hmmm the "fix" Ind applied back on SVN seems to be this:
unit.c
if( skill_get_inf(skill_num)&INF_SELF_SKILL && skill_get_nk(skill_num)&NK_NO_DAMAGE )// exploit fix 
 	target_id = src->id;


Those the new commits remove that fixs?

No, it's still there.

I'm not sure if Ind's fix even did anything. It should not even reach that part of the code if the skill is not a combo skill. Maybe the bug is somewhere else in the first place. I looked a bit through the code but couldn't find it. Probably need to find a way to reproduce it.

By the way, wasn't there another thread were people said that it should actually be possible to switch targets during a combo? That would require the code to be rewritten anyway. Could be done together with this.

Those the new commits remove that fixs?

it seems like..I already fixed this before way back in rA...

but still intact...
if (sc->data[SC_COMBOATTACK]->val2)
   target_id = sc->data[SC_COMBOATTACK]->val2;
  else if( skill->get_inf(skill_id) != 1 ) // Only non-targetable skills should use auto target
   target_id = ud->target;
  if( skill->get_inf(skill_id)&INF_SELF_SKILL && skill->get_nk(skill_id)&NK_NO_DAMAGE )// exploit fix
   target_id = src->id;
  temp = 1;
} else if ( target_id == src->id &&


:meow:

Yeah, im using a uptodate Hercules, and now still getting this bug.

I know now how to reproduce, I used dota buffs on my pvp room and so this is how it happen.

There's a illusion buffs on pvp room and taekwon got...

Posted Image

Char 1: @job taekwon (activate the buffs or maybe it doesnt matter) and @slaveclone 4-5 is fine
Char 2: @job 4013 (i only tested assassin)

Turn on PVP, the assassin attacks the clones and clone attack the assassin. and poop

Edited by Zer Wildblood, 04 November 2014 - 05:42 PM.


Actually, it's not only combo stances, I think. With monster skills at work I've been gaining Shield Reflect, with clones I've been gaining monk's steel body when I was cloning champion. Note here, that I've been standing still doing nothing. Maybe it's related, but with monster set to heal itself it was healing player, not sure if it was healing itself. I've been out to get that, but didn't have enough time lately.

If this is related to clones, the issue lies within MD_RANDOMTARGET implementation, making clones cast skills on any target
The fix should be simple, unless there are plans to redo this

status.c @ status_calc_pc

Find: bstatus->mode = MD_MASK&~(MD_BOSS|MD_PLANT|MD_DETECTOR|MD_ANGRY|MD_TARGETWEAK);

Replace with: bstatus->mode = MD_MASK&~(MD_BOSS|MD_PLANT|MD_DETECTOR|MD_ANGRY|MD_TARGETWEAK|MD_RANDOMTARGET);

This only works if the issue at hand is related to clones giving their target's buffs they shouldnt give.

The two last post seem to make reference the clone issues, but the initial report doesnt really (Unless I didn't get it)

@Xgear
it seems like..cause I'm trying reproducing this a while ago with the same scenario I used before in confirming this bug..and still no luck..

:meow:

If it's related to MD_RANDOMTARGET, I guess the implementation isn't good either. Randomtarget should mean that offensive skills go to random enemy, not to random "any unit".

That part is still unclear, we're still trying to gather information on that one from the person who implemented it (Although common sense says it should be random offensive :P).

But I still would love to know if the report is related to this or not (As in TK using clones at some point(?))

@malufet, my friends confirm this too on his hercules. did you try attacking the clones too ?

changed status to: Confirmed

@malufet, my friends confirm this too on his hercules. did you try attacking the clones too ?

I confirm it too..what I'm saying is the bug before where player to player status transfer..but unlike this one its mob to player..

:meow:

Do clones use mob.c for AI?

if( !(mode&MD_RANDOMTARGET) )
	unit->attack(&md->bl,tbl->id,1);
else { // Attack once and find a new random target
	int search_size = (view_range < md->status.rhw.range) ? view_range : md->status.rhw.range;
	unit->attack(&md->bl,tbl->id, 0);
	if ((tbl = battle->get_enemy(&md->bl, DEFAULT_ENEMY_TYPE(md), search_size))) {
		md->target_id = tbl->id;
		md->min_chase = md->db->range3;
	}
}
The implementation is bad I guess. It always looks for "random enemy" no matter what the skill is.

Why not just do:
unit->attack(&md->bl,tbl->id,1);
if(mode&MD_RANDOMTARGET)
  mob_unlocktarget(md,tick);
?

Oh wait, the main problem is:
//Execute skill
skill_target = (md->db->status.mode&MD_RANDOMTARGET)? MST_RANDOM : ms[i].target;
MST_RANDOM will always be an enemy.

I think this whole thing should be removed and changed so that active search returns random enemy instead of closest enemy and then let the mob drop target after each attack. But probably better to test this mode on officials first. There are only a few quest monsters that have this mode anyway.


Anyway, for now, Xgear's solution should work.

Edited by Playtester, 06 November 2014 - 07:02 AM.


changed status to: Fixed

Fixed: https://github.com/H...7c746af8687c7f0
MD_RANDOMTARGET is not used so we don't need it. I remove it for now

nvm

Edited by Zer Wildblood, 09 November 2014 - 12:37 PM.