Page 1 of 2
Управление из одного скрипта другим
Posted: 29.02.2012 23:50
by nepopus
Здравствуйте, писал на yoko макрос на мининг, теперь хочу переписать для stelth, но столкнулся с проблемой, что не знаю как запустить самостоятельную процедуру или скрипт, которые могли бы при необходимости поставить на паузу или отменить на какое-то время другие скрипты.
Например самостоятельная процедура, которая постоянно ищет ПК, и при его появлении останавливает останавливает основную процедуру мининга и телепортируется домой.
Пока идея только сделать постоянную проверку перед каждым действием, но с етим хромает скорость отклика на появление пк.
Заранее благодарен. Если подскажете, выложу его сюда когда закончу = ) В противном случае придется доделывать на yoko (
Re: Управление из одного скрипта другим
Posted: 01.03.2012 6:46
by Vizit0r
yoko - это ник человека, а программа зовется injection )
ставить на паузу и останавливать другие скрипты нельзя.
Зато можно грамотно построить скрипт:
1) вместо функции которая постоянно проверяет наличие ПК - использовать ивент на появление (N) PC на экране - и проверять уже каждого появившегося, и тогда уже если что поднимать тревогу
2) основное время ожиданий в скриптах - это циклы и бег. Вот в них-то и сделать проверку в т.ч. и на срабатывание сигнализации.
Остановка и запуск других скриптов из своего для чего-то - это исключительно дурное наследие инжекта. Стелс предоставляет огромное кол-во возможностей для правильного построения скриптов без использования этих глупостей.
Re: Управление из одного скрипта другим
Posted: 01.03.2012 15:26
by nepopus
Code: Select all
//вначале обяз
ignorereset;
// гдето там у меня назначены переменные
playertype[1] := $0190;
playertype[2] := $0191;
finddistance := 20;
//
procedure danger;
begin
for i = 1 to 2 do
begin
while findtype(playertype[i], ground) <> 0 do //пока видим новых игроков
begin
if getnotoriety(finditem) > 2 then //если серый/оранжевый/красный
begin
gohomeanddropandgomine; //быстрый реколл/разгруз/реколл обратно
mining; //запускаем основную процедуру заного вроде как перезагружая скрипт
end;
ignore(finditem); //если синий или зеленый,тогда просто игнорим
end;
end;
end;
как понял скрипт не вешает клиент и можно не ставить задержек. поправте если не так.
добавлено... тока вспомнил что основной процедуры то и нету = ) это ж само тело скрипта. а как тогда начать сначало?
Re: Управление из одного скрипта другим
Posted: 01.03.2012 15:28
by Vizit0r
если внутри скрипта вставить wait(50) - не будет вешать точно.
Re: Управление из одного скрипта другим
Posted: 01.03.2012 15:34
by nepopus
еще как быть при ходьбе? написать свою мини ходилку по шахте и вставлять перед каждым шагом эту процедуру? или можно как то выкрутится с newmovexy?
Re: Управление из одного скрипта другим
Posted: 01.03.2012 15:41
by Vizit0r
получать массив точек маршрута и шагать. перед каждым шагом - проверять, да.
Re: Управление из одного скрипта другим
Posted: 15.08.2014 13:16
by sadX_Xface
Vizit0r wrote:
1) вместо функции которая постоянно проверяет наличие ПК - использовать ивент на появление (N) PC на экране - и проверять уже каждого появившегося, и тогда уже если что поднимать тревогу
Можно по подробнее пожалуйста? Я как понимаю у автора поста выше (как в общем сейчас и у меня) постоянно идет поиск. Что за ивент на появление неписи на экране? Если это конечно что-то отличное от приведенного решения тупого поиска вокруг.
И еще можно ли как-то передавать переменные из одного инстанса стелса в другой? В принципе могу на данный момент реализовать передачу через файл, но вдруг можно как-то изящнее))
Re: Управление из одного скрипта другим
Posted: 15.08.2014 13:35
by drabadan
sadX_Xface wrote:Vizit0r wrote:
1) вместо функции которая постоянно проверяет наличие ПК - использовать ивент на появление (N) PC на экране - и проверять уже каждого появившегося, и тогда уже если что поднимать тревогу
Можно по подробнее пожалуйста? Я как понимаю у автора поста выше (как в общем сейчас и у меня) постоянно идет поиск. Что за ивент на появление неписи на экране? Если это конечно что-то отличное от приведенного решения тупого поиска вокруг.
И еще можно ли как-то передавать переменные из одного инстанса стелса в другой? В принципе могу на данный момент реализовать передачу через файл, но вдруг можно как-то изящнее))
читай налету память одного процесса другим...

а нахрена 2 стелса запускать?
Re: Управление из одного скрипта другим
Posted: 15.08.2014 13:49
by sadX_Xface
да я тут сервачек интересный нашел))) ботоводство нормой считается... надоели убивать своими ботами моих лесорубов. я уже им и хайд вкачал со стелсом все равно убивают... а тут случайно чужой антибот нарвался на парочку лесорубов которым я прокачал сворду тактику и анатомию и огреб чисто от аттакбэка)))) ну я и задумался а чего собственно прятаться если можно и подраться... но боюсь за такое и забанить могут. вот думаю сижу как бы схитрить и в бан не попасть)
даже если не драться в ответ было бы не плохо чтобы они хотя бы все разом прятались и ждали пока пк не уйдет.
Re: Управление из одного скрипта другим
Posted: 15.08.2014 14:13
by drabadan
sadX_Xface wrote:да я тут сервачек интересный нашел))) ботоводство нормой считается... надоели убивать своими ботами моих лесорубов. я уже им и хайд вкачал со стелсом все равно убивают... а тут случайно чужой антибот нарвался на парочку лесорубов которым я прокачал сворду тактику и анатомию и огреб чисто от аттакбэка)))) ну я и задумался а чего собственно прятаться если можно и подраться... но боюсь за такое и забанить могут. вот думаю сижу как бы схитрить и в бан не попасть)
даже если не драться в ответ было бы не плохо чтобы они хотя бы все разом прятались и ждали пока пк не уйдет.
так ты хочешь, чтоб если к 1 чару приходит кент - то твой второй чар прибегает к первому и они на пару гасят кента?
Re: Управление из одного скрипта другим
Posted: 15.08.2014 16:42
by sadX_Xface
Хотел. Все-таки у меня совесть есть. Их же там не два, а пяток бегает. Жестко и имхо против правил. Боты в пвп (не важно в каком контексте даже если просто отвечают агрессией на агрессию) это слишком. Так что теперь я хочу чтобы они просто если один кого заметил спрятались и тихо сидели все. По другому их по одному разбирают и все. А так один умрет - остальные в хайд и на паузу минут на 5. Всяко выживаемость возрастет.
Re: Управление из одного скрипта другим
Posted: 15.08.2014 18:46
by drabadan
sadX_Xface wrote:Хотел. Все-таки у меня совесть есть. Их же там не два, а пяток бегает. Жестко и имхо против правил. Боты в пвп (не важно в каком контексте даже если просто отвечают агрессией на агрессию) это слишком. Так что теперь я хочу чтобы они просто если один кого заметил спрятались и тихо сидели все. По другому их по одному разбирают и все. А так один умрет - остальные в хайд и на паузу минут на 5. Всяко выживаемость возрастет.
так а шо детектить долго?
Re: Управление из одного скрипта другим
Posted: 15.08.2014 19:01
by sadX_Xface
5 лесорубов это очень приличная площадь по которой надо пройти, найти, отдетектить. чтобы делать это быстро и уверенно нужен перс со скилами. на вскидку минут 30 а то и больше человек на это потратит. Подчеркиваю человек. Бот просто убьет одного побегает да побежит дальше.
Re: Управление из одного скрипта другим
Posted: 15.08.2014 19:21
by Vizit0r
sadX_Xface wrote:Vizit0r wrote:
1) вместо функции которая постоянно проверяет наличие ПК - использовать ивент на появление (N) PC на экране - и проверять уже каждого появившегося, и тогда уже если что поднимать тревогу
Можно по подробнее пожалуйста? Я как понимаю у автора поста выше (как в общем сейчас и у меня) постоянно идет поиск. Что за ивент на появление неписи на экране? Если это конечно что-то отличное от приведенного решения тупого поиска вокруг.
что именно поподробнее? вперед читать про GetPathArray
evDrawObject
sadX_Xface wrote:
И еще можно ли как-то передавать переменные из одного инстанса стелса в другой? В принципе могу на данный момент реализовать передачу через файл, но вдруг можно как-то изящнее))
1) ExportedMethod^.FuncProc := 'function';
ExportedMethod^.FuncName := 'SendMessageToWindow';
ExportedMethod^.FuncParamsCount := 3;
ExportedMethod^.FuncParams[0] := 'WindowHandle : Cardinal';
ExportedMethod^.FuncParams[1] := 'CharID : Cardinal';
ExportedMethod^.FuncParams[2] := 'ByteArr: TByteArr';
ExportedMethod^.FuncReturnValue := 'Integer';
+
ExportedMethod^.FuncProc := 'function';
ExportedMethod^.FuncName := 'GetSelfHandle';
ExportedMethod^.FuncParamsCount := 0;
ExportedMethod^.FuncReturnValue := 'Cardinal';
+
у получателя
evWindowsMessage (procedure (lParam:Cardinal); lParam:Cardinal - указатель на байт-массив)
2) через реестр, например. Или через файл. Или еще как.
хотя мне непонятны такие сложности. почему не держать таких чаров в одном стелсе?
Re: Управление из одного скрипта другим
Posted: 16.08.2014 8:31
by sadX_Xface
омг((( евенты просто прекрасны!!! но теперь мне походу предстоит опять переписать все что у меня есть(((
огромное спасибо за ответы по евенту и передаче переменной! с ходилкой-то давно все понятно я про нее и не спрашивал там просто и все в вики есть... запускать все в одном стелсе просто не видел, что можно добавить еще коннекты слева вверху и еще и конфиги сохранить и еще автозапуск и автостарт -.-
стелс великолепен!