Page 1 of 1
Убийство мобов на скрипте, реально?
Posted: 2006-04-17 09:18:24
by Sanch
Есть скрипт на убийство элема при мининге, скрипт делает следующее, как только выкапывается элем, чар отбегате на 2 шага вниз (он не отбегает от элема, а возможно даже подегает к нему, тк не известно в каком тайтле его выкопали), съедает инвизку, кастует вортекса не элема, не выходит из инвиза (такой расклад на шарде), и пока не появится труп, проверяет наличие вортекса, если того не находит, кидает еще раз, но инвиз оч не потоянен, например моржет сьесть манку чтобы кинуть второго ворта, выйти из инвиза и умереть, тк инвизку в это время съесть не сможет, так что надежность скрипта оставляет желать лудшего, самая проблема в том что копать то хочется не только шлак,стоимость кирки для выкапывания высших пород сопоставима разве что со стоимостью замка, при мысли о том что ее можно лишиться на скрипте оч дурно становится, вот хочу спросить опытных скриптописателей, реально ли убить сильного моба (а элемы тут реально сильные) с вероятностью в 100% и как?Полиморф не предлогать, тк он на моем шарде г полное и в нем нельзя хелиться, а еще мобы видят тебя в хиде, но не в инвизе, драконов тамить нельзя, найтмара нигде не найдешь, взрывчатка гавно, вызвание демоны полные лохи, парализ филд кастуется только на себя, исчезает быстро, фаер филд слабо жарит, обычный парализ быстро проходит, буквально через 30сек. Зарание благодарю за инфу.
Posted: 2006-04-17 09:59:38
by flake
А если вооружить чара хорошим дивайсом и армором + бинтами и бутылками гх, то сам он не завалит элема?
Re: Убийство мобов на скрипте, реально?
Posted: 2006-04-17 10:02:12
by CFA
у меня в скрипте на лумбер, чары мочат элемов, лутят, хиляться. лупят с катаны. у чаров гм сворды и хила. бегают в айрон арморе.
вот код.
надо добавить ходилку, checkLag, sign
на вход даеться серийник врага.
Code: Select all
sub kill(enemy)
if (not uo.GetHP(enemy)) then
return
end if
var done = 0
var enemyX
var enemyY
var dx
var dy
var delay = 500
var time = 0
uo.warmode(1)
CheckLag()
uo.attack(enemy)
CheckLag()
repeat
enemyX = uo.GetX(enemy)
enemyY = uo.GetY(enemy)
dx = enemyX - uo.GetX()
dy = enemyY - uo.GetY()
if (uo.GetHP(enemy)) then
if (abs(dx) > 20 or abs(dy) > 20) then
uo.print('enemy too far')
done = 1
else
if (abs(dx) > 1 or abs(dy) > 1) then
uo.print('closed in on the enemy')
Walker(enemyX + sign(dx), enemyY + sign(dy))
end if
end if
else
uo.print('enemy dead')
done = 1 #враг убит
end if
if (uo.Life < uo.str * 0.6) then #мало хп, хилимся
uo.print('low hp. healing')
uo.bandageself()
wait(5000)
end if
if (uo.Life == 0) then #нас убили(
uo.print('I am dead')
done = 1
end if
if (time > 5*60*1000) then #убиваем больше 5 минут - возможно глюк
uo.print('possible hung. terminate')
done = 1
end if
wait(delay)
time = time + delay
until done
if (uo.Life) then
uo.warmode(0)
end if
end sub
Posted: 2006-04-17 11:42:43
by Sanch
А если вооружить чара хорошим дивайсом и армором + бинтами и бутылками гх, то сам он не завалит элема?
У меня гм боевых, магиии, всего чего угодно, хелинга, но элем, это чудо пордка 400стр, носится с огромной скорость, постоянно вызывает земляных элемов на тебя, при всем этом закидываем магией без остановки, от лайтов до фс, постоянно релпорится к тебе, от него даже верхом чтобы убежать еще постараться надо, гмы над мобами хорошо поработали.
Что такое sign? Вот собсно мой скрипт, сериал элема сразу еще в скрипте на его проверку в глобалку записывается.
Code: Select all
sub KillElemental()
VAR x, y, a, b
x = uo.getx()
y = uo.gety()
if val(uo.getglobal('per3')) == 1 then
x = uo.getx() + 2
walk(x,y)
endif
if val(uo.getglobal('per3')) == 2 then
x = uo.getx() - 2
walk(x,y)
endif
if val(uo.getglobal('per3')) == 3 then
x = uo.getx() - 2
walk(x,y)
endif
if val(uo.getglobal('per3')) == 4 then
x = uo.getx() + 2
walk(x,y)
endif
uo.usetype('0x0F08')
step:
if uo.Mana < 50 then
uo.usetype('0x0F09')
wait(100)
endif
a = uo.getglobal('per5')
uo.waittargetobject('a')
uo.cast('Energy Vortex')
wait(5000)
checklag()
if uo.injournal('The spell fizzles.') then
wait(500)
uo.deletejournal('The spell fizzles.')
goto step
endif
while not uo.injournal('Body of')
while val(uo.getglobal('per4')) == 1
wait(50)
wend
uo.set('finddistance', '10')
uo.findtype('0x000D', '-1', '1')
if uo.findcount() == 0 then
goto step
else
wait(100)
endif
if not uo.Hidden() then
uo.usetype('0x0F08')
wait(100)
else
wait(100)
endif
wait(15000)
wend
step2:
if uo.Mana < 40 then
uo.usetype('0x0F09')
wait(100)
endif
uo.cast('Mass Dispel', 'self')
wait(5000)
checklag()
if uo.injournal('The spell fizzles') then
wait(500)
uo.deletejournal('The spell fizzles')
goto step2
endif
if val(uo.getglobal('per3')) == 1 then
x = uo.getx() - 2
walk(x,y)
endif
if val(uo.getglobal('per3')) == 2 then
x = uo.getx() + 2
walk(x,y)
endif
if val(uo.getglobal('per3')) == 3 then
x = uo.getx() + 2
walk(x,y)
endif
if val(uo.getglobal('per3')) == 4 then
x = uo.getx() - 2
walk(x,y)
endif
DIM item[2]
item[0] = '0x1BF5' #тип ингов#
item[1] = '0x0EED' #тип золота#
uo.useobject('lastcorpse')
wait(1000)
checklag()
for b = 0 to 1
uo.findtype( item[b], '-1', 'lastcorpse')
while uo.findcount() > 0
uo.moveitem('finditem')
wait(1000)
wend
next
end sub
sub Walk(x,y)
go:
while not uo.getX() == x || not uo.getY() == y
if not uo.getX() == x then
if uo.getX() > x then
uo.press(36)
else
uo.press(34)
endif
endif
if not uo.getY() == y && uo.getX() == x then
if uo.getY() > y then
uo.press(33)
else
uo.press(35)
endif
endif
checklag()
wend
checklag()
if not uo.getX() == x || not uo.getY() == y then
goto go
endif
end sub
Конечно можно попробовать нацепить фул валор, Soul Riper (оружие хаоса), взять тотал хелы (полностью хп востанавливают) и дать ему по рагам, но я сильно сомневаюсь что это прокатит, тем более если вылезет элем выхи он мне точно накастыляет, в чем бы я не был.
Posted: 2006-04-17 12:04:17
by CFA
sign - знак числа, для отрицательных возвращает -1, для положительных 1, для 0 - 0.
Code: Select all
sub Sign(n)
if (n < 0) then
n = -1
end if
if (n > 0) then
n = 1
end if
return n
end sub
Posted: 2006-04-17 12:06:09
by Sanch
И для чего етот sign нужен?
У меня есть идея поставить элема в 8 ящиков, чтобы он не вышел и жечь его фаер филдами до потери пульса, но не факт что он из них не выйдет.
Posted: 2006-04-17 12:13:10
by CFA
У нас на шарде когда у моба мало хп, он начинает убегать
Code: Select all
Walker(enemyX + sign(dx), enemyY + sign(dy))
тут с помощью sign определяеться направление куда он бежит, и береться упреждение. тк если этого упреждения не брать, моб уже успевает отбежать от того места где был в момент вызова ходилки, и такие догонялки могут затянуться надолго.
Posted: 2006-04-17 13:08:24
by Sanch
Еще есть идея просто вывести элема из шахты, но там туча всяких препяствий и тд, вообще даж не представляю как это сделать.
Posted: 2006-04-17 13:13:58
by Savage
А суммон демон его никак не кил?
Posted: 2006-04-17 22:04:32
by Sanch
А суммон демон его никак не кил?
Саваж, при всем уважении к тебе, читай первый пост внимательнее, написал дмон лох полный, обьясню нагляднее, недавно написал скрипт на кач вреслинга на своих демонах, тк у них хп много, тока ол стоп прописать после удара первого забыл, когда я утром посмотрел, не понял почему хп у меня не пполное, демон мне голому пока я его 300хп сносил, мне пару раз хп по 10 попадал, он ваще лох, по силе как зомби, тока хп много.
Posted: 2006-04-18 00:21:24
by flake
Sanch wrote:И для чего етот sign нужен?
У меня есть идея поставить элема в 8 ящиков, чтобы он не вышел и жечь его фаер филдами до потери пульса, но не факт что он из них не выйдет.
Если элем парализиться, то проблем нет. Парализим его, снимаем координаты, обкидыаем 8 ящикам, и жжом. никак не выйдет.
Re: Убийство мобов на скрипте, реально?
Posted: 2006-04-18 00:49:06
by Edred
Sanch wrote:Есть скрипт на убийство элема при мининге, скрипт делает следующее, как только выкапывается элем, чар отбегате на 2 шага вниз (он не отбегает от элема, а возможно даже подегает к нему, тк не известно в каком тайтле его выкопали), съедает инвизку, кастует вортекса не элема, не выходит из инвиза (такой расклад на шарде), и пока не появится труп, проверяет наличие вортекса, если того не находит, кидает еще раз, но инвиз оч не потоянен, например моржет сьесть манку чтобы кинуть второго ворта, выйти из инвиза и умереть, тк инвизку в это время съесть не сможет, так что надежность скрипта оставляет желать лудшего
А ты не задумывался о двух (или более) параллельно запущенных чарах? Пусть копатель, выкопав элема, сразу пьет инвиз и стоит смирно, не дергаясь и не высовываясь. В таком случае инвиз обычно весьма надежен. А второй чар уже кастует вортекса и прочее. Если даже второй чар упадет, ну что ж, его можно на том же скрипте отправить отресаться и вернуться в шахту. А первый чар при признаках опасности может прямо из инвиза слинять реколлом.
Posted: 2006-04-18 01:31:05
by Savage
Ну если элем так сложен то парализ ему и три стенки, эдакий монолит, потом в центральную стену фаер
Posted: 2006-04-18 07:22:02
by Sanch
Я решил сделать следующее, возьня с этими мега элемами все равно никогда не окупит того гемора который я сейчас с ними испытываю, но от них избавляться нужно, вобщем решил отбегать в сторону на 3 тайтла от элема, придумал как определить его меастоположение относительно своего, инвиз, ворта на него и рекол в следующую шахту, а они пускай там дружат, при следующем появлении в шахте, процедура повторяется если элем не умер или не убрел далеко.
Стенки оч быстро пропадают, как обычные так и фаер.