Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

UoKit.com Форумы _ Готовые скрипты _ Скрипт Для Кача

Автор: DarkMaster 1.11.2010, 0:01

скрипт

Код

// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4

// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F5
set %attack [2] F6
set %attack [3] F7
set %attack [4] F8

// Кнопка с подбором лута.
set $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 4

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 4474495
// Координата крайней левой точки полоски хп моба.
set #xMobHP 577
set #yMobHP 581

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP  // Пока не увидим хп, ищем моба
    send %mob [#nMob]
    if #nMob < #mobsize
        set #nMob #nMob + 1
    else
        set #nMob 1
    end_if
    wait 500
    wait random (1000)
//    get color #c #xMobHP, #yMobHP
//    msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
    send %attack [#nAttack]
    if #nAttack < #Attacksize
        set #nAttack #nAttack + 1
    else
        set #nAttack 1
    end_if
    wait 500
    wait random (1000)
end_while

repeat #pickup // Собираем дроп.
    send $pickup
    wait 200
    wait random (500)
end_repeat

goto start



http://www.youtube.com/watch?v=ujmYPhypJbM от пользователя Auto_BOT

В ТЕМЕ ОБСУЖДАЕТСЯ ТОЛЬКО ДАННЫЙ СКРИПТ.

Автор: Ohno 8.3.2011, 21:35

Прет, как сделать такой дело.
edit: игри - Lineage II
Я сделаю макро с мобы имена.
http://img33.imageshack.us/i/64971179.png/

Uploaded with http://imageshack.us

если он находится вне этой линии UoPilot отменяет целевой

Автор: DarkMaster 8.3.2011, 22:30

вопрос на самом деле достаточно сложный из-за того, что я больше в л2 не играю и у меня она даже не установлена. Я подправить скрипт не смогу - могу лишь посоветовать использовать команду findcolor для дополнительной проверки. Хочу обратить внимание на то, что цвет цели на радаре не должен быть прозрачным.

Автор: Ohno 8.3.2011, 22:58

http://img189.imageshack.us/i/asdeyx.png/

Uploaded with http://imageshack.us

пурпурная точка - целевий моб.
Как зделат, когда пурпурная точка является из мой желанный области, характер отменяет целе?
п.с. извините за плохой грамматики

Автор: DarkMaster 9.3.2011, 10:31

set $a 0
set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2)
if $a = 0
send escape
end_if
вас интересует примерно такая конструкция. Параметры (154, 80 318, 260 1 1 2366701 %arr 2) были приведены для примера - их вам нужно задать самому.

Автор: Ohno 10.3.2011, 21:58

я не знаю, что я делаю неправильно, Когда я добавить строку с своей параметры, UoPilot всегда отменяет цел.

п.с. извините для плохие по-русски.

Автор: DarkMaster 10.3.2011, 22:45

я првильно понял, что твоя цель отображается на мини-карте пурпурным?
Поясни мне, что ты имеешь ввиду под "твоя цель":
1) Нужные тебе мобы, подсвечиваются вне зависимости от /target
2) Моб, который находится у тебя в target, т.е. при нажатии на такующий скил к нему побежит твой персонаж.

Автор: Zeleax 10.3.2011, 23:50

Ohno
Если хорошо пишете по английски, то пишите на английском + хотя бы перевод Google на русский.
Будет понятнее всем =)
Вот так:

1st message.
I have the question...
--
1-е сообщение.
У меня есть вопрос...

Автор: DarkMaster 10.3.2011, 23:55

выложи скрипт вместе с findcolor и ТВОИМИ параметрам findcolor. Возможно ты не туда добавлешь проверку либо неверно введены данные(грубые ошибки я увижу без клиета л2).

Очень высока вероятность того, что цвет цели не постоянный на мини-карте и существует несколько оттенков. Если точка полупрозрачная, то цвет будет изменяться. Проблема в том, что в findcolor нельзя указать несколько цветов. В определении наилучшего цвета тебе может помочь специальная программа https://forum.uokit.com/index.php?showtopic=20545 .

Автор: Jeltiy 13.3.2011, 21:49

все делаю как описано, крайняя левая координата полоски хп моба, в итоге скрипт выдает мсг что найден моб с другими координатами, вписываю новые координаты и скрипт просто бегает нон стоп, и чар стоит на месте
Ф1 таргет некст
Ф2 макрос на моба
Ф3 макрос на моба
Ф4 убрал
Ф5 атака
Ф9 подбро дропа.
Почему не бьет не могу понять, задавал все возможные координаты полоски, все равно не бьет, не подскажете в чем может быть проблема?

Автор: DarkMaster 13.3.2011, 22:21

Цитата
мсг что найден моб с другими координатами

Т.е.? Там он о кооринатах вообще ничего не должен писать - только цвет который ищется и который по факту есть(случайно оставил не закомментированым). Удалите эти строки:
get color #c #xMobHP, #yMobHP
msg ищем #mobColorHP нашли #c

Автор: Gals 17.3.2011, 22:16

Цитата(DarkMaster @ 10.3.2011, 23:45) *

я првильно понял, что твоя цель отображается на мини-карте пурпурным?
Поясни мне, что ты имеешь ввиду под "твоя цель":
1) Нужные тебе мобы, подсвечиваются вне зависимости от /target
2) Моб, который находится у тебя в target, т.е. при нажатии на такующий скил к нему побежит твой персонаж.

Походу ты его не так понял, или я не понял, что ты понял.


Он имеет ввиду, как сделать так, что бы чар взявший моба в таргет, за пределами какого - то радиуса, отменял таргет, и искал другого моба.

Я даже не представляю как это на oupilot изобразить можно.

Автор: Zeleax 17.3.2011, 22:46

Gals
Я в LA не играю, поэтому могу только представлять =)
1) findcolor в массив %arr сохраняет координаты всех пурпурных точек окружности
2) если пройтись по всем элементам arr% и найти минимальный и максимальные значения по всем x и y, то Xmob =(Xmin+Xmax)/2 и Ymob=(Ymin+Ymax)/2 - это координаты моба в таргете
3) координаты чара - в центре - постоянные (Xch, Ych)
4) квадрат расстояния между чаром и мобом = (Xmob-Xch)^2 + (Ymob-Ych)^2
5) если квадрат расстояния больше, чем заданный - то снимаем с моба выделение (как - не знаю, не играл ))

Автор: DarkMaster 17.3.2011, 23:27

я то его правильно понял. просто я не мог понять каким образом точка фиолетовой становится на радаре. это определенный тип мобов так отображался или при выделении точка на радаре меняла цвет. как оказалось точка на радаре меняла цвет.

Автор: Ca6LeZy6 25.5.2011, 1:21

очень прошу побольше рассказать о возможности данной команды, а то в мануале не нашел.

И вот тут

Цитата(DarkMaster @ 9.3.2011, 11:31) *

set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2)
вас интересует примерно такая конструкция. Параметры (154, 80 318, 260 1 1 2366701 %arr 2) были приведены для примера - их вам нужно задать самому.

если не сложно расписать что за координаты, и от куда взяты, тоже немного не понял.

Автор: Ca6LeZy6 25.5.2011, 2:36

Цитата(DarkMaster @ 9.3.2011, 11:31) *

set $a 0
set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2)
if $a = 0
send escape
end_if
вас интересует примерно такая конструкция. Параметры (154, 80 318, 260 1 1 2366701 %arr 2) были приведены для примера - их вам нужно задать самому.


Почитал пару тем, вообщем дошел до следующего, как я понял findcolor задает прямоугольник, и 154, 80 - это верхняя левая координата начала поиска, 318, 260 - это нижняя правая координата поиска, тоесть прямоугольник создаеться от диагонали. 1 1 это шаг поиска по X, Y а соответственно последние числа это код цвета. Если я правельно понял, то мне нужно следуующие, мне не надо в этой найденой точке выполнять какие либо действия, мне нужно по итогам поиска, если нашли то одно, иначе другое.
Вообщем мне кажетса так, поправте если не прав

Код

set  $a 0
set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2)
if $a > 0
     goto start
else
     goto poisk
end_if


В принципе мне подойдет и выше указанный вариант, я так просто для себя уточнить)

Автор: Ca6LeZy6 25.5.2011, 13:32

вообщем в Л2 findcolor не пашит, скорее всего из за надобности диапозона цветов, потому попробывал рассписать, но пока что не тестил, данную команду в циклах. Может кому поможет.

Код

Set #x1 ... // начальная координата Х с вепху, с лева
set #y1 ... //начальная координата У с вепху с лева
set #x2 ... //конечная координата Х с низу с права
set #x3 ... //конечная координата У с низу с права
set #color ... //искомое значение цвета.
//set #color1 //выводим из коминтариев, в случае надобности диапозона цвета

set #x1s #x1 // задаем нлвую переменую начального Х, для того что бы в последствии была возможность присвоить ей начальное значение.
set #y1s #y1 // задаем нлвую переменую начального Y, для того что бы в последствии была возможность присвоить ей начальное значение.
while_not #x1s, #y1s #color //Если данная точка не имеет искомого значения цвета
    if #y1s < #y2
        set #x1s #x1s + 1
    else
        send escape // скидываем таргет
        goto start //запускаем поиск нового моба
    end_if
    if #x1s = #x2
        set #x1s #x1
        set #y1s #y1s + 1
    end_if
end_while


попробую потестить, по итогам отпишусь.
Немного отредактировал его, так работает, но на сколько хорошо пока не понял.

Автор: DarkMaster 25.5.2011, 15:15

findcolor пашет в линейке.

Автор: BakKry 25.5.2011, 15:25

Добрый день.Подскажите пожалусто каким образом мне получить вот эти цефры
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 4474495<<
// Координата крайней левой точки полоски хп моба.
set #xMobHP 577<<
set #yMobHP 581<<

Автор: Ca6LeZy6 25.5.2011, 15:40

Ну тогда я хз почему у меня не выходит, у меня проверяя цвет тупо скидывает таргет, берет некст, опять скидывает и т.д.


Цитата(BakKry @ 25.5.2011, 16:25) *

Добрый день.Подскажите пожалусто каким образом мне получить вот эти цефры
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 4474495<<
// Координата крайней левой точки полоски хп моба.
set #xMobHP 577<<
set #yMobHP 581<<


Изображение

Цитата(DarkMaster @ 25.5.2011, 16:15) *

findcolor пашет в линейке.


ну тогда плз объясни на примере, верно ли я понял.

set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2)

154, 80 - координата верхней левой точки прямоугольника.
318, 260 - координата нижней правой точки прямоугольника.
1 1 - шаг отступа по Х и по У
2366701 - код цвета который мы ищем.

или может я что то не понимаю, может команда создает не диагональ создающую из себя прямоугольник. может это диаметр создающий окружность.
помоги плз

Автор: Ca6LeZy6 25.5.2011, 15:54

Вообщем вот что у мну получилось с Findcolor, но не работает, не определяет на мини карте, в заданной области точку с данным цветовым кодом, перебирал уже уйму цветовых кодов, которые мог получить в нужной точке, не с 1 так работать и не захотел.

что вышло

start_script 1
start_script 2
start_script 3
start_script 4
// Кнопка с макросом /targetnext
set %mob [1] F8
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4

// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F5
set %attack [2] F6
set %attack [3] F1
set %attack [4] F7

// Кнопка с подбором лута.
set $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 4

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1251183
// Координата крайней левой точки полоски хп моба.
set #xMobHP 561
set #yMobHP 28

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
post %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 600
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set $a 0
set $a findcolor (928, 85 937, 93 1 1 16726783 %arr 2)
if $a = 0
send escape
goto start
end_if


while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
post %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 200
wait random (1000)
end_while

set #nMob 1

repeat #pickup // Собираем дроп.
post $pickup
wait 200
wait random (500)
end_repeat

goto start

Автор: DarkMaster 26.5.2011, 2:10

чисто визуально должно работать. попробуй сделать get color из указанной руками точки. Возможно она просто полупрозрачная, проверь наличие настроек прозрачности минимапа. Попробуй протестить его не на минимапе, а, например, на хп или другой точно не прозрачной части интерфейса. Так же можно попробовать способ определения цвета 1, а не 2(чем черт не шутит).

Автор: Ca6LeZy6 26.5.2011, 15:52

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

Автор: MAN-biker 28.5.2011, 19:34

Цитата(DarkMaster @ 26.5.2011, 2:10) *
...Возможно она просто полупрозрачная...

Совершенно верно, я уверен (на собственных долгих экспериментах), что все косяки с определением цвета в текущем клиенте Линейки связанны именно с прозрачностью многих мест интерфейса, соответственно, в определенной точке цвет, как правило, плавает в каком-то диапазоне, именно поэтому требуется почти всегда указывать цветовой ДИАПАЗОН вместо конкретного цвета.

Автор: Krylatic 14.6.2011, 8:42

по поводу определения цвета в линейке еще хочу кое что добавить. Если вы определяете точку по концу графической стрелки (особенно если это касается мелких объектов) то координаты и цвет может определятся не правильно. Кончик графической стрелки не совсем совпадает с координатами ее положения. Нам это визуально не заметно а для проги это очень принципиально. Советую включить в настройках обычный белый курсор на время работы с координатами.

Автор: lyter81 26.6.2011, 23:41

привет. не могу разобраться. скопировал все с первого сообщения и вставил в скрипты, пишет ошибку-:проверьте правильность скрипта! EExternal post F1.

Автор: DarkMaster 27.6.2011, 10:22

возможно связано с недавним обновлением фроста. попробуй привязывать по названию окна.

Автор: DarkMaster 27.6.2011, 10:46

так же можно вместо post попробовать send. Если поможет - поменяй во всем скрипте.

Автор: avgur 27.6.2011, 16:41

Цитата(DarkMaster @ 27.6.2011, 11:22) *

возможно связано с недавним обновлением фроста. попробуй привязывать по названию окна.

Дарк, ты начал на руофе играть? tongue.gif

Автор: DarkMaster 27.6.2011, 16:46

Я там закончил играть и давно. Просто куча тем открылась с проблемой привязать окно и не только к л2, а везде где есть фрост.

Автор: chekist-07 12.7.2011, 10:55

как только скрипт доходит до этого действия вылетает ошибка


Цитата(DarkMaster @ 1.11.2010, 0:01) *


Код

    post %attack [#nAttack]



Цитата(DarkMaster @ 27.6.2011, 10:46) *

так же можно вместо post попробовать send. Если поможет - поменяй во всем скрипте.


а вчем отличие данных команд?

Автор: DarkMaster 12.7.2011, 13:00

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

Автор: Gromov 13.7.2011, 11:24

Привет, программа просто отличная, но у меня возникли некоторые проблемы в "Скрипте для Кача".

Ошибка одного и того же вида (Проверьте правильность написания скрипта) выдается в следующих строках:

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1


while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба


while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим


repeat #pickup // Собираем дроп.

Первую и последнюю ошибки я просто стер и заменил своим вариантом.

Строку с while
вместо while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим - вставил координаты и цвет и цифрами

Строку с while
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба - стер весь whil_not

и все работало.

Но в моем скрипте мне хотелось бы исправить следующие проблемы:

1) выбирать можно только одного моба
2) перс ждет пока исчезнет труп, прежде чем перейти к другому
3) перс бьет мобов, которых уже кто-то бьет
4) перс часто застревает

Больше всего меня волнует последний пункт. И все же почему у меня вылетала ошибка "Проверьте правильность написания скрипта" в строках, которые я указал.

Вот мой скрипт, подскажите пожалуйста в каких местах и как отредактировать, что все работало, как надо, без проблем.

set #handleWin findwindow Lineage II
set workwindow #handleWin

// Кнопка с макросом /targetnext
send %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!


// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
send %attack [1] F5


// Кнопка с подбором лута.
send $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
send #pickup 4


send #mobsize size (%mob)
send #attacksize size (%attack)
send #nMob 1
send #nAttack 1
//msg #mobsize #attacksize

:start

while 966, 29 1251183 // Пока видим хп - лупим
send F5 [#nAttack]
if #nAttack < #Attacksize
send #nAttack #nAttack + 1
else
send #nAttack 1
end_if
wait 500
wait random (1000)
end_while
send F9
wait 300
send F1

goto start

Автор: DarkMaster 13.7.2011, 12:27

Цитата
1) выбирать можно только одного моба
2) перс ждет пока исчезнет труп, прежде чем перейти к другому
3) перс бьет мобов, которых уже кто-то бьет
4) перс часто застревает

Ну собственно говоря вы правками убили реализованные первые три пункта.
По 4 пункту сюда https://forum.uokit.com/index.php?s=&showtopic=21189&view=findpost&p=149591

Прогнал первый кусок скрипта, где у вас была ошибка - все работает. Версия пилота какая? У вас вылет происходит на одной из последних введенных команд.

Автор: Gromov 13.7.2011, 21:05

Цитата(DarkMaster @ 13.7.2011, 13:27) *

Ну собственно говоря вы правками убили реализованные первые три пункта.
По 4 пункту сюда https://forum.uokit.com/index.php?s=&showtopic=21189&view=findpost&p=149591

Прогнал первый кусок скрипта, где у вас была ошибка - все работает. Версия пилота какая? У вас вылет происходит на одной из последних введенных команд.

По 4-му пункту - спасибо, все работает отлично.
Версия 2.18.8, играю на офе l2.ru

Автор: DarkMaster 13.7.2011, 22:10

скиньте "не рабочий вариант" в том виде как его запускаете. ничего не вырезая, не комментируя.
Банальный копипаст с форума(из моего поста) в пилот ошибок не вызвал.

Автор: Gromov 13.7.2011, 22:32

В версии 2.18.6 все заработало. Спасибо!

Автор: Gromov 14.7.2011, 0:49

Цитата(DarkMaster @ 13.7.2011, 13:27) *

Ну собственно говоря вы правками убили реализованные первые три пункта.
По 4 пункту сюда https://forum.uokit.com/index.php?s=&showtopic=21189&view=findpost&p=149591

А возможно сделать, чтобы при условии, если моб не умирает данное кол-во времени, перс отбегал в сторону влево, если не помогло - в сторону вправо?

Автор: DarkMaster 14.7.2011, 12:11

можно стрелочками попробовать отходить

Автор: Gromov 14.7.2011, 12:54

Цитата(DarkMaster @ 14.7.2011, 13:11) *

можно стрелочками попробовать отходить

Ну да, нужен зажатый на 2 секунды поворот налево/направо, затем зажатая стрелочка вперед секунд на 10. Как это будет выглядеть в скрипте?

Автор: DarkMaster 14.7.2011, 13:47

открываем хелп, читаем. send, send_down|up экспериментируем.

Автор: Gromov 14.7.2011, 19:19

при таком скрипте:

send_down down
wait 500
send_up down

перс всё время бежит назад и не останавливается. вообще не стабильно с этим.

вообще основная проблема у меня сейчас, что перс умирает. можно ли сделать так:
когда ХП меньше 50% и после того, как моб убит, перс никого не атакует и его никто не атакует -
перс садился и ждал пока хп станет 100%.

Автор: DarkMaster 14.7.2011, 20:11

эксперементируй с бегом. пробуй просто send. открой справку и почитай как его использовать.

Цитата
можно ли сделать так:

Можно сделать что угодно. Пиши код - будут проблемы пиши. Писать вместо тебя не буду.

Автор: Адщщ 20.7.2011, 19:58

есть небольшая проблемка с некст таргетом. Сделан такой скриптец
if 369, 765 1316719 //хп моба
send F1 //атака самоном
wait 3s
send F7 //атака собой
else
send F6 //таргетнекст
end_if

проблема в том что если таргет некст нажимается несколько раз ватный чар бежит в атаку, изза чего получает люлей вперёд самона. Как это исправить? пробовала баловатся с wait до или после команды send таргетнекст, ничего не получалось - чар всё так же сломя голову нёсся вперед. Либо изза простоя получал всё тех же люлей от сагришився
Или может быть подскажете более лучший вариант скрипта?

Автор: DarkMaster 21.7.2011, 0:08

это каким-то образом связано с моим скриптом?

Автор: Адщщ 21.7.2011, 6:48

Цитата(DarkMaster @ 21.7.2011, 0:08) *

это каким-то образом связано с моим скриптом?

механика игры такая. В таком скрипте таргет некст нажимается несколько раз, изза чего и происходило такое.

Автор: Адщщ 28.7.2011, 11:14

до сих пор не понимаю почему скрипт работает как-то непонятно =/
на одном мобе всё идеально, сначала бежит атаковать самон а через 3 секунды к мобу бежит чар. На следующем мобе в атаку первым бежит чар =/
еще после смерти моба таргетнекст то не нажимается пару секунд то нажимается по два раза =\

Автор: Zeleax 28.7.2011, 11:19

По-любому где-то ошибка в логике скрипта

Автор: Андрей74 31.7.2011, 2:52

Доброе утро!

Не получается запустить Ваш скрипт.
Вставляю нужные координаты но чар стоит а в программе скрипт застревает тут:

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
post %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
end_while

Постоянно повторяется, перечитал данный топик не пойму почему не работает.
Прошу помочь если данный скрипт до сих пор актуален.

Спасла смена post на send

Автор: DarkMaster 31.7.2011, 3:50

проблема решена?

Автор: Auto_BOT 16.8.2011, 0:45

Прога класс )
скрипт работает исправно.

добавил в скрипт проверку на состаяние ХП моба (если ХП моба не убавилось за некоторое количество циклов то мы уперлись в преграду - выделяем еще моба и идем его драконить)


Код
//---------------------------------Добавлено-------------------------------------
              set #mobMax 1580423              // цвет пикселя в максимальном положении ХП моба
              set #xmobMax 170                   // х  координата в максимальном положении ХП моба
              set #ymobMax 22                     // y координата в максимальном положении ХП моба
              set #loop 1                              // пременная служит для отсчета циклов проверки
              set #loopMAX 8                        // количество циклов (на свое усмотрение)
//-----------------------------------------------------------------------------------

set %mob [1] F1                             //nexttarget


set %mob [2] F2                            // mob 1
set %mob [3] F3                            // mob 2
set %mob [4] F4                            // mob 3


set %attack [1] F5                        // attack mob
//set %attack [2] F6                     // нет маны стоит на месте - отказался от удара
//set %attack [3] F7                     // нет маны стоит на месте - отказался от удара


set $pickup F9                                  // pickup drop


set #pickup 3                               //

set #mobColorHP 1580423              // color HP min

set #xMobHP 22                           //x cor
set #yMobHP 22                          //y cor

set #mobsize size (%mob)            //
set #attacksize size (%attack)     //
set #nMob 1
set #nAttack 1


:start
set #loop 1 //----------------------Добавлено----------------------
while_not #xMobHP, #yMobHP #mobColorHP  
    post %mob [#nMob]
    if #nMob < #mobsize
        set #nMob #nMob + 1
  else
        set #nMob 1
    end_if
    wait 100
  //wait random (1000)
    get color #c #xMobHP, #yMobHP
  
end_while



set #nMob 1


while #xMobHP, #yMobHP #mobColorHP
    post %attack [#nAttack]
    if #nAttack < #Attacksize
        set #nAttack #nAttack + 1
    else
        set #nAttack 1
    end_if
    wait 100
                             //------------------Добавлено--------------
                              while #xmobMax, #ymobMax #mobMax  
                                      set #loop #loop + 1
                                         if #loop > #loopMAX
                                           set #loop 1
                                           send {Escape}  // ----- Кнопка  "Escape" или "Esc" отменяет выбранную цель.    
                                           goto start                      
                                         end_if
                                       wait 200 //--- задержка в цикле влияет на удержание таргета. (на свое усмотрение)
                               end_while
                             //---------------------------------------------
end_while

repeat #pickup
    post $pickup
    wait 200
            
end_repeat

goto start



Автору скрипта - огромное СПС )

Автор: 4u4undra 30.8.2011, 16:41

Не могу указать координаты хп монстра. Когда навожу на нужное место мышкой и нажимаю Ctrl+A вылетает сообщение "Не могу найти рабочее окно". В чем проблема не могу понять, все темы форума перерыл внятного ответа не нашел.
ОС Хп х32, версия UOPilot последняя, пробовал и на более ранних версиях...

Автор: DarkMaster 30.8.2011, 19:34

https://forum.uokit.com/index.php?showtopic=22055

Автор: 4u4undra 31.8.2011, 0:13

Теперь проблема другая взял скрипт из этой темы вроде все подогнал под себя вышло вот так:

Цитата
// Кнопка с макросом /targetnext
set %mob [1] F11
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F5



// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F2
set %attack [2] F3
set %attack [3] F7


// Кнопка с подбором лута.
set $pickup F4

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 3

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1251183
// Координата крайней левой точки полоски хп моба.
set #xMobHP 522
set #yMobHP 674

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
post %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
post %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

repeat #pickup // Собираем дроп.
post $pickup
wait 200
wait random (500)
end_repeat

goto start

1)Чар тупо бьет мобов автоатакой скилы атаки не юзает.
2)Не поднимает дроп.
3)Пытается атаковать мертвого моба то есть стоит и ждет пока он не исчезнет, в это время его лупит другой моб.

Автор: DarkMaster 31.8.2011, 10:11

неправильно были указаны координаты/цвет точек. цвет лучше не менять, а искать координаты под него.

Автор: 4u4undra 31.8.2011, 17:19

Сделал цвет который был указан изначально и нормальные координаты но все равно тоже самое.
Какая связь координат хп моба и то что он не собирает дроп или то что не бьет скиллами?
Из скрипта нужно чтото лишнее удалять или дописывать помимо цвета и координат?

Автор: DarkMaster 31.8.2011, 19:15

наипрямейшее. скрипт отталкивается от того что видит на экране. точка взята не правильно 100%

Автор: DarkMaster 31.8.2011, 19:43

Насколько я понимаю у тебя зацикливается вот этот кускок:
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
post %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

циклится он потому что не может увидеть хп моба

Автор: 4u4undra 31.8.2011, 20:41

Цитата(DarkMaster @ 31.8.2011, 19:43) *

Насколько я понимаю у тебя зацикливается вот этот кускок:
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
post %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

циклится он потому что не может увидеть хп моба

Так.
координаты я определяю через FastStone Capture. Делаю снимок экрана и потом в паинте смотрю координаты их пишу в скрипт. Как может не находить...

Автор: DarkMaster 31.8.2011, 20:44

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

Автор: 4u4undra 31.8.2011, 22:37

Так а смысл из скрина окна искать координату, в оконном режиме л2.

Автор: DarkMaster 1.9.2011, 0:06

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

Автор: DarkMaster 1.9.2011, 0:46

Цитата
Привет, парюсь уже пару дней со скриптом. Если у тебя есть аська и если тебя не затруднит помочь, скажи номер...

Дык а что я нового там скажу? Проблема банальная и ничего шибко сверх не требующая.
1) Можешь попытаться через set windowpos окно подвигать за пределы экрана, чтобы узнать толщину рамки и сделать смещение на нее.
2) Так же можешь попробовать через findcolor найти этот цвет. Правда стоит оговориться - финдколор найдет все точки с таким цветом - задай область так, чтобы в нее не попало твое собственное хп и хп пета(если есть). После финдколора сохрани массив save_array, открой блокнотом, посмотри найденные координаты.
3) Вырежи рамку слева от хп цели, найди эту рамку с помощью findimage в абсолютных и в относительных координатах. Потом измени координаты хп моба на эту разницу.
Вариантов на самом деле море.

Автор: DarkMaster 1.9.2011, 10:40

Цитата
Так спасибо, мне помогло то что ты в теме отписал по поводу того что скрин в игре сделать.
Я просто думал что нужны координаты относительно всего рабочего стола, а не игрового окна... в этом и была проблема.
А вот еще вопросы:
1)Как сделать чтобы он меньше тупил между тем как юзает скил и бьет автоатакой? те хотелось ты чтобы после того как ударяет сразу бил простыми ударами.
2)Куда запихать бафф, просто у меня варк бегает, точнее стоит в комнате и как мне сделать чтобы он сам себя баффал в процессе убиения моба чтобы его не грохнули потому что он будет тупо стоят и баффаться ничего не делая при этом.
3)Тупит чтото при сборе дропа т.е собирает его не весь к примеру, а если ставлю вайт больше 200 вот в этой части тогда тоже после сбора стоит думает.
Цитата
repeat #pickup // Собираем дроп.
post $pickup
wait 200
wait random (500)

И еще если ставлю юзать к примеру 3-4 скилла атакующих он их юзает но между этим тормозит в это время его убивают...

1) Автоатака должна автоматически вызывать линейкой после атакой скилом, если не прописан макрос на форс атаку.
2) Бафф в отдельный скрипт.
3) Количество собираемого дропа указывается в скрипте:
// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 3

Скрипт писал без клиента л2 и ни разу не запускал. Как следствие не оптимизировал задержки. В целом по поводу "втуплений" - убери в теле скрипта wait random. Было сделано для обхода некоторых защит и более реалистичного поведения. Так же можно уменьшить и другие wait в _теле_ скрипта. Задержка, которая выставляется левее кнопки запуска скрипта должна быть 0-1.

Автор: DarkMaster 1.9.2011, 13:57

https://forum.uokit.com/index.php?showtopic=22175
Накидал для баффа. Можешь тестером заодно побыть =)

Автор: Larrikin 9.9.2011, 2:00

Как вставить автоопределение смерти моба по распознаванию контрольного места, а не по координатам? вот скрины как можно искать примерно:

http://imageshack.us/photo/my-images/268/mobhpwindow.png/

То есть стрелочка бывает открытая и закрытая, но начало полоски хп относительно неё не меняется ни по вертикали ни по горизонтали даже если окошко растягивать вправо. В бафе КХ используется распознование кусочка, можно это и здесь применить? тогда скрипт будет всегда определять цвет первого пикселя для любого разрешения и положения этой полоски хп.

Автор: DarkMaster 9.9.2011, 2:06

у меня была идея попробовать, но руки пока не дошли. Это кстати далеко не гарантия того, что будет корректно определяться смещение. Любимое занятие л2 - это масштабировать окна. Есть приличная вероятность панелька хп моба может быть чуть меньше, чуть больше, чуть искривлена и т.д. Вообще по левой вертикальной полоске с разворачиванием/сворачиванием это надо делать. Пока не до этого.

Автор: Larrikin 9.9.2011, 2:15

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

http://imageshack.us/photo/my-images/163/mobhpwindowsmall.png/

Автор: DarkMaster 9.9.2011, 2:57

Тут масштабирование немного иначе идет. Я наверно не очень корректно выразился. У меня есть подозрение, что под соотношение сторон подстраивается. У меня сейчас 2 компа и ноут. Везде приходиться делать поправки в идеально работавших скриптах. Причем визуально это не заметно. Надо тестировать. Зачастую меняется даже не размер, а оттенок - цвета чуть иначе переливаются.

Автор: Larrikin 9.9.2011, 3:37

Но изменение оттенка это вроде другой вопрос - он для любого метода определения координат возникает, разве нет? Я-то про сам пиксель, с которого брать цвет - как автоматизировать его поиск.

Автор: DarkMaster 9.9.2011, 5:30

Не совсем. Есть точки полупрозрачные/меняющиеся в зависимости от настроения линейки. А есть точки которые меняют оттенок при изменении разрешения/пропорций экрана. На полоске хп пета я с этим уже вставал на грабли и достаточно долго искал "правильные" Y координаты полоски.

Автор: Larrikin 9.9.2011, 6:03

А по диапазонам можно искать цвета? Если макс красного канала 255, то пример

Если красного в этой точке больше х1, то моб на прицеле и жив, иначе
Если красного в этой точке больше х2, то моб на прицеле и скорее мертв или при смерти, иначе
Моб не выбран или глюк таргетирования

Автор: DarkMaster 9.9.2011, 6:06

Поверь гораздо проще пару часов поискать точки, чем делать диапазон. Я попробую, но скорее всего завтра. Щас занят, а потом спать уже надо будет.

Автор: Zeleax 9.9.2011, 7:23

В полоске жизни живого моба есть горизонтальная полоса неизменного диапазона цвета R(111)+G(23)+B(19-20) - по крайней мере во всех вышеприведенных примерах. Если он присутствует, значит моб жив

Автор: Larrikin 9.9.2011, 7:44

А как будет выглядеть кусок кода, который ищет эти лычки "стрелки вверх" или "стрелки вниз" и от них берет самый левый такой пиксель?

Автор: Zeleax 9.9.2011, 7:56

а поиск цвета не устроит (тот что я выше описал)?

Автор: DarkMaster 9.9.2011, 13:57

Цитата
а поиск цвета не устроит (тот что я выше описал)?

Без шансов. Там этих полосок хп до 11 штук. Можно не ту цепануть. Надо финдимиджем.

Автор: Larrikin 9.9.2011, 14:42

А еще хорошо бы сделать с настройкой на какую стрелку работать - вниз или вверх. Тогда простым кликом мышки в окне линейки можно приостанавливать действия персонажа не останавливая работу скрипта.

Автор: DarkMaster 10.9.2011, 5:41

попробуй, отпишись.
https://forum.uokit.com/index.php?act=Attach&type=post&id=1034
Закинуть в папку FindImage/L2/ рядом с пилотом

Код
set logging open 100 100 700 400
set $target findimage (0 0 1920 1080 (FindImage/L2/Target.bmp) %Target 2 90 1)
if $target > 90
    set $typeTarget компактная
else
    set $target findimage (428 1 441 39 (FindImage/L2/TargetBig.bmp) %Target 2 90 1)
    set $typeTarget развернутая
end_if
if $target > 90
    set #x %Target [ 1 1 ] + 18
    set #y %Target [ 1 2 ] + 29
    if #x #y 1844590
        set logging Успех. Цель обнаружена $typeTarget $target хп найдено..
    else
        set logging Провал. Цель обнаржуена $typeTarget $target, но хп не найдено.
    end_if
else
    set logging Провал. Цель НЕ обнаружена $target .
end_if

Автор: Larrikin 10.9.2011, 6:52

а че лычки всё равно как обрезать в .bmp?

Автор: DarkMaster 10.9.2011, 8:59

ой ссылку не кинул. оно в соседней теме. тут нет прав прилеплять...
обновил

Автор: Larrikin 10.9.2011, 14:28

точный текст моего скрипта

Код
set #handleWin findwindow (1)
set workwindow #handleWin
while 1

set logging open 100 100 700 400
set $target findimage (0 0 1920 1080 (FindImage/L2/Target.bmp) %Target 2 90 1)
if $target > 90
    set $typeTarget компактная
else
    set $target findimage (428 1 441 39 (FindImage/L2/TargetBig.bmp) %Target 2 90 1)
    set $typeTarget развернутая
end_if
if $target > 90
    set #x %Target [ 1 1 ] + 18
    set #y %Target [ 1 2 ] + 29
    if #x #y 1844590
        set logging Успех. Цель обнаружена $typeTarget $target хп найдено..
    else
        set logging Провал. Цель обнаржуена $typeTarget $target, но хп не найдено.
    end_if
else
    set logging Провал. Цель НЕ обнаружена $target .
end_if



post {F1} //check window
end_while


покачался стрелками вверх и вниз и не увидел в логе ничего кроме такого:
15:10:43 2 (, 21): - Провал. Цель НЕ обнаружена -1 .
15:10:44 2 (, 21): - Провал. Цель НЕ обнаружена -1 .

Автор: DarkMaster 10.9.2011, 14:42

файлики закинул не туда, где им место быть.

Автор: Larrikin 10.9.2011, 14:49

UOPilot\FindImage\L2\Target.bmp
UOPilot\FindImage\L2\TargetBig.bmp

Автор: DarkMaster 10.9.2011, 14:57

есть баг. если ты сохранял какой-либо скрипт или подгружал, то findimage отваливается и возвращает -1, точно так же, если бы не было файлов. перезапусти пилот.

Автор: Larrikin 10.9.2011, 15:32

надо было слеши в пути обратные

открытая стрелка не видится, а закрытая:

16:30:36 2 (1.txt, 18): - Провал. Цель обнаржуена компактная 99, но хп не найдено.
16:30:37 2 (1.txt, 18): - Провал. Цель обнаржуена компактная 99, но хп не найдено.

Автор: DarkMaster 10.9.2011, 16:12

ну собственно то, о чем я и говорил. хотя момент, что открытая не видится меня сильно смущает. Можно сообщение с открытой?

По поводу закрытой все просто - смещение по координатам не верно либо не верен оттенок. От каких граблей уходили на те и встали.

Попробуй это

Код
set logging open 100 100 700 400
set #needColor 1844590
set $target findimage (0 0 1920 1080 (FindImage/L2/Target.bmp) %Target 2 70 1)
if $target > 90
    set $typeTarget компактная
else
    set $target findimage (428 1 441 39 (FindImage/L2/TargetBig.bmp) %Target 2 70 1)
    set $typeTarget развернутая
end_if
if $target > 90
    set #x %Target [ 1 1 ] + 18
    set #y %Target [ 1 2 ] + 29
    move #x #y
    if #x #y #needColor
        set logging Успех. Цель обнаружена $typeTarget $target хп найдено..
    else
        get color #hpColor #x #y
        set logging Провал. Цель обнаржуена $typeTarget $target, но хп не найдено. Искомый цвет #needColor текущий #hpColor .
    end_if
else
    set logging Провал. Цель НЕ обнаружена $target .
end_if
wait 3s

Автор: Larrikin 10.9.2011, 16:23

Раскрытое окошко:
17:17:21 2 (1.txt, 24): - Провал. Цель НЕ обнаружена 0 .
17:17:28 2 (1.txt, 24): - Провал. Цель НЕ обнаружена 0 .

Свернутое окошко:
17:17:33 2 (1.txt, 21): - Провал. Цель обнаржуена компактная 99, но хп не найдено. Искомый цвет 1844590 текущий 1119776 .
17:17:39 2 (1.txt, 21): - Провал. Цель обнаржуена компактная 99, но хп не найдено. Искомый цвет 1844590 текущий 111977

На вид курсор прыгает чуть левее полоски, чем надо

Автор: DarkMaster 10.9.2011, 16:32

По поводу раскрытого можно уменьшить % совпадения. Сейчас достаточно строгое сравнение. Но в целом не вижу смысла дальше развивать идею - на разных компах разные смещения. Цель была найти общий элемент и от него отталкиваться. Данная панелька не может быть использована для этих целей, т.к. ее положение относительно хп не фикировано.

Автор: Larrikin 10.9.2011, 16:39

А по какому скрину искалось смещение для скрипта? Хотелось бы сравнить со своими.

Автор: DarkMaster 10.9.2011, 16:47

https://forum.uokit.com/index.php?act=Attach&type=post&id=1035
развернутый не сохранился.

Автор: Larrikin 10.9.2011, 18:51

Рабочий скрипт и картинки

Код
set #n 1
set #var findwindow (Lineage II)
while #var <> 0
set #result setwindowtext ( #var #n)
set #var findwindow (Lineage II)
set #n #n + 1
end_while

set #handleWin findwindow (1)
set workwindow #handleWin
while 1

set logging open 100 100 700 400
set #needColor 1251183
set $target findimage (0 0 1920 1080 (FindImage\L2\LTarget.bmp) %Target 2 90 1)
if $target > 90
    set $typeTarget компактная
else
    set $target findimage (0 0 1920 1080 (FindImage\L2\LTargetBig.bmp) %Target 2 90 1)
    set $typeTarget развернутая
end_if
if $target > 90
    set #x %Target [ 1 1 ] + 15
    set #y %Target [ 1 2 ] + 20
    move #x #y
    if #x #y #needColor
        set logging Успех. Цель обнаружена $typeTarget $target хп найдено..
    else
        get color #hpColor #x #y
        set logging Провал. Цель обнаржуена $typeTarget $target, но хп не найдено. Искомый цвет #needColor текущий #hpColor .
    end_if
else
    set logging Провал. Цель НЕ обнаружена $target .
end_if
wait 3s


// post {F1} //check window
end_while

http://rghost.ru/21111191

Автор: NickNick 1.10.2011, 14:25

Здравствуйте. Пилотом начал пользоваться день назад, поэтому еще ничего толком о нем не знаю. Прежде чем писать свои (и изменять уже написанные) макросы, решил попробовать готовые. При выполнении скрипта из первого поста выдается вот такая ошибка

скрин с ошибкой
Изображение

Все координаты и значения цвета пикселя выставлены верно, т.к. самый простой скрипт через некст таргет работает отлично. Буду рад любой помощи.

Автор: DarkMaster 1.10.2011, 16:56

Цитата
Рабочий скрипт и картинки

Вся фишка в том, что картинки по факту у всех разные. У меня 2 компа и ноут. С одной и той же папкой систем доступной только для чтения все равно приходится делать 3 набора картинок. Везде разные оттенки и чуть искаженные пропорции. Открывал 2 картинки и пытался на глаз найти отличия. Минуты две прошло когда я заметил хоть какую-то разницу, а на практике даже 15% сравнение проваливается.

NickNick, пост на send попробуй заменить.

Автор: NickNick 1.10.2011, 17:29

Цитата(DarkMaster @ 1.10.2011, 17:56) *

NickNick, пост на send попробуй заменить.

Да, спасибо, помогло. Так понял, что это фича для ГГ. Сам играю на фришке.

Автор: DarkMaster 1.10.2011, 17:47

Это в какой-то из этапов развития л2 было необходимо. Сейчас, вроде, сенд работает и на оффе. Сенд переписывался несколько раз.

Автор: боженька 1.10.2011, 20:13

у меня вопросец по поводу findimage (0 0 1920 1080 (FindImage\L2\LTarget.bmp) %Target 2 90 1)
никак не могу понять как это все работает, скрипт ищет точное соответствие заданному рисунку ?

Автор: DarkMaster 1.10.2011, 20:39

90%
предпоследняя цифра. подробно в истории развития.

Автор: Наташа 3.10.2011, 2:48

а что за набор картинок необходим? уже 5 часов мучений, и никак не могу заставить убивать моба доконца и идти к следующему (

Автор: DarkMaster 3.10.2011, 3:33

Никаких картинок не нужно. Просто скрипт из 1 поста темы.

Автор: DarkMaster 3.10.2011, 16:00

заменил везде post send'ом.

Автор: Marl 10.10.2011, 0:00

/targetnext работает в ограниченном диапазоне, метица на /target name то всех агров соберу, а можно ли задать координаты /loc чтоб он бегал по определенному пути или по кругу и проверял точки\цыет, как найдет скрипт движется дальше, не нашел - бежит дальше....
Надеюсь нормально изложил свои мысли 0))))

Автор: боженька 10.10.2011, 7:20

Цитата(Marl @ 10.10.2011, 1:00) *

/targetnext работает в ограниченном диапазоне, метица на /target name то всех агров соберу, а можно ли задать координаты /loc чтоб он бегал по определенному пути или по кругу и проверял точки\цыет, как найдет скрипт движется дальше, не нашел - бежит дальше....
Надеюсь нормально изложил свои мысли 0))))

/loc нельзя, бегать по "кругу" тебе поможет якорь

Автор: DarkMaster 10.10.2011, 10:03

Цитата
/target name то всех агров соберу

Можно по ходу тыкать некст таргет. Ну а вообще якорь)

Автор: Marl 10.10.2011, 18:19

некого использовать якорем (( или просто вечер потратить и сделать волка

Автор: sweetLu 13.10.2011, 10:07

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while



вот это прокручивает постоянно, моба не выделает, и не бежит к нему sad.gif

Автор: боженька 13.10.2011, 10:42

Цитата(sweetLu @ 13.10.2011, 11:07) *

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while
вот это прокручивает постоянно, моба не выделает, и не бежит к нему sad.gif


100500 раз, проверяйте правильность координат и цвета.

Автор: sweetLu 13.10.2011, 10:48

проверял sad.gif

Автор: sweetLu 13.10.2011, 11:01

даже не хочет искать моба

Автор: sweetLu 13.10.2011, 11:21

находит мобов, и просто меняет таргеты, стоя на месте

Автор: DarkMaster 13.10.2011, 13:34

Цитата
проверяйте правильность координат и цвета.

У тебя не видит хп моба.

Автор: sweetLu 13.10.2011, 13:41

выделяю моба, появляется полоска НР
нажимаю Ctrl+A, даные точки записываю,
set #mobColorHP 1251183
set #xMobHP 374
set #yMobHP 714

Автор: DarkMaster 13.10.2011, 13:52

set #yMobHP 714 ??
У вас хп внизу экрана?

Автор: sweetLu 13.10.2011, 14:25

внизу, почти посередине

Автор: DarkMaster 13.10.2011, 15:11

Скрипт к окну привязываете? Относительные с абсолютными координаты не путаете?

Хорошо. Сделайте тогда
get color #1 #xMobHP #yMobHP
msg #1
Результат сюда.

Автор: sweetLu 13.10.2011, 16:27

да, конешно привязываю, перебирает мобов по таргету и не хочет их бить, щас переделаю, отпишу

Автор: sweetLu 13.10.2011, 16:41

щас вот до сюда доходит и повторяет

while #xMobHP, #yMobHP #mobColorHP // Ïîêà âèäèì õï - ëóïèì
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

моба не бьет

Автор: DarkMaster 13.10.2011, 18:06

Цитата
Хорошо. Сделайте тогда
get color #1 #xMobHP #yMobHP
msg #1
Результат сюда.

Автор: sweetLu 13.10.2011, 18:16

// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4

// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F5
set %attack [2] F6
set %attack [3] F7
set %attack [4] F8

// Кнопка с подбором лута.
set $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 4

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 2240683
// Координата крайней левой точки полоски хп моба.
set #xMobHP 383
set #yMobHP 716

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #1 #xMobHP #yMobHP
// msg #1
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

repeat #pickup // Собираем дроп.
send $pickup
wait 200
wait random (500)
end_repeat

goto start

вот это?

Автор: Zeleax 13.10.2011, 19:53

Код
// Координата крайней левой точки полоски хп моба.
set #xMobHP 383
set #yMobHP 716

после этого куска попробуй вставить то что DarkMaster написал

Автор: sweetLu 13.10.2011, 22:38

вот такое щас выдает, как до ходит до строчек
get color #1 #xMobHP #yMobHP
msg #1


Эскизы прикрепленных изображений
Прикрепленное изображение

Автор: sweetLu 13.10.2011, 22:48

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

выделяет моба, и застревает на этом участке

Автор: DarkMaster 14.10.2011, 8:03

Выполни
get color #1 #xMobHP #yMobHP
msg #1
когда у тебя видно хп цели на экране, а не окно пилота в этом месте.

Автор: sweetLu 14.10.2011, 8:20

не могу сообразить, куда это вписать sad.gif

Автор: DarkMaster 14.10.2011, 8:29

// Координата крайней левой точки полоски хп моба.
set #xMobHP 383 // Значения должны быть как у тебя в скрипте ! ! !
set #yMobHP 716
get color #1 #xMobHP #yMobHP
msg #1

Можешь в отдельной вкладке это запустить.

Автор: sweetLu 14.10.2011, 8:48

так, сделал, выдает 2240683, я так понял это номер цвета

Автор: DarkMaster 14.10.2011, 9:09

а у вас для этой точки стоит цвет set #mobColorHP 1251183
Вы либо не верно указали точку либо не верно указан цвет. Явное расхождение заданных вами параметров и фактического цвета.

Автор: sweetLu 14.10.2011, 11:41

задал другие параметры
set #xMobHP 375
set #yMobHP 715
get color #1 #xMobHP #yMobHP
msg #1

нащел цвет 1580168

вставил даные и о5 тут скрипт крутица и все

while_not #xMobHP, #yMobHP #mobColorHP
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

играю без ентер чата

о5 беребирает таргеты и стоит на месте sad.gif

Автор: DarkMaster 14.10.2011, 12:55

Цитата
// Координата крайней левой точки полоски хп моба.
set #xMobHP 383 // Значения должны быть как у тебя в скрипте ! ! !
set #yMobHP 716
get color #1 #xMobHP #yMobHP
msg #1

Можешь в отдельной вкладке это запустить.

Результат совпадает с введенным тобой цветом? Этот глюк может быть только из-за кривых координат/цвета.

Автор: sweetLu 14.10.2011, 13:15

совпадает, щас попросил друга, сделать этот скрипт себе, мб после обновления игры, ччет другое стало

Автор: Uniqa 14.10.2011, 23:29

Прошу помочь с настройкой. Кто может объяснить по скайпу? Мой логин в скайпе uniqa-l2

Автор: sweetLu 15.10.2011, 11:47

Цитата(sweetLu @ 14.10.2011, 12:41) *

задал другие параметры
set #xMobHP 375
set #yMobHP 715
get color #1 #xMobHP #yMobHP
msg #1

нащел цвет 1580168

вставил даные и о5 тут скрипт крутица и все

while_not #xMobHP, #yMobHP #mobColorHP
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

играю без ентер чата

о5 беребирает таргеты и стоит на месте sad.gif


кто поможет справица с этой проблемой?

get color #c #xMobHP, #yMobHP
msg ищем #mobColorHP нашли #c

выдает разные котрые нашли, если разных выделяю, если бегаешь по локации

msg #mobsize #attacksize

это что такое, выдает 4 4

мне кажется что это после обновления стало чет не то sad.gif

Автор: DarkMaster 15.10.2011, 13:12

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

Автор: sweetLu 15.10.2011, 13:19

Цитата(DarkMaster @ 14.10.2011, 9:29) *

// Координата крайней левой точки полоски хп моба.
set #xMobHP 383 // Значения должны быть как у тебя в скрипте ! ! !
set #yMobHP 716
get color #1 #xMobHP #yMobHP
msg #1

Можешь в отдельной вкладке это запустить.


тут он находит цвет, все норм

Цитата(sweetLu @ 15.10.2011, 12:47) *

кто поможет справица с этой проблемой?

get color #c #xMobHP, #yMobHP
msg ищем #mobColorHP нашли #c



тут он пищет что ищет цвет по
set #xMobHP 383
set #yMobHP 716
на нашли совсем другой







get color #c #xMobHP, #yMobHP
msg ищем #mobColorHP нашли #c

когда тут он пишет что нашли "хххххххх"
вставляешь в скрипт "ххххххх", то он перебирает мобов, находит 1, на котором нашли, бьет его, когда выбирает другого уже ничего не происходить, ищет и ищет цель

Автор: Fanky 17.10.2011, 15:08

Попробуй еще разок определить цвет и координаты так

Цитата
wait 10s // Время чтоб навести курсор на точку
get mouse_pos #x #y // Определение координат х, у
get color #col #x,#y // Определение цвета в точке х, у
msg #x #y #col // Выводим сообщение с координатами и цветом
stop_script

Автор: Fanky 17.10.2011, 15:34

писал скрипт год назад навроде этого , только не использовал переменные, т.к. не дошел до них еще -))

Дарк, можно хотяб в двух словах описать каждую строчку в этом обрывке твоего скрипта Буду признателен.

Код

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP  // Пока не увидим хп, ищем моба
    send %mob [#nMob]
    if #nMob < #mobsize
        set #nMob #nMob + 1
    else
        set #nMob 1
    end_if
    wait 500
    wait random (1000)
//    get color #c #xMobHP, #yMobHP
//    msg ищем #mobColorHP нашли #c
end_while

set #nMob 1



Вот хочу разобраться и понимать хотя бы смысл каждой строчки, а вникну по ходу дела. А то в хелпе не оч. понятно-) Я вообще если чесно не понимаю как здесь реализовано , чтоб не начать бить уже битого моба, где я у себя использовал еще и правую сторону хп моба.
заранее спс.

Автор: DarkMaster 17.10.2011, 15:46

Тут нет правой стороны хп. Все было писано на коленке по-быстрому и как можно проще. Но добавить не сложно будет.

set #mobsize size (%mob) - получаем количество интересующих мобов
set #attacksize size (%attack) - количество используемых скилов.
set #nMob 1 - приведение переменной к стартовому стстоянию
set #nAttack 1 - приведение переменной к стартовому стстоянию

while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба. СЮДА МОЖНО ДОБАВИТЬ ПРАВЫЙ КРАЙ ХП. Однако надо быть осторожным - если вас будет бить коцаный моб, то скорее всего вы его так и не начнете атаковать.
send %mob [#nMob] - жмем кнопку таргета
if #nMob < #mobsize - увеличиваем номер элемнта массива, чтобы жать потом другой таргет.
set #nMob #nMob + 1
else
set #nMob 1 - дошли до конца массива, начинаем перебор сначала.
end_if

wait 500 - задержка для того чтобы таргет обновился на экране
wait random (1000) - доп задержка с разбросом 0-1 секунда

Автор: sweetLu 17.10.2011, 15:56

wait 10s // Время чтоб навести курсор на точку
get mouse_pos #x #y // Определение координат х, у
get color #col #x,#y // Определение цвета в точке х, у
msg #x #y #col // Выводим сообщение с координатами и цветом
stop_script

по этому все получилось, пока полет нормальный

Автор: Fanky 17.10.2011, 18:04

Дарку спс, буду доходить , т.к. не понимаю некоторые команды еще-)

Цитата
днако надо быть осторожным - если вас будет бить коцаный моб, то скорее всего вы его так и не начнете атаковать.

Верно. Насчет правой ХП. Но Если все координаты пашут норм., то битый моб не может сагриться по сути. Но если бить в месте где вааааще никого, то эт и не обязательно.А Я целый месяц стоял в склепах позора, где народу дофига , просто с недобитых мобов сбрасывал таргет и по новой пофиг -), все как по маслу \ cool.gif

Автор: DarkMaster 17.10.2011, 19:16

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

Автор: IchWill 22.10.2011, 22:31

медленно выбирает мобов, можно ли как-то ускорить (кроме пауз wait)? или это ограниченно скорость выполнения команд пилота?

Автор: DarkMaster 23.10.2011, 17:01

В теле скрипта уменьши wait'ы

Автор: iretrn 3.11.2011, 16:08

Всем привет, просмотрел всю ветку данного подраздела и не смог разобраться в некоторых местах, подскажите пожалуйста, что означают подчеркнутые строки. Как можно запустить 2 и более скрипта в одном окне программы?

За ответы буду очень благодарен




set %mob [1] F1
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4
set %attack [1] F5
set %attack [2] F6
set %attack [3] F7
set %attack [4] F8
set $pickup F9
set #pickup 4
set #mobColorHP 4474495
set #xMobHP 577
set #yMobHP 581

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize


:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c

end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

repeat #pickup // Собираем дроп.
send $pickup
wait 200
wait random (500)
end_repeat

Автор: DarkMaster 3.11.2011, 17:21

Для корректной работы пилота необходимо, чтобы участки с проверками цвета было видно. Сделали вторую вкладку со скриптом и вперед. Уточните в чем проблема.

set #mobsize size (%mob) // Определение размера массива с мобами для перебора.
set #attacksize size (%attack) // ТОже самое для скилов.
set #nMob 1 // Объявление переменной для того чтобы мобы начали выбираться с первого в массиве.
set #nAttack 1 // аналогично для скилов.

// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
Закомментированные строки для отладки. Использовались для проверки верно ли задан цвет. Если выделить моба, то в сообщение выданном пилотом, должны содержатся два одинаковых цвета.

Автор: iretrn 3.11.2011, 18:21

Цитата(DarkMaster @ 3.11.2011, 18:21) *

Для корректной работы пилота необходимо, чтобы участки с проверками цвета было видно. Сделали вторую вкладку со скриптом и вперед. Уточните в чем проблема.

set #mobsize size (%mob) // Определение размера массива с мобами для перебора.
set #attacksize size (%attack) // ТОже самое для скилов.
set #nMob 1 // Объявление переменной для того чтобы мобы начали выбираться с первого в массиве.
set #nAttack 1 // аналогично для скилов.

// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
Закомментированные строки для отладки. Использовались для проверки верно ли задан цвет. Если выделить моба, то в сообщение выданном пилотом, должны содержатся два одинаковых цвета.


Cпасибо огромное, проблема в том что я новичек в этом деле, разбирался с нуля smile.gif

Автор: Sky 18.11.2011, 18:20

работает ваш скрипт с небольшими доработками, но не понятно почему иногда раз в 30 минут иногда раз в 5 часов вылетает ошибка и все дохнут, версия пилота 2.20

Код
 
// Кнопка с макросом /targetnext
set %mob [1] F2
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F5
//set %mob [3] F6
//set %mob [4] F7
// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
//set %attack [1] F8
set %attack [2] F1 //подкат по мп забит

//pause_script 4
// Кнопка с подбором лута.
set $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 3

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1251183
// Координата крайней левой точки полоски хп моба.
set #xMobHP 575
set #yMobHP 28

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP  // Пока не увидим хп, ищем моба
    send %mob [#nMob]
    if #nMob < #mobsize
        set #nMob #nMob + 1
    else
        set #nMob 1
    end_if
    
    //wait 300
    //wait random (200)
//    get color #c #xMobHP, #yMobHP
//    msg ищем #mobColorHP нашли #c
end_while

set #nMob 1
send f11 // селф патак
//resume_script 4

set timer

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
    send %attack [#nAttack]
    //if 65, 54 8932131
    //send {f8}
    //end_if
    if timer > 20000 // Посыл эскейпа
    if 724, 28 1251183
        send {Escape}
        set timer
    end_if
    end_if
    if #nAttack < #Attacksize
        set #nAttack #nAttack + 1
    else
        set #nAttack 1
    end_if
       // if_not 589, 28 1251183 // оверхит
       //     send {f12}
       //     send {f12}
       //     send {f12}
       //  end_if
     if_not 61, 45 2897022
     send {f9}// селф хил
     end_if

    //wait 300
    //wait random (200)
end_while

//repeat #pickup // Собираем дроп
//    send {f9}
//    wait 200
//    //wait random (500)
//end_repeat

goto start


может есть идеи почему?Прикрепленное изображение

Автор: DarkMaster 18.11.2011, 20:25

//set %attack [1] F8
set %attack [2] F1 //подкат по мп забит
Для начала вот это в порядок приведите... Это _очень_ некорректно. Элементы массива должны идти по порядку.

Делайте логи каждой строки - пусть все это пишет в файл. Визуально все рабочее.

Автор: Sky 19.11.2011, 9:51

Цитата
Делайте логи каждой строки - пусть все это пишет в файл. Визуально все рабочее.

поставил галочку писать логи в файл, а куда он их пишет? ошибка снова вылетела, а файла нового в папке пилота не обнаружил. Пробовал держать открытым окно логов, там пусто.
подскажите как писать логи каждой строки.

Автор: DarkMaster 19.11.2011, 10:37

set logging перед каждой строкой с содержимым строки.

Особенно интересует что он в send %mob [#nMob] пытается сделать.

Автор: Sky 19.11.2011, 13:03

странно все.
вставил set logging в одну строку перед send %mob [#nMob]
если не определять окно, то скрипт запускается, пишет что не может определить окно и пишет нормально в файл одинаковый лог
15:19:38 1 (1mob-1.txt, 39): - send F2
15:19:39 1 (1mob-1.txt, 39): - send F5
15:19:40 1 (1mob-1.txt, 39): - send F2
...
интересно скольбы понаписал за 5 часов работы.
а если запускать с рабочими окнами, то вобще не хочет запускаться с этой строкой set logging пилот сразу виснет, винда пишет что он допустил ошибку и закрывает его.
винда 7 х64, феном2 955, 4 ядра, 8 гиг оперативы.

может есть еще варианты чем можно заменить строку send %mob [#nMob] ?

Автор: DarkMaster 19.11.2011, 14:25

чет бред какой-то... попробуй перекачать пилот... заменять по сути нечем.
ну и совет все тот же. сделать кучу set logging , дождаться вылета пилота, файл лога мне.

Автор: Sky 22.11.2011, 5:45

script

// Макрос основного качателя
// Кнопка с макросом /targetnext
set %mob [1] F2
// Кнопки с макросами на таргет мобов.
set %mob [2] F5
set %mob [3] F6
set %mob [4] F7
// Кнопки со скилами атаки.
set %attack [1] F1
//set %attack [2] F1 //подкат по мп не забит
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1251183
// Координата крайней левой точки полоски хп моба.
set #xMobHP 575
set #yMobHP 28
set #asist.2 0 // флаг асиста 2 скрипта
set #abil.2 0 // флаг начала абил 2 скрипта
set #asluk.8 0 // флаг асиста лука
//---------------------------------------------------
set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1

:start
// Пока не увидим хп, ищем моба
while_not #xMobHP, #yMobHP #mobColorHP
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 300
end_while

set #nMob 1
send f11 // селф патак

set timer
// Пока видим хп - лупим
while #xMobHP, #yMobHP #mobColorHP
set #asist.2 1 // асистим вторым скриптом
send %attack [#nAttack]
if_not 720, 28 1251183 // если начали бить моба
set #abil.2 1 // флаг начала абил 2 скрипта
set #asluk.8 1 // флаг асиста лука
send f3 // абила дестра
end_if
//if 65, 54 8932131 // подкат по мп
//send {f8}
//end_if
if timer > 20000 // Посыл эскейпа
if 724, 28 1251183
send {Escape}
set timer
end_if
end_if
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
// if_not 589, 28 1251183 // оверхит
// send {f12}
// send {f12}
// send {f12}
// end_if
if_not 61, 45 2897022
send {f9}// селф хил
end_if
end_while
goto start



пилот скачал последней версии с месагой от морфика.
обновил скрипт, теперь таже ошибка вылетела на send %attack [#nAttack] после 3 часов работы.
еще подобная ошибка вылетает на строке set #asist.2 0, если запустить этот скрипт не запустив предварительно 2 скрипт. При этом странно, что ошибка вылетает, на 3 запуска, а на 4 запуск уже запускается скрипт без ошибки. Прикрепленное изображение
при вылете ошибки лог пишет 7:49:43 1 (1mob-1.txt, 15): - set #asist.2 0, так что я думаю в логе будет тоже самое когда вылетит ошибка на send %attack [#nAttack] и это врядли поможет понять в чем проблема. С рабочими пятью окнами также не получается запустить скрипт и писать все в лог. Думаю, что какой то тут глюк самого пилота.

Автор: DarkMaster 22.11.2011, 10:33

с мессагой морфика не последний пилот. тут прилеплено 2 темы где можно скачать, еще есть сайт...

Цитата
set #asist.2 0

Точно такую же ошибку выкинет, если скрипт во 2 вкладке не запущен.
Цитата
send %attack [#nAttack]

У меня есть подозрение, что происходит выход за пределы массива. Лог... Причем все же хотелось бы увидеть всю работу скрипта, т.е. весь вывод в тхт.

Автор: Sky 22.11.2011, 22:48

скачал другую версию, но тоже 2.22 без месаги морфика.
Вроде работает стабильнее, во всяком случае не виснет пилот с последующим завершением.
однако ошибка вылетела снова в send %mob [#nMob] только вместо FFFFFFF нули.
пробовал поставить set logging перед всеми строками, так с ними скрипт перестает выполняться, а только лог пишет, никакие sendы не отправляются, да и циклы условия вроде перестают работать.
не знаю вобщем. кусок лога прицепил, но ошибки не вылетели пока лог писал


Прикрепленные файлы
Прикрепленный файл  uopilot_1.zip ( 39,55 килобайт ) Кол-во скачиваний: 174

Автор: DarkMaster 22.11.2011, 23:23

Цитата
пробовал поставить set logging перед всеми строками

надо дублировать строки. т.е. что-то вроде:
set logging send %mob [#nMob]
send %mob [#nMob]

Причем сначала в лог, потом команда. Лог буду ковырять уже завтра, а то время четвертый час.

Автор: Sky 23.11.2011, 12:09

до сих пор стоят без ошибок, полет нормальный. smile.gif

Автор: BadGuy 13.12.2011, 14:10

Проблема в том что долго ждет перед аатой след моба,
и убигает за зону охоты,
бежит за недостижимой целью
как исправить?

Автор: DarkMaster 13.12.2011, 15:43

1) Долго - порезать вэйты в теле скрипта.
2) https://forum.uokit.com/index.php?s=&showtopic=21189&view=findpost&p=149591
3) https://forum.uokit.com/index.php?showtopic=22791 шибко не разбирался но написано именно для этого.

Автор: BadGuy 14.12.2011, 0:37

Цитата(DarkMaster @ 13.12.2011, 16:43) *

1) Долго - порезать вэйты в теле скрипта.
2) https://forum.uokit.com/index.php?s=&showtopic=21189&view=findpost&p=149591
3) https://forum.uokit.com/index.php?showtopic=22791 шибко не разбирался но написано именно для этого.

ДА порезал на 0,3сек и ниччего

Автор: BadGuy 14.12.2011, 9:37

Цитата(BadGuy @ 14.12.2011, 1:37) *

ДА порезал на 0,3сек и ниччего

тлько как обьединить все в 1 скрипт
https://forum.uokit.com/index.php?showtopic=21189&st=0&p=149591&#entry149591
эта сылка и даный скрипт на кач?

Автор: HellsBells 14.2.2012, 16:36

Скрипт
Код
set #handleWin findwindow (Lineage II)
set workwindow #handleWin
showwindow
// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2


// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F5


// Кнопка с подбором лута.
set $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 3
  
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 4474495
// Координата крайней левой точки полоски хп моба.
set #xMobHP 438
set #yMobHP 27

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP  // Пока не увидим хп, ищем моба
    send %mob [#nMob]
    if #nMob < #mobsize
        set #nMob #nMob + 1
    else
        set #nMob 1
    end_if
    wait 500
    wait random (1000)
//    get color #c #xMobHP, #yMobHP
//    msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
    send %attack [#nAttack]
    if #nAttack < #Attacksize
        set #nAttack #nAttack + 1
    else
        set #nAttack 1
    end_if
    wait 500
    wait random (1000)
end_while

repeat #pickup // Собираем дроп.
    send $pickup
    wait 200
    wait random (500)
end_repeat

goto start


Проблема такая,что чар просто бежит к мобу и начинает бить без скилов и не подбирает лут.
Подскажите пожалуйста

Автор: DarkMaster 14.2.2012, 20:31

Цитата
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 4474495
// Координата крайней левой точки полоски хп моба.
set #xMobHP 438
set #yMobHP 27


значит криво указал координаты/цвет

Автор: HellsBells 14.2.2012, 20:36

Перепробавал кучу вариантов...все криво
Может как-то не правильно тыкаю
Делаю скрин=>левый верхний угол хп моба=>Ctrl+A

Автор: DarkMaster 14.2.2012, 20:41

углы лучше не брать. для проверки цвета можете использоавть
get color #c #xMobHP #yMobHP
msg #c

Автор: HellsBells 14.2.2012, 21:04

Спасибо за помощь всё заработало!!

Автор: Sky 16.2.2012, 5:47

Цитата(Sky @ 22.11.2011, 8:45) *

script

// Макрос основного качателя
// Кнопка с макросом /targetnext
set %mob [1] F2
// Кнопки с макросами на таргет мобов.
set %mob [2] F5
set %mob [3] F6
set %mob [4] F7
// Кнопки со скилами атаки.
set %attack [1] F1
//set %attack [2] F1 //подкат по мп не забит
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1251183
// Координата крайней левой точки полоски хп моба.
set #xMobHP 575
set #yMobHP 28
set #asist.2 0 // флаг асиста 2 скрипта
set #abil.2 0 // флаг начала абил 2 скрипта
set #asluk.8 0 // флаг асиста лука
//---------------------------------------------------
set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1

:start
// Пока не увидим хп, ищем моба
while_not #xMobHP, #yMobHP #mobColorHP
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 300
end_while

set #nMob 1
send f11 // селф патак

set timer
// Пока видим хп - лупим
while #xMobHP, #yMobHP #mobColorHP
set #asist.2 1 // асистим вторым скриптом
send %attack [#nAttack]
if_not 720, 28 1251183 // если начали бить моба
set #abil.2 1 // флаг начала абил 2 скрипта
set #asluk.8 1 // флаг асиста лука
send f3 // абила дестра
end_if
//if 65, 54 8932131 // подкат по мп
//send {f8}
//end_if
if timer > 20000 // Посыл эскейпа
if 724, 28 1251183
send {Escape}
set timer
end_if
end_if
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
// if_not 589, 28 1251183 // оверхит
// send {f12}
// send {f12}
// send {f12}
// end_if
if_not 61, 45 2897022
send {f9}// селф хил
end_if
end_while
goto start



пилот скачал последней версии с месагой от морфика.
обновил скрипт, теперь таже ошибка вылетела на send %attack [#nAttack] после 3 часов работы.
еще подобная ошибка вылетает на строке set #asist.2 0, если запустить этот скрипт не запустив предварительно 2 скрипт. При этом странно, что ошибка вылетает, на 3 запуска, а на 4 запуск уже запускается скрипт без ошибки. Прикрепленное изображение
при вылете ошибки лог пишет 7:49:43 1 (1mob-1.txt, 15): - set #asist.2 0, так что я думаю в логе будет тоже самое когда вылетит ошибка на send %attack [#nAttack] и это врядли поможет понять в чем проблема. С рабочими пятью окнами также не получается запустить скрипт и писать все в лог. Думаю, что какой то тут глюк самого пилота.

теперь приходится только морфиковский пилот юзать, другие не пашут на фросте. И снова моя ошибка меня давай мучать.
понял в чем проблема, в какой то момент времени переменные #nAttack или #nMob становятся равными нулю судя по логам, но когда это происходит пока не понял и по логике скрипта это не возможно, но
это так и он вылетает с ошибкой.

Автор: DarkMaster 16.2.2012, 9:37

Это очень странно. Можно создать метку в самом начале скрипта и делать в теле небольшую проверку.
:rerun
....
:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
if #xMobHP = 0 or #yMobHP = 0
goto rerun
end_if

Автор: Sky 16.2.2012, 16:51

я сделал перед каждым сендом проверку:

if #nAttack = 0
alarm
set #nAttack 1
end_if
send %attack[#nAttack]

все работает, рандомно раз в час-два алармит
почитав тут видел, что вылетает не только у меня эта ошибка

Автор: DarkMaster 16.2.2012, 18:04

Попробуй мой варинт, поидее все само перезапустится и проблем быть не должно...

Автор: error2k12bit 14.3.2012, 15:47

Извиняюсь за вторжение !
Спасибо издателю за гениальное изобретение афтару !!!
Script приведённый выше - работает , почти фсьё понятно в его логике , НО ! - он котигорически отказываеца подбирать дроп , цикл действий ограничивается поиском и атакай .
то чего я достиг ограничилось только простейшей логикой типа :
:start
send f1 // /target or /targetnext
wait 300
send f2 // атака рас (1)
wait 1s // пауза либо откат скилла
send f2 // добили моба
send f3 // /atak - для того чтоб подбежал к трупу
wait 500
send f4 // подобрали дроп
wait 300
send f4
wait 300
send f4
wait 300
send f4
goto start
======
на этом моя логика упёрлась в стену , но требует большего !
как мне поступить в данной ситуации
P/S не хамите ! pls !
PP/S - играю магом ( действее 3х скилов достаточно , с бафером разобрался (2 окно) банальные действия по времени
ПыПыПы/СЫ Не могу настроить перса на банальные атаки и подбор дропа по вашей хитрой сестеме скрипта , не могу понять его логику , опишите плиз !
Зарание огромное человеческое спасибо !!!

Автор: Zeleax 14.3.2012, 16:04

Мая сори, не удержался biggrin.gif

Автор: DarkMaster 15.3.2012, 2:12

жуть...
Самый простой способ сделать вторую вкладку скрипта и делать подбор дропа именно там. Что-то вроде:
send F1
wait 100

Учитывая атаки магом, если моб не добежал, то лут может банально находиться слишком далеко.

Автор: Yku 28.3.2012, 16:56

здравствуйте,у меня проблема возникла пользоваться пилотом начал буквально сегодня, не могу понять как определить
set #xMobHP 577
set #yMobHP 581
определять по абсолютным координатам или относительным? или Х это Относительные а У абсолютные?
скрипт просто перебирает таргеты,крайне редко пытаеться атаковать моба , т.е отправляет бить а дальше снова перебирает

Автор: Zeleax 28.3.2012, 17:22

абсолютные - это координаты на экране
относительные - координате в окне программы

Автор: Yku 28.3.2012, 17:50

спасибо,разобрался с этим, теперь вот вопрос,как бы прикрутить к скрипту если через 25секунд цель не умерла ,брать другую цель?

Автор: DarkMaster 28.3.2012, 18:15

forum.uokit.com/index.php?showtopic=22382

Автор: Auto_BOT 5.4.2012, 16:06

Давно не был на этой ветке форума. Как понял у большинства проблемма с определением точек и цвета. Дабы не мучать DarkMaster вопросами по поиску точек гляньте сюда - http://www.youtube.com/watch?v=ujmYPhypJbM
в видео я нахожу точки с помощью скрипта. В большенстве случаев это сработает и у вас. Думаю для новичков наглядный пример лучше чтива.

Автор: kemal1234 24.5.2012, 10:45

здравствуйте я прочитал всю ветку как настроить и посмотрел видео блин не получилось сижу уже часа 2-3 пожалуйста кто может помоч скаип kemal3351 заранее спасибо!

Автор: exday 26.7.2012, 10:03

Пришла пора апнуть и эту темку в реалиях Таути. Как бы кто не боялся, но пилот работает, по крайней мере пока.
У меня же возникла проблема в данном скрипте, а точнее в этой его части:

Код

while_not #xMobHP, #yMobHP #mobColorHP  // Пока не увидим хп, ищем моба
    send %mob [#nMob]
    if #nMob < #mobsize
        set #nMob #nMob + 1
    else
        set #nMob 1
    end_if
    wait 500
    wait random (1000)
//    get color #c #xMobHP, #yMobHP
//    msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

Суть проблемы в том, что send по какой-то причине не отрабатывает по указанным "клавишам", хотя эта часть работает отлично:
Код

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
    send %attack [#nAttack]
    if #nAttack < #Attacksize
        set #nAttack #nAttack + 1
    else
        set #nAttack 1
    end_if
    wait 500
    wait random (1000)
end_while


Написаны эти части аналогично, но почему не работает первый while я, к сожалению, понять не могу.

Автор: DarkMaster 26.7.2012, 12:07

А на какие кнопки забиндины макросы? Если поменять их местами?

Работают ли простые нажатия send клавиша? Со всеми ли клавишами?

Автор: exday 26.7.2012, 16:35

Цитата(DarkMaster @ 26.7.2012, 15:07) *

А на какие кнопки забиндины макросы? Если поменять их местами?

Работают ли простые нажатия send клавиша? Со всеми ли клавишами?

Простые нажатия send работают на все клавиши. Аналогично пробовал менять и на F-ках и на цифрах и на num-ах - не помогает. Забиндены все макросы на цифры, однако send таргетов не работает, а send атак.скиллов прекрасно исполняет свою функцию.

С каждым запуском клиента ситуация изменяется. То атак. скиллы работают, то нет.
Но в итоге не хочет send работать с элементами массива, тогда как с обычными клавишами работает прекрасно.

Автор: DarkMaster 26.7.2012, 18:01

Цитата
Но в итоге не хочет send работать с элементами массива, тогда как с обычными клавишами работает прекрасно.

О как. Дикость какая-то... По сути можно сделать убого просто развернув массив, убрать цикл оставив точно такой же функционал...

Попробуйте во время сбоев считать значение элемента массива. Можно сделать как вывод в лог просто добавив:
send %mob [#nMob]
set logging клавиша таргета: %mob [#nMob]
и
send %attack [#nAttack]
set logging клавиша атаки: %attack [#nAttack]

Скрипт как-либо модифицировался?

В моменты невосприимчивости если открыть новую вкладку в пилоте и написать:
send явное_название_клавиши
то нажатие проходит?
А если сделать?:
set %arr [ 1 ] явное_название_клавиши
send %arr [ 1 ]

Автор: Angelick 21.9.2012, 9:51

У меня проблема с выполнением скрипта. смысл в том что просто меняет таргеты по макросам на цели и стоит на месте не атакуя. заклинивается на этом и стоит перебирает всех мобов в радиусе.
сам макрос:

set #handleWin findwindow (Lineage II)
set workwindow #handleWin
showwindow
// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4
set %mob [5] F5
set %mob [6] F6


// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F7
set %attack [2] F8

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1580168
// Координата крайней левой точки полоски хп моба.
set #xMobHP 604
set #yMobHP 618

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

goto start

Автор: DarkMaster 21.9.2012, 10:36

Цитата
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1580168
// Координата крайней левой точки полоски хп моба.
set #xMobHP 604
set #yMobHP 618

Неправильно указали.

Автор: Angelick 21.9.2012, 18:01

Цитата(DarkMaster @ 21.9.2012, 10:36) *

Неправильно указали.


Большое спасибо! все заработало. Теперь борюсь с тем чтбы не брал дальних мобов, а если и берет и не может атаковать то переводил таргет на других ближайших.

Автор: DarkMaster 21.9.2012, 18:28

https://forum.uokit.com/index.php?showtopic=22382

Автор: 4u4undra 17.10.2012, 18:17

Слушайте а как в один скрипт сделать этот скрит+ скрипт чтобы если не может добежать до моба цель меня+ скрипт чтобы банки хп хавал когда хп мало? И еще вопрос если все это запустить отдельными скриптами будет ли все коректно работать?

Автор: DarkMaster 17.10.2012, 18:51

А чем вас не устроил ответ сразу над вашим постом? Там все это есть.

Автор: 4u4undra 17.10.2012, 19:06

Уже прочитал, но все таки лучше если их соединить или они одновременно будут норм работать? А если соединить то между какими строками воткнуть второй скрипт? Или просто вставить один скрит, а ниже другой и будут работать?

Автор: TheVetal 25.10.2012, 10:00

Подскажите, возможно ли использовать данный скрипт когда окно свернуто, ну или не свернуто, а просто не активно, например открыто окно браузера?Спасибо за ответ smile.gif

Автор: DarkMaster 25.10.2012, 13:09

Скрипт писался, когда это было еще не возможно. Однако для работы требуются минимальные модификации. Условия "if точка/цвет" необходимо будет заменить на результат поиска этого цвета командой findcolor.

Автор: TheVetal 25.10.2012, 15:49

Если не трудно можно примерчик какой то?

Автор: DarkMaster 25.10.2012, 16:05

set $a 0
while $a < 1
set $a findcolor (154, 80 318, 260 1 1 2366701 %arr workwindow)
end_while

Автор: TheVetal 25.10.2012, 16:21

функция ищет в заданной области, ее можно задавать 1 точкой?
set $a 0
set $a FindColor(#xMobHP, #yMobHP #xMobHP, #yMobHP 1 1 #mobColorHP %arr workwindow)
while_not $a<1 // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
end_while
так будет работать?

Автор: DarkMaster 25.10.2012, 17:06

set $a FindColor....
продублируйте в теле цикла вконце.

Автор: TheVetal 25.10.2012, 17:13

А ну да точно smile.gif, спс за помощь, то есть в такой реализации, можно сверху открывать другие окна и все будет работать?

Автор: DarkMaster 25.10.2012, 17:25

Ну по идее да) У меня этот метод работал в большинстве случаев, но у народа бывали проблемы.

Автор: TheVetal 25.10.2012, 17:30

ясно, дома буду проверю smile.gif

Автор: TheVetal 26.10.2012, 22:58

не работает, не находит цвет, если убрать параметр workwindow в конце, а поставить например 1, тогда находит, может надо как то описать workwindow?

Автор: DarkMaster 26.10.2012, 23:28

Очень забавно было обнаружить, что в скрипте нет привязки к окну... Спустя столько времени... Вообще ctrl+a должно быть достаточно. workwindow содержит хендл окна к которому сделана привязка. Так же, хочу заметить, фича эта из новых, и пилот должен быть свеженький, обновитесь если он старше 2.31.

Попробуйте вне скрипта поискать цвет подобным методом. Для устранения версии об ошибках в коде, советую попробовать определить цвет перекрытого окна дефолтного просмотрщика рисунков винды, а точнее самого рисунка.

Окно должно быть обязательно развернутым, но его можно чем-нибудь перекрыть.

Автор: TheVetal 27.10.2012, 22:08

Использую пилот версии 2,31
написал пробный скрипт для проверки цвета:
set $a 0
set $a FindColor(678, 81 679, 82 1 1 2564817 %arr workwindow)
msg $a
при такой реализации всегда выдает 0
если чуток изменить:
set $a 0
set $a FindColor(678, 81 678, 81 1 1 2564817 %arr 1)
msg $a
то цвет находит, при активном окне, если окно прикрыть другим то уже не находит(

Автор: DarkMaster 27.10.2012, 22:25

Кроме л2 пробовали? Цвет кстати лучше в скобочки. If при этих точках/цвете срабатывает?

Автор: TheVetal 28.10.2012, 9:48

пробовал и с другими окнами,результат такой же, при использовании иф работает

Автор: botovod 1.11.2012, 18:29

Всем привет, в данном месте скрипт зацикливается.

while_not 573, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

Проблемы в следуюшем если написать вот такой скрипт:
get color #c 573,59
msg #c

то цвет выдает : 1580167 , однако если даже в вашем скрипте подставляю:

get color #c 573,59
msg #c

цвет все время разный в чем причина?

Автор: DarkMaster 2.11.2012, 1:26

координата верная? Полупрозрачность отключена? Сильное колеблется цвет? Привязку делает?

Автор: Andrei777 19.11.2012, 12:24

"Коллеги", доброго дня!

Прежде всего благодарю автора темы и макроса на кач, так же тех кто его доработал и поделился информацией для самостоятельной доработки. Перс качается "сам", я же с удовольствием PVPшусь smile.gif

Авто кач практически идеален, осталось освоить один функционал - это проверка на то, находится ли моб в нужной нам области. Много раз прочиал переписку в этой теме по этому поводу, много вариантов юзал, но результата не достиг.

Короткий макрос (решил проверить до вставки в основной макрос):

:start

set $a 0
set $a findcolor (1173, 82 1189, 96 1 1 13831124 %arr 2)
if $a > 0
send 3 (стоит скилл атаки)
else
send escape
end_if

goto start

Сбрасывает таргет во всех случаях кроме тех, когда моб находится в самом центре радара.
Помогите пожалуйста, что делаю не так?

Автор: DarkMaster 19.11.2012, 14:08

Ошибочно задан цвет поиска тагрета на радаре. Он имеет достаточно много оттенкав, в 2.32 появились новые функции для разложения цвета на ргб. Можете посмотреть в прикрепленной теме. Версия свежая сам еще все не протыкал, только прочитал.

В частности поможет параметр deviation.

Автор: instinct 19.11.2012, 22:27

у меня вот такой код

Цитата


set #mobMax 1580167 // color HP max
set #xmobMax 1038 //x cor
set #ymobMax 29 //y cor
set #loop 1 //loop mob
set #loopMAX 5
//------------------------------------------------------------------------------------
set %mob [1] F2 //nexttarget

set %attack [1] F1 // attack mob
set %attack [2] F3
//set %attack [3] F7
set $pickup F12 // pickup drop
set #pickup 2 // number drop
set #mobColorHP 1580168 // color HP min
set #xMobHP 896 //x cor
set #yMobHP 29 //y cor
set #mobsize size (%mob) //colishestvo mobov
set #attacksize size (%attack) //coloshestvo attack
set #nMob 1
set #nAttack 1
:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 100

// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 100

end_while

repeat #pickup // Собираем дроп.
send $pickup
wait 100

end_repeat

goto start


в качестве таргетов по мобам используется некст таргет. Проблема в том что он часто дабл кличет по некст таргету. подскажите как исправить

Автор: DarkMaster 19.11.2012, 23:59

Цитата
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 100

wait необходимо увеличить. значение лучше всего подобрать методом тыка. все сильно зависит от пинга.

Автор: instinct 20.11.2012, 11:30

спасибо!) еще подскажи плз как реализовать проверку бафов на нобл. чтобы если он слетает то ребаф. можно ли сделать проверку на уникальный цвет нобла по всему экрану?

Автор: DarkMaster 20.11.2012, 14:22

findimage поможет.

Автор: Andrei777 20.11.2012, 22:01

Цитата(DarkMaster @ 19.11.2012, 15:08) *

Ошибочно задан цвет поиска тагрета на радаре. Он имеет достаточно много оттенкав, в 2.32 появились новые функции для разложения цвета на ргб. Можете посмотреть в прикрепленной теме. Версия свежая сам еще все не протыкал, только прочитал.

В частности поможет параметр deviation.


Доброго вечера!
Несколько раз прочитал тему о возможности задавать диапозон цвета в findcolor и задавать процент погрешности. Но в силу моих скудных знание по определению RGB (тоже несколько тем прочел) и задаче диапозона все же не хватает.
Пилот определил (нажал Ctrl+A) что код цвета розовой точки моба например 14763233
Объясните, пожалуйста.
1) правильно ли я пишу команду с использованием процента погрешности. В новостях она выглядет
set $a FindColor (StartX StartY EndX EndY ShiftX ShiftY (RequiredColor) ResultArray [type [count [deviation]]] [abs])
я вставляю свои данные
set $a findcolor (1807 79 1835 103 1 1 (14763233) ResultArray [type [count [deviation]]] [abs]). Правильно ли получилось и куда вставлять сам процент погрешности?

2) Если использовать функционал по указани диапозона, как его определить (при условии что пилот показал 14763233)?

Заранее извиняюсь, если задаю глупые вопросы, это от недостатка знаний smile.gif

Автор: DarkMaster 20.11.2012, 22:31

Цитата
(14763233)

должно вгялядеть как (цвет-цвет2)
Цитата
[type [count [deviation]]]

это все надо задавать. На вику ходили? http://uopilot.tati.pro/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:AllPages

Автор: Andrei777 20.11.2012, 23:26

Я понимаю, что необходимо задавать диапозон, но как определить этот диапозон, так и не дошло.

По ссылке сходил, спасибо. Теперь больше понимаю, что написано. Получился макрос:
:start

set $a 0
set $a findcolor (1807 79 1835 103 1 1 (15941106-15999220) %ResultArray [type2 [count1]])
if $a > 0
send 3 //(стоит скилл атаки)
else
send escape
end_if

goto start

Чар постоянно сбрасывает таргет, видимо из за того, что опять не правильно указал диапазон, а как его правильно определить ну никак не пойму.
Прошу научить как его определять или дать ссылку на чтиво, где доходчиво написано - "жмакайте на эти кнопки и будет счастье".

Автор: DarkMaster 21.11.2012, 0:21

Цитата
[type2 [count1]]

надо просто:
1 2
никаких скобок, типов и каунтов. Смотрите примеры.
Цвета раз https://forum.uokit.com/index.php?showtopic=22116

для версии 2.32 два:
Добавил функции разложения цвета:
'colorToRed (color)' - возвращает значение красного канала указанного цвета
'colorToGreen (color)' - возвращает значение зеленого канала
'colorToBlue (color)' - возвращает значение синего канала
'colorToRGB (color %arr)' - разлаживает цвет на составляющие в первую строку указанного массива
'colorToRGB (color %arr[x])' - то-же, но в конкретную строку // %arr [ 1 1 ] R, %arr [ 1 2 ] G, %arr [ 1 3 ] B

Научил функцию 'minx' и 'maxx' искать минимум и соответственно максимум в массиве.
'minx (%arr [1])' - возвращает минимальное значение конкретной строки массива
'minx (%arr)' - возвращает минимальные значения всех столбцов массива в формате '1|2|3' (для присваивания массива пачкой), т.е. в первую строку нового массива.
То же самое про 'maxx', только наоборот.

Автор: Andrei777 23.11.2012, 23:33

Здравствуйте! smile.gif

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

Можно ли сделать ток, что бы юзался некст таргет, потом моб1, некст таргет, потом моб2, некст таргет, моб 3 и опять всё заново некст таргет, моб1, некст таргет, моб2, некст таргет, моб 3.
Т.е. система переберает все таргеты пока не найдет находящийся в нужной зоне.

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

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send escape
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1

set $a 0
set $a findcolor (1040 80 1059 95 1 1 (R(180-255)+G(0-120)+B(180-255)) %ResultArray 2 1)
if $a <= 0
send escape
goto start
else
end_if

else
set #nMob 1
end_if
wait 500

end_while

Автор: DarkMaster 24.11.2012, 0:25

Цитата
// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4

натыкай через одну строку макрос на некст таргет да и все. что-то вроде
f1
f2
f1
f3
f1
f4

Автор: Andrei777 26.11.2012, 7:56

Видимо я не совсем доходчиво объяснил вопрос, предложенный Вами вариант не поможет. Если я правильно понимаю логику макроса, то:
С начала по нексттаргету mob [1] мы моба не находим (ну нет их рядом), потом по таргету mob [2] конкретного моба находим, но не в зоне "поражения", финколор сбросит таргет и макрос опять начнет работать с начала, т.е. опять нексттаргет mob [1], опять таргет mob [2] того дальнего моба и опять сброс.

Можно ли написать макрос так, что бы после сброса таргета финколором макрос не начинал "щупать" с mob [1], а переходил к mob [3], mob [4]?

Автор: DarkMaster 26.11.2012, 18:33

set #nMob 1

в теле скрипта уберите. Только в теле, а не(!) в шапке,

Автор: sBlack 9.12.2012, 14:44

Всем привет. помогите пожалуйста доделать скрипт:

Код

// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4
//set %mob [5] F5
//set %mob [6] F6


// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F7
//set %attack [2] F6
//set %attack [3] F7
//set %attack [4] F8

// Кнопка с подбором лута.
//set $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если уп557, 28 адет меньше, то все равно будет стоять и тыкать.
// set #pickup 4

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1251183
// Координата крайней левой точки полоски хп моба.
set #xMobHP 557
set #yMobHP 28

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

//------------------Добавлено--------------
while #xMobHP, #yMobHP #mobColorHP
set #loop #loop + 1
if #loop > #loopMAX
set #loop 1
send {Escape} // ----- Кнопка "Escape" или "Esc" отменяет выбранную цель.
goto start
end_if
wait 500 //--- задержка в цикле влияет на удержание таргета. (на свое усмотрение)
end_while
//---------------------------------------------

//repeat #pickup // Собираем дроп.
// send $pickup
// wait 200
// wait random (500)
//end_repeat

goto start


Мне нужно чтоб он если не может атаковать цель ( в стену уперся, или дерево, или камень....) то спустя к примеру секунд 5-6 выбирал другой таргет. Можно ли так сделать?

Автор: DarkMaster 9.12.2012, 14:50

https://forum.uokit.com/index.php?s=&showtopic=21189&view=findpost&p=149591

Автор: sBlack 9.12.2012, 15:03

Спасибо за ссылочку,но я как не старался не могу впихнуть скрипт на отмену цели в свой скрипт....

Автор: DarkMaster 9.12.2012, 15:44

можно просто в соседнюю вкладку запихать, насколько помню.

Автор: sBlack 9.12.2012, 18:14

И Все таки очень прошу помоч дополнить скрипт :

скрипт лукаря


// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4

// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F7
//set %attack [2] F6
//set %attack [3] F7
//set %attack [4] F8

// Кнопка с подбором лута.
//set $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
//set #pickup 4

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1448304
// Координата крайней левой точки полоски хп моба.
set #xMobHP 555
set #yMobHP 28

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

//repeat #pickup // Собираем дроп.
// send $pickup
// wait 200
// wait random (500)
//end_repeat

goto start


Кто может, пожалуйста помогите, весь день потратил, и не могу сделать никак. ( чтоб если чар не атакует цель в течении скажем секунд 5-6, то выделяет другую цель)

Автор: DarkMaster 9.12.2012, 18:42

set #detected 0 - в шапку скрипта.

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
сюда остальной скрипт.

Автор: sBlack 9.12.2012, 19:05

Цитата(DarkMaster @ 9.12.2012, 18:42) *

set #detected 0 - в шапку скрипта.

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
сюда остальной скрипт.



Ты имееш ввиду остальной скрипт, ето скрипт на проверку бьет ли чар моба или нет?

Автор: DarkMaster 9.12.2012, 19:07

да

Автор: Andrei777 11.12.2012, 9:12

Держи мой макрос полностью (в твоем разбираться некогда, да и не понимаю я особо), проверено, работает. Макрос сделан на мага, поэтому в конце есть скрипт на проверку маны, если маны нет, стоит и ждет регена, его можешь убрать (если для лукаря). В данном скрипте отменяет таргет и делает движение, т.е. тыкает в нужное место, что бы вылезти из застревания.

Блин, чет не выкладывается.

//---------------------------------Добавлено-------------------------------------
set #mobMax 1580167 // цвет пикселя в максимальном положении ХП моба
set #xmobMax 822 // х координата в максимальном положении ХП моба
set #ymobMax 31 // y координата в максимальном положении ХП моба
set #loop 1 // пременная служит для отсчета циклов проверки
set #loopMAX 16 // количество циклов (на свое усмотрение)

//-----------------------------------------------------------------------------------

set %mob [1] 7 //nexttarget
set %mob [2] 8 // mob 1
// set %mob [3] 9 // mob 2
// set %mob [4] 0 // mob 3


set %attack [1] 9 // attack mob
//set %attack [2] F6 // нет маны стоит на месте - отказался от удара
//set %attack [3] F7 // нет маны стоит на месте - отказался от удара


//set $pickup 0 // pickup drop
//set #pickup 5 //

set #mobColorHP 1580168 // color HP min

set #xMobHP 685 //x cor
set #yMobHP 31 //y cor

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1


:start
set #loop 1 //----------------------Добавлено----------------------

while_not #xMobHP, #yMobHP #mobColorHP

wait 100
send %mob [#nMob]
if #nMob < #mobsize
wait 500
set #nMob #nMob + 1
wait 500
else
set #nMob 1
end_if
//wait random (1000)
//get color #c #xMobHP, #yMobHP

end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 100
//------------------Добавлено--------------
while #xmobMax, #ymobMax #mobMax
send %attack [#nAttack]
set #loop #loop + 1
if #loop > #loopMAX
set #loop 1
send {Escape} // ----- Кнопка "Escape" или "Esc" отменяет выбранную цель.
move 800, 451
kleft 800, 451
goto start
end_if
wait 200 //--- задержка в цикле влияет на удержание таргета. (на свое усмотрение)
end_while

//---------------------------------------------
end_while

if_not 54, 53 9000240
wait 60000
end_if

send 6
wait 5s


//repeat #pickup // Собираем дроп.
// send $pickup
// wait 200

//end_repeat

goto start

Жырным выделена часть, за счет которой решается вопрос с застряванием. Курсивом - проверка маны.

Автор: sBlack 12.12.2012, 14:39

Цитата(Andrei777 @ 11.12.2012, 9:12) *

Держи мой макрос полностью (в твоем разбираться некогда, да и не понимаю я особо), проверено, работает. Макрос сделан на мага, поэтому в конце есть скрипт на проверку маны, если маны нет, стоит и ждет регена, его можешь убрать (если для лукаря). В данном скрипте отменяет таргет и делает движение, т.е. тыкает в нужное место, что бы вылезти из застревания.

Блин, чет не выкладывается.

//---------------------------------Добавлено-------------------------------------
set #mobMax 1580167 // цвет пикселя в максимальном положении ХП моба
set #xmobMax 822 // х координата в максимальном положении ХП моба
set #ymobMax 31 // y координата в максимальном положении ХП моба
set #loop 1 // пременная служит для отсчета циклов проверки
set #loopMAX 16 // количество циклов (на свое усмотрение)

//-----------------------------------------------------------------------------------

set %mob [1] 7 //nexttarget
set %mob [2] 8 // mob 1
// set %mob [3] 9 // mob 2
// set %mob [4] 0 // mob 3
set %attack [1] 9 // attack mob
//set %attack [2] F6 // нет маны стоит на месте - отказался от удара
//set %attack [3] F7 // нет маны стоит на месте - отказался от удара
//set $pickup 0 // pickup drop
//set #pickup 5 //

set #mobColorHP 1580168 // color HP min

set #xMobHP 685 //x cor
set #yMobHP 31 //y cor

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
:start
set #loop 1 //----------------------Добавлено----------------------

while_not #xMobHP, #yMobHP #mobColorHP

wait 100
send %mob [#nMob]
if #nMob < #mobsize
wait 500
set #nMob #nMob + 1
wait 500
else
set #nMob 1
end_if
//wait random (1000)
//get color #c #xMobHP, #yMobHP

end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 100
//------------------Добавлено--------------
while #xmobMax, #ymobMax #mobMax
send %attack [#nAttack]
set #loop #loop + 1
if #loop > #loopMAX
set #loop 1
send {Escape} // ----- Кнопка "Escape" или "Esc" отменяет выбранную цель.
move 800, 451
kleft 800, 451
goto start
end_if
wait 200 //--- задержка в цикле влияет на удержание таргета. (на свое усмотрение)
end_while

//---------------------------------------------
end_while

if_not 54, 53 9000240
wait 60000
end_if

send 6
wait 5s


//repeat #pickup // Собираем дроп.
// send $pickup
// wait 200

//end_repeat

goto start

Жырным выделена часть, за счет которой решается вопрос с застряванием. Курсивом - проверка маны.



Друг, благодарю от всей души smile.gif

Автор: Andrei777 13.12.2012, 13:46

Еще забыл отметить (мож сам догадался) что, вот это
move 800, 451
kleft 800, 451
Это координаты, куда тыкается мышкой при застрявании, т.е. можешь задать свои.

Автор: sBlack 13.12.2012, 17:47

Цитата(Andrei777 @ 13.12.2012, 13:46) *

Еще забыл отметить (мож сам догадался) что, вот это
move 800, 451
kleft 800, 451
Это координаты, куда тыкается мышкой при застрявании, т.е. можешь задать свои.

догадался smile.gif но трудно поставить такие координаты, чтоб он не застревалsmile.gif все равно гад находит камень или стенуsmile.gif)

Автор: sBlack 16.12.2012, 11:25

Всем снова привет. Подскажите пож-та, можно ли сделать так, чтоб цель выделялась на определенном радиусе? чтоб он не брал цель в другой комнате или за горой?

Автор: MaXiS 16.12.2012, 12:00

Никак, средства л2 не позволяют. Только бегать по якорям. А определить расстояние можно через поиск цвета точки моба на радаре.

Автор: DarkMaster 16.12.2012, 13:27

Цитата
А определить расстояние можно через поиск цвета точки моба на радаре.

Можно делать и чуть более сложные алгоритмы ограничиваясь не только радиусом. Можно делать смещения по области поиска, либо делать отсечки угла, стороны и т.д. Просто ифов будет прилично.

Автор: sBlack 30.12.2012, 11:59

Всем привет. Помогите пожалста. Дело такое: если я запускаю скрипт для окна, сворачиваю окно и запускаю к примеру другую игру, почему то чар не подымает дроп... хз почему... он бьет, лечится,но.. не подымает дроп если нажимать кнопки в другом окне, печатать, ездить и тд... кто знает почему??

Автор: heewit 5.1.2013, 5:22

Hello wink.gif Sorry for that I will write in english but I don't know russian at all ;D

First of all uoPilot is amazing software and Kacha sript pwnz.

So I need 1 simple thing for the script. Fist I will explain what is the situation.

I farm with berserker in Giant Caves Lower Level. I am sitting in a small rooms with 5 mobs inside and mobs behind walls. Here comes my problem. Sometimes I get target on mob behind the wall. Then I am stucked sometimes even for 5 min until I change target manually.

I will show you how my script looks like with my coordinates:

Код
set #mobMax 1580167            // color HP max
set #xmobMax 885              //x cor
set #ymobMax 29              //y cor
set #loop 1                 //loop mob
set #loopMAX 5
//--------------------------------------------------

set %mob[1]F1              // next target


set %mob[2]F2              // mob 1
set %mob[3]F3              // mob 2
set %mob[4]F4              // mob 3


set %attack[1]F5           // attack mob



set #mobColorHP 1580167           // color HP min

set #xMobHP 737                // x cor
set #yMobHP 29               // y cor

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1



:start
set #loop 1  //-------------------------------------
while_not #xMobHP, #yMobHP #mobColorHP
:nextMOB     //-------------------------------------
    send %mob[#nMob]  
    if #nMob < #mobsize
       set #nMob #nMob + 1  
else
       set #nMob 1
    end_if
    wait 100
//wait random (1000)
    get color #c #xMobHP, #yMobHP  
    
end_while    

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // ???? ????? ?? - ?????
    send %attack [#nAttack]
    if #nAttack < #Attacksize
        set #nAttack #nAttack + 1
    else
        set #nAttack 1
    end_if
    wait 100
    //----------------------------------------------
        while #xMobMAX, #yMobMAX #mobMAX
              set #loop #loop + 1
                  if #loop > #loopMAX
                     set #loop 1
                     set #nMob random(3)
                      send [Escape]
                           set #nMob #nMob + 1
                     goto nextMOB
                     end_if
              wait 35000
        
        end_while
        
    //--------------------------------------------
end_while

goto start


I would like to make it so, when I target mob behind the wall and his HP is 100% for more then 5sec, I change target for new mob.

Right now I kill mob around 30sec. thats why in my script I have wait 35sec.

I found in this topic some solution:

Код
set #detected 0

:start
if 885, 29 1580167 // ???? ?? ?????? ?? ????.
    if #detected = 1 // ?????? ?? ?????????? ?? ?????? ????? ???(?????? ?? ???????????)
        if #targetTime < 5000 // ????? ?? ?????? ???? ?? ???? ??????
            set #detected 0
            send [Escape] // ?????? ?1
        end_if
    else
       set #targetTime timer + 5000 // ??????? ??????? ??? ?????? ?? ???? ?????? ? ???????????.
       set #detected 1
    end_if
else // ?? ???? ?? ?????
    set #detected 0 // ?????? ??? ??????? ???? ???? ?????? ????.
end_if
goto start


I added there my coordinates but it doesnt work. Can you please help me with that script so I can farm without breaks?

So one more time. I target mob behind wall and I stand in wall until he find new target. 1 cycle in my script = 35sec.

Please help me with this problem wink.gif

Thanks in Advance!

Автор: Andrei777 9.1.2013, 11:59

I UNDERSTAND ENGLISH not very well sad.gif

Автор: Andrei777 9.1.2013, 12:19

Цитата(sBlack @ 16.12.2012, 12:25) *

Всем снова привет. Подскажите пож-та, можно ли сделать так, чтоб цель выделялась на определенном радиусе? чтоб он не брал цель в другой комнате или за горой?


Я выходил из ситуации сл. образом (возможно и корявым, но работало):

Способ первый:
Сажаешь окно, у которого в прогрузе только та облась, из которой тебе нужны мобы. Данный перец постоянно переберает кнопки с таргетом мобов (/target nik moba), а основной персонаж берет ассисты с него. Есть недостатки: сложно усадить перса так, что бы в прогрузе была только нужная область, т.е. локацию придется поискать. Но зато легко реализовать в макросах

Способ второй:
Ограничение области из которой берется таргет, т.е. на радаре определяешь область, в которой необходимо брать таргеты, если таргет не в этой области то жмакается Эскейп. Тоже есть недостаток - с перемещением персонажа радар тоже смещается, а соответсвенно и область из которой берутся таргеты. Это выход, если требуется, что бы перс стоял на месте и валил всех в радиусе выстрела.

В итоге я скомбинировал оба способа, а именно:
Посадил перса (уже пофигу прогружена ли только нужная область или всё подряд) указал ему в какой области оставлять таргеты и он получился асистером. Домагер же с него берет ассист и лупит пока моб не помер. Причем рекомендую завязать макрос по раздаче таргетов с макросом по фарму мобов, т.е. сделать так, что бы макрос по фарму мобов начинал брать ассист и атаковать только тогда, когда ассистер взял в таргет моба в нужной области.

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

Автор: IvaniuS 9.1.2013, 21:24

Цитата(heewit @ 5.1.2013, 7:22) *

Hello wink.gif Sorry for that I will write in english but I don't know russian at all ;D

First of all uoPilot is amazing software and Kacha sript pwnz.

So I need 1 simple thing for the script. Fist I will explain what is the situation.
.....
Please help me with this problem wink.gif

Thanks in Advance!

the first step - u need the google translate like this link http://translate.google.com.ua/translate?sl=ru&tl=en&js=n&prev=_t&hl=ru&ie=UTF-8&eotf=1&u=http%3A%2F%2Fforum.uokit.com%2Findex.php%3Fshowtopic%3D21166%26st%3D220
second u need https://forum.uokit.com/index.php?s=&showtopic=21166&view=findpost&p=181626
and translate all help frop rus to eng after "//" without "

Цитата(sBlack @ 30.12.2012, 13:59) *

Всем привет. Помогите пожалста. Дело такое: если я запускаю скрипт для окна, сворачиваю окно и запускаю к примеру другую игру, почему то чар не подымает дроп... хз почему... он бьет, лечится,но.. не подымает дроп если нажимать кнопки в другом окне, печатать, ездить и тд... кто знает почему??

смотря какой способ передачи в окно ты ипользуешь, у меняна х64 кроме send ничего не работает, но я спокойно лазию в браузере и все кнопки у меня он нажимает, возможно причина в смене раскладки клавиатуры, могу ошибаться

Автор: Andrei777 10.1.2013, 12:52

Цитата(sBlack @ 30.12.2012, 12:59) *

Всем привет. Помогите пожалста. Дело такое: если я запускаю скрипт для окна, сворачиваю окно и запускаю к примеру другую игру, почему то чар не подымает дроп... хз почему... он бьет, лечится,но.. не подымает дроп если нажимать кнопки в другом окне, печатать, ездить и тд... кто знает почему??


У меня ХР 32 разрядная при свернутом окне жмет все кнопки в том числе подбор (если реч идет о Линейдже). Кнопки расположены на второй панели, т.е. нажимается цифры (1, 2 и т.п.). Попробуй сменить кнопку подбора.

Автор: xamer86 13.1.2013, 21:55

вылетает ошибка, хз че делать не чего не соображаю помогите плз

Автор: xamer86 13.1.2013, 22:44

про картинку забыл))

про картинку забыл))


Эскизы прикрепленных изображений
Прикрепленное изображение

Автор: DarkMaster 14.1.2013, 5:05

скачай новую версию.

Автор: Tyrr Warrior 14.1.2013, 14:29

Доброе утро!

Не получается запустить Ваш скрипт.
Вставляю нужные координаты но чар стоит а в программе скрипт застревает тут:

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
post %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
end_while

Постоянно повторяется, перечитал данный топик не пойму почему не работает.
Прошу помочь если данный скрипт до сих пор актуален.

Спасла смена post на send



тоже самое у меня сейчас сенд и так стоит вместо поста не знаю что и делать точку находил как в видео и альт+а все одинаково а значит верно нашел точку подскажите в чем проблема unsure.gif

[мой скрипт сейчас выглядит так]

// Кнопка с макросом /targetnext
set %mob [1] F6
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F7
set %mob [3] F8

// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F1
set %attack [2] F2
set %attack [3] F3

// Кнопка с подбором лута.
set $pickup F5

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 1

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1580167
// Координата крайней левой точки полоски хп моба.
set #xMobHP 628
set #yMobHP 29

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

repeat #pickup // Собираем дроп.
send $pickup
wait 200
wait random (500)
end_repeat

goto start

Автор: DarkMaster 15.1.2013, 5:46

Tyrr Warrior, эмуляция нажатий вообще работает? Вы не на руоффе?

xamer86, чудеса какие-то. Ошибка осталась та же самая после обновления?

Автор: Tyrr Warrior 15.1.2013, 12:15

Цитата(DarkMaster @ 15.1.2013, 6:46) *

Tyrr Warrior, эмуляция нажатий вообще работает? Вы не на руоффе?

xamer86, чудеса какие-то. Ошибка осталась та же самая после обновления?


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

Автор: DarkMaster 15.1.2013, 15:07

на руоффе пилот на данный момент не работает.

Автор: WKnight 15.1.2013, 15:35

Совсем не работает или только клава\мышь?

Автор: dirkraft91 23.1.2013, 3:10

Здраствуйте , при смене таргета или при беге к цели если он попадает на какое то препятствие то останавливается на месте и стоит .. как вылечить это?

Автор: DarkMaster 23.1.2013, 8:18

https://forum.uokit.com/index.php?showtopic=22382

Автор: exitobgood 29.1.2013, 0:59

почему нету в скрипте maxhp,когда в видео имеется?
помогите пж

у меня кстате из-за этого наверное пишет UOPilot Message (32):Символ не распознан(pos1:)
это после строки с минимальным хп

Автор: DarkMaster 29.1.2013, 1:15

Версия пилота какая?

Максимальные уровни хп тут не нужны. Он что-то химичил дополнительное.

Автор: exitobgood 29.1.2013, 1:19

Цитата(DarkMaster @ 29.1.2013, 2:15) *

Версия пилота какая?

Максимальные уровни хп тут не нужны. Он что-то химичил дополнительное.

2.15 версия
у меня даже в таргет не берёт,а сразу пишет ошибку строки

и всё время буквы\цифры какието меньше по размеру стают - это не влияет?
ато я заного каждый раз перезапускаю пилот

Автор: DarkMaster 29.1.2013, 1:24

Цитата
Разные ? не думаю ) если внимательно ознакомились с веткой форума то не могли не заметить один из моих постов, про модификацию изначального скрипта.

В базовый скрипт добавлена проверка на убийство моба - если в течении определенного времени моб не умирает (возможно мы взяли в таргет моба за стеной и т.д.) то нажимается клавиша Esc (сброс таргета) далее юзается следующий таргет по внутри-игровому макросу.

Все есть на форуме - не ленитесь читать.


Разные ? не думаю ) если внимательно ознакомились с веткой форума то не могли не заметить один из моих постов, про модификацию изначального скрипта.

В базовый скрипт добавлена проверка на убийство моба - если в течении определенного времени моб не умирает (возможно мы взяли в таргет моба за стеной и т.д.) то нажимается клавиша Esc (сброс таргета) далее юзается следующий таргет по внутри-игровому макросу.

Все есть на форуме - не ленитесь читать.

Собственно это объясняет различия.

Пилот обновите. На 2.15 нет функции size, из-за этого идут проблемы. Обновить можно со страницы пилота, либо с прилепленной теме в основном разделе пилота. На видео версия 2.21, сейчас последняя 2.32, думаю на 2.32 запустится без проблем.

Автор: Andrei777 23.2.2013, 22:40

Ребяты, появилась пробла, не пойму как решить.
Скрипт выдает ошибку, строку выделил жирным.
Макрос работает, но через час может выдать ошибку, а иногда и через 5 минут.

//----------------Проверка на уменьшение хп моба-------------------------------------
set #mobMax 1580167 // цвет пикселя в максимальном положении ХП моба
set #xmobMax 625 // х координата в максимальном положении ХП моба
set #ymobMax 31 // y координата в максимальном положении ХП моба
set #loop 1 // пременная служит для отсчета циклов проверки
set #loopMAX 6 // количество циклов (на свое усмотрение)
//-----------------------------------------------------------------------------------
set #mobColorHP 1580423 // цвет последнего пикселя хп моба
set #xMobHP 500 // x координата
set #yMobHP 31 // y координата

set %mob [1] 1 // nexttarget
set %mob [2] 2 // mob 2
set %mob [3] - // mob 3

set $spoil 4 // споил
set $sweeper 5 // сбор спойла
set $btPetAttack 7 // скил пета
set $yakor 6 // бежим к якорю
set %attack [1] 3 // attack
set %attack [2] 7 // атака пета
set %attack [3] 8

//set $pickup 9 // подбор дропа
//set #pickup 6 // сколько раз жать на подбор

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
set #needass 0

:start
set #loop 1 //----------------------Добавлено----------------------
while_not #xMobHP, #yMobHP #mobColorHP
wait 100
send %mob [#nMob]
if #nMob < #mobsize
wait 500
set #nMob #nMob + 1
wait 500
else
set #nMob 1
end_if
wait 800
wait random (200)
end_while

Автор: DarkMaster 24.2.2013, 7:30

Прочитайте капс в пером посту. Что это за модифицированный обрезок я не знаю. И уж точно не в эту тему.

Автор: Andrei777 24.2.2013, 11:16

Да, немного допилил под задачи, но блок по поиску таргета полностью из изначального скрипта.
Для удобства удалю, то что дописал. Пилот версии 2.32. Выдает ошибку на команде, которую выделил жирным.

set #mobColorHP 1580423 // цвет последнего пикселя хп моба
set #xMobHP 500 // x координата
set #yMobHP 31 // y координата

set %mob [1] 1 // nexttarget
set %mob [2] 2 // mob 2
set %mob [3] - // mob 3

set %attack [1] 3 // attack
set %attack [2] 7 // атака пета
set %attack [3] 8

//set $pickup 9 // подбор дропа
//set #pickup 6 // сколько раз жать на подбор

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1

:start
while_not #xMobHP, #yMobHP #mobColorHP
wait 100
send %mob [#nMob]
if #nMob < #mobsize
wait 500
set #nMob #nMob + 1
wait 500
else
set #nMob 1
end_if
wait 800
wait random (200)
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 200

end_while

// repeat #pickup // Собираем дроп.
// send $pickup
// wait 200
// wait random (500)
// end_repeat

goto start

Причем макрос проработал корректно часов 9, потом опять выдал ошибку.

Автор: DarkMaster 24.2.2013, 11:56

Скрипт во время работы тормозится/запускается другими скриптами?
сделайте вывод в лог, потом посмотрите чем все заканчивается: log commands

Автор: Andrei777 24.2.2013, 13:28

Цитата(DarkMaster @ 24.2.2013, 12:56) *

Скрипт во время работы тормозится/запускается другими скриптами?
сделайте вывод в лог, потом посмотрите чем все заканчивается: log commands


Макрос работает постоянно и не зависит от других. Лог запустил.
Меня смущает тот факт, что он корректно работает длительное время, а потом останавливается на строке, которую уже юзал много раз.

Автор: final5 24.3.2013, 13:18

Такая тема. Все работает , но выделяет моба по имени почемуто самого дальнего, как сузить круг поиска моба?

Автор: DarkMaster 24.3.2013, 18:05

Можно попробовать скидывать тарегет, если цель на минимапе слишком далеко, либо использовать некст таргет и пару якорей. По скидыванию цели была темка на форуме. Где не помню. Точнее их было несколько но в последней получилось, если память не изменяет.

Автор: final5 25.3.2013, 13:46

Цитата(DarkMaster @ 24.3.2013, 18:05) *

Можно попробовать скидывать тарегет, если цель на минимапе слишком далеко, либо использовать некст таргет и пару якорей. По скидыванию цели была темка на форуме. Где не помню. Точнее их было несколько но в последней получилось, если память не изменяет.

Причем это только на этом сервере, хроники грация финал. На других все норм

Автор: DarkMaster 25.3.2013, 15:21

ничего подобного. л2 (офф по крайненей мере) ВСЕГДА брал дальнюю цель.

Автор: final5 25.3.2013, 17:42

А по радару я так и не понял как делать. что то типо этого
set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2) ?

Автор: DarkMaster 25.3.2013, 21:50

Угу. Только цвет надо будет диапазоном задать, чтобы стабильно ловил наличие таргета.

Автор: pcix 2.4.2013, 16:44

Решил скрипт сделать для работы в перекрытом окне с использованием команды FindColor

Код
set %mob [1] F1
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4
set %attack [1] F5
set $pickup F9
set #pickup 3
set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize
:start
set #a FindColor (784, 28 784, 28 1 1 1316719 %arr 2 workwindow)
while_not #a > 0  // Пока не увидим хп, ищем моба
    send %mob [#nMob]
    if #nMob < #mobsize
        set #nMob #nMob + 1
    else
        set #nMob 1
    end_if
    wait 300
wait random (500)
end_while
set #nMob 1
while #a > 0 // Пока видим хп - лупим
    send %attack [#nAttack]
    if #nAttack < #Attacksize
        set #nAttack #nAttack + 1
    else
        set #nAttack 1
    end_if
    wait 100
    wait random (200)
end_while
repeat #pickup // Собираем дроп.
    send $pickup
    wait 200
    wait random (100)
end_repeat
goto start

Перебирает мобов по первому блоку и не атакует, как будто проблема с поиском точек.
Однако......
Код
set #a FindColor (784, 28 784, 28 1 1 1316719 %arr 2 workwindow)
msg найдено #a точек

Цитата
16:46:28 4 (, 1): msg - найдено 1 точек

все верно находит 1 точку в окне la2

В чем ошибка подскажите? Неужели в логике?)
С уважением.

Автор: DarkMaster 2.4.2013, 17:03

Цитата
Неужели в логике?)

Готов обрадовать - в ней самой. Это на самом деле хорошо, т.к. поиск в перекрытых окнах у многих просто не работает.
set #a FindColor ... нужно вызывать не только перед входом в цикл while, но и перед while_end.
Цитата
while #a > 0 // Пока видим хп - лупим

Тут вообще ни 1 вызова поиска цвета. Не перед входом в цикл, не внутри цикла.

Автор: pcix 2.4.2013, 17:24

Черт побери) перестал работать в перекрытом окне sad.gif не могу понять причину. Когда активное все норм, только чем перекроешь все не работает, тупо перебирает мобов.

Код
:start
set #a FindColor (784, 28 784, 28 1 1 1316719 %arr 2 workwindow)
while_not #a > 0  // Пока не увидим хп, ищем моба
       send %mob [#nMob]
    if #nMob < #mobsize
        set #nMob #nMob + 1
    else
        set #nMob 1
    end_if
    wait 300
wait random (500)
set #a FindColor (784, 28 784, 28 1 1 1316719 %arr 2 workwindow
end_while
set #nMob 1
set #a FindColor (784, 28 784, 28 1 1 1316719 %arr 2 workwindow
while #a > 0 // Пока видим хп - лупим
    set #a FindColor (784, 28 784, 28 1 1 1316719 %arr 2 workwindow)
    send %attack [#nAttack]
    if #nAttack < #Attacksize
        set #nAttack #nAttack + 1
    else
        set #nAttack 1
    end_if
    wait 100
    wait random (200)
    set #a FindColor (784, 28 784, 28 1 1 1316719 %arr 2 workwindow
    end_while
repeat #pickup // Собираем дроп.
    send $pickup
    wait 200
    wait random (100)
end_repeat
goto start

в таком варианте, как Вы посоветовали, работает, но только рпи активном окне. Вообщем жаль. Свернул окно, пошел покурить цп банки ушли все и бот не бегает smile.gif)

Автор: DarkMaster 2.4.2013, 19:29

Цитата
Свернул окно

Сворачивать нельзя!!! Только перекрывать другими. При сворачивании окно не отрабатывает графику.

Автор: pcix 3.4.2013, 9:15

у меня ла2 в оконном режиме НЕ свернут, просто перекрыт, вес равно не работает поиск цвета, есть мнение что изза 64 разрядности 7рки

Автор: Пипка 1.9.2013, 18:31

Здравствуйте. У меня проблема в самом начале моего пути развития )
Скрипт на постоянное нажатие F5, который я увидел в видео ролике оказался не рабочим.

Код
:loop
wait 100
post F5
wait 100
goto loop  

Выбивало ошибку. Исправил это тем, что изменил post на send. Скрипт начал работать в циклическом режиме. Но. Привязываю окно л2, назначаю например хил на ф5 и ничего не происходит. В пилоте цикл идет, но на игре это никак не отражается. В чем может быть проблема? Время ожидания ставил самое разное. Играю на руофе.

Автор: DarkMaster 1.9.2013, 19:10

1) Какое отношение это имеет к скрипту из шапки?
2) Руофф на данный момент не поддерживается.

Автор: Пипка 1.9.2013, 19:24

Спасибо за ответ.
Потому, что в видео-руководстве по скрипту из шапки упоминается и этот скрипт. И он там выполняет важную роль. Простите, если, что не так.

Автор: DarkMaster 1.9.2013, 20:00

Цитата
Потому, что в видео-руководстве по скрипту из шапки упоминается и этот скрипт

Аааа. Просто очень уж любят я сюда постить все пытающиеся написать что-то свое. Тема была бы уже раза в 3 толще) Жаль, что с проблемкой помочь не смог(

Автор: Сэтэнай 18.9.2013, 14:20

Цитата(Пипка @ 1.9.2013, 19:31) *

Здравствуйте. У меня проблема в самом начале моего пути развития )
Скрипт на постоянное нажатие F5, который я увидел в видео ролике оказался не рабочим.

Код
:loop
wait 100
post F5
wait 100
goto loop  

Выбивало ошибку. Исправил это тем, что изменил post на send. Скрипт начал работать в циклическом режиме. Но. Привязываю окно л2, назначаю например хил на ф5 и ничего не происходит. В пилоте цикл идет, но на игре это никак не отражается. В чем может быть проблема? Время ожидания ставил самое разное. Играю на руофе.

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

Автор: DarkMaster 18.9.2013, 14:45

Цитата
вы хотите чтобы ваше основное окно хилил второе окно биш? если да то отпишите в личку,помогу настроить.

Под руофф?

Автор: Сэтэнай 18.9.2013, 14:56

Цитата(DarkMaster @ 18.9.2013, 15:45) *

Под руофф?


нет. выше же писали что на руоффе не работает сейчас пилот. я об фришке.

Автор: DarkMaster 18.9.2013, 15:02

Цитата
Играю на руофе.

Цитата
я об фришке

Автор: Logas 19.9.2013, 18:18

Привет. Появилась проблема, чар начел при смене таргета бежать к мобу. Вот мой скрипт. Ранее такого не наблюдалась.

Цитата

// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F2
set %attack [2] F3
set %attack [3] F4
set %attack [4] F5
set %attack [5] F6
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1251183
// Координата крайней левой точки полоски хп моба.
set #xMobHP 619
set #yMobHP 28

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 300
wait random (500)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 100
wait random (200)
end_while


Также начело выдавать кокуйто непонятую ошибку. При этом скрип продолжает роботать. Изображение

Автор: DarkMaster 19.9.2013, 18:26

Цитата
// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 1251183
// Координата крайней левой точки полоски хп моба.
set #xMobHP 619
set #yMobHP 28

Что-то из этого не правильное. Скорее всего вы просто переместили плашку с хп.

Автор: Logas 20.9.2013, 19:58

Цитата(DarkMaster @ 19.9.2013, 18:26) *

Что-то из этого не правильное. Скорее всего вы просто переместили плашку с хп.

Попробывал изменить ну всеровно бегает к мобам.
ДА и еще один Минус агрится на Сумонеров.

Автор: DarkMaster 21.9.2013, 6:28

Цитата
Попробывал изменить ну всеровно бегает к мобам.

значит неправильно меняли. Проблема именно в этом.

Автор: Logas 21.9.2013, 13:34

Все понял в чем была проблема. Скилы, есть с радиусом 900, а есть 500 и 150 вот из за этого перс и дергался к мобам. Радиус у таргета то один. Всеровно спасибо.

Автор: Logas 7.10.2013, 17:17

Как зделать чтобы не агрелся на сумонеров. Получается что когда некст таргет поподает на сумонера его определяет как моба, иза того что мне видно его Хп. Может есть способ избавится от этого ?

Автор: DarkMaster 7.10.2013, 17:41

Можно попробовать проверять ник финдимиджем. Поставить в настройках непрозрачность плашек интерфейса, в финдимидже подобрать deviation и точность.

Автор: Logas 7.10.2013, 18:45

Цитата(DarkMaster @ 7.10.2013, 17:41) *

Можно попробовать проверять ник финдимиджем. Поставить в настройках непрозрачность плашек интерфейса, в финдимидже подобрать deviation и точность.



Я не особо разбераюсь в прописани скриптах. Я ими владею на уровне новичка. Если можна то както по проще обясните. Зарание извиняюсь за неудобства.

Автор: DarkMaster 7.10.2013, 23:05

http://uopilot.tati.pro/index.php?title=Findimage

Автор: manyjg 8.12.2013, 8:27

Привет

Вчера я начинаю использовать UOpilot. У меня есть проблема с ним. Я открываю от имени администратора, но в Lineage 2, команда "отправить" не работает. То же самое с «столб» (не знаю эту команду) иногда что-то случилось, работает только 1 кнопку не все то, что было с помощью целевой мобов или нападение.
Я использую свой ​​сценарий с начала, эту тему.

пожалуйста, помогите, если можете.


Hi

yesterday I start use UOpilot. I have a problem with him. I open as administrator but into Lineage 2, command "send" doesn't work. Same with "post" (don't know that command) sometimes something happend, working only 1 button not all what was using to target mobs or attack.
I use your script from begining this topic.

please help if you can.

Автор: Zeleax 9.12.2013, 22:28

try sendex

Автор: faser 31.12.2013, 4:55

Извините пожалуста за нубский вопрос, но я новичек еще в скриптах. Заметил что скрипт работает только когда я в активном окне перса который бегает под пилотом. А если я переключаюсь на второе окно, то мой перс перестает бить мобов на каче. Можна ли сделать так чтоб скрипт работал даже тогда, когда я переключаюсь на второе окошко, например бафаю себя варком.

Скрипт с 1 странички :

// Кнопка с макросом /targetnext
set %mob [1] F1
// Кнопки с макросами на таргет мобов.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// таргетов - лишние убрать!
set %mob [2] F2
set %mob [3] F3
set %mob [4] F4

// Кнопки со скилами атаки.
// При необходимости можно добавлять неограниченное количество.
// Пустые кнопки не оставлять! Если не нужно большое количество
// скилов - лишние убрать!
set %attack [1] F5
set %attack [2] F6
set %attack [3] F7
set %attack [4] F8

// Кнопка с подбором лута.
set $pickup F9

// Сколько выпавших итемов будет подбирать.
// Если упадет меньше, то все равно будет стоять и тыкать.
set #pickup 4

// Цвет крайней левой точки полоски хп моба.
set #mobColorHP 4474495
// Координата крайней левой точки полоски хп моба.
set #xMobHP 577
set #yMobHP 581

set #mobsize size (%mob)
set #attacksize size (%attack)
set #nMob 1
set #nAttack 1
//msg #mobsize #attacksize

:start
while_not #xMobHP, #yMobHP #mobColorHP // Пока не увидим хп, ищем моба
send %mob [#nMob]
if #nMob < #mobsize
set #nMob #nMob + 1
else
set #nMob 1
end_if
wait 500
wait random (1000)
// get color #c #xMobHP, #yMobHP
// msg ищем #mobColorHP нашли #c
end_while

set #nMob 1

while #xMobHP, #yMobHP #mobColorHP // Пока видим хп - лупим
send %attack [#nAttack]
if #nAttack < #Attacksize
set #nAttack #nAttack + 1
else
set #nAttack 1
end_if
wait 500
wait random (1000)
end_while

repeat #pickup // Собираем дроп.
send $pickup
wait 200
wait random (500)
end_repeat

goto start

Автор: DarkMaster 31.12.2013, 10:05

Вариантов несколько. И все они имеют существенные минусы.
1) Переписать скрипт на findimage/findcolor с использованием поиска в перекрытых окнах. Работает далеко не везде. Кто-то уже пробовал не получилось - не находит. Однако это все достаточно индивидуально. У меня для WoW этот метод работает, человек недавно заходил на форум - у него не работало.
2) Виртуальные машины: VMWare, VirtualBox. Готовимся к лагам, возможно придется помучиться с их конфигурацие, т.к. из-за защиты в клиенте фимидой были проблемы с запуском.
3) Астер. Вариант идеален по производительности, совместимости, заводится у всех и т.д. Но необходимо 2+ монитора(либо несколько входов на мониторе) и соответствующее количество видеовыходов с компа. Ну и шнур между ними никто не отменял.

Автор: faser 31.12.2013, 11:36

Цитата(DarkMaster @ 31.12.2013, 11:05) *

Вариантов несколько. И все они имеют существенные минусы.
1) Переписать скрипт на findimage/findcolor с использованием поиска в перекрытых окнах. Работает далеко не везде. Кто-то уже пробовал не получилось - не находит. Однако это все достаточно индивидуально. У меня для WoW этот метод работает, человек недавно заходил на форум - у него не работало.
2) Виртуальные машины: VMWare, VirtualBox. Готовимся к лагам, возможно придется помучиться с их конфигурацие, т.к. из-за защиты в клиенте фимидой были проблемы с запуском.
3) Астер. Вариант идеален по производительности, совместимости, заводится у всех и т.д. Но необходимо 2+ монитора(либо несколько входов на мониторе) и соответствующее количество видеовыходов с компа. Ну и шнур между ними никто не отменял.



Мастер перепиши скрипт пожалуста на findcolor , затестю. Может заработает.

Автор: DarkMaster 31.12.2013, 12:54

дык возьмите для теста любую точку(кроме черного) и попробуйте финдколором ее найти. Смысл переписывать, если достаточно теста небольшого теста, чтобы понять будет ли оно работать?

Автор: faser 31.12.2013, 16:28

что значит Работа с перекрытым окном: опционально в параметре findcolor , можете обяснить в примере например ?

Автор: DarkMaster 31.12.2013, 17:03

http://uopilot.tati.pro/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:AllPages

Автор: faser 31.12.2013, 17:18

Цитата(DarkMaster @ 31.12.2013, 18:03) *

http://uopilot.tati.pro/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:AllPages



Невижу там нигде описания что такое Опциональная привязка .

Автор: DarkMaster 31.12.2013, 17:21

Читайте. Я не просто же так ссылки кидаю.

Автор: Laim 7.3.2014, 22:45

Мб у кого то есть готовое, если чара во время кача убили нужно что бы он звонил в звонок

Автор: DarkMaster 7.3.2014, 23:20

Причем тут скрипт из темы?

Автор: Laim 7.3.2014, 23:24

if_not 24, 40 ,3686015 //КРАЙНЯЯ ЛЕВАЯ ТОЧКА полосы ХП
alarm din.wav
wait 500
end_if

Написал сам)


Цитата(DarkMaster @ 8.3.2014, 2:20) *

Причем тут скрипт из темы?

ну я же хочу его в этот скрипт вставить

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)