Плиз Помогите!
Moderators: Murderator+, Murderator
Плиз Помогите!
когда нажимаю на Launch открывается простой клиент а окошки Инжекта нету.... переустановил инжу но проблема не устранилась, помогите Пож!
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Не буду создавать отдельную тему, напишу здесь. У нас на шарде если убили в ГЗ то труп лутать можно только через 600 секунд(если убил ты то через 300). При мне человек полутал труп в ГЗ сразу после убийства без ожидания. Как такое возможно, как он смог открыть труп? Так же у нас задержка на фаст лут, если лутаешь быстро то краш, но я видел как лутают моментально и их не крашит(правда чел уже давно в бане, но вопрос не в этом).
Re: Плиз Помогите!
,snoop
крашит изза сообщения в журнале или в принципе крашит - настройка на сервере?
Если изза сообщения типо ОБНАРУЖЕН ФАСТ ЛУТ!!! то добавь игнор этой фразы, если второе то хз
крашит изза сообщения в журнале или в принципе крашит - настройка на сервере?
Если изза сообщения типо ОБНАРУЖЕН ФАСТ ЛУТ!!! то добавь игнор этой фразы, если второе то хз
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Нет, никаких сообщений, причем чар даже не передвигал итем, он был слишком тяжелый и он не мог сдвинуть его с места, сфера писала Is too heavy... два раза написала и кон лост. Задержка на мув была 100.
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
,snoop появляется пустой контейнер, положил в него свою вещь, забрать не могу, пишет не я убил. Как же он его полутал.
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Почему не показывает расстояние до трупа? Сделал для теста , если вместо lastcorpse вставить любой id из вещей вокруг то показывает нормально а с lastcorpse не хочет, показывает 0 на любом расстоянии.
Как узнать что ты убил и появился труп? Сообщений типа You see body не появляется, пробовал типа Так работает но с глюками, бывает срабатывает после снятия хп у атакуемого но он еще не умер. until uo.getstatus("0x12345678") == 0 не работает вообще.
Code: Select all
uo.print(str(uo.getdistance("lastcorpse")))
Как узнать что ты убил и появился труп? Сообщений типа You see body не появляется, пробовал типа
Code: Select all
uo.attack("0x12345678")
repeat
wait(100)
until uo.gethp("0x12345678") == 0
Re: Плиз Помогите!
я делал вот так:
Атака, ждем пока сам не умер или цель не пропала.
Code: Select all
uo.attack('finditem')
repeat
wait(100)
until uo.dead() or uo.GetX('finditem')==0
Атака, ждем пока сам не умер или цель не пропала.
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Отлично, спасибо. А с ласткорпс оказалось он трупы не видит, сколько ни убей, все время какой-то левый ID показывает вместо ID свежего трупа. Пока не знаю почему, сделал поиск трупов и предварительным игнором уже существующих.
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Теперь такой вопрос, будут одновременно работать две функции, они непрерывно используют findtype. Для одной нужно искать на максимум расстояния, для другой всего 3 тайла хватит. Вопрос, можно ли для каждой отдельно установить нужное значение finddistanse, и стоит ли заморачиваться, исхожу из того что меньше тайлов проверять - меньше нагрузка, а парсерами инжа любит радовать.
Re: Плиз Помогите!
Мудришь ты все чего то. Одновременно работающие функции тебя крашнут.
Вот черновик модуля для бота-охотника.
Это для охоты. Сканим вокруг себя начиная от 1 тайла до 10 тайлов. Если нашли - идем бить, убили - лутаем.
Тут можно посмотреть нужные тебе фишки и использовать в своем творении. Ходилки и каких то var возможно не хватает.
Будет глючить если рядом с тобой ктото убивает зверьков. Может пытаться открыть не тобой убитый труп а тот который ближе к тебе. Но когда охотишься в одиночку или ПВП 1 на 1 то сойдет. Зато просто используя LOOT можно облутить неограниченное количество трупов в куче. Пока хватит веса чара.
Вот черновик модуля для бота-охотника.
Code: Select all
sub KillIt()
VAR MaxVes = 600
VAR n=1
var animal='0x000D'
uo.ignorereset()
Repeat
uo.Set('finddistance', n)
uo.FindType(animal, -1, 'ground')
if uo.FindCount() then
uo.resend()
n=1
uo.attack('finditem')
repeat
if uo.GetDistance('finditem') > 2 then
walker(uo.GetX('finditem'),uo.GetY('finditem'),2) ; если цель дальше чем 2 тайла шагаем к ней
else
wait(100) ; или ждем пока убьем или умрем
end if
until uo.dead() or uo.GetX('finditem')==0
wait(100)
Loot()
else
n=n+1 ; увеличиваем диапазон поиска жертвы
if n>10 then ; если расстояние поиска больше 10 тайлов - начинаем искать рядом
n=1
endif
end if
Loot()
Until uo.Dead() || UO.Weight > MaxVes ; все это повторяем пока не перегрузимся или не умрем
hanthome() ; тащимся домой
end sub
Sub Loot()
var a
DIM G[7]
G[1] = '0x0EED'; деньги
G[2] = '0x0E76'; мешки
G[3] = '0x09AA'; пандоры
G[4] = '0x1BFB'; болты
G[5] = '0x0F3F'; стрелы
G[6] = '0x1087'; серьги
G[7] = '0x108A'; кольца
var body = '0x2006' ; тип трупа
var corpse
UO.Set('quiet','1')
uo.set('finddistance', '3')
###Вот это сообщение которое вылезает при быстром луте.###
UO.filterspeech('clear')
UO.filterspeech('add','[Surprize ! Fast loot detected!]')
UO.filterspeech('on')
###########################################################
uo.findtype(body, -1, 'ground')
if uo.findcount() and Uo.GetDistance( body ) < 4 then ; если труп ближе чем 4 тайла
corpse = uo.getSerial('finditem')
uo.deletejournal()
uo.useobject(corpse)
checklag()
if NOT uo.injournal("You can't do it here") then ; если ты можешь достать до трупа и можешь открыть его
For a=1 to 7 ; ищем предметы в трупе
UO.FindType( G[a], -1, corpse )
while UO.FindCount()
uo.moveitem('finditem','0','backpack')
wait(100)
UO.FindType( G[a], -1, corpse )
wend
next
endif
UO.Hide(corpse) ; скрываем труп
UO.Ignore(corpse) ; игнорируем для дальнейшего поиска
else
For a=1 to 7 ; ищем предметы на земле
UO.FindType(G[a],-1,'ground')
while UO.FindCount()
uo.moveitem('finditem','0','backpack')
wait(100)
UO.FindType(G[a],-1,'ground')
wend
next
endif
uo.Set('finddistance', 1)
UO.Set('quiet','0')
endsub
Это для охоты. Сканим вокруг себя начиная от 1 тайла до 10 тайлов. Если нашли - идем бить, убили - лутаем.
Тут можно посмотреть нужные тебе фишки и использовать в своем творении. Ходилки и каких то var возможно не хватает.
Будет глючить если рядом с тобой ктото убивает зверьков. Может пытаться открыть не тобой убитый труп а тот который ближе к тебе. Но когда охотишься в одиночку или ПВП 1 на 1 то сойдет. Зато просто используя LOOT можно облутить неограниченное количество трупов в куче. Пока хватит веса чара.
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
У меня работали так 2 скрипта, с ZeroDX делали, парсер вылетал но довольно редко, терпимо. Просто скриптов не осталось, сейчас пишу все по новому, и все как-то по другому, немного лучше чем тогда выходит. Самое важное для меня в скрипте это моментальная рекация, потому что хватает читерков, но все равно успевали меня в стены поставить(я на экран смотрю редко) но все же не упал ни разу, скрипт спасал. Поэтому хочется еще лучше чем было в тот раз. Буду пробовать по журналу искать без файндтайпа, ждем ":" и проверяем.
Еще есть вопрос такой, как сделать чтобы искал из массива тип не 1 раз, а до тех пор пока перестанет находить вещь этого типа. Я сделал так(пример)
Но так не работает, находит один и после него ищет следующие по списку хотя такие же типы как у него есть в месте поиска.
Еще есть вопрос такой, как сделать чтобы искал из массива тип не 1 раз, а до тех пор пока перестанет находить вещь этого типа. Я сделал так(пример)
Code: Select all
var i
dim Item[3]
Item[1] = 0x0001
Item[2] = 0x0002
Item[3] = 0x0003
for i = 1 to 3
repeat
uo.findcount(Item[i], "-1", "ground")
if uo.findcount() then
uo.print("+1")
else
wait(100)
end if
until not uo.findcount() ; Искать повторно итем до тех пор пока не найдет такой тип.
next
Но так не работает, находит один и после него ищет следующие по списку хотя такие же типы как у него есть в месте поиска.
Re: Плиз Помогите!
Code: Select all
var i
dim Item[3]
Item[1] = 0x0001
Item[2] = 0x0002
Item[3] = 0x0003
for i = 1 to 3
repeat
uo.findcount(Item[i], "-1", "ground")
if uo.findcount() then
uo.print("+1")
wait(100)
end if
Until uo.FindCount()<1 or uo.Dead()
next
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Как игнорировать свои сообщения, чтобы в журнале небыло сообщений которые появляются над чаром?
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Почему не срабатывает такого плана скрипт
То есть если у обьекта менее более 50 хп то нужно его атаковать. Но скрипт не атакует до тех пор, пока не набросишь таргет любой на обьект который нужно атаковать, любой таргет.
Code: Select all
if uo.gethp("0x0000000") > 50 then
uo.attack("0x0000000")
end if
То есть если у обьекта менее более 50 хп то нужно его атаковать. Но скрипт не атакует до тех пор, пока не набросишь таргет любой на обьект который нужно атаковать, любой таргет.
Re: Плиз Помогите!
Потому что ни одна программа не умеет снимать количество жизней оппонента если они не показаны гампом или текстом явно. Там есть какая то шкала - чтото типо 100%, 20%... Можно попытаться оттолкнуться от неё.
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Мне для кача это, нужно бить или игрока или животное(смотря что качаешь), до определенного хп и останавливаться ожидая пока отхилится, не могу придумать как сделать.
-
- Posts: 949
- Joined: 2011-05-23 00:33:30
Re: Плиз Помогите!
Со своими сообщениями решил так
Теперь не идет на проверку если сообщение от меня, он знает это заранее. С тем как проверять ХП ничего не придумал. Хотя оно показывает иногда ХП например
и пишет сколько у него реально сейчас хп, но потом через время перестает, просто не пишет ничего
Я помню как в уо пилоте делал подобное, через readmem, в артмани находил значение хп существа и потом его забивал в пилот.
Code: Select all
var msg = ":"
Deljournal(msg)
repeat
wait(100)
until uo.injournal(msg) and not uo.JournalSerial(uo.InJournal(msg)-1) == "свой id"
Теперь не идет на проверку если сообщение от меня, он знает это заранее. С тем как проверять ХП ничего не придумал. Хотя оно показывает иногда ХП например
Code: Select all
uo.print(uo.gethp(id объекта))
и пишет сколько у него реально сейчас хп, но потом через время перестает, просто не пишет ничего
