Monday, April 27, 2009

To : Quen_Jr

Gw mw berterima kasih byk kepada. . Quen_Jr yang dah minjemin gw eq buat hunt..

truz nemenin gw hunt dari lv 50 ampe 70.. 

moga" masih bisa sering nemenin gw hunt.. 

/gg

skale lage..

Thx buat Quen_Jr

Thursday, April 23, 2009

Sistem Drop

Sistem equip drop ini sudah berjalan sejak server PVP , Legend , dan FnC d buka ..

akan tetapi setelah Update Chaos of Morocc telah tiba.. sistem ini hilang atau mungkin lupa di implementasikan oleh pihak LYTO..

dan Sistem equip drop ini berjalan kembali sejak tanggal 15 April 2009..

Ada beberapa hal yang perlu diperhatikan :

Equip Non-IM :

Bisa drop sewaktu-waktu... Kalau HQ ya gk drop..

Bisa diambil orang laen..

gk bisa dilaporin..

tunggu orang baek yang mw ambilin buat anda.. ^^

Equip IM :

gk bakalan drop

kalau drop maka equip tersebut akan masuk ke inventory lagi.. sehingga dapat dipakai lagi

berkat adanya sistem ini.. saya telah memperoleh beberapa equip yang tentunya lumayan berkualitas ..

/gg

Thx to LYTO

Tuesday, April 21, 2009

Ninja For Sell

Jual Char Ninja 

Spesifikasi :

Nick : .::Shinjuku'Incident::.

Job : Ninja

Lv : 76

Job Lv : 51

Element : Api ( Flaming Petals 5 , Blaze Shield 7 , Exploding Dragon 5 )

                  Air ( Freezing Spears 5 )

Sisa Lv : 23

Sisa Job Lv : 19

Harga : Rp 100.000.. --> POLOS.. ( Dah termasuk Kode Pin , dkk )

Minat ?? Tlp Ke 081364267543 ..^^

Thx

RO Guide Book !

Jual buku panduan Ragnarok ..
Spesifikasi Buku :
300  Halaman
Foto Copy [dikarenakan banyaknya permintaan / order buku / buku tidak berproduksi lagi]
Terdapat Penjelasan System , Char , Map , Data-Item , Monster , Pets..
Harga : Rp 32.500,- belum termasuk ongkir.
Minat ?? Hubungi 081364267543 / 083894596761
Thx...

Tuesday, April 14, 2009

Kill Steal !

Kill Steal sangat berguna dalam RO , gunanya untuk menyampah..  /gg 

exp yang didapat dari Kill Steal lebih besar daripada tidak Kill Steal !!

sapa yang gk mw Kill Steal tw.. dimana" ad rules yg gk nge-bolehin bahas Kill Steal ato tny" seputar Kill Steal.. akan tetapi saya telah menemukan Kill Steal yg baru saja saya temukan..

untuk yang berminat bisa hubungi saya, tapi inget Kill Steal "TIDAK GRATIS" !!!

Saya menjual Kill Steal seharga 50k itu dah termasuk 1 set OK 2.0.6 jd dah 1 paket , gk usah repot" ngeset lg ^^.. ( 100% dijamin Bisa KILL STEAL /KS , karena saya sudah coba sndiri )

Daerah Jakarta Utara :

Bisa ktemuan / saya kirim lewat email apabila uang sudah masuk Rekening BCA saya ( NO TIPU ) !!!

Daerah Luar Jakarta Utara :

Via BCA , nanti program nya akan saya kirim ke e-mail anda apabila uang sudah masuk rekening BCA saya ( NO TIPU !! )

Kalo mw bli gmn cara nya ?? gampang.. tinggal sms /hubungi ke 081364267543 , kirim uang ke No Rek saya dan beritahu No Rek serta Nama Rek anda , setelah uang masuk saya akan langsung kirim ke e-mail anda.. ^^

Nama Rek : Roberto Oscar Vialli

No Rek : 1681880777 

Nama email anda jangan sampai salah.. apabila salah saya tidak akan kirim 2x.. sebelum saya kirim saya akan konfirmasi ke anda lagi agar tidak terjadi kesalahan.. ^^

INGAT TIDAK GRATIS AND NO TIPU !!!

NO LEECHERRRR !!!

Yang Mw cptan yahhh ^^

Monday, April 13, 2009

Refine Macro

Nie macro refine/macro buat nempa... Kegagalan dalam menempa jgn salah kan bot ato saya.... karena biar bagaimana pun menempa tetap membutuh kan ke ho-q an dari char kamu...

automacro check_inventory {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon < upgradeon =" 1"> 0
equipped Sword [3]
call do_upgrade
}

automacro check_equip1 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +1 Sword [3]
call do_upgrade
}

automacro check_equip2 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +2 Sword [3]
call do_upgrade
}

automacro check_equip3 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +3 Sword [3]
call do_upgrade
}


automacro check_equip4 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +4 Sword [3]
call do_upgrade
}


automacro check_equip5 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +5 Sword [3]
call do_upgrade
}

automacro check_equip6 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +6 Sword [3]
call do_upgrade
}

automacro check_equip7 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +7 Sword [3]
call do_overupgrade
}

automacro check_equip8 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +8 Sword [3]
call do_overupgrade
}

automacro check_equip9 {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
equipped +9 Sword [3]
call do_overupgrade
}

automacro check_equipnone {
var upgradeon = 1
location prt_in 54 63 57 59
inventory Phracon > 0
inventory "Sword [3]" > 0
equipped not Sword [3]
equipped not +1 Sword [3]
equipped not +2 Sword [3]
equipped not +3 Sword [3]
equipped not +4 Sword [3]
equipped not +5 Sword [3]
equipped not +6 Sword [3]
equipped not +7 Sword [3]
equipped not +8 Sword [3]
equipped not +9 Sword [3]
call equip_item
}

macro equip_item {
eq Sword [3]
@pause 2
}

macro do_upgrade {
talk @npc (63 60)
@pause 1
talk cont
@pause 1
talk resp 3
@pause 1
talk cont
@pause 1
talk resp 0
@pause 1
}

macro do_overupgrade {
talk @npc (63 60)
@pause 1
talk cont
@pause 1
talk resp 3
@pause 1
talk cont
@pause 1
talk resp 0
@pause 1
talk cont
@pause 1
talk cont
@pause 1
talk resp 0
@pause 1
}

Novice - Thief Using Macro

#Novice to Thief Macro byMasahiro

automacro thief{
inventory "Orange Gooey Mushroom" <>= 1
inventory "Orange Net Mushroom" >= 8
call done
run-once 1
}

automacro gathered2 {
inventory "Orange Gooey Mushroom" >= 4
inventory "Orange Net Mushroom" >= 7
call done
run-once 1
}

automacro gathered3 {
inventory "Orange Gooey Mushroom" >= 7
inventory "Orange Net Mushroom" >= 6
call done
run-once 1
}

automacro gathered4 {
inventory "Orange Gooey Mushroom" >= 10
inventory "Orange Net Mushroom" >= 5
call done
run-once 1
}

automacro gathered5 {
inventory "Orange Gooey Mushroom" >= 13
inventory "Orange Net Mushroom" >= 4
call done
run-once 1
}

automacro gathered6 {
inventory "Orange Gooey Mushroom" >= 16
inventory "Orange Net Mushroom" >= 3
call done
run-once 1
}

automacro gathered7 {
inventory "Orange Gooey Mushroom" >= 19
inventory "Orange Net Mushroom" >= 2
call done
run-once 1
}

automacro gathered8 {
inventory "Orange Gooey Mushroom" >= 22
inventory "Orange Net Mushroom" >= 1
call done
run-once 1
}

automacro gathered9 {
inventory "Orange Gooey Mushroom" >= 25
call done
run-once 1
}

automacro gathered10 {
inventory "Orange Net Mushroom" >= 9
call done
run-once 1
}

macro done {
do is @inventory (Butterfly Wing)
pause 3
do conf attackAuto 0
do conf route_randomWalk 0
do conf autoTalkCont 1
do move 41 125 moc_prydb1
pause 1
do talk @npc (42 133)
pause 3
}

automacro died {
map morocc
call ban
run-once 1
}

macro ban {
do move 135 130 moc_ruins
do talk @npc (141 125)
pause 3
do conf attackAuto 2
do conf route_randomWalk 1
do conf itemsTakeAuto 2
do conf itemsGatherAuto 2
release all
}


Note : i'm not tried it , so idk if its worked well or not...

PvP Macro !

Saya Harap Smua mau sedikit berusaha mengedit nya. Karena jika bermain copas saya yakin maka macro pvp ini tdk akan berhasil/jalan. Karena saya telah mengedit d bag tertentu.

###################################################
# PLAYER KILL MACRO Version 1.0.0 Beta #
# JOB: ALL CLASSES #
# Requires Macro Plugin 1.3.x
# By : MaSaHiRo
###################################################

automacro ignorepm {
pm /bot/
timeout 1
call pm
}

automacro ignorepm2 {
pm /botter/
timeout 1
call pm
}

automacro ignorepm3 {
pm /report/
timeout 1
call pm
}

automacro ignorepm4 {
pm /ur name/
timeout 1
call pm
}

macro pm {
$pm = @eval ($pm + 1)
if ($pm >= 2) goto ignore
goto end
:ignore
pause 3
do ignore 1 $.lastpm
$pm = 0
:end
}

automacro subload {
overideAI 1
run-once 1
timeout 1
call onload
}

macro onload {

# Macro Config 

do conf macro_debug 0

#Edit This:
#[ 1 = on | 0 = off ]


# Commands @warp, @go, etc
$allowA = 1

$kos = 1
$freewill = 1

# use 2 or 0
#
$randomwalk = 2

$nohide = 0
$fp = 0
$skills = 1
$lock = 1
$homemap = prt_fild09 29 295
$lockedmap = prt_fild08 150 365
$fpbot = "= ur name bot for FP ="
$master = Master Name
$follow = @config(follow)

# character: $atk - attack skill
#
$atk = sp 266

# If your jobclass is champion or hpriest leave none, else set this to 1
#
$job = none


# Dont mess with this:

$hello = Hi $master ! Our Enemies: @config(kos_pk) @config(kos_pk2).

:next0
if ($follow = 1) goto f
goto next1
:f
do follow $master
:next1
if (@arg("$lockedmap", 1) = prt_fild08) goto makelocprt
$location = $.map
goto next2
:makelocprt
$location = prt_fild08

:next2
$lastpos = 0 0 $.map
$damage = 0
$nmes = 0

#

# Say that you are online
do pm "$master" $hello

# Log (you can remove it)

log ===================================================
log PVP (BVP) Macros
log JOB: ALL CLASSES
log ===================================================
log Master: $master
log Skill Usage On Players - Ruwach: $nohide Buffs: $skills
log Random Walk: $randomwalk Free will: $freewill KOS: $kos
log Homeplace: $homemap Locked Place: $lockedmap
log Commands are: follow / stop / prt / gef / pay / br
log home / fp / walk / free / duel / kill / kos / skill / warp / go
log ===================================================
log Kill On Sight players: @config(kos_pk) @config(kos_pk2)
log ===================================================

call move2
}

#### MASTER


automacro mapchange99 { 
mapchange any
call {
release newmove
}
}

automacro masterlost {
#var randomwalk = 2
exclusive 1
console "I lost my master"
timeout 1
#location prt_fild08
call {
release move
release newmove
}
}

automacro masterfound {
hook player
exclusive 1
var randomwalk = 2
console "Found my master!"
timeout 1
#location prt_fild08
call {
lock newmove
}
}

#### KOS

automacro kos2 {
status not dead
exclusive 1
overideAI 1
hook player
location not "name for map"
location not "name for map"
location not "name for map"
location not "name for map"
var kos = 1
call kos1
}

macro kos1 {
if (@player(@config (kos_pk)) >= 0) goto kill1
if (@player(@config (kos_pk2)) >= 0) goto kill2
goto end
:kill1
lock move
lock freew
lock newmove
$lastpos = $.pos $.map
$mytarget = @config(kos_pk)
set exclusive 0
do kill @player(@config (kos_pk))
goto end
:kill2
lock move
lock freew
lock newmove
$lastpos = $.pos $.map
$mytarget = @config(kos_pk2)
set exclusive 0
do kill @player(@config (kos_pk2))
:end
}

#### RANDOM WALK SETUP

automacro move {
#overideAI 1
var randomwalk = 1
priority 5
location not "name for map"
location not "name for map"
location not "name for map"
location not "name for map"
timeout 10
call move3
}

automacro newmove {
#overideAI 1
#location gef_fild10, prt_fild08
priority 5
location not "name for map"
location not "name for map"
location not "name for map"
location not "name for map"
var randomwalk = 2
timeout 10
call move2
}

macro move2 {
set exclusive 0
$look = @random ("look 4", "lookp @player($master)", "look 4")
$px = @arg ("$.pos", 1)
$py = @arg ("$.pos", 2)
if ($.map = map name) goto "map name"
if ($.map = map name) goto "map name"
if ($.map = @arg("$homemap", 3)) goto end
goto other
:makenew
$n = @rand(1, 5)
$m = @rand(1, 5)
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$eval = @random ("-", "+")
$lastpos = @eval ($px $eval $n) @eval ($py $eval $m) $.map
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move @eval ($px $eval $n) @eval ($py $eval $m) $.map
goto end

:ss
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
$n = @rand (0,1)
$m = @rand(1, 2)
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$eval = @random ("-", "-")
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move @eval ($posx $eval $n) @eval ($posy $eval $m) $.map
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
$do = @random ("ss 135", "ss 406", "", "ss 138", "ss 406", "look 4", "ss 135", "ss 406", "ss 406")
do $do
goto end

:cont
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
$mrnd = @rand (1, 3)
if ($mrnd = 1) goto move
if ($mrnd = 2) goto ss
if ($mrnd = 3) goto ss
goto end
:move
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
if (@arg("$lastpos", 3) != $.map) goto makenew
if (@arg("$lastpos", 1) = 0) goto makenew
$n = @rand(2, 6)
$m = @rand(2, 6)
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$eval = @random ("-", "+")
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do @random ("move $lastpos", "move @eval ($posx $eval $n) @eval ($posy $eval $m) $.map")
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
$do = @random ("ss 135", "ss 406", "", "ss 138", "ss 138", "look 4", "ss 150", "ss 135", "e ho")
do $do
goto end
:"map name"
$do = @random ("", "ss 406", "", "")
do $do
$xx = @rand (156, 171)
$yy = @rand (354, 360)
$px = @arg ("$.pos", 1)
$py = @arg ("$.pos", 2)
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move $xx $yy $.map
goto cont
:geffild
$do = @random ("", "ss 406", "", "")
do $do
$xx = @rand (65, 73)
$yy = @rand (308, 327)
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move $xx $yy $.map2
goto cont
:other
$do = @random ("", "ss 406", "", "")
do $do
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$n = @rand(1, 3)
$m = @rand(1, 3)
$eval = @random ("-", "+")
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move @eval ($posx $eval $n) @eval ($posy $eval $m) $.map
goto cont
:kill1
do kill @player(@config (kos_pk))
$lastpos = $.pos $.map
goto end2
:kill2
do kill @player(@config (kos_pk2))
$lastpos = $.pos $.map
goto end2
:end
if (@player(@config (kos_pk)) >= 0) goto kill1
if (@player(@config (kos_pk2)) >= 0) goto kill2
:end2
}

macro move3 {
set exclusive 0
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
$look = @random ("look 4", "lookp @player($master)", "look 4")
$px = @arg ("$.pos", 1)
$py = @arg ("$.pos", 2)
if ($.map = @arg("$homemap", 3)) goto end
goto other
:makenew
$n = @rand(1, 5)
$m = @rand(1, 5)
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$eval = @random ("-", "+")
$lastpos = @eval ($px $eval $n) @eval ($py $eval $m) $.map
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move @eval ($px $eval $n) @eval ($py $eval $m) $.map
goto end

:ss
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
$n = @rand (0,1)
$m = @rand(1, 2)
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$eval = @random ("-", "+")
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move @eval ($posx $eval $n) @eval ($posy $eval $m) $.map
if (@player(@config (kos_pk)) >= 0) goto kill1
if (@player(@config (kos_pk2)) >= 0) goto kill2
$do = @random ("ss 135", "ss 406", "", "ss 138", "ss 406", "look 4", "ss 135", "ss 406", "ss 406")
do $do
goto end

:cont
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
$mrnd = @rand (1, 3)
if ($mrnd = 1) goto move
if ($mrnd = 2) goto ss
if ($mrnd = 3) goto ss
goto end
:move
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
if (@arg("$lastpos", 3) != $.map) goto makenew
if (@arg("$lastpos", 1) = 0) goto makenew
$n = @rand(1, 5)
$m = @rand(1, 5)
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$eval = @random ("-", "+")
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move @eval ($posx $eval $n) @eval ($posy $eval $m) $.map
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
$do = @random ("ss 135", "ss 406", "", "ss 138", "ss 138", "look 4", "ss 150", "ss 135", "e ho")
do $do
goto end
:other
$do = @random ("", "ss 406", "", "")
do $do
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$n = @rand(1, 3)
$m = @rand(1, 3)
$eval = @random ("-", "+")
#if (@player(@config (kos_pk)) >= 0) goto kill1
#if (@player(@config (kos_pk2)) >= 0) goto kill2
do move @eval ($posx $eval $n) @eval ($posy $eval $m) $.map
goto cont
:kill1
$lastpos = $.pos $.map
do kill @player(@config (kos_pk))

goto end
:kill2
$lastpos = $.pos $.map
do kill @player(@config (kos_pk2))
goto end2
:end
if (@player(@config (kos_pk)) >= 0) goto kill1
if (@player(@config (kos_pk2)) >= 0) goto kill2
:end2
}

##### FREE WILL

automacro freew {
overideAI 1
location not "map name"
location not "map name"
location not "map name"
location not "map name"
var freewill = 1
timeout 45
call freewill
}

macro freewill {
$will = @random ("macro sit", "look", "emo", "macro move2", "look", "emo", "macro move2", "macro attack", "macro san", "macro attack2", "macro san2")
if ($will = macro move2) goto move
if ($will = macro sit) goto sit
if ($will = look) goto look
if ($will = emo) goto emo
if ($will = macro attack) goto atk
if ($will = macro san) goto san
if ($will = macro attack2) goto atk2
if ($will = macro san2) goto san2
goto end
:move
call move2
goto end
:sit
call sit
goto end
:emo
call emo
goto end
:look
call look
:atk
call attack
:atk2
call attack2
:san
call san
:san2
call san2
:end
}

macro look {
if (@player(@config (kos_pk)) >= 0) goto kill1
if (@player(@config (kos_pk2)) >= 0) goto kill2
if (@player($master) >= 0) goto one
goto two
:one
$look = lookp @player($master)
do $look
do $look
do $look
do $look
do $look
goto end
:two
$look = @random ("look 4", "look 3", "look 5", "look 4")
do $look
goto end
:kill1

do kill @player(@config (kos_pk))
$lastpos = $.pos $.map
goto end
:kill2

do kill @player(@config (kos_pk2))
$lastpos = $.pos $.map
goto end
:end
}

macro emo {
if (@player(@config (kos_pk)) >= 0) goto kill1
if (@player(@config (kos_pk2)) >= 0) goto kill2
$look = @random ("e e2", "e e2", "c ....", "e ho", "e e10")
do $look
goto end
:kill1

do kill @player(@config (kos_pk))
$lastpos = $.pos $.map
goto end
:kill2

do kill @player(@config (kos_pk2))
$lastpos = $.pos $.map
goto end
:end
}

macro sit {
if (@player($master) >= 0) goto one
goto two
:one
$look = lookp @player($master)
do $look
goto sit
:two
$look = @random ("look 4", "look 3", "look 5", "look 4", "look 4")
do $look
:sit
$times = @rand (8, 12)
$i = 0
while ($i < $times) as sitloop
pause 3
do sit
do $look
if (@player(@config (kos_pk)) >= 0) goto kill1
if (@player(@config (kos_pk2)) >= 0) goto kill2
$i++
end sitloop
if (@player($master) >= 0) goto emo
goto end
:emo
pause 1
do @random ( "", "e e2", "", "", "e e8", "", "", "", "e ho", "e e10")
goto end
:kill1

do kill @player(@config (kos_pk))
$lastpos = $.pos $.map
goto end
:kill2

do kill @player(@config (kos_pk2))
$lastpos = $.pos $.map
goto end
:end
}




macro san1 {
if (@player($master) >= 0) goto one
goto end
:one
do @random ( "sp 70 $master", "sp 70 $master")
do @random ( "sp 70 $master", "sp 70 $master")
pause 1
do @random ( "", "e e2", "", "", "e e8", "", "", "", "e ho")
:end
}

macro san2 {
# if (@player($master) >= 0) goto one
goto end
:one
do @random ( "ss 70", "ss 70")
do @random ( "ss 70", "ss 70")
pause 1
:end
}

macro attack {

if (@player($master) >= 0) goto one
goto end
:one
do sp 156 $master
do @random ("sp 156 $master", "sp 28 $master", "","sp 156 $master")
do sp 28 $master
pause 2
do @random ( "e heh", "e e2", "", "", "e gg", "c P", "", "c ^^", "c =)", "")
:end
}


macro attack2 {

$randplayer = @rand (0, 1)
if (@player($master) >= 0) goto one
:one
do sp 156 $randplayer 
do @random ("sp 156 $randplayer ", "sp 28 $randplayer ")
do @random ("sp 156 $randplayer ", "sp 28 $randplayer ")
pause 2
do @random ( "e heh", "e e2", "", "", "e gg", "e ho", "", "c xD", "", "")
:end

}


###################
##### SKILLS ######

# PUBLIC

automacro Healer {
var job != 1
pubm /heal|Heal|hp|HP/,6
sp >= 80%
timeout 20
call doheal
}

automacro Buffer {
var job != 1
class high priest
pubm /buff|bufs|Buffs|BUFF|baps|Buf|buffs|agi|bless/,6
sp >= 80%
timeout 20
call dobuff
}

automacro ruwach1 {
var job != 1
pubm /ruwach/,6
timeout 46
call dorwch
}

automacro res99 {
timeout 15
var job != 1
class high priest
pubm /res|resu|ressu|ress/
call Ressurection
}


automacro killme {
timeout 15
pubm /kill me|kill me pls/
call killme2
}

macro killme2 {
pause 2
do kill @player($.lastpub)
}
}

macro Ressurection {
if ($.lastpub = $master) goto one
if ($skills = 1) goto one
goto end
:one 
do ip @inventory (yggdrasil leaf) @player ($.lastpub)
goto over
:end
pause 2
do @random ("c nop", "c nope", "e ??", "e lv2", "e e2", "e ??", "c =/", "c no", "e ??", "", "", "")
:over
pause 2
do @random ("c P", "c ^^", "e heh", "", "", "e e2", "", "e ok", "e e2", "", "")
}

automacro SW3 {
var job != 1
pubm /safety|safe|wall/
timeout 1
call SW4
}


macro SW4 {
if ($.lastpub = Hakuro) goto one
if ($skills = 1) goto one
goto end
:one 
do sp 12 "$.lastpub"
#do sp 24 "$.lastpub"
goto over
:end
pause 2
do @random ("c nop", "c nope", "e ??", "e lv2", "e e2", "e e8", "c =/", "c no", "e ?", "", "", "")
:over
pause 2
do @random ("c P", "c ^^", "e heh", "", "", "e e2", "", "e ho", "e e2", "", "")
}

automacro Buffer2 {
timeout 15
var job != 1
class high priest
pubm /assump|asump|asp/,6
call assump
}

macro assump {
$name = $.lastpub
#if ($.lastpub = Hakuro) goto one
if ($skills = 1) goto one
goto end
:one 
do sp 361 "$.lastpub" 10
#do sp 24 "$.lastpub"
goto over
:end
pause 2
do @random ("c nop", "c nope", "e ??", "e lv2", "e e2", "e e8", "c no", "e gg", "")
:over
pause 2
do @random ("c P", "c ^^", "e heh", "", "", "e e2", "", "e e10", "e e2", "c D", "", "")
}

# PRIVATE

automacro healz {
timeout 15
var job != 1
pm "heal"
pm "hp"
call healz2
}

automacro buffz {
timeout 15
var job != 1
pm /buff/i
call buffz2
}

macro doheal {
if ($.lastpub = $master) goto one
if ($skills = 1) goto one
goto end
:one 
$times = @rand (2, 7)
$i = 0
while ($i < $times ) as healloop
do sp 28 "$.lastpub" 10
$i++
end healloop
goto over
:end
pause 2
do @random ("c nop", "c nope", "e ??", "e lv2", "e e2", "e ??", "c =/", "c no", "e ??", "", "", "")
:over
pause 3
do @random ("c P", "c ^^", "e heh", "", "", "e e2", "", "e gg", "e e2", "", "")
}

macro buffz2 {
if ($.lastpm = $master)goto one
goto end
:one 
do sp 34 "$.lastpm" 10
do sp 29 "$.lastpm" 10
do sp 361 "$.lastpm" 10
goto over
:end
pause 2
do @random ("c nop", "c nope", "e ??", "e lv2", "e e2", "e e8", "c =/", "c no", "e ??", "", "", "")
:over
pause 2
do @random ("c P", "c ^^", "e heh", "", "", "e e2", "", "e gg", "e e2", "", "")
}

macro healz2 {
if ($.lastpm = $master) goto one
goto end
:one 
$times = @rand (6, 12)
$i = 0
while ($i < $times ) as healloop
log loop $i
do sp 28 "$.lastpm" 10
$i++
end healloop
goto end
:end
}

macro dorwch {
do sp 24 "$.lastpub"
}

macro dobuff {
if ($.lastpub = $master) goto one
if ($skills = 1) goto one
goto end
:one 
do sp 34 "$.lastpub" 10
do sp 29 "$.lastpub" 10
goto over
:end
pause 2
do @random ("c nop", "c nope", "e ??", "e lv2", "e e2", "e e8", "c =/", "c no", "e ?", "", "", "")
:over
pause 2
do @random ("c P", "c ^^", "e heh", "", "", "e e2", "", "e gg", "e e2", "", "")

}

automacro SW1 {
var job != 1
pm /^(sw)$/
call SW2
}

macro SW2 {
if ($.lastpm = $master) goto one
goto end
:one 
do sp 12 "$.lastpm"
#do sp 24 "$.lastpm"
goto end
:end
}

automacro Ruwach999 {
var job != 1
console /Player .* .* uses Ruwach on himself/i
var nohide = 1
timeout 65
call {
pause 2
do ss 24
}
}


# FIND CLOACKERS


automacro nohide {
var job != 1
var nohide = 1
console /Player (.*) \((\d+)\) uses Cloaking on himself/i
timeout 25
call {
do sp 24 $.lastMatch2
}
}

automacro nohide2 {
var job != 1
var nohide = 1
console /player (.*) \((\d+)\) uses Hiding on himself/i
timeout 25
call {

do sp 24 $.lastMatch2
}
}

automacro nohide3 {
var job != 1
timeout 12
var nohide = 1
console /player (.*) \((\d+)\) uses Chase Walk on himself/i
call {
do sp 24 $.lastMatch2
}
}


######## COMMANDS / CHAT #########

automacro fs1 {
var job != 1
exclusive 1
pm "duel conf"
class champion
call {
do switchconf ChampDuel.txt
do pm "$.lastpm" switched duel
}

automacro fs2 {
var job != 1
exclusive 1
class champion
pm "main conf"
call {
do switchconf ChampMain.txt
do pm "$.lastpm" switched to main
}
}

automacro fs3 {
var job != 1
class high priest
exclusive 1
pm "party"
call {
do switchconf ChampParty.txt
do pm "$.lastpm" ok party
}
}

automacro fs4 {
class high priest
var job != 1
pm "party"
call {
do switchconf FSparty.txt
do pm "$.lastpm" ok party
}
}

automacro fs5 {
class high priest
var job != 1
pm "main"
call {
do switchconf FSmain.txt
do pm "$.lastpm" switched to main
}
}

automacro walk {
exclusive 1
pm /^(walk)$/
call {
if ($randomwalk = 2) goto off
if ($randomwalk = 1) goto on2
if ($randomwalk = 0) goto on
goto end
:on
release move

$randomwalk = 1
do pm "$.lastpm" Randomwalk v 1 Enabled
goto end
:on2

$randomwalk = 2
do pm "$.lastpm" Randomwalk v 2 Enabled
goto end
:off

$randomwalk = 0
do pm "$.lastpm" Randomwalk Disabled
goto end
:end
}
}

automacro usefp {
exclusive 1
pm "fp"
call {
if ($fp = 1) goto off
if ($fp = 0) goto on
goto end
:on

$fp = 1
do pm "$.lastpm" Using FP Enabled
goto end
:off

$fp = 0
do pm "$.lastpm" Using FP Disabled
goto end
:end
}
}

automacro Follow {
overrideAI 1
exclusive 1
pm /^(follow|fm|go)$/,
call follow2
}

macro follow2 {
do follow $.lastpm
do pm "$.lastpm" Following "$.lastpm" !!
$randomwalk = 1
}

automacro FollowP {
exclusive 1
overrideAI 1
party /^(follow|fm|go)$/
call follow3
}



macro follow3 {
do follow $.lastparty
do p " Following "$.lastparty" !!
$randomwalk = 1
}

automacro kos_no {
exclusive 1
overrideAI 1
pm "stop"
call {
#do pm "$.lastpm" Players: [ @config(kos_pk) | @config(kos_pk2) ] - are no longer my enemies.
do conf kos_pk none
do conf kos_pk2 none
$damage = 0
$pla = none
$kospla = none
do pm "$.lastpm" I stopped.
}
}

automacro kos_duel {
exclusive 1
overrideAI 1
pm "duel"
call {
do conf kos_pk $.lastpm
$freewill = 0
$damage = 10
pause 1
do pm "$.lastpm" @random ( "Lets Have Fun", "Game", "Sure")
pause 1
do @random ("e gg", "c XD", "e e9")
pause 1
do c 3
pause 1
do c 2
pause 1
do c 1
pause 1
do e go
do kill @player(@config(kos_pk))
}
}

automacro kos001 {
exclusive 1
overrideAI 1
pm /^(kos )/i
call {
$kospla = @arg ("$.lastpmMsg", 2)
if (@player($kospla) >= 0) goto kill
goto nopla
:kill
do conf kos_pk2 @config(kos_pk)
do conf kos_pk $kospla
do pm "$.lastpm" kos_pk set to: @config(kos_pk) | kos_pk2 set to: @config(kos_pk2)
do kill @player($kospla)
goto end
:nopla2
$pla = @arg ("$.lastpmMsg", 2)
do pm "$.lastpm" Can't recognize $kospla. Spell his name accurately.
goto end
:nopla
do pm "$.lastpm" Player $kospla doesn't exists.
do pm "$.lastpm" Searching again....
$kospla = @arg ("$.lastpmMsg", 2) @arg ("$.lastpmMsg", 3) @arg ("$.lastpmMsg", 4) @arg ("$.lastpmMsg", 5) @arg("$.lastpmMsg", 6)
if (@player($kospla) >= 0) goto kill
goto nopla2
:end
}
}
}

automacro killpla {
exclusive 1
overrideAI 1
pm /^(kill )/i
call {
$pla = @arg ("$.lastpmMsg", 2)
if (@arg ("$.lastpmMsg", 2) = me) goto killme
if (@player($pla) >= 0) goto kill
goto nopla
:killme
do pm "$.lastpm" I am gonna kill you !!!
do kill @player($.lastpm)
goto end
:kill

do pm "$.lastpm" I am gonna kill $pla
do kill @player($pla)
goto end
:nopla2
$pla = @arg ("$.lastpmMsg", 2)
do pm "$.lastpm" Can't recognize $pla. Spell his name accurately.
goto end
:nopla
do pm "$.lastpm" Player $pla doesn't exists.
do pm "$.lastpm" Searching again....
$pla = @arg ("$.lastpmMsg", 2) @arg ("$.lastpmMsg", 3) @arg ("$.lastpmMsg", 4) @arg ("$.lastpmMsg", 5) @arg("$.lastpmMsg", 6)
if (@player($pla) >= 0) goto kill
goto nopla2
:end
}
}

automacro wait {
exclusive 1
overrideAI 1
pm /^(wait|w)$/,
call wait2
}


macro wait2 {
do conf follow 0
do sit
do pm "$.lastpm" Waiting you at $.map !!
}

automacro skills {
exclusive 1
pm "skill"
call {
if ($skills = 1) goto off
if ($skills = 0) goto on
goto end
:on

$skills = 1
do pm "$.lastpm" Autoskills Enabled
goto end
:off

$skills = 0
do pm "$.lastpm" Autoskills Disabled
goto end
:end
}
}

automacro setfw {
exclusive 1
pm "free"
call {
if ($freewill = 1) goto off
if ($freewill = 0) goto on
goto end
:on

$freewil = 1
do pm "$.lastpm" Free Will Enabled
goto end
:off

$freewill = 0
do pm "$.lastpm" Free Will Disabled
goto end
:end
}
}

automacro status {
exclusive 1
pm "st"
call {
do pm $.lastpm My positon: $.pos $.map. Locked map: $lockedmap Enemies: @config(kos_pk) @config(kos_pk2).
}
}

# 0 - 26

automacro gowarp {
exclusive 1
pm /^(go )/i
call Lockmap77
}

macro Lockmap77 {
$go = @arg ("$.lastpmMsg", 2)
do c @go $go
pause 1
do pm "$.lastpm" Warped to $.map
$location = $.map
$lock = 0
call move2
}

automacro dowarp {
exclusive 1
pm /^(warp )/i
call Lockmap78
}

macro Lockmap78 {
$warp = @arg("$.lastpmMsg", 2) @arg("$.lastpmMsg", 3) @arg("$.lastpmMsg", 4)
do c @warp $warp
pause 1
do pm "$.lastpm" Warped to $.map $.pos
$location = $.map
$lock = 0
call move2
}

automacro dowarpP {
exclusive 1
party /^(warp )/i
call Lockmap79
}

macro Lockmap79 {
$warp = @arg ("$.lastpartyMsg", 2) @arg ("$.lastpartyMsg", 3) @arg ("$.lastpartyMsg", 4)
do c @warp $warp
pause 1
do p Warped to $.map $.pos
$location = $.map
$lock = 0
call move2
}

#### SET LOCKED MAP

automacro lockedmap3go19 {
exclusive 1
overrideAI 1
pm /^(pay)$/,
call {
$lock = 1
$lockedmap = Map_Name
$location = Map_name

if ($follow = 1) goto f
goto next
:f
do follow $master
:next
do pm "$.lastpm" Locked Map: $lockedmap
call Lockmap99
}
}

automacro lockedmap4go15 {
exclusive 1
overrideAI 1
pm /^(br)$/,
call {
$lock = 1
$lockedmap = new_1-1 52 111
$location = new_1-1

if ($follow = 1) goto f
goto next
:f
do follow $master
:next
do pm "$.lastpm" Locked Map: $lockedmap
call Lockmap99
}
}

automacro lockedmap1prt {
exclusive 1
overrideAI 1
pm /^(prt)$/,
call {
$lock = 1
$xxx = @rand (100, 200)
$yyy = @rand (335, 369)
$lockedmap = prt_fild08 $xxx $yyy

$location = map_name
if ($follow = 1) goto f
goto next
:f
do follow $master
:next
do pm "$.lastpm" Locked Map: $lockedmap
call Lockmap99
}
}

automacro lockedmap0home {
exclusive 1
overrideAI 1
pm /^(home)$/,
call {
$lock = 1
do conf follow 0
$lockedmap = $homemap

$location = Map_name
do pm "$.lastpm" Locked Map: $lockedmap
call Lockmap99
}
}

automacro lockedmap2gef {
exclusive 1
overrideAI 1
pm /^(gef)$/,
call {
$lock = 1
$lockedmap = Map_name x, y
$location = Map_name

if ($follow = 1) goto f
goto next
:f
do follow $master
:next
do pm "$.lastpm" Locked Map: $lockedmap
call Lockmap99
}
}


##########################
# Do something when buffed
##########################

macro bemad {
$buffs = 10
:start
$i = 0
while ($i < $buffs ) as buffloop
$nmes = $mes
$mes = @random ("e e5", "c Oo", "sp 156 $.lastMatch2", "sp 78 $.lastMatch2", "", "e gg", "c lol", "e e2", "sp 78 $.lastMatch2")
if ($nmes = $mes) goto start
if ($nmes != $mes) goto end
$i++
end buffloop
:end
pause 2
do $mes
$.lastMatch2 = none
}

macro begood {
$buffs = 10
:start
$i = 0
while ($i < $buffs ) as buffloop
$nmes = $mes
$mes = @random ("c ty", "c thanx", "c thanks", "e lv2", "c ty^^", "c ^^", "c xD", "e thx", "e ho", "c thx")
if ($nmes = $mes) goto start
if ($nmes != $mes) goto end
$i++
end buffloop
:end
pause 2
do $mes
}

macro begood2 {
$buffs = 10
:start
$i = 0
while ($i < $buffs ) as buffloop
$nmes = $mes
$mes = @random ("c ty", "c thanx", "c thanks", "e lv2", "c ty^^", "c ^^", "c xD", "e thx", "buff", "buff", "buff")
if ($nmes = $mes) goto start
if ($nmes != $mes) goto end
if ($mes = buff) goto buff
$i++
end buffloop
:buff
pause 1
do sp 34 $.lastMatch2 10
do sp 29 $.lastMatch2 10
goto end2
:end
pause 2
do $mes
:end2
}

macro buffed02 {
$buffs = 10
:start
$i = 0
while ($i < $buffs ) as buffloop
$nmes = $mes
$mes = @random ("", "", "sp 34 $.lastMatch2 1", "c <.<", "e thx", "e e8", "e e2")
if ($nmes = $mes) goto start
if ($nmes != $mes) goto end
if ($mes = unset) goto end
$i++
end buffloop
:end
pause 2
do $mes
#$.lastMatch1 = none
}

macro buffed01 {
$buffs = 10
:start
$i = 0
while ($i < $buffs ) as buffloop
$nmes = $mes
$mes = @random ("", "", "sp 29 $.lastMatch2 1", "", "c >.>", "e ho", "", "c xD", "e e2")
if ($nmes = $mes) goto start
if ($nmes != $mes) goto end
if ($mes = unset) goto end
$i++
end buffloop
:end
pause 2
do $mes
#$.lastMatch1 = none
}

automacro fped101 {
console /player (.*) \((\d+)\) uses full chemical protection on you.*/i
call begood2
timeout 30
}

automacro buffed11 {
console /player (.*) \((\d+)\) uses blessing on you.*/i
call buffed02
timeout 50
}

automacro buffed12 {
console /player (.*) \((\d+)\) uses increase agi on you.*/i
call buffed01
timeout 50
}


automacro buffed13 {
spell assumptio
timeout 45
call begood
}

automacro buffed14 {
console /player (.*) \((\d+)\) uses provoke on you.*/i
call bemad
timeout 50
}

automacro buffed15 {
console /player (.*) \((\d+)\) uses heal on you.*/i
call begood
timeout 50
}


#####################################
# PLAYER KILL #
#####################################

macro pk_STAY_CALM {
set exclusive 1
do pm "$master" $.lastMatch1 is playing with fire.
$damage++
if ($damage > 2) goto one
goto over
:one
$damage++
pause 1
do @random ("e ?", "e e2", "e gg", "c lol", "", "c aw", "e e2")
call pk_ATTACK_ONCE
:over
}



macro pk_WARN {
set exclusive 1
do pm "$master" $.lastMatch1 is playing with fire.
$damage = @eval($damage + 0.75)
#if ($damage > 5) goto one
if ($damage > 10) goto one
goto over
:one
call KILL_PK
:over
pause 2
do @random ( "", "", "e lv2", "e e2", "", "e gg", "", "e lv", "", "", "e heh", "", "", "c aw", "", "e e2")
}

macro pk_WARN2 {
set exclusive 1
do pm "$master" $.lastMatch1 is playing with fire.
$damage = @eval ($damage + 0.75)
if ($damage > 10) goto one
goto over
:one
call KILL_PK
:over
pause 2
do @random ( "", "c aw", "e lv2", "e e2", "", "e gg", "", "e ?", "e lv", "c lol", "e heh", "e ??", "e ??")

}

macro pk_ATTACK_ONCE {
set exclusive 1
do pm "$master" $.lastMatch1 attacked me.
$damage = @eval ($damage + 2.5)
#if ($damage > 3) goto two
if ($damage > 10) goto two
goto one
:one
do $atk $.lastMatch2
goto over
:two
#pause 2
#do @random ("e gg", "", "e gg", "", "e e2", "", "", "e heh", "", "c aw", "", "c lol", "sp 156 $.lastMatch2", "sp 156 $.lastMatch2")
call KILL_PK
:over
}

macro KILL_DEAD {
set exclusive 1
if ($.lastMatch1 = @config(kos_pk)) goto justkill
if ($.lastMatch1 = @config(kos_pk2)) goto justkill
if ($.lastMatch1 = $master) goto nvm

do conf kos_pk2 @config(kos_pk)
do conf kos_pk $.lastMatch1
do kill $.lastMatch2
do pm "$master" $.lastMatch1 is my enemy !!
goto end
:justkill
do pm "$master" I guess i am dead... $.lastMatch1 killed me @_@
do kill $.lastMatch2
$lastpos = $.pos $.map
goto end
:nvm
do pm "$master" I wont kill my master.
:end
}
}

macro KILL_PK {
set exclusive 1
if ($.lastMatch1 = @config(kos_pk)) goto justkill
if ($.lastMatch1 = @config(kos_pk2)) goto justkill
if ($.lastMatch1 = $master) goto nvm
set exclusive 0
do kill $.lastMatch2
do conf kos_pk2 @config(kos_pk)
do conf kos_pk $.lastMatch1
do pm "$master" $.lastMatch1 is my enemy !!
goto end
:justkill
set exclusive 0
do kill $.lastMatch2
do pm "$master" $.lastMatch1 attacked me @_@
$lastpos = $.pos $.map
goto end
:nvm
do pm "$master" I wont kill my master.
goto end2
:end
#$mes = @random ("e gg", "e e4", "c PWNT")
#if ($nmes = $mes) goto end2
#do $mes
#$nmes = $mes
:end2
}

automacro TargetDied {
exclusive 1
overrideAI 1
priority 0
console /player died: (.*) \((\d+)\).*/i
#console /target lost/i
call {
#do say lol
if (@player($.lastMatch1) = @player($mytarget)) goto taunt
goto end
:taunt
#do say lol
#do c newb
release move
release freew
release newmove
$td = 1
$do = @random ("ss 138", "e gg", "e swt", "ss 138", "look 4", "look 4", "ss 150", "ss 150", "ss 406", "e e2", "e ho", "e swt")
do $do
:end 
}
}

automacro TargetResu {
exclusive 1
overrideAI 1
priority 0
console /player (.*) \((\d+)\) has been resurrected/i
#console /target lost/i
call {
#do say lol
if (@player($.lastMatch1) = @player($mytarget)) goto taunt
goto end
:taunt
#do say lol
#do c newb
call kos1
#$td = 1
#$do = @random ("ss 138", "e gg", "e swt", "ss 138", "look 4", "look 4", "ss 150", "ss 150", "ss 406", "e e2", "e ho", "e swt")
#do $do
:end 
}
}

automacro TargetLost {
exclusive 1
overrideAI 1
priority 0
console /target lost/i
#console /target lost/i
call {
#do say lol
if (@player($.lastMatch1) = @player($mytarget)) goto taunt
goto end
:taunt
#do say lol
#do c newb
release move
release freew
release newmove
$do = @random ("ss 138", "e gg", "e swt", "ss 138", "look 4", "look 4", "ss 150", "ss 150", "ss 406", "e e2", "e ho", "e swt")
do $do
:end 
}
}

#################################
#####SELF DEFEND - ON SKILL#####
#################################

automacro pked378 {
overrideAI 1
timeout 3
####DAMAGE RANGE 100 - 999#########################
console /player (.*) \((\d+)\) uses .* on you - dmg: \b[1-9][0-9]{2}\b/i
call pk_WARN
}

automacro pked554 {
overrideAI 1
####DAMAGE RANGE 2000 - 5999#######################
timeout 1
console /player (.*) \((\d+)\) uses .* on you - dmg: \b[2-5][0-9]{3}\b/i
call pk_STAY_CALM
}



automacro pked959 {
overrideAI 1
priority 1
####DAMAGE RANGE 6000 - 9999#######################
console /player (.*) \((\d+)\) uses .* on you - dmg: \b[6-9][0-9]{3}\b/i
call KILL_PK
}

automacro pked645 {
overrideAI 1
####DAMAGE RANGE 10000 - 99999#####################
console /player (.*) \((\d+)\) uses .* on you - dmg: \b[1-9][0-9]{4}\b/i
call KILL_PK
}

automacro pked764 {
overrideAI 1
exclusive 1
# Asura? =)
####DAMAGE RANGE 100000 - 999999#####################
console /player (.*) \((\d+)\) uses .* on you - dmg: \b[1-9][0-9]{5}\b/i
call {
do kill $.lastMatch2
KILL_DEAD
}

#################################
#####SELF DEFEND - ON MELEE####
#################################


automacro pked356 {
overrideAI 1
####DAMAGE RANGE 10 - 90########################
console /player (.*) \((\d+)\) attacks you - dmg: \b[1-9][0-9]{1}\b/i
timeout 3
call pk_WARN
}


automacro pked303 {
overrideAI 1
timeout 2
####DAMAGE RANGE 100 - 900########################
console /player (.*) \((\d+)\) attacks you - dmg: \b[1-9][0-9]{2}\b/i
call pk_WARN
}

automacro pked101 {
overrideAI 1
timeout 1
####DAMAGE RANGE 1000 - 4000#######################
console /player (.*) \((\d+)\) attacks you - dmg: \b[1-4][0-9]{3}\b/i
call pk_STAY_CALM
}

automacro pked102 {
overrideAI 1
#timeout 1
####DAMAGE RANGE 5000 - 9999#######################
console /player (.*) \((\d+)\) attacks you - dmg: \b[5-9][0-9]{3}\b/i
call KILL_PK
}

automacro pked485 {
overrideAI 1
####DAMAGE RANGE 10000 - 99999#####################
console /player (.*) \((\d+)\) attacks you - dmg: \b[1-9][0-9]{4}\b/i
call KILL_PK
}

##############################
## SELF DEFEND - ON OTHER ##
##############################


automacro pked184 {
overrideAI 1
####DAMAGE RANGE BOMB##########
console /player (.*) \((\d+)\) uses Demonstration (lvl 5) on you .*/i
call {
call KILL_PK
}
}

# Todo make bot recognize if enemy is ranged or not and use pneuma on self
automacro pked18554 {
####DAMAGE RANGE Ranged ##########
overrideAI 1
var job != 1
#timeout 1
exclusive 1
#priority 1
spell Double Strafe, Arrow Repel, Arrow Vulcan, Spear Boomerang, Blitz Beat, Finger Offensive
call {
do move 0 0
do ss 25
call pk_ATTACK_ONCE
}
}



automacro pked5005 {
overrideAI 1
#priority 5
exclusive 1
timeout 1
####DAMAGE RANGE 2000 - 5999#######################
console /player (.*) \((\d+)\) uses Blitz Beat on you .*/i
call {
#$damage = @eval ($damage + 2.5)
do move 0 0
do ss 25
#call pk_WARN2
}
}


automacro pked354597 {
console /player (.*) \((\d+)\) is casting Extremly Fist on you *./i
call {
lock move
lock newmove
lock freew
call KILL_PK
}
}

automacro STRIP {
####FULL STRIP SKILL##############################
console /Player (.*) \((\d+)\) uses full strip on you.*/i
call KILL_PK
}

##################################
###ATTACK SUPPORT - ON SKILL ####
##################################

########### Hakuro ############
automacro PK_Hakuro4373 {
overrideAI 1
console /player Hakuro .* uses Vigor Absorption on player (.*) \((\d+)\)/i
call KILL_PK
}

########### Hakuro ############
automacro PK_Hakuro43788 {
overrideAI 1
console /player Hakuro .* uses Lex Aeterna on player (.*) \((\d+)\)/i
call KILL_PK
}

##########DAMAGE RANGE 1000 - 4999#################
automacro PK_Hakuro313 {
overrideAI 1
console /player Hakuro .* uses .* on player (.*) \((\d+)\) - dmg: \b[1-4][0-9]{3}\b/i
call pk_ATTACK_ONCE
}


##########DAMAGE RANGE 5000 - 9999#################
automacro PK_Hakuro323 {
overrideAI 1
console /player Hakuro .* uses .* on player (.*) \((\d+)\) - dmg: \b[5-9][0-9]{3}\b/i
call {
do kill $.lastMatch2
}
}

###########DAMAGE RANGE 10000 - 999999##############
automacro PK_Hakuro333 {
overrideAI 1
console /player Hakuro .* uses .* on player (.*) \((\d+)\) - dmg: \b[1-9][0-9]{4,5}\b/i
call {
do kill $.lastMatch2
}
}
########### Hakuro^^ ############

##########DAMAGE RANGE 1000 - 4999#################
automacro PK_Hakuro3 {
overrideAI 1
#player Hakuro^^
console /player - Hakuro - .* uses .* on player (.*) \((\d+)\) - dmg: \b[1-4][0-9]{3}\b/i
#console /Hakuro/i
call pk_ATTACK_ONCE
}


##########DAMAGE RANGE 5000 - 9999#################
automacro PK_Hakuro3213 {
overrideAI 1
console /player - Hakuro - .* uses .* on player (.*) \((\d+)\) - dmg: \b[5-9][0-9]{3}\b/i
call {
do kill $.lastMatch2
}
}

###########DAMAGE RANGE 10000 - 999999##############
automacro PK_Hakuro3313 {
overrideAI 1
console /player - Hakuro - .* uses .* on player (.*) \((\d+)\) - dmg: \b[1-9][0-9]{4,5}\b/i
call {
do kill $.lastMatch2
}
}

##################################
##DEFEND SUPPORT - ON MELEE ###
#################################

############ Hakuro ###############

############DAMAGE RANGE 1000 - 3999###########
automacro pked_Hakuro991 {
overrideAI 1
console /player (.*) \((\d+)\) attacks player Hakuro .* - dmg: \b[1-3][0-9]{3}\b/i
call pk_ATTACK_ONCE
}

###########DAMAGE RANGE 4000 - 9999############
automacro pked_Hakuro992 {
overrideAI 1
console /player (.*) \((\d+)\) attacks player Hakuro .* - dmg: \b[4-9][0-9]{3}\b/i
call KILL_PK
}

###########DAMAGE RANGE 10000 - 99999##########
automacro pked_Hakuro993 {
overrideAI 1
console /player (.*) \((\d+)\) attacks player Hakuro .* - dmg: \b[1-9][0-9]{4}\b/i
call {
do kill $.lastMatch2
}
}

############ - Hakuro - ###############

############DAMAGE RANGE 1000 - 3999###########
automacro pked_Hakuro9291 {
overrideAI 1
console /player (.*) \((\d+)\) attacks player - Hakuro - .* - dmg: \b[1-3][0-9]{3}\b/i
call pk_ATTACK_ONCE
}

###########DAMAGE RANGE 4000 - 9999############
automacro pked_Hakuro9922 {
overrideAI 1
console /player (.*) \((\d+)\) attacks player - Hakuro - .* - dmg: \b[4-9][0-9]{3}\b/i
call KILL_PK
}

###########DAMAGE RANGE 10000 - 99999##########
automacro pked_Hakuro9923 {
overrideAI 1
console /player (.*) \((\d+)\) attacks player - Hakuro - .* - dmg: \b[1-9][0-9]{4}\b/i
call {
do kill $.lastMatch2
}
}



##################################
##DEFEND SUPPORT - ON SKILL ###
#################################

################# Hakuro #####################

#######DAMAGE RANGE 1000 - 4999###############
automacro pk_Hakuro771 {
overrideAI 1
console /player (.*) \((\d+)\) uses .* on player Hakuro .* - dmg: \b[1-4][0-9]{3}\b/i
call pk_STAY_CALM


#######DAMAGE RANGE 5000 - 9999###############
automacro pk_Hakuro772 {
overrideAI 1
console /player (.*) \((\d+)\) uses .* on player Hakuro .* - dmg: \b[5-9][0-9]{3}\b/i
call KILL_PK


######DAMAGE RANGE 10000 - 99999############
automacro pked_Hakuro773 {
overrideAI 1
console /player (.*) \((\d+)\) uses .* on player Hakuro .* - dmg: \b[1-9][0-9]{4}\b/i
call {
do kill $.lastMatch2
}
}

######DAMAGE RANGE 100000 - 999999############
automacro pked_Hakuro153 {
overrideAI 1
console /player (.*) \((\d+)\) uses .* on player Hakuro .* - dmg: \b[1-9][0-9]{5}\b/i
call {
do kill $.lastMatch2
}
}

################# - Hakuro - #####################

#######DAMAGE RANGE 1000 - 4999###############
automacro pk_Hakuro7721 {
overrideAI 1
console /player (.*) \((\d+)\) uses .* on player - Hakuro - .* - dmg: \b[1-4][0-9]{3}\b/i
call pk_STAY_CALM


#######DAMAGE RANGE 5000 - 9999###############
automacro pk_Hakuro7722 {
overrideAI 1
console /player (.*) \((\d+)\) uses .* on player - Hakuro - .* - dmg: \b[5-9][0-9]{3}\b/i
call KILL_PK


######DAMAGE RANGE 10000 - 99999############
automacro pked_Hakuro7723 {
overrideAI 1
console /player (.*) \((\d+)\) uses .* on player - Hakuro - .* - dmg: \b[1-9][0-9]{4}\b/i
call KILL_PK


######DAMAGE RANGE 100000 - 999999############
automacro pked_Hakuro1523 {
overrideAI 1
console /player (.*) \((\d+)\) uses .* on player - Hakuro - .* - dmg: \b[1-9][0-9]{5}\b/i
call KILL_PK



############### FP ###############


automacro fptimer {
var allowA = 1
overideAI 1
var fp = 1
status not cp weapon
hp > 25%
call fptrigger
timeout 12
}

macro fptrigger {
do c @warp $homemap
pause 2
do pm $fpbot fp
pause 3
call Lockmap99 
}


#######HP SP############
automacro kittyhp {
var allowA = 1
status not dead
exclusive 1
hp > 0%
hp < 35%
timeout 10
call kittyhpsp
}

automacro kittynohp {
var allowA = 1
hp = 0%
exclusive 1
location payon
timeout 10
call kittynohp2
}


automacro kittysp {
var allowA = 1
hp > 0%
sp <= 15%
exclusive 1
timeout 10
call kittyhpsp
}

automacro kittynosp {
var allowA = 1
exclusive 1
overideAI 1
hp != 0%
sp = 0%
call afterAsurahpsp
}


macro kittynohp2 {
pause 1
do move x y "map_name"
}

macro kittyhpsp {
pause 1
do c @warp Map_name
pause 1
do talk @npc (x y)
pause 1
}


macro afterAsurahpsp {
pause 1
do c @warp Map_name
pause 1
do talk @npc (x y)
pause 1
}
#########LOCK MAP#################


automacro Go_To_Lockmap {
exclusive 1
var fp = 1
var lock = 1
overideAI 1
var allowA = 1
location not "map name"
location not "map name"
location not "map name"
location not "map name"
location not "map name"
hp > 40%
status cp weapon
timeout 5
call Lockmap99
}

automacro Go_To_Lockmap2 {
exclusive 1
overideAI 1
var fp = 0
var lock = 1
var allowA = 1
location not "map name"
location not "map name"
location not "map name"
location not "map name"
location not "map name"
hp > 40%
timeout 5
call Lockmap99
}

macro Lockmap99 {
release move
release freew
release newmove
#$damage = 0
if ($location = Map_name) goto prtfild
goto other
:prtfild


# $xxx = @random ("120", "200")
# $yyy = @rand (325, 345)
$xxx = @random("100", "200")
$yyy = @rand (365, 366)
do c @warp prt_fild08 $xxx $yyy
goto end
:other
do c @warp $lockedmap
:end
set exclusive 0
call move2
}

############ STORAGE ##############

automacro oweight {
exclusive 1
weight >= 70%
timeout 30
call storauto
}

macro storauto {
do autostorage
}

automacro gems {
class high priest
exclusive 1
inventory "Blue Gemstone" = 0
timeout 20
call storauto
}


automacro nogems {
class high priest
var job != 1
exclusive 1
storage "Blue Gemstone" = 0
timeout 10
call {
lock gems
lock nogems
}
}

Buff For Guild

automacro buffAndWarp {
pubm /(ald|alde|sq|pron|prt|HL|pay|asum|heal|santuary|sant|ab|buff|agi|bless)/i
sp >= 70
priority 0
class high priest
exclusive 1
call checkMsg
}
macro checkMsg {
$i = @player ($.lastpub)
$g = @eval (exists $::players{$::playersID[$i]}->{guild} ? $::players{$::playersID[$i]}->{guild}{name} : 'null')
if ($g == Gothic) goto accessGranted
if ($g == V a l k y r i e) goto accessGranted
goto end
:accessGranted
$msg = $.lastpubMsg
$posx = @rand (4, 5, 6, 7)
$posy = @rand (4, 5, 6, 7)
$cellIsFull = 0
do eval $::Macro::Data::varStack{cellIsFull} = 0;foreach (@{$::playersList->getItems()}) { next if (($_->{pos_to}{x} != $posx) || ($_->{pos_to}{y} != $posy));$::Macro::Data::varStack{cellIsFull} = 1; last;}
if ($cellIsFull == 1) goto accessGranted 
$x = @arg ("$.pos", 1)
$y = @arg ("$.pos", 2)
$evalx = @eval ($x + $posx)
$evaly = @eval ($y + $posy)
if ($msg == ALD) goto warpAld
if ($msg == ald) goto warpAld
if ($msg == alde) goto warpAld
if ($msg == ALDE) goto warpAld
if ($msg == SQ) goto warpSq
if ($msg == sq) goto warpSq
if ($msg == GEF) goto warpGef
if ($msg == gef) goto warpGef
if ($msg == HL) goto warpHl
if ($msg == hl) goto warpHl
if ($msg == pay) goto warpHl
if ($msg == asum) goto asum
if ($msg == ASUM) goto asum
if ($msg == agi) goto agi
if ($msg == AGI) goto agi
if ($msg == bless) goto bless
if ($msg == BLESS) goto bless
if ($msg == ab) goto agiBless
if ($msg == AB) goto agiBless
if ($msg == buff) goto agiBless
if ($msg == heal) goto heal
if ($msg == HEAL) goto heal
if ($msg == sant) goto santuary
if ($msg == santuary) goto santuary
if ($msg == SANT) goto santuary
if ($msg == SANTUARY) goto santuary
goto end
:warpAld
do sl 27 $evalx $evaley
pause 1
do warp alde_gld
stop
:warpSq
do sl 27 $evalx $evaly
pause 1
do warp prt_gld
stop
:warpGef
do sl 27 $evalx $evaly
pause 1
do warp gef_fild13
stop
:warpHl
do sl 27 $evalx $evaly
pause 1
do warp pay_gld
stop
:asum
do sp 361 $i 5
stop
:agi
do sp 29 $i 10
stop
:bless
do sp 34 $i 10
stop
:agiBless
do sp 34 $i 10
pause 1
do sp 29 $i 10
stop
:heal
do sp 28 $i 10
pause 0.5
do sp 28 $i 10
pause 0.5
do sp 28 $i 10
pause 0.5
do sp 28 $i 10
stop
:santuary
do sp 70 $i 7
stop
:end
log $msg
stop
}


Untuk yang lain harap anda mengedit nya sendiri.

Setting For Auto-Trade

Most people use Auto-Trade to buy some items they need or want in short time..

1. Make a notepad named autotrade.pl and copy paste this and then put it in plugins folder :

  package autoTrade;
  #ported from messykorexp by Joseph
  #original code by systeman

  use strict;
  use Plugins;
  use Globals;
  use Log qw(message warning error debug);
  use AI;
  use Misc;
  use Network::Send;
  use Utils;

  Plugins::register('autoTrade', 'automated chat room dealing', \&Unload);
  my $hook1 = Plugins::addHook('AI_pre', \&call);
  my $hook2 = Plugins::addHook('parseMsg/pre', \&packet);

  # load table file
  our %trade_lut;
  my $file = "autotrade.txt";
  #my $cfID = Settings::addConfigFile($file, \%trade_lut, \&FileParsers::parseDataFile_lc);
  my $cfID = Settings::addControlFile($file, loader => [\&FileParsers::parseDataFile_lc, \%trade_lut]);
  #Settings::load($cfID);
  undef $file;

  sub Unload {
  Plugins::delHook('AI_pre', $hook1);
  Plugins::delHook('parseMsg/pre', $hook2);
  Settings::removeFile($cfID);
  }

  my $dealTrade;
  my $dealFinalize;
  my $tradeDealAddItem;
  my $itemAddTimeout;

  # TIMEOUTS: you can change these if you want

  # time to wait for them to add items before cancelling?
  my $itemWaitTime = 20;
  # time to wait before accepting deal request?
  my $dealAcceptTime = 2;
  # time to wait before adding zeny once they finalize their item choices?
  my $zenyAddDelay = 3;

  sub packet {
  my $hookName = shift;
  my $args = shift;
  my $switch = $args->{switch};
  my $msg = $args->{msg};

  if ($switch eq "00E9?") {
  my $amount = unpack("L1?", substr($msg, 2,4));
  my $ID = unpack("S1?", substr($msg, 6,2));
  if ($ID > 0) {
  # they added an item, so reset the timeout
  $tradeDealAddItem = 1;
  }
  }
  if ($switch eq "01F4?") {
  #deal request, wait before accepting
  $itemAddTimeout = time;
  }
  if ($switch eq "00E5?" || $switch eq "01F4?") {
  #deal request, wait before accepting
  $itemAddTimeout = time;
  }
  if ($switch eq "00EC") {
  my $type = unpack("C1?", substr($msg, 2, 1));
  if ($type == 1) {
  #they finalize their item selections
  $itemAddTimeout = time;
  }
  }
  }

  sub call {
  AUTOTRADE: {
  if (AI::is("","tradeAuto", "deal") && $config{tradeAuto} && $char->{skills}{NV_BASIC}{lv} > 4) {
  if (AI::action ne "tradeAuto" && AI::action ne "deal" && $::currentChatRoom ne "") {
  message "Begin auto-trade mode.\n", "autoTrade";
  if ($config{dealAuto}) {
  $config{dealAuto} = 0;
  Misc::configModify("dealAuto", $config{dealAuto});
  }
  AI::queue("tradeAuto");
  }

  last AUTOTRADE if !AI::is("tradeAuto","deal");

  if (Utils::timeOut($itemAddTimeout,$dealAcceptTime) && $::incomingDeal{name} && !$::currentDeal{name}) {
  $messageSender->sendDealAccept();
  undef $dealFinalize;
  undef $dealTrade;
  $itemAddTimeout = time;
  message "Sent deal accept, begin trading\n", "autoTrade";
  }
  last AUTOTRADE if (!$::currentDeal{name});
  if (!Utils::timeOut($itemAddTimeout,$itemWaitTime) && $tradeDealAddItem) {
  $itemAddTimeout = time;
  undef $tradeDealAddItem;
  }
  if (($::currentDeal{other_finalize} && Utils::timeOut($itemAddTimeout,$zenyAddDelay)) || Utils::timeOut($itemAddTimeout,$itemWaitTime)) {
  if ($::currentDeal{other} eq ()) {
  message "Other person didn’t add any items, cancelling…\n", "autoTrade";
  $messageSender->sendCurrentDealCancel();
  $itemAddTimeout = time;
  } elsif (!$dealFinalize) {
  my $sumvalue;

  my @currentDealOther;
  foreach (keys %{$::currentDeal{other}}) {
  push @currentDealOther, $_;
  }
  my $max = @currentDealOther;
  for (my $i = 0;$i < $max;$i++) {   my $found = 0;   my $ID = $currentDealOther[$i];   my $name = lc main::itemName($::currentDeal{other}{$ID});   if (defined $trade_lut{$name}) {   message "Add ".$trade_lut{$name}."z x $::currentDeal{other}{$ID}{amount} to deal\n", "autoTrade";   $sumvalue += ($::currentDeal{other}{$ID}{amount} * $trade_lut{$name});   } else {   message "Other person added item which is not in buy list, cancelling…\n", "autoTrade";   $messageSender->sendCurrentDealCancel();
  last AUTOTRADE;
  }
  }
  message "Trading $sumvalue zeny and confirming\n", "autoTrade";
  $messageSender->sendDealAddItem(0, $sumvalue);
  sleep(0.5);
  $messageSender->sendDealFinalize();
  $dealFinalize = 1;
  $itemAddTimeout = time;
  }

  }
  if ($::currentDeal{you_finalize} && Utils::timeOut($itemAddTimeout,$itemWaitTime)) {
  message "Other person didn’t accept the final trade, cancelling…\n", "autoTrade";
  $messageSender->sendCurrentDealCancel();
  $itemAddTimeout = time;
  }
  if (!$dealTrade && $::currentDeal{you_finalize} && $::currentDeal{other_finalize}) {
  message "Accepting final trade\n", "autoTrade";
  $messageSender->sendDealTrade();
  $dealTrade = 1;
  }
  }
  }
  }

  return 1;

2.  open your config.txt and put tradeAuto to 1 and deal auto to 0, so it'll looked like :

dealAuto 0
tradeAuto 1
dealAuto_names
partyAuto 1
partyAutoShare 1
guildAutoDeny 1

3. create another notepad in your controls folder named autotrade.txt , for example :

# [item name] [price]

Crunch Toast 2500000

2. Open your control folder and Put These into your macros.txt :

automacro openchatroom {
map payon
run-once 1
delay 10
call openchat
}

macro openchat {
do chat create "B: Crunch Toast 2,5 million" 2 0 1111
}

Note : its work properly and very well.. i tried it already in OK 2.0.6 , oh yeah almost forgot. . make sure all your notepads save as all files...



Macro For Training Ground

Macro ini digunakan untuk bot di tempat pelatihan novice atau training ground keren na.. ^_^

Di config.txt

lockMap new_1-3 ( ganti dengan yang lain bila ingin ditempat yang lbh gmpg/susah )
lockMap_x
lockMap_y
lockMap_randX
lockMap_randY

Di portals.txt

masukkan list berikut :

new_1-1 148 112 new_1-2 100 9
new_1-2 100 6 new_1-1 148 112
new_2-1 148 112 new_2-2 100 9
new_2-2 38 182 new_1-3 96 21 0 r0
new_2-2 38 182 new_2-3 96 21 0 r0
new_2-2 38 182 new_3-3 96 21 0 r0
new_2-2 38 182 new_4-3 96 21 0 r0
new_2-2 38 182 new_5-3 96 21 0 r0
new_2-2 100 6 new_2-1 148 112
new_3-1 148 112 new_3-2 100 9
new_3-2 38 182 new_1-3 96 21 0 r0
new_3-2 38 182 new_2-3 96 21 0 r0
new_3-2 38 182 new_3-3 96 21 0 r0
new_3-2 38 182 new_4-3 96 21 0 r0
new_3-2 38 182 new_5-3 96 21 0 r0
new_3-2 100 6 new_3-1 148 112
new_4-1 148 112 new_4-2 100 9
new_4-2 38 182 new_1-3 96 21 0 r0
new_4-2 38 182 new_2-3 96 21 0 r0
new_4-2 38 182 new_3-3 96 21 0 r0
new_4-2 38 182 new_4-3 96 21 0 r0
new_4-2 38 182 new_5-3 96 21 0 r0
new_4-2 100 6 new_4-1 148 112
new_4-2 46 172 new_4-2 73 106
new_4-2 73 106 new_4-2 41 172
new_5-1 148 112 new_5-2 100 9
new_5-2 38 182 new_1-3 96 21 0 r0
new_5-2 38 182 new_2-3 96 21 0 r0
new_5-2 38 182 new_3-3 96 21 0 r0
new_5-2 38 182 new_4-3 96 21 0 r0
new_5-2 38 182 new_5-3 96 21 0 r0
new_5-2 100 6 new_5-1 148 112
new_1-2 38 182 new_1-3 96 21 c c r0
new_1-2 38 182 new_2-3 96 21 c c r0
new_1-2 38 182 new_3-3 96 21 c c r0
new_1-2 38 182 new_4-3 96 21 c c r0
new_1-2 38 182 new_5-3 96 21 c c r0

Di macros.txt

masukkan macros berikut :

automacro satu {
location new_1-3
run-once 1
call newSatu
}

macro newSatu {
do conf lockMap new_1-3
stop
release satu
}

automacro dua {
location new_2-3
run-once 1
call newDua
}

macro newDua {
do conf lockMap new_2-3
stop
release dua
}

automacro tiga {
location new_3-3
run-once 1
call newTiga
}

macro newTiga {
do conf lockMap new_3-3
stop
release tiga
}

automacro empat {
location new_4-3
run-once 1
call newEmpat
}

macro newEmpat {
do conf lockMap new_4-3
stop
release empat
}

automacro lima {
location new_5-3
run-once 1
call newLima
}

macro newLima {
do conf lockMap new_5-3
stop
release lima
}

sebelum itu taro char anda di tempat hunt misal nya new_4-3 ,

kemudian jalankan program bot anda dan ketik reload macros maka char anda akan masuk ke lockmap yang telah ditentukan yaitu seperti diatas new_1-3, 

Silakan Menikmati ^_^

Sunday, April 12, 2009

Xmas Portal Fixed !!

To everyone who cant access or cant talk to "Npc Santa" in Aldebaran..

plz change the Portal in Tables folder...

Just make a little change..

Edit your portal from


aldebaran 223 222 xmas_fild01 78 68 0 c r1 c c n

to


aldebaran 168 168 xmas_fild01 78 68 0 c r1 c c n

it'll work properly.. if you not change it then your char cant find it..

Enj0y..

Saturday, April 11, 2009

Auto Paket

Ini macro apabila ada player yang meminta paket maka secara otomatis si bot akan memberikan paket agi dan bless kepada si player tersebut...

automacro paket{

pubm /paket/
call paket1
}
macro paket1{
do sp 34 $.lastpub
pause 2
do sp 29 $.lastpub
}

Thx : ~RefLeX!o~ ( FnC Server )

Auto Heal

Ini macro untuk priest, jadi apabila ada org yang minta heal , otomatis si bot akan memberikan heal kepada player tersebut

automacro mintaheal{

pubm /heal/
call giveheal}
 
macro giveheal {
pause 1
do sp 28 $.lastpub
pause 1
do sp 28 $.lastpub
}

Thx : ~RefLeX!o~ ( FnC Server )

Friday, April 10, 2009

Bot Gandeng ??

Gk bisa nyari priest buat temen hunt ?? Mw pake priest sndiri buat temenin hunt ?? Nah Bot Gandeng adalah solusi yang tepat untuk teman-teman RO..

Config Priest Gandeng..

# Please Read the Users Manual
# The Manual is located at http://openkore.sourceforge.net/manual/

# Please Read the Users Manual# The Manual is located at http://openkore.sourceforge.net/manual/

######## Login options and server-specific options ########

master Indonesia - idRO: Sakray
server 0
username
password
loginPinCode
char 0
sex 0

bindIp
# For an overview of all servertypes please go to the following URL:
# http://www.openkore.com/wiki/index.php/ServerType#English
serverType 21

# 1 = hook into RO client, 2 = Act as stand-alone proxy, proxy = act as true proxy
XKore 0
XKore_silent 1
XKore_bypassBotDetection 0
XKore_exeName ragexe.exe

# XKore 2 / Proxy configuration
XKore_listenIp 127.0.0.1
XKore_listenPort 6901
XKore_publicIp 127.0.0.1

# It is not advised to set secureAdminPassword if you're using Xkore 2
secureAdminPassword 0
adminPassword
callSign
commandPrefix ;

pauseCharServer 0
pauseMapServer 0
ignoreInvalidLogin 0
secureLogin_requestCode

message_length_max 80

######## Main configuration ########

alias_heal sp 28

allowedMaps
allowedMaps_reaction 1

attackAuto 2
attackAuto_party 1
attackAuto_onlyWhenSafe 0
attackAuto_followTarget 1
attackAuto_inLockOnly 1
attackDistance 3.5
attackDistanceAuto 0
attackMaxDistance 5
attackMaxRouteDistance 100
attackMaxRouteTime 4
attackMinPlayerDistance 2
attackMinPortalDistance 4
attackUseWeapon 0
attackNoGiveup 0
attackCanSnipe 0
attackCheckLOS
attackLooters 0
attackChangeTarget 1
aggressiveAntiKS 0

autoMoveOnDeath 0
autoMoveOnDeath_x
autoMoveOnDeath_y
autoMoveOnDeath_map

attackEquip_topHead
attackEquip_midHead
attackEquip_lowHead
attackEquip_leftHand
attackEquip_rightHand
attackEquip_leftAccessory
attackEquip_rightAccessory
attackEquip_robe
attackEquip_armor
attackEquip_shoes
attackEquip_arrow

autoBreakTime {
 startTime 
 stopTime
}

autoConfChange {
 minTime
 varTime
 lvl
 joblvl
}

autoMakeArrows 0

autoRestart 0

autoRestartMin 10800
autoRestartSeed 3600

autoRestartSleep 1
autoSleepMin 900
autoSleepSeed 900

autoResponse 0

autoSpell

avoidGM_near 0
avoidGM_near_inTown 0
avoidGM_talk 0
avoidGM_reconnect 1800
avoidGM_ignoreList

avoidList 1
avoidList_inLockOnly 0
avoidList_reconnect 1800

cachePlayerNames 1
cachePlayerNames_duration 900
cachePlayerNames_maxSize 100

clientSight 20

dcOnDeath 0
dcOnDualLogin 300
dcOnDisconnect 0
dcOnEmptyArrow 0
dcOnMaxReconnections 0
dcOnMute 0
dcOnPM 0
dcOnZeny 0
dcOnStorageFull 1
dcOnPlayer 0

follow 1
followTarget --- nama yg diikuti
followEmotion 1
followEmotion_distance 4
followFaceDirection 0
followDistanceMax 12 --- jarak maximal
followDistanceMin  6 --- jarak minimal
followLostStep 12 --- jarak kehilangan master
followSitAuto 1
followBot 1

itemsTakeAuto 0
itemsTakeAuto_party 0
itemsGatherAuto 0
itemsMaxWeight 49
itemsMaxWeight_sellOrStore 48
itemsMaxNum_sellOrStore 99
cartMaxWeight 7900
itemsTakeAuto_new 0
   

lockMap 
lockMap_x
lockMap_y
lockMap_randX
lockMap_randY

route_escape_reachedNoPortal 1
route_escape_randomWalk 1
route_escape_shout
route_randomWalk 1
route_randomWalk_inTown 0
route_randomWalk_maxRouteTime 75
route_maxWarpFee
route_maxNpcTries 5
route_teleport 0
route_teleport_minDistance 150
route_teleport_maxTries 8
route_teleport_notInMaps
route_step 15

runFromTarget 0
runFromTarget_dist 6

saveMap Payon
saveMap_warpToBuyOrSell 0
saveMap_warpChatCommand

shopAuto_open 0
shop_random 0

sitAuto_hp_lower 20
sitAuto_hp_upper 40
sitAuto_sp_lower 20
sitAuto_sp_upper 40
sitAuto_over_50 0
sitAuto_idle 1
sitAuto_look
sitAuto_look_from_wall

statsAddAuto 0
statsAddAuto_list
statsAddAuto_dontUseBonus 0
statsAdd_over_99 0

skillsAddAuto 0
skillsAddAuto_list

tankMode 0
tankModeTarget

teleportAuto_hp 0
teleportAuto_sp 0
teleportAuto_idle 0
teleportAuto_portal 0
teleportAuto_search 0
teleportAuto_minAggressives 0
teleportAuto_minAggressivesInLock 0
teleportAuto_onlyWhenSafe 0
teleportAuto_maxDmg 0
teleportAuto_maxDmgInLock 0
teleportAuto_deadly 1
teleportAuto_useSkill 3
teleportAuto_useChatCommand
teleportAuto_allPlayers 0
teleportAuto_atkCount 0
teleportAuto_atkMiss 10
teleportAuto_unstuck 0
teleportAuto_dropTarget 0
teleportAuto_dropTargetKS 0
teleportAuto_attackedWhenSitting 0
teleportAuto_totalDmg 0
teleportAuto_totalDmgInLock 0
teleportAuto_equip_leftAccessory
teleportAuto_equip_rightAccessory
teleportAuto_lostHomunculus
teleportAuto_useItemForRespawn

dealAuto 1
dealAuto_names
partyAuto 1
partyAutoShare 1
guildAutoDeny 1

verbose 1
showDomain 0
squelchDomains
verboseDomains
beepDomains
beepDomains_notInTown

logChat 0
logPrivateChat 1
logPartyChat 1
logGuildChat 1
logSystemChat 1
logEmoticons
logConsole 0
logAppendUsername 1

chatTitleOversize 0
shopTitleOversize 0

sleepTime 50000

ignoreAll 0
itemHistory 0
autoTalkCont 1
noAutoSkill 0
portalRecord 2
missDamage 0

tankersList

removeActorWithDistance

######## Block options ########
# You can copy & paste any block multiple times. So if you want to
# configure two attack skills, just duplicate the attackSkillSlot block.

attackSkillSlot Lex Aeterna {
lvl 10
dist 5
maxCastTime 0
minCastTime 0
hp
sp > 10
homunculus_hp
homunculus_sp
homunculus_dead
onAction
whenStatusActive
whenStatusInactive
whenFollowing
spirit
aggressives
previousDamage
stopWhenHit 0
inLockOnly 0
notInTown 0
timeout 0
disabled 0
monsters Les, Wood Goblin, Geographer
notMonsters
maxAttempts 0
maxUses 0
target_whenStatusActive
target_whenStatusInactive
target_deltaHp
inInventory
isSelfSkill 0
equip_topHead
equip_midHead
equip_lowHead
equip_leftHand
equip_rightHand
equip_leftAccessory
equip_rightAccessory
equip_robe
equip_armor
equip_shoes
equip_arrow
manualAI 0
}

useSelf_skill Heal {
 lvl 10
 hp < 70%
 sp > 10%
}

useSelf_skill Increase AGI {
 lvl 10
 whenStatusInactive Increase AGI
 sp > 10%
 timeout 5
}

useSelf_skill Blessing {
 lvl 10
 whenStatusInactive Blessing
 sp > 10%
 timeout 5
}

useSelf_skill Angelus {
  lvl 7
  whenStatusInactive Angelus
  sp > 10%
  timeout 5
}

useSelf_skill Kyrie Eleison {
  lvl 5
  sp > 45
  stopWhenHit 1
  notWhileSitting 1
  notInTown 1
  timeout 5
  whenStatusInactive Kyrie Eleison
}

useSelf_skill Magnificat {
  lvl 3
  sp > 45
  stopWhenHit 1
  notWhileSitting 1
  notInTown 1
  timeout 5
  whenStatusInactive Magnificat
}

useSelf_skill Gloria {
  lvl 1
  sp > 25
  whenStatusInactive Gloria
  timeout 28
}

useSelf_skill Ruwach {
 lvl 1
 whenStatusInactive Ruwach
 sp > 10%
 timeout 5
}

useSelf_skill_smartHeal 1

partySkill Magnificat {
  lvl 3
  sp
  stopWhenHit 1
  timeout 10
  whenStatusInactive Magnificat
  partyAggressives < 1
  isSelfSkill 1
}

partySkill Resurrection {
  lvl 4
  target_dead 1
}

partySkill Impositio Manus {
  lvl 3
  sp > 25
  notInTown 1
  timeout 3
  disabled 0
  target_whenStatusInactive Impositio Manus
  target_timeout 60
}

partySkill Heal {
  lvl 10
  target_hp < 60%
  sp > 10 %
}

partySkill Blessing {
  lvl 10
  sp > 64
  notInTown 1
  timeout 3
  target_whenStatusInactive Blessing
  target_timeout 240
}

partySkill Kyrie Eleison {
  lvl 10
  sp > 50
  notInTown 1
  timeout 3
  target_whenStatusInactive Kyrie Eleison
  target_timeout 240
}

partySkill Increase AGI {
  lvl 10
  sp > 45
  notInTown 0
  timeout 3
  target_whenStatusInactive Increase AGI
  target_timeout 240
}

partySkill Angelus {
  lvl 7
  sp > 45
  notInTown 1
  timeout 3
  target_whenStatusInactive Angelus
  target_timeout 240
  isSelfSkill 1
}

partySkill Cure {
  lvl 1
  target_whenStatusActive Cursed, Blinded, Chaos, Silenced
  sp > 10%
  timeout 5
}

partySkill Status Recovery {
  lvl 1
  sp > 25
  timeout 2
  target_whenStatusActive Frozen, Stone Curse, Stun
}

autoSwitch_default_rightHand
autoSwitch_default_leftHand
autoSwitch_default_arrow

# NOTE: In the case of two handed weapons, or no Shield,
# duplicate the weapon name for 'rightHand'
# To attack with bare hands, specify "[NONE]" (without the quotes) for rightHand

autoSwitch {
 rightHand
 leftHand
 arrow
 distance
 useWeapon
}

useSelf_item Novice Potion {
 hp <= 50
 sp
 homunculus_hp
 homunculus_sp
 homunculus_dead
 onAction
 whenStatusActive
 whenStatusInactive
 whenFollowing
 spirit
 aggressives
 monsters
 notMonsters
 stopWhenHit 0
 inLockOnly 0
 notWhileSitting 0
 notInTown 0
 timeout
 disabled 0
 inInventory
 manualAI 0
}

######## Autostorage/autosell ########

buyAuto {
 npc
 standpoint
 distance 5
 minAmount 2
 maxAmount 3
}

sellAuto 0
sellAuto_npc
sellAuto_standpoint
sellAuto_distance 5

storageAuto 0
storageAuto_npc
storageAuto_distance 5
storageAuto_npc_type 1
storageAuto_npc_steps
storageAuto_password
storageAuto_keepOpen 0
storageAuto_useChatCommand
relogAfterStorage 1
minStorageZeny 50

npcTimeResponse

getAuto  {
 minAmount 0
 maxAmount 350
 passive 0
}

######## Debugging options; only useful for developers ########

debug 0
debugPacket_unparsed 0
debugPacket_received 0
debugPacket_ro_sent 0
debugPacket_sent 0
debugPacket_exclude
debugPacket_include
debugPacket_include_dumpMethod
debugDomains
storageEncryptKey 0x050B6F79, 0x0202C179, 0x00E20120, 0x04FA43E3, 0x0179B6C8, 0x05973DF2, 0x007D8D6B, 0x08CB9ED9
gameGuard 1
serverEncoding Western

macro_nowarn 1
macro_orphans terminate
macro_debug none
macro_readmanual red/chili


Note : 

- tidak memakai lex aeterna ( di mon_Control.txt harus diganti menjadi )

all 0 0 0

- memakai lex aeterna ( di mon_control.txt harus diganti menjadi )

all 0 0 0

Nama monster 2 0 1 --->>> nama monster yang terkena skill lex aeterna saja

- untuk skill priest na bisa di edit" sndiri... hehehe

Sekian...

Thursday, April 9, 2009

To : .::Yakuza::. ( FnC Server )

Thx bgt ya kk .::Yakuza::. alias kk agam.. buat :

Rod[4]

Buckler[1]

Shoes[1]

and sejumlah zeny yang udah dkasih ke aq buat modal hunt n bli BD ^^

hehehe

thx bgt..

To : maydy ( FnC Server )

Thanks banget ke maydy yang udah kasih gw "Beret" secara cuma"..

hehe

sekali lage.. 

Thx bgt..

Wednesday, April 8, 2009

My Experience When Change Job..

gw disini cuman mw share tentang perasaan gw n pengalaman gw pas mw merubah aco gw jd monk.. hehehe... dikit doank kog crita nya..

setelah 1 minggu bot di Muka teruz.. akhir nya gw mencapai lv 68 dan Job 50.. wah pasti pd gk bs ngebayangin ya.. betapa lama na hunt disana.. ya maklum larr, org equip keg sampah gt.. hahahah

Pas pertama" sih semangat waktu jalan ke tempat Monk, tp jalan nya jauh banget .. dari pront kiri truz ke warp paling atas , ke warp paling atas lagi , warp paling atas lagi.. baru nyampe tempet monk..

pertama ngomong sm NPC yang ad didepen teruz disuruh ke Moohae yang ad di tempet paling kanan bawah.. sampe disana malah disuruh cari item.. jadi balik lagi ke tempat asal mw gk mw.. buat cari item Tooth of Bat 10 , Bear Footskin's 5 , Poison Spore 20.. nah itu dah abizin sekitar 60k kalo boleh dibilang.. /sob"

bis dah ktemu balik lagi.. GRRR dalam hati gw.. nih test bener" ngelatih kesabaran bgt yachh..

/e1 nah setelah itu gw ke tmpt Moohae lage.. setelah dikasih barang nya dia suruh gw ke arah utara.. deket tempet kuburan para monk gt dech kalo gk salah.. nah test yang ini sih gk gt sulit ya,.. soal na cuman lafalin yang dia bilang aj.. jd gampang.. klo mw pake cara goblok yua pake Print Screen ato tulis tangan gt.. wkwkwkwk

setelah itu gw disuruh ke NPC Monk yang ad deket kiri bawah kalo gk slh inget.. /hmm disuruh pilih mw Q apa.. setelah gw pilih Marathon.. nah gw bingung sndiri harus ke mana.. soal na kn gtw yg mana kuil nya.. mana tempet na gt gede lage.. jd tmpt nyut" pala gw.. Grrr.. sampe gw ngomong ke NPC itu berapa kale tw..

abiz itu gw ke dkt tmpt Moohae berada.. dkt sana ternyata ad 1 warp lg dkt sblh kiri nya.. ya msk aj.. eh ternyata bnr.. dasar ksh tw na gk jelas bgt tuh NPC.. /e5 biz masuk kan pilih Q Marathon 10 Lap.. nah gw jalananin ajah.. eh baru lap pertama dah jatoh ke jurang.... /sob" nah tanpa mikir lage gw lanjut ajah lage.. tapi di lap ke 4 gw jatoh lage.. kan harus ulang lage dari awal,, ywdah dech.. say bye" to Marathon.. biz itu gw ambil Q jamur.. eh bingung gw.. kog map na ilank gt.. gtw nya dah mule.. yawda gw batalin ajah.. truz gw balek ke kota buat bli Mushroom nya itu.. total harga nya sekitar 250k kalo gk slh.. /sob".. dah miskin kan.. tmb miskin lagi...

setelah itu.. gw balek ke tmpt NPC yang buat Q jamur itu lage.. setelah lulus gw dsuruh ke tmpt Tomato ya ato apa lah itu.. /heh ... disana ternyata ada Q lage.. nah biz itu dia warp gw ke 1 tmpt buat Quest lage.. buat cari warp yang laen.. tmpt na keg labirin.. cuman gk gt keliatan jd rada sulit gt deng.. truz ad zombie na lg.. bikin kaget aj gt.. /wah... untung slamat sampe tujuan setelah coba kesana sini... hehe..

bis itu balek ke Tomato itu la.. biz ngomong diksh green potion..

nah ke tmpt Moohae lage buat brubah.. tp sblm itu hrs minum green potion na dl.. biar peredaran nya bisa sm keg MONK.. haha.. lucu bgt ya.. kita ajah gk bs liad.. tp ad peredaran nya... wkwkkw... ngakak abiz gt.. setelah itu.. ijab kabul MONK.. hehe.. alias SUMPAH MATI wat jd monk... dan ditny" beberapa pertanyaan gampang gt dech..

setelah itu.. gw jd MONK..MONK..MONK... oh iy gw jd diksh Knuckle Brase [2] sm Moohae /gg

dah itu aj kog pengalaman gw.. sry bgt ya kalo ancur karangan nya.. emank gk bs ngarang seh gw.. =p

Hunting For Ninja

Ini adalah tips dan tricks buat para pemain RO yang mw ninja na cpt" lv 70 ato lebih.. "WOW"..

gmn cara nya ???

1-19 - Bot di tempat training di tmpt Drops , dkk berada..

20 - 40 - Hunt di Muka pake Bodyguard.. Minimal harus ad 100k .. alias buat 4 jem ato lbh..

41 - 70 - hunt di Geo.. (Element Api) dan khusus Metaling  pake element es aj..

71 - 99 - bisa di coba di Moskov ato tmpt laen na

Note :

- Int harus gede kalo mw hunt di sana.. dan equip dah harus mencukupi kalo mw lebih mantep.. /gg

- 20 - 40 pake bodyguard lv1 aj yang hrg nya 10k buat 30 menit.. ^^

- 41 - 99 gk pake Bodyguard Lagi...

Moga" catatan yang pendek ini bisa berguna dech buat temen-temen yang maen RO ^^

Skill Acolyte - Priest ( ME Type )

Nah skill ini dibuat untuk support serta bisa kill undead dengan ME alias Magnus Exorcismus

dari aco job 50 hingga Priest job 50 ^^ 

Acolyte - Job 50

Divine Protection - 5

Ruwach - 1

Warp - 4

Pneuma - 1

Heal - 10

Increase Agi - 10

Blessing - 10

Aqua Benedicta - 1

Angelus - 7

Priest ME - Job 50

Increase SP Recovery - 4

Impositio Magnus - 3

Suffragium - 3

Aspersio - 4

Sanctuary - 3

Status Recovery - 1

Ressurection - 1

Safety Wall - 3

Kyrie Eleison - 4

Magnificat  - 3

Gloria - 1

Lex Divina - 5

Turn Undead - 3

Lex Aeterna - 1

Magnus Exorcismus - 10

Note Buat Priest : Only For ME Type.. ^^

Tuesday, April 7, 2009

Skill Mage - Wizard

I'll share my skill list for mage job 50 to wizard job 50 right now.. i hope this one will be useful to everyone ^^

Mage - 50

Sight - 1

Cold Bolt - 10

Frost Driver - 4

Lightening Bolt - 10

FIre Bolt - 10

Fire Ball - 5

Fire Wall - 4

THunder Storm - 3

Napalm Beat - 1

Stone Curse - 1

Wizard - 50

Sense - 1

Sightrasher - 2

Frost Nova - 1

Meteor Storm - 10

Lord of Vermilion - 10

Storm Gust - 10

Jupiter Thunder - 10

Ice Wall - 4

Water Ball - 1

Note For Wizard - if you dont want to take the "Water Ball" then put the poin in "Fire Pillar"

also the same for "Frost Nova" if you dont want it then put the poin to "Fire Pillar"

and change the "Ice Wall" to 3 so you can get "Fire Pillar" for 3 either..

Thx..