Что нового

[Оптимизация]Макрос для игры Джаггернаут

ODIE

Новичок
Сообщения
17
Репутация
0
Поле
b00409029d5a8caa.jpg

f1bf46dcd5aa74f7.jpg
Бой
a060baf5f4b31ef5.jpg
Вот собственное код
Код:
Sleep(15000)

While 1
	;Ищем собачку по цвету
	$coord = PixelSearch( 82, 184, 716, 424, 16226385, 20 )

	If Not @error Then
		;Кликаем если нашли
		MouseClick("left", $coord[0], $coord[1])
		Sleep(100)
		;Ищем цвет иконки информация о монстре
		$f_coord = PixelSearch( 82, 184, 716, 563, 16772665)
		
		If Not @error Then
			;Кликаем чуть ниже чтобы попасть на саму кнопку активации боя
			MouseClick("left", $f_coord[0], $f_coord[1] + 60)
			
			Sleep(10000)
			While 1
				;Ищем цвет кнопки
				$n_coord = PixelSearch( 458, 479, 460, 481, 13869900, 25)
				If Not @error Then
					MouseClick("left", $n_coord[0], $n_coord[1])
					MouseMove($n_coord[0], $n_coord[1] - 100)
					Sleep(5000)
				EndIf
				;Ищем цвет сообщения окончания боя
				$w_coord = PixelSearch( 476, 394, 543, 409, 13369344)
				If Not @error Then
					MouseClick("left", 501, 405 )
					ExitLoop
				EndIf		
			WEnd
			Sleep(25000)
			;Ищем цвет еще одного сообщения об окончания боя
			$fi_coord = PixelSearch( 498, 348, 670, 511, 16776972)
			If Not @error Then
				MouseClick("left", $fi_coord[0], $fi_coord[1])
			EndIf		
		EndIf
		Sleep(25000)
	EndIf
WEnd

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

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: [Оптимизация]Бот для игры Джаггернаут

Если пропускает, значит не находит. => Измени алгоритм поиска своей кнопки, сделай там контрольную проверку например. Ну и в принципе, это не бот а макрос
91.gif
 
Автор
O

ODIE

Новичок
Сообщения
17
Репутация
0
Есть ли конструкция типа goto? Как мне из макроса сделать бота?)
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Бот - имеет некий интеллект и ориентируется по ситуации а не выполняет последовательные действия. Ну и бот - это много тысяч строк логического кода. Собственно если проблема заключается лишь в том что твой скрипт не может распознать кнопку, то просто как я уже сказал выше добавь дополнительную проверку на эту кнопку.
 

xamd

AION bot developer
Сообщения
66
Репутация
24
Дадада, слушай Belfigora, он истину глаголит! )

1) Бот отличается от макроса не только кол-вом кода, но и самостоятельностью прежде всего. Простой пример:

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

2) Чтобы превратить из макроса в бота, просчитай все все все ситуации и опиши их в мейнлупе(мейнлуп как пример - конструкция, в которой обрабатывается твой GUI), т.е.

Код:
While 1
   ...
WEnd


Проще всего сделать 1 функцию, которая будет комплексно собирать инфу, и исходя из этого пользоваться switch-case конструкцией.

Помог? Отметь сообщение полезным и поставь + рядом с репутацией :smile:
 
Автор
O

ODIE

Новичок
Сообщения
17
Репутация
0
Спасибо. Проверки сделал. Неужели придется делать весь сбор инфы через PixelSearch? Может есть что нибудь поинтереснее?
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
ODIE сказал(а):
Спасибо. Проверки сделал. Неужели придется делать весь сбор инфы через PixelSearch? Может есть что нибудь поинтереснее?
Если ты пишешь графического бота то да, но так же есть способы получения информации из памяти или из пакетов, можешь попробовать :smile:
 

xamd

AION bot developer
Сообщения
66
Репутация
24
Попробуй использовать память приложения. Можешь рассмотреть мой пример с AION, суть та же, я думаю...

Если решишь основвываться на памяти приложения - нам по пути, я помогу, чем смогу

P.S. Разумеется, если ты хочешь всерьез сделать бота
 
Верх