so i tried to mimic the vituperatum behavior commented the lines 7159~7165 and add case HP_ASSUMPTIO in line 11568 (before VITUPERATUM it self)
and it works (with pvp on cuz vituperatum was made to target enemies )
so... i change the flag "BCT_ENEMY"
map_foreachinrange(skill_area_sub, bl, skill_get_splash(skill_id, skill_lv), BL_CHAR, src, skill_id, skill_lv, tick, flag|BCT_ENEMY|1, skill_castend_nodamage_id);
to "BCT_ALLY"
map_foreachinrange(skill_area_sub, bl, skill_get_splash(skill_id, skill_lv), BL_CHAR, src, skill_id, skill_lv, tick, flag|BCT_ALLY|1, skill_castend_nodamage_id);
and its working for party xD
final code:
LINE 7158
/*
case HP_ASSUMPTIO:
if( sd && dstmd )
clif_skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
else
clif_skill_nodamage(src,bl,skill_id,skill_lv,
sc_start(src,bl,type,100,skill_lv,skill_get_time(skill_id,skill_lv)));
break;
*/
LINE 11568
case HP_ASSUMPTIO:
if (flag&1)
clif_skill_nodamage(src, bl, skill_id, skill_lv, sc_start(src, bl, type, 100, skill_lv, skill_get_time(skill_id, skill_lv)));
else {
map_foreachinrange(skill_area_sub, bl, skill_get_splash(skill_id, skill_lv), BL_CHAR, src, skill_id, skill_lv, tick, flag|BCT_ALLY|1, skill_castend_nodamage_id);
clif_skill_nodamage(src, bl, skill_id, skill_lv, 1);
}
break;
case AB_VITUPERATUM:
if (flag&1)
clif_skill_nodamage(src, bl, skill_id, skill_lv, sc_start(src, bl, type, 100, skill_lv, skill_get_time(skill_id, skill_lv)));
else {
map_foreachinrange(skill_area_sub, bl, skill_get_splash(skill_id, skill_lv), BL_CHAR, src, skill_id, skill_lv, tick, flag|BCT_ENEMY|1, skill_castend_nodamage_id);
clif_skill_nodamage(src, bl, skill_id, skill_lv, 1);
}
break;
hope you understands
skill.cpp