Acest tutorial iti arata cum sa rezolvi bugul prin care bossii pot arunca jucatorii in pereti sau in zone blocate.
Fixul recalculeaza distanta maxima de impingere astfel incat playerul sa nu mai fie trimis in ATTR_BLOCK sau ATTR_OBJECT.
Este un fix util pentru serverele Metin2 unde skillurile de knockback ale bossilor provoaca buguri de pozitie.
*Link download / Code:
Deschide char_skill.cpp si cauta in structura FuncSplashDamage:
Code:
GetDeltaByDegree(degree, fCrushSlidingLength, &fx, &fy);
sys_log(0, "CRUSH! %s -> %s (%d %d) -> (%d %d)", m_pkChr->GetName(), pkChrVictim->GetName(), pkChrVictim->GetX(), pkChrVictim->GetY(), (long)(pkChrVictim->GetX() + fx), (long)(pkChrVictim->GetY() + fy));
long tx = (long)(pkChrVictim->GetX() + fx);
long ty = (long)(pkChrVictim->GetY() + fy);
Explicatie scurta:
Acest loop verifica daca punctul final unde ar trebui aruncat jucatorul intra intr-un perete sau obiect blocat. Daca da, reduce treptat distanta de knockback pana gaseste o pozitie valida.
Atentie:
Pentru ca fixul sa functioneze corect, fisierele server.attr ale hartilor trebuie sa fie setate bine. Daca map attr este gresit, jucatorii pot avea in continuare probleme de pozitie.
Acesta este un fix curat si eficient pentru bugul de boss kick in walls in Metin2.


la acest mesaj și conținutul se va afișa automat.


