Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: Valta on March 23, 2014, 03:42:19 PM
-
Всем привет! Хотел бы попросить помощи знающим людям составить скрипт по пунктам которые написаны на скриншоте! буду очень благодарен.
(http://s52.radikal.ru/i137/1403/ab/0db0b69e0a81.png) (http://www.radikal.ru)
поиск моба:
GETSCREEN
IF_PICTURE_IN (0,0, 1920,1080, "Image_45.bmp")
MOVE($_return1+10, $_return2+30)
удар скиллом:
GETSCREEN
IF_PICTURE_IN (738,1006,779,1053,"Image_44.bmp",-1,100)
keypress(#F2)
мана:
GETSCREEN
IF_PICTURE_IN (10,31,323,111,"Image_42.bmp",-1,100)
keypress(#F5)
хп персонажа:
GETSCREEN
IF_PICTURE_IN (5,32,337,106,"Image_41.bmp",-1,100)
keypress(#F3)
хп моба лут:
IF_PIXEL_IN (805,53, 1117,90, 1124919)
keypress(#F4)
Изображения проверил все работает и ищет по отдельности.
-
а вместе нихрена не пашет, да ::)
-
кстати вопрос еще ,когда находит моба наводит мышь на него ,если поставить клацать на него левой мышкой камера летает в разные стороны. Как решить кто знает(
-
написал вот скрипт все работает в идеале кроме 2 первых пунктов ,если выделить цель при определенной дистанции начинает бить,собирает лут ,хилиться,регенит мп . а вот загвоздка в то что когда находит картинку поиска мобов он ее клацает постоянно, а мне нужно если нашел, 1-2 раза кликну,л он побежал и выполняется 3-4-5 пункт ,а если не находит моба выполняеться 2 пункт как бы крутит персонажа ,камеру для поиска. на деле вообщем выходит что он постоянно крутиться и клацает на моба -_-
поиск моба:
GETSCREEN
IF_PICTURE_IN (0,0, 1920,1080, "Image_45.bmp")
LCLICK($_return1+10, $_return2+30)
waitm(300)
LCLICK($_return1+10, $_return2+30)
goto удар скиллом
else
лево:
keydown(65)
wait(1)
keyup(65)
goto поиск моба
удар скиллом:
GETSCREEN
IF_PICTURE_IN (738,1006,779,1053,"Image_44.bmp",-1,100)
keypress(#F2)
goto хп моба лут
end_if
хп моба лут:
IF_PIXEL_IN (805,53, 1117,90, 1124919)
keypress(#F4)
goto хп персонажа
end_if
хп персонажа:
GETSCREEN
IF_PICTURE_IN (5,32,337,106,"Image_41.bmp",-1,100)
keypress(#F3)
goto мана
end_if
мана:
GETSCREEN
IF_PICTURE_IN (10,31,323,111,"Image_42.bmp",-1,100)
keypress(#F5)
goto хп моба лут
end_if
-
Исправил ошибки, убрал бесмысленные ГОТО, добавил задержки после нажатий.
поиск моба:
GETSCREEN
IF_PICTURE_IN (0,0, 1920,1080, "Image_45.bmp")
LCLICK($_return1+10, $_return2+30)
waitms(300)
LCLICK($_return1+10, $_return2+30)
waitms(50)
else
keydown(#A)
wait(1)
keyup(#A)
goto (поиск моба)
end_if
GETSCREEN
IF_PICTURE_IN (738,1006,779,1053,"Image_44.bmp",-1,100)
keypress(#F2)
WAITMS(500)
end_if
хп моба лут:
IF_PIXEL_IN (805,53, 1117,90, 1124919)
keypress(#F4)
WAITMS(500)
end_if
GETSCREEN
IF_PICTURE_IN (5,32,337,106,"Image_41.bmp",-1,100)
keypress(#F3)
WAITMS(500)
end_if
GETSCREEN
IF_PICTURE_IN (10,31,323,111,"Image_42.bmp",-1,100)
keypress(#F5)
WAITMS(500)
goto (хп моба лут)
end_if
-
опробывал( продолжает дальше клацать на мобов искать,а мне именно нужно нашел 1 раз кликнул и прекратил поиск до того пока не выполняться следующие пункты(
-
опробывал( продолжает дальше клацать на мобов искать,а мне именно нужно нашел 1 раз кликнул и прекратил поиск до того пока не выполняться следующие пункты(
Добавь задержки здесь
keyup(#A)
waitms(500)
goto (поиск моба)
и здесь
LCLICK($_return1+10, $_return2+30)
waitms(300)
LCLICK($_return1+10, $_return2+30)
wait(2)
else
-
все равно лажа,буду искать решения( мб есть команда останавливающая раздел скрипта намертво,и включением после сбора лута(
-
Всем привет! поднимал уже ету тему ,ну уже 2 сутки ломаю голову как сделать правильно этот скрипт.
Есть вот этот скрипт. В идеале он должен искать полоску моба когда находит нажимает 1-2 раза по нему левой клавишей и бежит к нему,если не находит начинаеться крутиться и искать ее. Если находит переходит к пункту 3(атакует,хилиться,регенит ману(эти 3 пункта работают). Подскажите возможно ли сделать остановку скрипта в указанном разделе? Просто на деле выходит что он находит моба и начинает строчить мышкой по нему иногда мимо и камера хаотично крутиться(можно поставить паузу,это такое.),но обычно клацает по другим мобам с такой же полоской и он начинает бегать туда сюда ... Вопрос заключается в том, возможно ли написать в этой программе команду которая будет тормозить пункт 1. Допустим нашел моба 1-2 раза клацнул персонаж побежал к нему,начинате бить хилиться регенить мп и ТОЛЬКО после того как будет выполнен последний пункт сбора ресурсов . Начинате выполняться пункт 1.
поиск моба:
GETSCREEN
IF_PICTURE_IN (0,0, 1920,1080, "Image_45.bmp")
MOVE($_return1+10, $_return2+30)
waitm(20)
MOVE($_return1+10, $_return2+30)
waitm(20)
else
keydown(#A)
wait(1)
keyup(#A)
goto (поиск моба)
end_if
Удар скиллом;
GETSCREEN
IF_PICTURE_IN (738,1006,779,1053,"Image_44.bmp",-1,100)
keypress(#F2)
WAITMS(500)
end_if
хп моба лут:
IF_PIXEL_IN (805,53, 1117,90, 1124919)
keypress(#F4)
WAITMS(500)
end_if
Хилл;
GETSCREEN
IF_PICTURE_IN (5,32,337,106,"Image_41.bmp",-1,100)
keypress(#F3)
WAITMS(500)
end_if
Мп;
GETSCREEN
IF_PICTURE_IN (10,31,323,111,"Image_42.bmp",-1,100)
keypress(#F5)
WAITMS(500)
goto (хп моба лут)
end_if
-
Андрей! Вырвал тему из под пера. Хорошо что в буфере было...
Всем привет! поднимал уже ету тему ,ну уже 2 сутки ломаю голову как сделать правильно этот скрипт.
Есть вот этот скрипт. В идеале он должен искать полоску моба когда находит нажимает 1-2 раза по нему левой клавишей и бежит к нему,если не находит начинаеться крутиться и искать ее. Если находит переходит к пункту 3(атакует,хилиться,регенит ману(эти 3 пункта работают). Подскажите возможно ли сделать остановку скрипта в указанном разделе? Просто на деле выходит что он находит моба и начинает строчить мышкой по нему иногда мимо и камера хаотично крутиться(можно поставить паузу,это такое.),но обычно клацает по другим мобам с такой же полоской и он начинает бегать туда сюда ... Вопрос заключается в том, возможно ли написать в этой программе команду которая будет тормозить пункт 1. Допустим нашел моба 1-2 раза клацнул персонаж побежал к нему,начинате бить хилиться регенить мп и ТОЛЬКО после того как будет выполнен последний пункт сбора ресурсов . Начинате выполняться пункт 1.
[spoiler]поиск моба:
GETSCREEN
IF_PICTURE_IN (0,0, 1920,1080, "Image_45.bmp")
MOVE($_return1+10, $_return2+30)
waitm(20)
MOVE($_return1+10, $_return2+30)
waitm(20)
else
keydown(#A)
wait(1)
keyup(#A)
goto (поиск моба)
end_if
Удар скиллом;
GETSCREEN
IF_PICTURE_IN (738,1006,779,1053,"Image_44.bmp",-1,100)
keypress(#F2)
WAITMS(500)
end_if
хп моба лут:
IF_PIXEL_IN (805,53, 1117,90, 1124919)
keypress(#F4)
WAITMS(500)
end_if
Хилл;
GETSCREEN
IF_PICTURE_IN (5,32,337,106,"Image_41.bmp",-1,100)
keypress(#F3)
WAITMS(500)
end_if
Мп;
GETSCREEN
IF_PICTURE_IN (10,31,323,111,"Image_42.bmp",-1,100)
keypress(#F5)
WAITMS(500)
goto (хп моба лут)
end_if
[/spoiler]
Конечно, всё можно. Для начала перестать косячить. Что за команда waitm(20) ?
То у тебя GOTO без скобок, то это.
И покажи где вот это:
В идеале он должен искать полоску моба когда находит нажимает 1-2 раза по нему левой клавишей и бежит к нему...
здесь....?
IF_PICTURE_IN (0,0, 1920,1080, "Image_45.bmp")
MOVE($_return1+10, $_return2+30)
waitm(20)
MOVE($_return1+10, $_return2+30)
waitm(20)
Для начала добейся стабильного нахождения нужной полоски. Как минимум используй процент совпадения, возможно цветокоррекцию. Полоска от дистанции меняет размер или нет?
Второе, после того, как будет стабильно находить - выбрасываем нахрен GOTO (если так нужно эту часть можешь пропустить) и пишем последовательность которая действительно нужна.
Если команды после первой должны выполняться циклически, тебе нужно перевести на нормальный язык фразу
и ТОЛЬКО после того как будет выполнен последний пункт сбора ресурсов.
Имеется ввиду как это должен определить скрипт? Как это определяешь ты когда играешь? А то получается что ты описываешь этот момент пространным человеческим языком без всяких критериев.
Примерные, возможные! ответы могут быть:
- По окончании боя появляется табличка;
- -//- пропадает определённый элемент управления игры или меняется локация;
- Не изменяются определённые признаки в течении времени t;
- и т.д.
Если не можешь представить в голове, возьми листок и напиши последовательность действий, шаг за шагом.
Если есть условие отвечай не только на вопрос "если да, что делаем?" но и на "если нет, что делаем?".
+ Выложи нормальный полноразмерный скриншот в BMP или PNG.
Форматируй вставляемый код в сообщении (выпадающий список "Код", выбрать "Clickermann").
-
Нафиг ты темы плодишь?
Нужно зациклить действия заключив их в цикл WHILE. Сначала идет поиск моба, Потом начинается бой. И вот чтобы этот цикл прервался нужно чтобы какое то условие определило что моб убит и изменило $boi = 0 на $boi = 1
// Поиск мобов
$Poick_moba = 0
WHILE($Poick_moba = 0)
GETSCREEN
IF_PICTURE_IN (0,0, 1920,1080, "Image_45.bmp")
$Poick_moba = 1
LCLICK($_return1+10, $_return2+30)
waitms(300)
LCLICK($_return1+10, $_return2+30)
waitms(500)
else
keydown(#A)
wait(1)
keyup(#A)
waitms(500)
end_if
END_CYC
// Бой с мобами
$boi = 0
WHILE($boi = 0)
GETSCREEN
IF_PICTURE_IN (738,1006,779,1053,"Image_44.bmp",-1,100)
keypress(#F2)
WAITMS(500)
end_if
хп моба лут:
GETSCREEN
IF_PIXEL_IN (805,53, 1117,90, 1124919)
keypress(#F4)
WAITMS(500)
end_if
GETSCREEN
IF_PICTURE_IN (5,32,337,106,"Image_41.bmp",-1,100)
keypress(#F3)
WAITMS(500)
end_if
GETSCREEN
IF_PICTURE_IN (10,31,323,111,"Image_42.bmp",-1,100)
keypress(#F5)
WAITMS(500)
goto (хп моба лут)
end_if
END_CYC
-
Андрей,Vint подскажите в последний раз что я пропустил ) я уже запутался .
http://pixs.ru/showimage/123png_5950616_11384641.png
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
$Poick_moba = 0 //// ищет картинку моба пункт 1.
WHILE($Poick_moba = 0)
GETSCREEN
colormode(4)
IF_PICTURE_IN (0,0, 1920,1080, "Image_poisk_moba.bmp")
$Poick_moba = 1 //// Находит его, указывает мышкой на координаты,делает паузу и жмет 1 клик.(
MOVE($_return1+10, $_return2+30)
wait(0.1)
RCLICK($_xmouse, $_ymouse)
wait(0.1)
end_if
$Poick_moba = 2 /// После клика появляеться картинка пункт 2. ,ищет ее. заодно бежит к мобу к дистанции скилла 20м
GETSCREEN
COLORMODE(7)
IF_PICTURE_IN(722,29,1198,107,"Image_100.bmp",-1,100)
else /// если не нашел картинку ,а ето бывает 50 50 и за того что медленно ищет. делает паузу в пол секунды и переходит опять к поиску моба в самое начало.
wait(0.5)
goto $Poisk moba = 0
end_if
END_CYC
$boi = 0 /// После того как мышка клацнула на моба и появилось картинка c полным хп моба пункт .2 и моб в зоне диапозона,начинает его бить. 3 пункт.
WHILE($boi = 0)
GETSCREEN
IF_PICTURE_IN (735,948,800,1021,"Image_33.bmp",-1,100)
keypress(#F2)
WAITMS(500)
end_if
GETSCREEN //// Когда отметка хп достигает 60% пункт 4. начинает хилиться во время боя с мобом
IF_PICTURE_IN (5,32,337,106,"Image_41.bmp",-1,100)
keypress(#F3)
WAITMS(500)
end_if
GETSCREEN /// Ищет картинку убитого моба пункт 5. ,если нашел начинает лутать.
IF_PICTURE_IN (774,28,1149,109, "Image_101.bmp")
$boi = 1
presskey(#F4)
wait(0.5)
presskey(#F4)
end_if
GETSCREEN ////Когда лут собран, и нету 60%мп начинает пункт 6. регенить мп
IF_PICTURE_IN (10,31,323,111,"Image_42.bmp",-1,100)
wait(0.5)
keypress(#F5)
WAITM(0.1)
end_if
END_CYC
goto $Poick_moba = 0 ///// Когда все пункты выполнены,переходит в самое начало и повторяет