Убийство мобов на скрипте, реально?

Ask for help

Moderators: Murderator+, Murderator

Post Reply
Sanch
Posts: 308
Joined: 2005-07-17 15:30:52
Location: www.drw.ru

Убийство мобов на скрипте, реально?

Post by Sanch »

Есть скрипт на убийство элема при мининге, скрипт делает следующее, как только выкапывается элем, чар отбегате на 2 шага вниз (он не отбегает от элема, а возможно даже подегает к нему, тк не известно в каком тайтле его выкопали), съедает инвизку, кастует вортекса не элема, не выходит из инвиза (такой расклад на шарде), и пока не появится труп, проверяет наличие вортекса, если того не находит, кидает еще раз, но инвиз оч не потоянен, например моржет сьесть манку чтобы кинуть второго ворта, выйти из инвиза и умереть, тк инвизку в это время съесть не сможет, так что надежность скрипта оставляет желать лудшего, самая проблема в том что копать то хочется не только шлак,стоимость кирки для выкапывания высших пород сопоставима разве что со стоимостью замка, при мысли о том что ее можно лишиться на скрипте оч дурно становится, вот хочу спросить опытных скриптописателей, реально ли убить сильного моба (а элемы тут реально сильные) с вероятностью в 100% и как?Полиморф не предлогать, тк он на моем шарде г полное и в нем нельзя хелиться, а еще мобы видят тебя в хиде, но не в инвизе, драконов тамить нельзя, найтмара нигде не найдешь, взрывчатка гавно, вызвание демоны полные лохи, парализ филд кастуется только на себя, исчезает быстро, фаер филд слабо жарит, обычный парализ быстро проходит, буквально через 30сек. Зарание благодарю за инфу.
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

А если вооружить чара хорошим дивайсом и армором + бинтами и бутылками гх, то сам он не завалит элема?
CFA
Posts: 64
Joined: 2006-02-03 06:53:36

Re: Убийство мобов на скрипте, реально?

Post 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
Sanch
Posts: 308
Joined: 2005-07-17 15:30:52
Location: www.drw.ru

Post 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 (оружие хаоса), взять тотал хелы (полностью хп востанавливают) и дать ему по рагам, но я сильно сомневаюсь что это прокатит, тем более если вылезет элем выхи он мне точно накастыляет, в чем бы я не был.
Last edited by Sanch on 2006-04-17 12:06:32, edited 2 times in total.
CFA
Posts: 64
Joined: 2006-02-03 06:53:36

Post 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
Sanch
Posts: 308
Joined: 2005-07-17 15:30:52
Location: www.drw.ru

Post by Sanch »

И для чего етот sign нужен?

У меня есть идея поставить элема в 8 ящиков, чтобы он не вышел и жечь его фаер филдами до потери пульса, но не факт что он из них не выйдет.
CFA
Posts: 64
Joined: 2006-02-03 06:53:36

Post by CFA »

У нас на шарде когда у моба мало хп, он начинает убегать

Code: Select all

Walker(enemyX + sign(dx), enemyY + sign(dy)) 
тут с помощью sign определяеться направление куда он бежит, и береться упреждение. тк если этого упреждения не брать, моб уже успевает отбежать от того места где был в момент вызова ходилки, и такие догонялки могут затянуться надолго.
Sanch
Posts: 308
Joined: 2005-07-17 15:30:52
Location: www.drw.ru

Post by Sanch »

Еще есть идея просто вывести элема из шахты, но там туча всяких препяствий и тд, вообще даж не представляю как это сделать.
Savage
Expert!
Posts: 1205
Joined: 2004-04-04 11:13:54
Location: Балаково, Саратовская обл.
Contact:

Post by Savage »

А суммон демон его никак не кил?
Sanch
Posts: 308
Joined: 2005-07-17 15:30:52
Location: www.drw.ru

Post by Sanch »

А суммон демон его никак не кил?
Саваж, при всем уважении к тебе, читай первый пост внимательнее, написал дмон лох полный, обьясню нагляднее, недавно написал скрипт на кач вреслинга на своих демонах, тк у них хп много, тока ол стоп прописать после удара первого забыл, когда я утром посмотрел, не понял почему хп у меня не пполное, демон мне голому пока я его 300хп сносил, мне пару раз хп по 10 попадал, он ваще лох, по силе как зомби, тока хп много.
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

Sanch wrote:И для чего етот sign нужен?

У меня есть идея поставить элема в 8 ящиков, чтобы он не вышел и жечь его фаер филдами до потери пульса, но не факт что он из них не выйдет.
Если элем парализиться, то проблем нет. Парализим его, снимаем координаты, обкидыаем 8 ящикам, и жжом. никак не выйдет.
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Re: Убийство мобов на скрипте, реально?

Post by Edred »

Sanch wrote:Есть скрипт на убийство элема при мининге, скрипт делает следующее, как только выкапывается элем, чар отбегате на 2 шага вниз (он не отбегает от элема, а возможно даже подегает к нему, тк не известно в каком тайтле его выкопали), съедает инвизку, кастует вортекса не элема, не выходит из инвиза (такой расклад на шарде), и пока не появится труп, проверяет наличие вортекса, если того не находит, кидает еще раз, но инвиз оч не потоянен, например моржет сьесть манку чтобы кинуть второго ворта, выйти из инвиза и умереть, тк инвизку в это время съесть не сможет, так что надежность скрипта оставляет желать лудшего
А ты не задумывался о двух (или более) параллельно запущенных чарах? Пусть копатель, выкопав элема, сразу пьет инвиз и стоит смирно, не дергаясь и не высовываясь. В таком случае инвиз обычно весьма надежен. А второй чар уже кастует вортекса и прочее. Если даже второй чар упадет, ну что ж, его можно на том же скрипте отправить отресаться и вернуться в шахту. А первый чар при признаках опасности может прямо из инвиза слинять реколлом.
Savage
Expert!
Posts: 1205
Joined: 2004-04-04 11:13:54
Location: Балаково, Саратовская обл.
Contact:

Post by Savage »

Ну если элем так сложен то парализ ему и три стенки, эдакий монолит, потом в центральную стену фаер
Sanch
Posts: 308
Joined: 2005-07-17 15:30:52
Location: www.drw.ru

Post by Sanch »

Я решил сделать следующее, возьня с этими мега элемами все равно никогда не окупит того гемора который я сейчас с ними испытываю, но от них избавляться нужно, вобщем решил отбегать в сторону на 3 тайтла от элема, придумал как определить его меастоположение относительно своего, инвиз, ворта на него и рекол в следующую шахту, а они пускай там дружат, при следующем появлении в шахте, процедура повторяется если элем не умер или не убрел далеко.

Стенки оч быстро пропадают, как обычные так и фаер.
Post Reply