Сам скрипт:
Code: Select all
####################################################
#
# Авто ресалка.
#
# !!!FAQ!!!
# ВАЖНО!!! В скрипте добывающего чара надо ставить 10 секунд на произнесение слова т.к. этот бот не сможет
# тогда уходить в хайд.
#
# Описание скрипта.
# - Скрипт на авто рес своего бота добывателя ресурсов.
# - Принцип работы: Мониторит чат на произношение буквы O (англ. язык), если слышит, ресает указаного
# персонажа,
# если персонаж ненайден, или же живой, ничего страшного... просто уйдёт после в хайд и опять будет мониторить.
# - Авто добор реагентов для реса. Если меньше 10 регов, добирает из указаного сундука.
# - Тот кого будем ресать, должен быть в war моде для его видимости.
#
# Автор скрипта: Yadziro
####################################################
var Pers = '0x00001271' # id перса которого будем ресать.
var Box = '0x40115375' # id сундука откуда брать реагенты для каста.
var BM = '0x0F7B' # type реагента BM.
var GR = '0x0F84' # type реагента GR.
var GS = '0x0F85' # type реагента GS.
sub main()
uo.useskill("Hiding") # юзаем хайд сразу при запуске скрипта.
wait(500)
if uo.count(BM) < 10 then # сразу проверяем сколько регов BM.
dobor()
end if
wait(200)
uo.exec('exec res')
end sub
sub res()
wait(5000) # для перезапуска мониторинга ждём 5 секунд.
if uo.injournal('O') then # буква O по которой ресаем т.к. мёртвые говорят для живых OooOOoO.
uo.cast("Resurrection")
wait(500)
uo.waittargetobject(Pers)
wait(5000) # есть 5 секунд на каст.
uo.useskill("Hiding") # юзаем хайд, чтобы не стоять и не палиться.
uo.deletejournal()
end if
if uo.count(BM) < 10 then # проверяем сколько регов BM.
dobor()
end if
uo.exec('exec res')
end sub
sub dobor() # добор реагентов.
var Mes='Contains'
var Tim
uo.deletejournal()
wait(1000)
if uo.count(BM) < 20 then # Если регов в паке меньше 10, добираем 20 штук BM.
Wait(200)
uo.findtype(BM,'-20',Box)
UO.grab('20','finditem')
Wait(1500)
end if
if uo.count(GR) < 20 then # Если регов в паке меньше 10, добираем 20 штук GR.
Wait(200)
uo.findtype(GR,'-20',Box)
UO.grab('20','finditem')
Wait(1500)
end if
if uo.count(GS) < 20 then # Если регов в паке меньше 10, добираем 20 штук GS.
Wait(200)
uo.findtype(GS,'-20',Box)
UO.grab('20','finditem')
Wait(1500)
end if
end sub
Вот собственно... может кому пригодится.
Не плохо было бы доработать хайд, на проверку ухода... Тогда было бы проще. Я не стал возиться с этим т.к. у меня хайд 100 и уходит всегда.

И ещё... было бы вообще супер, если бы кто нибудь доделал проверку на то, кто произносит слово, чтобы бот не отвлекался на посторонние слова от других игроков.
Дело за малым... осталось написать скрипт на мининг с производством кирок + кормление дракона который будет бегать за чаром, для элемов и проверку на наличие дракона у чара)) малоли убьют драка...

ЗЫ, работу скрипта проверил, вроде никаких ошибок не выдает, всё чётко работает)