Page 8 of 30
Re: Injection 2014 !
Posted: 2014-02-23 22:14:04
by Incorrect User
Ок, лог сейчас скину. Кстати вот теперь другой вопрос нарисовался. Скрипт
Code: Select all
sub Test()
uo.waitmenu("Tracking", "Animals")
if uo.WaitingForMenu(1000,1,0,'Tracking','Tracking') or uo.injournal("see no signs") then
uo.print('Menu received')
else
uo.print('WaitingForMenu Failed')
endif
end sub
Получается если меню не появится то на сообщение "see no signs" он среагирует не сразу по его приходу а когда окончится время ожидания меню, что ж делать...
Re: Injection 2014 !
Posted: 2014-02-23 22:29:52
by Juicy Fruit
Incorrect User wrote:Ок, лог сейчас скину. Кстати вот теперь другой вопрос нарисовался. Скрипт
Code: Select all
sub Test()
uo.waitmenu("Tracking", "Animals")
if uo.WaitingForMenu(1000,1,0,'Tracking','Tracking') or uo.injournal("see no signs") then
uo.print('Menu received')
else
uo.print('WaitingForMenu Failed')
endif
end sub
Получается если меню не появится то на сообщение "see no signs" он среагирует не сразу по его приходу а когда окончится время ожидания меню, что ж делать...
Как вариант - загонять в отдельный трид.
Code: Select all
sub Test()
uo.DeleteJournal()
uo.SetGlobal('MenuRecv','0')
uo.waitmenu("Tracking", "Animals")
uo.exec('exec MenuCheck')
while uo.GetGlobal('MenuRecv')=='0' and not uo.injournal("see no signs")
wait(100)
wend
if uo.GetGlobal('MenuRecv')=='1' then
uo.print('Menu Received')
else if uo.injournal("see no signs") then
uo.print('Journal Message Received')
else if uo.GetGlobal('MenuRecv')=='-1' then
uo.print('Menu is NOT Received')
else
uo.print('Unknown error')
endif
end sub
Sub MenuCheck()
if uo.WaitingForMenu(1000,1,0,'Tracking','Tracking') then
uo.SetGlobal('MenuRecv','1')
else
uo.SetGlobal('MenuRecv','-1')
endif
end sub
Re: Injection 2014 !
Posted: 2014-02-23 22:42:58
by Incorrect User
К сожалению не вариант, у меня там целая система. Взаимодействуют два скрипта вместе и много событий всяких. Вот было бы здорово если бы кроме времени жидания можно было бы еще и сообщение пихать, или ждем меню до окончания текущего времени либо до появления какого либо сообщения к примеру. Там такая история, чар выпадает из хайда от трех причин 1.Раздетектили игроки 2.Раздетектил моб(охранники руды или логов) 3.Просто сам по себе Ты начинаешь трекать и все другие скрипты ставятся на паузу, в том числе поиск людей, если ты никого не натрекал нужно сразу же включать скрипт на поиск людей, в нем цикл убийства гвардов, а сам скрипт который трекал в это время ставит чара в хайд. И если долго ждать тебя гвард просто начнет бить а если в это время прибегут люди то это перебьет и поиск и проверки и всю работу... Клубок такой в общем

Re: Injection 2014 !
Posted: 2014-02-23 22:53:32
by Juicy Fruit
Так а чем этот вариант не устаривает?
Во время ожидания суем проверку журнала, можно без цикла, но задержка хоть какая-то в любом случае нужна.
Code: Select all
sub Test()
uo.DeleteJournal()
uo.SetGlobal('MenuRecv','0')
uo.waitmenu("Tracking", "Animals")
uo.exec('exec MenuCheck')
wait(100) #Или побольше
if uo.GetGlobal('MenuRecv')=='1' then
uo.print('Menu Received')
else if uo.injournal("see no signs") then
uo.print('Journal Message Received')
else if uo.GetGlobal('MenuRecv')=='-1' then
uo.print('Menu is NOT Received')
else
uo.print('Unknown')
endif
uo.exec('terminate MenuCheck') #Что бы предыдущие запущенные скрипты не убивали флаг MenuRecv
end sub
Sub MenuCheck()
if uo.WaitingForMenu(1000,1,0,'Tracking','Tracking') then
uo.SetGlobal('MenuRecv','1')
else
uo.SetGlobal('MenuRecv','-1')
endif
end sub
Re: Injection 2014 !
Posted: 2014-02-23 23:39:21
by Incorrect User
Так в
Code: Select all
if uo.GetGlobal('MenuRecv')=='1' then
значение глобальной он получит так же по окончанию ожидания меню, разве нет?
Re: Injection 2014 !
Posted: 2014-02-23 23:47:20
by Incorrect User
Попробовал этот скрипт, если никого нет он всегда пишет Unknown, если кто-то есть то почти всегда Unknown и лишь изредка Journal Message Received А wait(100) #Или побольше так оно и на то и выходит, что можно просто это время указать в ожидании меню, выйдет один в один. В любом случае ответ мы получаем по окончанию ожидания в uo.WaitingForMenu, имеется ввиду когда никого нет и должно придти сообщение "see no signs". А цель - среагировать сразу по его приходу.
Re: Injection 2014 !
Posted: 2014-02-24 07:17:20
by Juicy Fruit
Incorrect User wrote:Попробовал этот скрипт, если никого нет он всегда пишет Unknown, если кто-то есть то почти всегда Unknown и лишь изредка Journal Message Received А wait(100) #Или побольше так оно и на то и выходит, что можно просто это время указать в ожидании меню, выйдет один в один. В любом случае ответ мы получаем по окончанию ожидания в uo.WaitingForMenu, имеется ввиду когда никого нет и должно придти сообщение "see no signs". А цель - среагировать сразу по его приходу.
Засеки время между юзом трэкинга и приходом сообщения.
Скрипт ниже среагирует на первое, что произойдет: либо на приход меню, либо на сообщение в журнале и не будет ждать столько, сколько указано в меню (это при условии что меню пришло или сообщение из журнала, если ни чего из этого не происходило - подождет секунду)
Задержка между проверками - 100.
Code: Select all
sub Test()
uo.DeleteJournal()
uo.SetGlobal('MenuRecv','0')
uo.waitmenu("Tracking", "Animals")
uo.exec('exec MenuCheck')
while uo.GetGlobal('MenuRecv')=='0' and not uo.injournal("see no signs")
wait(100)
wend
if uo.GetGlobal('MenuRecv')=='1' then
uo.print('Menu Received')
else if uo.injournal("see no signs") then
uo.print('Journal Message Received')
else if uo.GetGlobal('MenuRecv')=='-1' then
uo.print('Menu is NOT Received')
else
uo.print('Unknown error')
endif
end sub
Sub MenuCheck()
if uo.WaitingForMenu(1000,1,0,'Tracking','Tracking') then
uo.SetGlobal('MenuRecv','1')
else
uo.SetGlobal('MenuRecv','-1')
endif
end sub
some wrote:заметил что на новой версии при включенном ТВИ не работает авторес =)
Что за скрипт такой? В обновление объектов лез только кэш для мульти сделать. Больше ни чего не трогал.
Re: Injection 2014 !
Posted: 2014-02-24 09:14:27
by Incorrect User
И вот снова Абнормал програм... и упал клиент

Re: Injection 2014 !
Posted: 2014-02-24 11:06:21
by Juicy Fruit
Incorrect User wrote:И вот снова Абнормал програм... и упал клиент

А при каких действиях?
Re: Injection 2014 !
Posted: 2014-02-24 11:24:24
by Incorrect User
Что-то я туплю, подскажите
Code: Select all
sub Test()
var msg = ":"
repeat
if uo.injournal(msg) then
uo.print(msg которое поймали)
return
else
wait(100)
end if
until uo.dead()
end sub
Не могу вспомнить как воспроизвести сообщение которое пришло uo.print(msg которое поймали)
Re: Injection 2014 !
Posted: 2014-02-24 11:57:25
by Juicy Fruit
Code: Select all
sub Test()
var msg = ":"
var l=0
repeat
l=uo.injournal(msg)
if l then
uo.print(uo.journal(l-1))
return
else
wait(100)
end if
until uo.dead()
end sub
Re: Injection 2014 !
Posted: 2014-02-24 14:37:23
by Incorrect User
Стою копаю, вдруг вылезла история

Клиент не упал, но возможно собирался, поэтому я остановил скрипты и рекол. Лог не сохранил, не был включен.
Re: Injection 2014 !
Posted: 2014-02-24 14:54:19
by Juicy Fruit
Скрипт был врублен какой-то?
Если да - какое действие в скрипте предположительно выполнялось?
Re: Injection 2014 !
Posted: 2014-02-24 15:07:06
by Incorrect User
Юзал кирку на тайл земли. Скрипта сразу три: Проверка на хайд, поиск людей путем findtype и сам мининг.
Re: Injection 2014 !
Posted: 2014-02-24 15:08:33
by Juicy Fruit
Не, интересуют конкретные действия в скриптах.
Запись в текстовое окно инжекта, проверка журнала, мб еще что-то.
Re: Injection 2014 !
Posted: 2014-02-24 15:10:58
by Incorrect User
У меня такое ощущение что findtype глючит, или сам инжект от долгого его использования, так как бывает не убивает гварда, просто будто не видит его. У всех гвардов одинаковый type. Почему думаю на глюки, потмоу что после долгой копки не периодически отказывался работать скрипт на телепорт по столбу(юзаешь столб и тыкаешь гамп куда лететь), просто не срабатывал и все. Скрипты в лс кину, смотри, ничего такого, в основном они в режиме ожидания события.
Re: Injection 2014 !
Posted: 2014-02-24 17:04:06
by pahha1988
у меня на месте если ктото вышел, реколл, или монстра убил появляется фигурка зомби?
3 раза выпал клиент именно на мобах причем отлетал весь инет целиком. как так не пойму (защита сервера?)
Re: Injection 2014 !
Posted: 2014-02-24 17:06:49
by Incorrect User
Фигурка зомби это галку сними Status Bar Fix
Re: Injection 2014 !
Posted: 2014-02-24 17:41:57
by Juicy Fruit
pahha1988 wrote:3 раза выпал клиент именно на мобах причем отлетал весь инет целиком. как так не пойму (защита сервера?)
Инжект до такого еще не докатился)
Какой сервер?
Лог в студию при таких делах, галка Verbose Logging должна быть включена.
Re: Injection 2014 !
Posted: 2014-02-25 02:06:03
by Incorrect User
Или мне кажется или в uo.buy неправильно работает задержка. Скрипт доходит до строки uo.buy, задержка стоит к примеру 10сек, и как я понимаю когда скрипт попадает на эту строку то на ней он должен оставаться все 10 сек а не бежать дальше? У меня после uo.buy сразу рекол, вот чар говорит венику Buy, и сразу же жмет рекол, а если после uo.buy поставить wait(10000) то он стоит 10 сек, покупает что надо и улетает. То есть скрипт просто не задерживается на строке uo.buy на заданное время а бежит дальше.