Что нового

[Lineage II]Настройки для бота как в Au3Ifo

RavdonikaS

Новичок
Сообщения
68
Репутация
4
Хотелось бы реализовать настройку бота по контрольным точкам на экране по которым бот определяет своё состояние так же как выполнено в Au3Ifo (маленький прицел который тянется в нужную точку и определяет ее цвет и координаты и с функцией Magnify когда он показывает маленькую попиксельную лупу того места куда наведен курсор)

направьте на путь истинный в каком направлении копать что бы такое создать(прицел и маленькую поппиксельную лупу)

И еще можно ли как то через скрипт управлять скоростью перемещения мыши то есть когда буду тянуть мышь в нужную точку что бы бот записал её цвет и координаты то на этот момент скорость передвижения мыши-кусора падала до минимума а когда точка выбрана то скорость восстанавливалась на прежнее значение (нужно для того что бы наведение на точку было с точностью до 1пикселя )


Поясняю есть готовый рабочий бот
Работает на анализе пикселей на экране в зависимости есть-нет пиксель выполняет набор действий
В боте есть раздел настройка там выставляются кнопки для действий размер и положение окошек
Вот хотелось бы туда еще функцию что бы в настройки записывались контрольные точки по цветам и положению на основе анализа которых бот выполняет действия но что бы в руную каждый раз не переписывать код хотел сделать такую вот функцию что бы положения точек сами записывались тычками мыши по экрану
Как реализовать запись переменных этот вопрос не интересует
Интересует как создать такой прицел как у Au3Info с маленькой лупой рядышком которая увеличивает место положения курсора до размера нескольких пикселей
И если возможно средствами .au3 замедлять скорость перемещения курсора в момент таскания этого прицела или вобще как замедлить мышь когда например ты зажал ЛКМ и делаешь движения мышью куда нибудь
 

Asshaker

Знающий
Сообщения
150
Репутация
17
Re: [Автоматизация] Настройки для бота как в Au3Ifo

открываешь AutoIt Win Info включаешь лупу наводишь на пиксель. Переписываешь координаты пикселя и его цвет и запускаешь:
Код:
$point=PixelSearch(x,y,x,y,color)
if not @error Then
	MsgBox(0,0,'x-'&$point[0]&',y-'&$point[1])
EndIf


Перечитал твой пост...
Чего ты хочешь сделать? Зачем? Где?
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 598
Репутация
938
Re: [Автоматизация] Настройки для бота как в Au3Ifo

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

Asshaker

Знающий
Сообщения
150
Репутация
17
Re: [Автоматизация] Настройки для бота как в Au3Ifo

http://autoit-script.ru/index.php/topic,8058.msg54713.html#msg54713

м.б. это поможет?
 
Автор
RavdonikaS

RavdonikaS

Новичок
Сообщения
68
Репутация
4
Re: Настройки для бота как в Au3Ifo

Автор: Asshaker
Re: Big Boss Inform. Отображение текущих координат, захват цвета

м.б. это поможет?
Не совсем то.. сделать запись цвета и координат курсора это в принципе не проблемма
Тем более что окно как в скрипте что ты посоветовал создавать не нужно оно уже есть в настройках бота

Нужно что то на подобие вот как на скрине

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

Asshaker

Знающий
Сообщения
150
Репутация
17
Re: Настройки для бота как в Au3Ifo

Я не понимаю что ты хочешь.
Ты описание Биг Бос Информ прочитал?
4. CURRENT. Текущие координаты и цвета под мышкой в реальном времени.

Зачем тебе лупа не понятно....
Запусти WinInfo включи лупу и запусти бота. Мышка будет бегать а ты карандашиком записывай циферки из WinInfo.
Тока фриз сними.
 

SemEMP

Знающий
Сообщения
42
Репутация
7
Re: Настройки для бота как в Au3Ifo

Form Captor.rar -Вот, что ты хочешь

autoit proj.rar


Добавлено:
Сообщение автоматически объединено:

Вот ещё, это чья-то разработка, немного переделанная мною(тоже когда-то этим увлекался).
Несовсем то, что ты просишь, но зато показывает рамку которую можно двигать и именять размер, после нажатия <Enter> скрипт показывает чексумму области и координаты верхнего левого и нижнего правого области.
Чтобы вызвать окошко с рамкой для выделения надо нажать <Ctrl>+<F8>
Нажатие <ESC> закрывает прогу.

Zoom.au3
Вобщем эта вещь увеличивает экран, если объеденить Form Captor.rar , то получится, то, что ты какраз хотел. :IL_AutoIt_1:
 
Автор
RavdonikaS

RavdonikaS

Новичок
Сообщения
68
Репутация
4
Re: Настройки для бота как в Au3Ifo

Автор: Asshaker
Я не понимаю что ты хочешь.
Ты описание Биг Бос Информ прочитал?
4. CURRENT. Текущие координаты и цвета под мышкой в реальном времени.

Зачем тебе лупа не понятно....
Запусти WinInfo включи лупу и запусти бота. Мышка будет бегать а ты карандашиком записывай циферки из WinInfo.
Тока фриз сними.
Есть линия ХП мне например нужно отметить самую крайнюю левую или правую точки этой линии
Если делать это на глаз без лупы то выходит погрешность в 2-3 пикселя - следствие ситуация у моба остается скажем 10HP (как раз тот 1 пиксель на который вышла погрешность) а контрольной точкой по которой программа определят наличие ХП является не самая крайняя а рядом с ней и бот ориентируясь на соседний пиксель где заданного цвета уже нет думает что моб уничтожен

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

Asshaker

Знающий
Сообщения
150
Репутация
17
Re: Настройки для бота как в Au3Ifo

Если делать разрешение клиента фиксированным то можно использовать:
Код:
$wc=WinGetPos('Linage 2')
PixelSearch($wc[0]+x1,$wc[1]+y1,$wc[0]+x2,$wc[1]+y2,0x000000)

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

М.б. бота хотя бы покажешь? Трудно на словах все воспринимать.
 

rusreg79

Продвинутый
Сообщения
159
Репутация
57
Re: Настройки для бота как в Au3Ifo

И еще можно ли как то через скрипт управлять скоростью перемещения мыши то есть когда буду тянуть мышь в нужную точку что бы бот записал её цвет и координаты то на этот момент скорость передвижения мыши-кусора падала до минимума а когда точка выбрана то скорость восстанавливалась на прежнее значение (нужно для того что бы наведение на точку было с точностью до 1пикселя )
Пример изменения скорости перемещения мыши:

Код:
Global Const $SPI_GETMOUSESPEED = 0x0070
Global Const $SPI_SETMOUSESPEED = 0x0071
Global $aReturn

;Узнать исходную скорость мыши
$aReturn = DllCall('user32.dll', 'int', 'SystemParametersInfo', 'uint', $SPI_GETMOUSESPEED, 'uint', 0, _
            'int*', '', 'uint', 0)

MsgBox (0,'','Сейчас будет уменьшена скорость мыши')
;Задать новую скорость мыши
DllCall('user32.dll', 'int', 'SystemParametersInfo', 'uint', $SPI_SETMOUSESPEED, 'uint', 0, _
            'int', 1, 'uint', 0)

MsgBox (0,'','Вернуть прежнюю скорость мыши')
;Вернуть прежнюю скорость мыши
DllCall('user32.dll', 'int', 'SystemParametersInfo', 'uint', $SPI_SETMOUSESPEED, 'uint', 0, _
            'int', $aReturn[3], 'uint', 0)
 

running-frag

why me?
Сообщения
441
Репутация
60
Re: Настройки для бота как в Au3Ifo

сомневаюсь что у ТС есть "готовый" скрипт, но вернёмся к делу
по скрину (где цп\хп\мана) нужен скрипт определения ширины\высоты, исходя что я вижу, это не составляет труда сделать (желаю удачи :ok:)
т.к. в л2, насколько я помню, зоны цп\хп\маны забронированы (т.е. мы их никак не сместим по вертикали относительно левого-верхнего угла) + они "бегают" только по ширине, но т.к. мы будем знать ширину и высоту, всё остальное не проблема, плюс градиент там есть, но имхо (опять же точно не помню) там он статический

для ТС: если тебе надо такой супермегадевайс - пользуйся фотошопом, там и линейка есть попиксельная, зоны просчитать не проблема, и не страдай ерундой, 1-2 пикселя он там высчитывает


update:
на счёт мобов, ты изначально не правильно мыслишь, ты убей моба, сделай скрин, запиши координаты и цвета в тех крайних пикселях, а в боте уж, в цикле, будешь "бить моба" до тех пор пока цвета не сойдётся с "мёртвым" мобом
 
Автор
RavdonikaS

RavdonikaS

Новичок
Сообщения
68
Репутация
4
Настройки для бота как в Au3Ifo

Re: Настройки для бота как в Au3Ifo
« Ответ #10, Отправлен: Сегодня в 19:35:35 »

сомневаюсь что у ТС есть "готовый" скрипт, но вернёмся к делу
по скрину (где цп\хп\мана) нужен скрипт определения ширины\высоты, исходя что я вижу, это не составляет труда сделать (желаю удачи :ok:)
т.к. в л2, насколько я помню, зоны цп\хп\маны забронированы (т.е. мы их никак не сместим по вертикали относительно левого-верхнего угла) + они "бегают" только по ширине, но т.к. мы будем знать ширину и высоту, всё остальное не проблема, плюс градиент там есть, но имхо (опять же точно не помню) там он статический

для ТС: если тебе надо такой супермегадевайс - пользуйся фотошопом, там и линейка есть попиксельная, зоны просчитать не проблема, и не страдай ерундой, 1-2 пикселя он там высчитывает
На уровне ручками вписать нужные места где распологаются ХП ЦП МП и их цвета - это там все уже реализовано хочется теперь автоматизировать процесс что бы это все вписывалось тычками мышки ну и конечно с заветной лупой))


Автор: Asshaker
Если делать разрешение клиента фиксированным то можно использовать:
Код: AutoIt [Выделить]
$wc=WinGetPos('Linage 2')
PixelSearch($wc[0]+x1,$wc[1]+y1,$wc[0]+x2,$wc[1]+y2,0x000000)
Первый раз надо будет выровнять окно по нулевым координатам, затем лупой из WinInfo вычисляем область для хп. И не зависимо от расположения окна и разрешения экрана будет искать пиксель в заданной области.

М.б. бота хотя бы покажешь? Трудно на словах все воспринимать.
Там еще этой функции нет она только в разработке
Вот собственно ниже архив черт ногу сломит но может кто то разберется
Попутно гляньте что можно рационализировать и как сделать поумнее
РуОфф LineageII работает через "Запускатр"
Заглавный файл Бот.au3 С него и начинается работа всего бота
запуск всех функций выполнен на кнопках нумпада и парру дежурных запускаются кликом мыши
 

running-frag

why me?
Сообщения
441
Репутация
60
Re: Настройки для бота как в Au3Ifo

Я структуру делают вот так:
Код:
gui.xxx.xxx - окошки и всё что с ними связано
script - главный скрипт (аля index\main)
script.part.xxx - набор специфических функций (на чёткую тематику)
script.detectors - датчики
script.program - алгоритм бота (набор последовательностей проверок и выполнения функций из всех выше перечисленных скриптов)


Добавлено:
Сообщение автоматически объединено:

RavdonikaS [?]
На уровне ручками вписать нужные места где распологаются ХП ЦП МП и их цвета - это там все уже реализовано хочется теперь автоматизировать процесс что бы это все вписывалось тычками мышки ну и конечно с заветной лупой))
ну так :scratch: оптимизируй, что мешает то? 8) лично я вижу как это можно реализовать, как минимум один вариант точно есть ;) я его описал выше


Добавлено:
Сообщение автоматически объединено:

http://autoit-script.ru/index.php/topic,7843.msg53346.html#msg53346
 
Автор
RavdonikaS

RavdonikaS

Новичок
Сообщения
68
Репутация
4
Настройки для бота как в Au3Ifo

За структуру огромное спасибо!

А вот насчет моба выполнять цикл пока цвет не сойдется с мертвым это же надо 2 проверки делать 1 начинает атаку когда появляется полоска живого моба а 2-ая проверка на мертвые пиксели
По моему проще ждать пока пока не изсчезнет полоска живого моба


И товарищу "rusreg79 тоже огромное спасибо по скорости мыши это именно то что нужно


Так ну осталась лупа)) и попутно смотрим бота предлагаем еще идеи по рационализации
Кто если пробовал запускать там есть одна недоделка Пока не откроешь и не закроешь меню зеленого плюса некоторые переменные не объявляются и при запуске функций выдает ошибку (то есть для корректной работы надо сначала открыть закрыть меню зеленого плюса)
 

running-frag

why me?
Сообщения
441
Репутация
60
Re: Настройки для бота как в Au3Ifo

RavdonikaS [?]
А вот насчет моба выполнять цикл пока цвет не сойдется с мертвым это же надо 2 проверки делать 1 начинает атаку когда появляется полоска живого моба а 2-ая проверка на мертвые пиксели
ну сделай не так, возьми пиксель живого моба, после бей его пока пиксель не изменится (т.е. пиксель изменился = у него нет хп)
 

running-frag

why me?
Сообщения
441
Репутация
60
Re: Настройки для бота как в Au3Ifo

По поводу лупы есть http://autoit-script.ru/index.php/topic,7843.msg53346.html такое
 

Zaramot

I ♥ AutoIt
Сообщения
1 160
Репутация
659
Re: Настройки для бота как в Au3Ifo

http://autoit-script.ru/index.php/topic,4579.0.html
 
Верх