Hey.
From what should I start...
Some people who dont even know about this bug, just
dont give a CARE about it while players didnt find it, another people either just
closes their servers in panic or
disable PVP Arena from game at all (like Steel PVP & Block Production, sorry guys for bad things i told about you but it made me rly laughing
)
About bug...
2 characters (
damager and
multiplier with good count of immoral points, what is important) goes outside PVP arena for a while (whle
turning on PK )
Multiplier gets sweet smacks from
damager to get very low HP count, then final smack gets multiplier dying slowly (fireball or whatever). Multiplier has enough time to walk inside arena area and die there.
Guess what then
Multiplier dies and
DONT LOSE EXP. But when he wake up with GMFB, he
GETS EXP.
Let's return to history: bug was fixed by officials AFTER releasing of 8.1 files on EPVP. Some players even used this bug on officials to levelup
more than to max level (it's possible on most private servers even now) So everyone who uses leeched files (dont except me
) have to fix this bug or DIE
Okay, lets take a solution.
First, we must change the most useful character dying handle script - on_player_dead.lua
We must check if character has died inside PVP Arena.
I made it some noob way, just by coordinates
So thats it
Code:
function dead_on_arena()
if (gv("x")>117750 and gv("x")<121050 and gv("y")>52950 and gv("y")<55950)
or (gv("x")>150320 and gv("x")<153213 and gv("y")>71780 and gv("y")<75266)
or (gv("x")>119200 and gv("x")<121250 and gv("y")>139620 and gv("y")<142300)
or (gv("x")>125720 and gv("x")<130000 and gv("y")>108000 and gv("y")<113000)
then
return true
else
return false
end
end
Okay, it returns boolean represents if character diead inside arena area (but near too)
What we need to do then - make character losing EXP anyway, if character dies on arena (answering question "but if character dies really in PVP?" - he dont lose exp then).
We need to put inside on_player_dead function:
Code:
if dead_on_arena() == true then
sv("exp",gv("exp") - lost_exp)
end
WARNING!
My way of checking arena area has problem - if character dies NEAR the arena, he will lose EXP TWICE but it will return ONCE! So if you can do it another way, do it. Another way, make your players paying attention dying near the PVP arena.
Sorry to some guys who dont appreciate what i done now. I dont really need you to trust me. I leave Rappelz.
Good luck for your projects guys. Even if Rappelz FS will never change...