Что нового

WoW. Fishing bot. Пишем своими руками.

Автор
F

FiReDoGGi

Новичок
Сообщения
42
Репутация
2
Re: WoW. Fishing bot. Наводимся на попловок.

1 раз нашел и то походу ошибся =)
Короч так не ищет вообще!
Я если понял то мышь должна ерзать а она стоит.

Надо как то сделать чтоб на появление шестеренки реагировал
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: WoW. Fishing bot. Наводимся на попловок.

скопируй весь код который ты там пытался запустить, она не должна, она обязана ерзать. Если не ерзает значит где-то вкрался косяк, либо это Warden балуется, либо ты где-то ошибся, скопируй сюда полностью весь скрипт который ты пытался запустить. У меня на компьютере например он идеально работает.
 
Автор
F

FiReDoGGi

Новичок
Сообщения
42
Репутация
2
Re: WoW. Fishing bot. Наводимся на попловок.

Код:
WinActivate("World of Warcraft");Активация окна
WinWaitActive("World of Warcraft");Ждем активности
$pos=WinGetPos("World of Warcraft");Определяем коорд окна и запоминаем
	
HotKeySet("{F1}", "_Exit");Выход
Func _Exit()
MsgBox(64,"","OFF")
Exit
EndFunc

;Заброс
Send("1")
Sleep(1000)


For $x = $pos[0]+85 To $pos[0]+715 Step 1
	For $y = $pos[0]+350 To $pos[1]+470 Step 1
		MouseMove($x,$y,20)
		PixelSearch($x,$y,$x,$y,0x000000,30)
		If Not @error Then 	
			MsgBox(0,"","Попловок найден")
		Exit
		EndIf
	Next
Next

Но точно говорю как то надо реакцию делать на курсор..
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: WoW. Fishing bot. Наводимся на попловок.

В этом скрипте и так реакция именно на курсор, на изменение его цвета. По другому внутри игры с курсором ты работать не сможешь.
Убери в For...Next циклах ссылки на $pos, чтобы они выглядели так:
For $x = 85 To 715 Step 1
For $y = 350 To 470 Step 1

и попробуй запустить этот скрипт в любом другом окне кроме ВоВ, например в блокноте
 
Автор
F

FiReDoGGi

Новичок
Сообщения
42
Репутация
2
Re: WoW. Fishing bot. Наводимся на попловок.

Код:
For $y = $pos[0]+350 To $pos[1]+470 Step 50
	For $x = $pos[0]+85 To $pos[0]+715 Step 50
		MouseMove($x,$y)
		PixelSearch($x,$y,$x,$y,0x000000,0)
		If Not @error Then 	
			MsgBox(0,"","Попловок найден")
		Exit
		EndIf
	Next
Next


Так находит конечно но млин. медленно... Причем если поплавок почти около чара то он не заметит его.

Но в целом кажется мы в нужном направлении! :D
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: WoW. Fishing bot. Наводимся на попловок.

Теперь проверяй вот этот кусок:
Код:
For $y = $pos[0]+350 To $pos[1]+470 Step 2
	For $x = $pos[0]+85 To $pos[0]+715 Step 1
		MouseMove($x, $y)
		PixelSearch($x,$y,$x,$y,0x000000,0)
		If Not @error Then 	
;~ 			MsgBox(0,"","Попловок найден")
			ExitLoop
		EndIf
	Next
Next

While 1
	$y = $y+1
	MouseMove($x, $y)
	PixelSearch($x,$y,$x,$y,0x000000,0)
	If Not @error Then 	
		MsgBox(0,"","Низ попловка найден")
		ExitLoop
	EndIf
WEnd
 
Автор
F

FiReDoGGi

Новичок
Сообщения
42
Репутация
2
Re: WoW. Fishing bot. Наводимся на попловок.

Явно что то не то.
1) слишком медленно. На все отводится 17 сек
2) Как только доползает слева направо до изменения курсора смещается вниз и ползет опять.
Может так и надо но успевает сделать 2 раза. Т.Е. слишком долго

Сделав черный раб стол выявил. Что уже когда находит. Но к сожалению только стол. Так как процесс оч долгий =(
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: WoW. Fishing bot. Наводимся на попловок.

Если твое сообщение в теме - последнее и с момента его создания не прошло несколько дней, изволь жать кнопочку "Изменить" и дописывать старое сообщение в место создания нового, я уже устал сливать твои оверпосты в один
59.gif
.
Я так и не понял, механически скрипт работает и не работает только в игре, или же он не работает вобще?
 
Автор
F

FiReDoGGi

Новичок
Сообщения
42
Репутация
2
Re: WoW. Fishing bot. Наводимся на попловок.

Ну в игре так как это все слишком медленно не работает.
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: WoW. Fishing bot. Наводимся на попловок.

Но тоесть работает все же?
 
Автор
F

FiReDoGGi

Новичок
Сообщения
42
Репутация
2
Re: WoW. Fishing bot. Наводимся на попловок.

Я не могу ответить да или нет ибо до конца этого процесса он не успевает.
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: WoW. Fishing bot. Наводимся на попловок.

Измени MouseMove($x, $y) на MouseMove($x, $y, 0), правда хз будет ли успевать рисоваться курсор мыши.
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: WoW. Fishing bot. Наводимся на попловок.

И так, при содействии господина FiReDoGGi был создан готовый бот, но приятнее всего когда получаешь не готовое а добиваешься всего своими руками, поэтому посидев и придумав, выкладываю концепт по которому, досконально изучив желающие смогут собственными руками написать себе бота для ловли рыбы.
Во первых работать мы будем с окном 800х600. Вам нужно настроить клиент так, как указано в .pdf мануале от платного бота (Скачать можно тут: _http://fish-bot.at.ua/ вам придется скачать весь установочник бота, там в директории куда вы установите бота будет и мануал). Его создатель наверное этого не знает, но мы очень ему благодарны за это, ибо грамотная настройка интерфейса и графики это уже 50% успеха.

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

Задайте область поиска примерно как на скрине 1
Нажмите скриптом на кнопку на которой забинжен скилл рыбалки.
Обследуйте эту область поиска с помощью циклов For... Next. Я взял такой диапазон:
Код:
For $y = 350 To 470 Step 5			
    For $x = 85 To 715 Step 10
        MouseMove($x,$y,1)
    Next
Next

Далее каждый раз передвигая мышку мы с помощью PixelGetColor узнаем цвет в том месте. Исходя из цвета принимаем действие (Если черный, значит курсор навелся на поплавок).
Если черный цвет, то двигаем курсор в низ до тех пор пока цвет не изменится на любой другой Until PixelGetColor(x,y) <> 0. Таким образом мы найдем низ поплавка.

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

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

Все что теперь осталось это кликнуть правой кнопкой мыши пикселей на 15-20 выше того места где мы ждали момента поклева.

Ура, вы поймали рыбу
63.gif
. Теперь вам осталось только зациклить процесс :smile:

Что делать если все же не получилось написать?
48.gif

Писать тут и задавать вопросы.

P.S. Репокнопка там, внизу
V
70.gif
 
Верх