|
|
|
Помощь в скриптах для различных заданий и квестов., Игра Dragon Knight |
|
|
FREEON |
1.4.2018, 2:03
|
Journeyman
Сообщений: 365
Регистрация: 14.2.2017 Группа: Пользователи Наличность: 1316
Пользователь №: 18.346
Возраст: 25
|
Цитата(cirus @ 31.3.2018, 20:50) Одна картинка 32 бита, вторая 8. А потом пишут findimage не находит картинки (IMG: style_emoticons/default/smile.gif) В архиве видео и скрипт.
Astar.zip ( 659,41 килобайт )
Кол-во скачиваний: 184 Классно! Смотрю - смотрю и насмотреться никак не могу (IMG: style_emoticons/default/laugh.gif) Буду голову ломать, как это быстро скриптом рисовать карту и затем обратно запихивать в игру (IMG: style_emoticons/default/ohmy.gif) Кстати, чем видео записывал? чо оно такое маленькое?)
|
|
|
|
XaЛBa |
20.4.2019, 18:25
|
Neophyte
Сообщений: 32
Регистрация: 12.4.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.293
|
Написан скрипт на прохождение ПГ. но вся бяка, что он ни как не делает 6 проходов, а гоняет до бесконечности пока не остановить. Через For также не вышло, не уж-то делать счетчик циклов
//типа уже пати собрано left 1000, 97 // подхожу wait 2500 // ближе left 388, 266 // к wait 2500 // НПС left 429, 616 //клик на НПС left 429, 616 //вызвать окно с кнопкой Вызов repeat 6 while 1024, 617 1202119 //кнопка Вызов left 1025, 618 //клик Вызов if 1231, 846 727077 //если не красная АФК left 1229, 849 //активировать АФК end_if while_not 1024, 617 1202119 left 429, 616 //вызвать окно с кнопкой Вызов left 1025, 618 //клик Вызов end_while end_while end_repeat end_script
|
|
|
|
XaЛBa |
21.4.2019, 0:35
|
Neophyte
Сообщений: 32
Регистрация: 12.4.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.293
|
плин, про логи забыл совсем. в итоге исправил на ......// подготовка к задаче repeat 6 left 1025, 618 //клик Вызов wait if 1231, 865 1319214 //если не красная АФК left 1228, 846 //активировать АФК end_if while_not 1024, 617 1202119 left 425, 587 //вызвать окно с кнопкой Вызов end_while end_repeat .......//закрыть все и выйти все оказалось проще, спасибки Цитата(FREEON @ 20.4.2019, 20:14) В ручную подвести или(оставлять окола непися) героя. Окно пати(команды переместить из цента в бок) Координаты клика атаки НПС делать с помощью findimage. по поводу количества проходов..тут уже могут быть варианты..если кого-то водить то счетчик, если для себя то надежней через findimage.
FREEON, да ты и сам знаеш чо они не статичны а малек динамичны, а с диапозонами цвета не хотелось возиться, Да и findImage у меня чтото не сработал ( делал на название неписюна ), и фон затирал, вощем не прокатило, а так клацает себе и хватает на 6 попыток. Хотя щас писал ответы, и наверно понял что делал ошибку когда затирал фон, надо было верхний левый пиксель не затирать. По любасу спасибки
|
|
|
|
FREEON |
21.4.2019, 9:55
|
Journeyman
Сообщений: 365
Регистрация: 14.2.2017 Группа: Пользователи Наличность: 1316
Пользователь №: 18.346
Возраст: 25
|
Цитата(XaЛBa @ 21.4.2019, 0:35) FREEON, да ты и сам знаеш чо они не статичны а малек динамичны
Проще не значит надежней. Код для слива попыток в ПГ
Нужно сделать 4 картинки: 1) картинка имени моба на котором будем сливать попытки(только имя, закрашенный фон) 2) картинка салатовый угол окна создать отряд (10 пикселей хватит с головой) 3) картинка Ника главного героя (закрашенный фон) 4) картинка когда у героя осталось 0 попыток (IMG:https://i.ibb.co/mBJyRcK/5.png) В коде менять только те строки которые в комментариях отмечены звездочками ***Код //Перемещаем окно с попытками в бок(вправо) set #so findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %so 2 80) //***картинка окна Создать отряд(верхняя левая салатовая точка) while #so = 0 // пока не нашлась картинка c окном Создать отряд(собранное пати) set #so findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %so 2 80) //***дублируем картинку Создать отряд(только путь и имя,координаты) wait 500 end_while set #s findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %s 2 80) //***дублируем картинку Создать отряд(только путь и имя,координаты) if #s > 0 left_down %s[1 1] %s[1 2] //зажать мышку на окне wait 200 left_up XXX YYY //***вставить свои координаты куда будем перетаскивать окно end_if while 0 = 0 set #nps findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-моба.bmp) %nps 2 70) //***картинка моба-подземелья на котором будем сливать попытки(только его имя с закрашеным фоном) if #nps > 0 set #x (%nps [1 1] + %nps [1 3]) / 2 set #y (%nps [1 2] + %nps [1 4]) / 2 + 60 //*** wait 100 move #x #y //навести мышку на моба которого будем бить //left #x #y //*Атака моба wait 1s end_if if 1024, 617 1202119 //***кнопка Начать вызов (сделать проверку цвета Ctrl+B) left 1025, 618 //***клик Вызов else log Не могу найти кнопку НАЧАТЬ ВЫЗОВ //*** end_if if 1231, 846 727077 //***если не красная АФК left 1229, 849 //***активировать АФК end_if set #ger findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-ник.bmp) %ger 2 70) //***картинка ника твоего персанажа в окне Создать отряд(с закр.фон) if #ger > 0 //Ищем героя в отряде и проверяем... set #ger findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-ник.bmp) %ger 2 70) //***дублируем картинку ника set #StartX %ger [1 1] set #StartY %ger [1 2] set #EndX %ger [1 1] + 150 //*** set #EndY %ger [1 2] + 150 //*** set #p findimage (#StartX #StartY #EndX #EndY (C:\путь\имя-картинки-ноль.bmp) %p 2 70) //***картинка когда у твоего персанажа 0 попыток(с закр.фон) if #p > 0 //Если мы главному герою слили все попытки, то.. set #X %ger [1 1] + 210 //*** set #Y %ger [1 2] + 15 //*** left #X #Y //распустить отряд //left//***выйти из подземелья //*** свое действие end_script //остановить скрипт end_if end_if end_while
|
|
|
|
FREEON |
21.4.2019, 13:02
|
Journeyman
Сообщений: 365
Регистрация: 14.2.2017 Группа: Пользователи Наличность: 1316
Пользователь №: 18.346
Возраст: 25
|
Цитата(XaЛBa @ 21.4.2019, 12:13) Не люблю команду Мув и всячески не хочу её применять как на Гобах так и на Лигере.
move нужно для тестового режима, что бы убедиться в том что мы будем кликать в нужном для нас месте, а в рабочей версии эту команду без проблем можно заменить на клики. Но в данном скрипте нужно подсветить непися при помощи move тогда атака будет удачной, а без подсветки будет мазать. Так же нужно сделать несколько правок..повысить точность поиска попыток и поменять очередность, первой сделать проверку на остаток попыток. Исправил в коде и теперь все должно шуршать как часики. Код //Перемещаем окно с попытками в бок(вправо) set #so findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %so 2 80) //***картинка окна Создать отряд(верхняя левая салатовая точка) while #so = 0 // пока не нашлась картинка c окном Создать отряд(собранное пати) set #so findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %so 2 80) //***дублируем картинку Создать отряд(только путь и имя,координаты) wait 500 end_while set #s findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %s 2 80) //***дублируем картинку Создать отряд(только путь и имя,координаты) if #s > 0 left_down %s[1 1] %s[1 2] //зажать мышку на окне wait 200 left_up XXX YYY //***вставить свои координаты куда будем перетаскивать окно end_if while 0 = 0 set #ger findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-ник.bmp) %ger 2 70) //***картинка ника твоего персанажа в окне Создать отряд(с закр.фон) if #ger > 0 //Ищем героя в отряде и проверяем... set #ger findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-ник.bmp) %ger 2 70) //***дублируем картинку ника set #StartX %ger [1 1] set #StartY %ger [1 2] set #EndX %ger [1 1] + 150 //*** set #EndY %ger [1 2] + 150 //*** set #p findimage (#StartX #StartY #EndX #EndY (C:\путь\имя-картинки-ноль.bmp) %p 2 80) //***картинка когда у твоего персанажа 0 попыток(с закр.фон) if #p > 0 //Если мы главному герою слили все попытки, то.. set #X %ger [1 1] + 210 //*** set #Y %ger [1 2] + 15 //*** move #X #Y //навести на кнопку распустить left #X #Y //распустить отряд //left//***выйти из подземелья //*** свое действие end_script //остановить скрипт else set #nps findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-моба.bmp) %nps 2 70) //***картинка моба-подземелья на котором будем сливать попытки(только его имя с закрашеным фоном) if #nps > 0 set #x (%nps [1 1] + %nps [1 3]) / 2 set #y (%nps [1 2] + %nps [1 4]) / 2 + 60 //*** wait 100 move #x #y //навести мышку на моба(подсветить) которого будем бить wait 500 left #x #y //*Атака моба wait 1s end_if if 1024, 617 1202119 //***кнопка Начать вызов (сделать проверку цвета Ctrl+B) left 1025, 618 //***клик Вызов else log Не могу найти кнопку НАЧАТЬ ВЫЗОВ //*** end_if end_if end_if if 1231, 846 727077 //***если не красная АФК left 1229, 849 //***активировать АФК end_if wait 100 end_while
Сообщение отредактировал FREEON - 21.4.2019, 14:37
|
|
|
|
XaЛBa |
21.4.2019, 14:25
|
Neophyte
Сообщений: 32
Регистрация: 12.4.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.293
|
Цитата(FREEON @ 21.4.2019, 9:55) Проще не значит надежней. Код для слива попыток в ПГ
Нужно сделать 4 картинки: 1) картинка имени моба на котором будем сливать попытки(только имя, закрашенный фон) 2) картинка салатовый угол окна создать отряд (10 пикселей хватит с головой) 3) картинка Ника главного героя (закрашенный фон) 4) картинка когда у героя осталось 0 попыток (IMG:https://i.ibb.co/mBJyRcK/5.png) В коде менять только те строки которые в комментариях отмечены звездочками ***Код //Перемещаем окно с попытками в бок(вправо) set #so findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %so 2 80) //***картинка окна Создать отряд(верхняя левая салатовая точка) while #so = 0 // пока не нашлась картинка c окном Создать отряд(собранное пати) set #so findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %so 2 80) //***дублируем картинку Создать отряд(только путь и имя,координаты) wait 500 end_while set #s findimage (0, 0 1920, 1080 (C:\путь\имя-картинки.bmp) %s 2 80) //***дублируем картинку Создать отряд(только путь и имя,координаты) if #s > 0 left_down %s[1 1] %s[1 2] //зажать мышку на окне wait 200 left_up XXX YYY //***вставить свои координаты куда будем перетаскивать окно end_if while 0 = 0 set #nps findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-моба.bmp) %nps 2 70) //***картинка моба-подземелья на котором будем сливать попытки(только его имя с закрашеным фоном) if #nps > 0 set #x (%nps [1 1] + %nps [1 3]) / 2 set #y (%nps [1 2] + %nps [1 4]) / 2 + 60 //*** wait 100 move #x #y //навести мышку на моба которого будем бить //left #x #y //*Атака моба wait 1s end_if if 1024, 617 1202119 //***кнопка Начать вызов (сделать проверку цвета Ctrl+B) left 1025, 618 //***клик Вызов else log Не могу найти кнопку НАЧАТЬ ВЫЗОВ //*** end_if if 1231, 846 727077 //***если не красная АФК left 1229, 849 //***активировать АФК end_if set #ger findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-ник.bmp) %ger 2 70) //***картинка ника твоего персанажа в окне Создать отряд(с закр.фон) if #ger > 0 //Ищем героя в отряде и проверяем... set #ger findimage (0, 0 1920, 1080 (C:\путь\имя-картинки-ник.bmp) %ger 2 70) //***дублируем картинку ника set #StartX %ger [1 1] set #StartY %ger [1 2] set #EndX %ger [1 1] + 150 //*** set #EndY %ger [1 2] + 150 //*** set #p findimage (#StartX #StartY #EndX #EndY (C:\путь\имя-картинки-ноль.bmp) %p 2 70) //***картинка когда у твоего персанажа 0 попыток(с закр.фон) if #p > 0 //Если мы главному герою слили все попытки, то.. set #X %ger [1 1] + 210 //*** set #Y %ger [1 2] + 15 //*** left #X #Y //распустить отряд //left//***выйти из подземелья //*** свое действие end_script //остановить скрипт end_if end_if end_while
и сразу вопрос, а для чего в некоторых местах нам необходимо делать Дублирование картинки, а когда не надо
|
|
|
|
XaЛBa |
23.4.2019, 23:20
|
Neophyte
Сообщений: 32
Регистрация: 12.4.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.293
|
И ещо вопрос назрел, Ни как не выходит найти findimage текст в чате, как ни пыжился, так и не выходи, на слова типа Помочь или Алхимия/ И закрашивал и не закрашивал, и если наводить мышака то начинает подсвечиыаться, то избавлялся от подсветки. И смотрел уже другие посты на эту тему, и скриптами проганял, и ни как, а в Логе выдает Нолик, значит не нашло.
Прикрепленные файлы
Help..bmp ( 38,12 килобайт )
Кол-во скачиваний: 101
|
|
|
|
FREEON |
23.4.2019, 23:40
|
Journeyman
Сообщений: 365
Регистрация: 14.2.2017 Группа: Пользователи Наличность: 1316
Пользователь №: 18.346
Возраст: 25
|
Цитата(XaЛBa @ 23.4.2019, 23:20) И ещо вопрос назрел, Ни как не выходит найти findimage текст в чате, как ни пыжился, так и не выходи, на слова типа Помочь или Алхимия/ И закрашивал и не закрашивал, и если наводить мышака то начинает подсвечиыаться, то избавлялся от подсветки. И смотрел уже другие посты на эту тему, и скриптами проганял, и ни как, а в Логе выдает Нолик, значит не нашло.
закрашивать нужно слово ПОМОЧЬ
Help..bmp ( 714 байт )
Кол-во скачиваний: 153
|
|
|
|
XaЛBa |
24.4.2019, 12:25
|
Neophyte
Сообщений: 32
Регистрация: 12.4.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.293
|
Цитата(FREEON @ 24.4.2019, 0:14) Первая картинка и вторая не бьются по размеру(размер окна при поиске должен быть таким же когда снимали скрин). Левый верхний пиксель он же пиксель фона по цвету(цветовой гамме) не должен совпадать с цветами искомого объекта. У вас получилось так что вместо текста вы искали другой объект. Вот прочтите статью как правильно подготавливать картинку к поиску. https://uopilot.tati.pro/index.php?title=По...и_для_Findimage
1.bmp ( 1,04 килобайт )
Кол-во скачиваний: 150ну, руки пока не набил и вооще, живут отдельно от головы. Да и потом заметил. что если мышак находиться на окне Пилота, то надпись подсвечиваеться, вот он и не находил. Да и в боте на ПГ , чтобы включить АФКу, надо делать "от противного", тогда сработает всегда, ( if_not ........ // конда она красная), иначе она подсвечивается, не сразу заметил
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|