Shadow Property Armor is not blocking skills

  • Thread starter Thread starter Aurela
  • Start date Start date
A

Aurela

Guest
Hello~

Bathory carded armor (shadow property armor) isn't blocking the mob skill "evil land" (such as from Banshee).
"Evil land" is shadow property and could actually heal the Bathory wearer. Right now it still does damage.

Please also check "Shadow Attribute Attack" from Banshee because I'm not sure if it's being blocked with Bathory card.

Thanks for every answer!

 
Hmm... Evil Land is correctly defined as Dark Element.

skill_db.txt

670,9,6,2,7,0x91,0,10,1,no,0,0x2,0,magic,0, NPC_EVILLAND,Evil Land
attr_fix.txt
1,10 // lv1 Attribute table

//Neut Watr Erth Fire Wind Pois Holy Shdw Gho Und

100, 100, 100, 100, 100, 100, 100, 100, 25, 100, // Neutral

100, 25, 100, 150, 50, 100, 75, 100, 100, 100, // Water

100, 100, 100, 50, 150, 100, 75, 100, 100, 100, // Earth

100, 50, 150, 25, 100, 100, 75, 100, 100, 125, // Fire

100, 175, 50, 100, 25, 100, 75, 100, 100, 100, // Wind

100, 100, 125, 125, 125, 0, 75, 50, 100, -25, // Poison

100, 100, 100, 100, 100, 100, 0, 125, 100, 150, // Holy

100, 100, 100, 100, 100, 50, 125, 0, 100, -25, // Shadow

25, 100, 100, 100, 100, 100, 75, 75, 125, 100, // Ghost

100, 100, 100, 100, 100, 50, 100, 0, 100, 0, // Undead
Dark 1 takes exactly 0% damage from Dark.Should it really heal?

If you checked those two files and those value are in there, the problem must be somewhere in the source code I guess.

Let's see...

 
case UNT_EVILLAND: //Will heal demon and undead element monsters, but not players. if ((bl->type == BL_PC) || (!battle->check_undead(tstatus->race, tstatus->def_ele) && tstatus->race!=RC_DEMON)) { //Damage enemies if(battle->check_target(&src->bl,bl,BCT_ENEMY)>0) skill->attack(BF_MISC, ss, &src->bl, bl, sg->skill_id, sg->skill_lv, tick, 0); } else { int heal = skill->calc_heal(ss,bl,sg->skill_id,sg->skill_lv,true); if (tstatus->hp >= tstatus->max_hp) break; if (status->isimmune(bl)) heal = 0; clif->skill_nodamage(&src->bl, bl, AL_HEAL, heal, 1); status->heal(bl, heal, 0, 0); } break;Was intentionally coded so that players are never healed by it (plus shadow element is never healed by it anyway, only demon race and undead element).
Hmm...

skill->attack(BF_MISC, ss, &src->bl, bl, sg->skill_id, sg->skill_lv, tick, 0);

Maybe element doesn't work because it's defined as MISC damage here?

In battle_calc_misc_attack:

Code:
	s_ele = skill->get_ele(skill_id, skill_lv);	if (s_ele < 0 && s_ele != -3) //Attack that takes weapon's element for misc attacks? Make it neutral [Skotlex]		s_ele = ELE_NEUTRAL;	else if (s_ele == -3) //Use random element		s_ele = rnd()%ELE_MAX;
Don't see how it goes through there without setting s_ele to 7. *rubs head*
 
Back
Top