Another quick example of how to do what your wanting.
this is not intended to work as is, its just an example to help you make what you need.
#define jumped v10
#define Attacker v11
#define OldTarget v12
#define AttackerLevel v13
#define FdFail v14
#event Hit "You for"
#event Fail "You have fallen to"
/zapvars
/doevents
/if n $jumped==1 {
/varset $OldTarget $target(id)
/target $Attacker
/varset $AttackerLevel $target(level)
/target $OldTarget
}
/if n $AttackerLevel=<$char(level) {
/call FeignCheck
}
/return
sub FeignCheck
:fdtry
/if $char(ability,"Feign Death")>0 {
/call Feign
} else {
/target $Attacker
/face fast away
/sendkey down up
}
/if n $target(distance)=>80 {
/sendkey up up
}
/goto :fdtry
/return
sub Feign
/doability "Feign Death"
/doevents
/if n $FdFail==1{
/sit off
/call FeignCheck
}
:SafeYet
/delay 5
/varset Jumped 0
/doevents
/if n $jumped==0 /if n $target(distance)>50 {
/sit off
} else {
/goto SafeYet
}
/varset Jumped 0
/doevents
/if n $jumped==1 {
/call FeignCheck
}
/return
sub Event_HitsYou
/varset Jumped 1
/varset v90 "$left($calc($instr("YOU","$p0")-1),"$p0")"
/varset v91 $strlen("$v90")
:WalkString
/if "$mid($v91,1,"$v90")"==" " {
/varset v92 $v91
/goto

oneWalkString
}
/varsub v91 1
/delay 0
/goto :WalkString

oneWalkString
/varset Attacker "$left($v92,"$v90")"
/return
sub Event_fail
/varset FdFail 1
/return