suiris
Sorceror
Decided to make this macro for anyone trying to get some Moonglow zoo rewards. Taming by hand is very tedious and boring.
The macro uses one runebook and magery, your first rune should be for the Zoo and it should be close enough to transfer the mob without moving. Fill the rest of runebook with runes for the place where you wish to tame (e.g. wolves, unicorns) You can have the runes more spread, the macro checks your entire screen for the mobile and goes to it.
It is currently configured to tame Unicorns. If your tame/lore is lower than 110 i suggest to tame polar bears, it might be quicker as you will fail a lot with the unicorns.
Also it really helps a lot to have MR and LMC.
WARNING: Do not use unattended!! It is against the shard rules!!
Also the macro is not foolproof, it won't heal or protect you in any way (this is done on purpose).
The macro uses one runebook and magery, your first rune should be for the Zoo and it should be close enough to transfer the mob without moving. Fill the rest of runebook with runes for the place where you wish to tame (e.g. wolves, unicorns) You can have the runes more spread, the macro checks your entire screen for the mobile and goes to it.
It is currently configured to tame Unicorns. If your tame/lore is lower than 110 i suggest to tame polar bears, it might be quicker as you will fail a lot with the unicorns.
Also it really helps a lot to have MR and LMC.
Code:
if not @findobject 'tamebook'
promptalias 'tamebook'
endif
if not listexists 'NameTheTamed'
createlist 'NameTheTamed'
pushlist 'NameTheTamed' 'k'
endif
if not listexists 'tameables'
createlist 'tameables'
pushlist 'tameables' 0x22 //White Wolf change to 0 in taming part
pushlist 'tameables' 0x25 //White Wolf2 change to 1 in taming part
pushlist 'tameables' 0xd5 //Polar Bear change to 2 in taming part
pushlist 'tameables' 0x7a //Unicorn change to 3 in taming part
pushlist 'tameables' 0x84 //Ki-rin change to 4 in taming part
endif
if not listexists 'runes'
createlist 'runes'
pushlist 'runes' 11
pushlist 'runes' 17
pushlist 'runes' 23
pushlist 'runes' 29
pushlist 'runes' 35
pushlist 'runes' 41
pushlist 'runes' 47
pushlist 'runes' 53
pushlist 'runes' 59
pushlist 'runes' 65
pushlist 'runes' 71
pushlist 'runes' 77
pushlist 'runes' 83
pushlist 'runes' 89
pushlist 'runes' 95
endif
for 0 to 'runes'
@unsetalias 'tobetamed'
useobject 'tamebook'
waitforgump 0x554b87f3 15000
replygump 0x554b87f3 runes[]
pause 5000
//change the number in the brackets below to 0-4 if you wish to tame other animals
if @findtype tameables[3] 'any' 'ground' 1 45
@setalias 'tobetamed' 'found'
headmsg 'Tameable found, going to get it!!' 46
if not @inrange 'tobetamed' 2
while not @inrange 'tobetamed' 2
if @x 'tobetamed' > x 'self' and @y 'tobetamed' > y 'self'
run 'Southeast'
elseif @x 'tobetamed' < x 'self' and @y 'tobetamed' > y 'self'
run 'Southwest'
elseif @x 'tobetamed' > x 'self' and @y 'tobetamed' < y 'self'
run 'Northeast'
elseif @x 'tobetamed' < x 'self' and @y 'tobetamed' < y 'self'
run 'Northwest'
elseif @x 'tobetamed' > x 'self' and @y 'tobetamed' == y 'self'
run 'East'
elseif @x 'tobetamed' < x 'self' and @y 'tobetamed' == y 'self'
run 'West'
elseif @x 'tobetamed' == x 'self' and @y 'tobetamed' > y 'self'
run 'South'
elseif @x 'tobetamed' == x 'self' and @y 'tobetamed' < y 'self'
run 'North'
endif
endwhile
endif
@clearjournal
while name 'tobetamed' != NameTheTamed[0]
autotargetobject 'tobetamed'
useskill 'animal taming'
@rename 'tobetamed' NameTheTamed[0]
pause 1000
if not @inrange 'tobetamed' 1
if @x 'tobetamed' > x 'self' and @y 'tobetamed' > y 'self'
run 'Southeast'
elseif @x 'tobetamed' < x 'self' and @y 'tobetamed' > y 'self'
run 'Southwest'
elseif @x 'tobetamed' > x 'self' and @y 'tobetamed' < y 'self'
run 'Northeast'
elseif @x 'tobetamed' < x 'self' and @y 'tobetamed' < y 'self'
run 'Northwest'
elseif @x 'tobetamed' > x 'self' and @y 'tobetamed' == y 'self'
run 'East'
elseif @x 'tobetamed' < x 'self' and @y 'tobetamed' == y 'self'
run 'West'
elseif @x 'tobetamed' == x 'self' and @y 'tobetamed' > y 'self'
run 'South'
elseif @x 'tobetamed' == x 'self' and @y 'tobetamed' < y 'self'
run 'North'
endif
endif
endwhile
@clearjournal
while not @injournal 'Moongate opened' 'system'
@clearjournal
useobject 'tamebook'
waitforgump 0x554b87f3 15000
replygump 0x554b87f3 6
waitforjournal 'The spell fizzles.' 3000
pause 1000
endwhile
//Gate to the zoo:
if @findtype 0xf6c 'any' 'ground' 1 2
useobject! 'found'
if @inregion 'guards'
waitforgump 3716879466 2000
replygump 3716879466 1
endif
else
sysmsg 'Moongate not found, come closer.' 24
endif
pause 2000
// Donate it to the zoo:
msg 'k transfer'
waitfortarget 5000
target! 0x40001ba1
waitforgump 0xdf8173e0 5000
replygump 0xdf8173e0 2
pause 2500
endif
endfor
WARNING: Do not use unattended!! It is against the shard rules!!
Also the macro is not foolproof, it won't heal or protect you in any way (this is done on purpose).
Last edited: