delfcodeforum
Понедельник, 31.01.2011, 18:41
| RSS
Вирусология, взгляд из Delphi
Главная
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 1 1
Модератор форума: Nikol  
delfcodeforum » Не касающиеся программирования » Игры » Вконтакте рыбное место (Бот)
Вконтакте рыбное место
dolphin Дата: Вторник, 11.01.2011, 13:50 | Сообщение # 1
Главный
Группа: Администраторы
Сообщений: 614
Статус: Online
Статус сообщение:
Вот вам ещё один бот для "Рыбного места". Сам забрасывает удочку, ждёт поклёвку, вываживает, закрывает окно с уловом(так же рейтингом, и окно с надписью "не клюёт"), и снова забрасывает. Остановится если порвётся снасть.

Состоит из программы UoPilot, и скрипта.
Всё очень просто, никогда раньше не писал скриптов, даже не сталкивался с ними, но в пилоте такой подробный хелп по командам, что изучив его не составило труда написать скрипт для ловли рыбы =)

Как это работает?
Программа определяет цвет заданной точки на экране, и если цвет становится отличным от заданного, выполняет определённые действия, записанные в скрипте.

Имеет значение на какой локации вы ловите, для каждой локации нужен свой скрипт, ну и для разных удочек тоже нужны поправки, потому что у каждой удочки поплавок при забросе расположен на воде по разному, и что бы программа определила поклёвку, нужно указывать точку на поплавке. При ловле спиннингом положение поплавка, естественно не важно. Здесь я выложу три скрипта для локаций "Клуб поплавок", "Заводье", и "Долина эдельвейсов". И все три будут работать, если вы ловите матчевым удилищем, или укреплённым спиннингом.

Итак:
- запускаем, видим на экране окно программы
- открываем вкладку "скрипт"
- копируем и вставляем в окно программы нужный вам скрипт(см. ниже)
-обязательно смотрим, что бы выделенное внизу программы окно было пустым ,

обычно при новом запуске там появляется цифра 100, её нужно стереть, иначе между строками скрипта будет задержка. Так же возле слова "цвет" дожна стоять галочка.
-Теперь произведём некоторые настройки программы, что бы облегчить нам дальнейшее использование. Во первых назначить удобную клавишу быстрого запуска (не помню что там было по умолчанию, какая то неудобная комбинация клавиш)
-Во вкладке "ещё" отмечаем "Включить Hotkeys" и жмём "Edit Hotkeys"

в открывшемся окне, в строке Start Script указана комбинация клавиш по умолчанию. При нажатии на эту комбинацию в нижней части программы появится возможность изменить горячие клавиши.

не ставьте клавиши с буквами, или те, которыми часто пользуетесь, это будет очень мешать. Что нибудь типа F8 или F9 вполне подойдёт.
- Жмём "Apply".
- Далее что бы не загружать каждый раз скрипт заново, нужно в меню "настройки" нажать "сохранить настройки". Для удобства можно в настройках ещё включить "сворачивать в трей", и "распологать поверх всех окон".

-Теперь запускаем рыбное место, поверх него открываем UoPilot, и при активном окне пилота и открытом (но неактивном) окне рыбного места наводим курсор на кнопку "забросить удочку " и жмём Ctrl+A. Этонужно для того, что бы программа определила окно, в котором ей нужно работать. Далее жмём выбранную горячую клавишу либо кнопку запустить скрипт (во вкладке "скрипт"), и вуаля.. ловись рыбка мала и велика =)))

Code
gosub findrod
gosub changepreferences
//
:start
goSub proverki
goSub zabros
if #type = 1
goSub rod
else
goSub spinning
end_if
goSub zakrivanija
goto start
//
//Тут начинаются подпрограммы
//
:zabros
move %bb [2]
left %bb [2]
wait 2500
return
//
:spinning
while #staticdotx #staticdoty #staticdot
left_up %bb [2]
if_not #vibra2dotx #vibra2doty #vibra2dot
goSub viuzivanie
else
left_down %bb [2]
end_if
end_while
return
//
:rod
while #staticdotx #staticdoty #staticdot
if_not #vibradotx #vibradoty #vibradot
goSub viuzivanie
end_if
end_while
return
//
:viuzivanie
while #staticdotx #staticdoty #staticdot
if #indikdotx #indikdoty #indikdot
left_down %bb [2]
else
left_up %bb [2]
end_if
end_while
return
//
:zakrivanija
while_not #staticdotx #staticdoty #staticdot
wait 1000
send {Escape}
end_while
repeat 5
send {Escape}
end_repeat
return
//
:proverki
if #icon4x, #icon4y #icon4no
end_script
end_if
if_not #staticdotx #staticdoty #staticdot
end_script
end_if
return
//
:changepreferences
if #rod = 121                     //для удочки на 120 кг
set #vibradotx 250
set #vibradoty 402
set #vibradot 2677503
end_if
if #rod = 120                     //для спиннинга на 120 кг
set #vibradotx 258
set #vibradoty 308
get color #vibradot #vibradotx, #vibradoty
end_if
if #rod = 80                     //для спиннинга на 80 кг
set #vibradotx 300
set #vibradoty 318
get color #vibradot #vibradotx, #vibradoty
end_if
if #rod = 50                     //для удочки на 50 кг
set #vibradotx 229
set #vibradoty 381
set #vibradot 246869
end_if
if #rod = 35                     //для спиннинга на 35 кг
set #vibradotx 300
set #vibradoty 318
get color #vibradot #vibradotx, #vibradoty
end_if
if #rod = 25                     //для удочки на 25 кг
set #vibradotx 276
set #vibradoty 370
set #vibradot 52479
end_if
if #rod = 15                     //для спиннинга на 15 кг
set #vibradotx 266
set #vibradoty 334
get color #vibradot #vibradotx, #vibradoty
end_if
if #rod = 9                      //для удочки на 9 кг
set #vibradotx 245
set #vibradoty 400
set #vibradot 33023
end_if
if #rod = 5                     //для спиннинга на 5 кг
set #vibradotx 259
set #vibradoty 321
get color #vibradot #vibradotx, #vibradoty
end_if
if #rod = 3                      //для удочки на 3 кг
set #vibradotx 252
set #vibradoty 404
set #vibradot 131797
end_if
if #rod = 1                      //для удочки на 1 кг
set #vibradotx 243
set #vibradoty 399
set #vibradot 255
end_if
if #rod = 12                     //для удочки на 1/2 кг
set #vibradotx 245
set #vibradoty 405
set #vibradot 16777215
end_if
set %bb [2] 498 414
set #staticdotx 546
set #staticdoty 475
set #indikdotx 297
set #indikdoty 608
set #icon4x 192
set #icon4y 608
set #icon4no 1911855
set #stati2dotx 390
set #stati2doty 360
set #vibra2dotx 250
set #vibra2doty 608
get color #vibra2dot #vibra2dotx, #vibra2doty
get color #staticdot #staticdotx, #staticdoty
get color #stati2dot #stati2dotx, #stati2doty
get color #indikdot #indikdotx, #indikdoty
return
//
//
//
:findrod
if 44, 574 4206120                //для удочки на 120 кг
set #rod 121
set #type 1
end_if
if 48, 586 3303605                //для спиннинга на 120 кг
set #rod 120
set #type 2
end_if
if 27, 579 8562630                //для спиннинга на 80 кг
set #rod 80
set #type 2
end_if
if 40, 599 9416100                //для удочки на 50 кг
set #rod 50
set #type 1
end_if
if 18, 581 11194573               //для спиннинга на 35 кг
set #rod 35
set #type 2
end_if
if 28, 570 3157546                //для удочки на 25 кг
set #rod 25
set #type 1
end_if
if 30, 570 2497821                //для спиннинга на 15 кг
set #rod 15
set #type 2
end_if
if 56, 594 3157292                //для удочки на 9 кг
set #rod 9
set #type 1
end_if
if 19, 568 12567749               //для спиннинга на 5 кг
set #rod 5
set #type 2
end_if
if 50, 591 3757944                //для удочки на 3 кг
set #rod 3
set #type 1
end_if
if 51, 597 1464740                //для удочки на 1 кг
set #rod 1
set #type 1
end_if
if 53, 596 10255204               //для удочки на 1/2 кг
set #rod 12
set #type 1
end_if
return

программа тут https://delfcode.ru/load/uopilot/4-1-0-483



Помог? ставь + в репутацию!

Сообщение отредактировал dolphin - Вторник, 11.01.2011, 13:55
 
delfcodeforum » Не касающиеся программирования » Игры » Вконтакте рыбное место (Бот)
Страница 1 из 1 1
Поиск:


Delfcode.ru © 2011
Создать сайт бесплатно