Четверг, 28.03.2024, 21:54 Приветствую вас Гость | Группа "Гости" 
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Marra_Kesh, xXxSh@dowxXx  
delphicode » Обсуждения » Свободное общение » Вконтакте рыбное место (Бот)
Вконтакте рыбное место
dolphinДата: Вторник, 11.01.2011, 13:50 | Сообщение # 1
Администратор
Сообщений: 906
Статус: Offline
Вот вам ещё один бот для "Рыбного места". Сам забрасывает удочку, ждёт поклёвку, вываживает, закрывает окно с уловом(так же рейтингом, и окно с надписью "не клюёт"), и снова забрасывает. Остановится если порвётся снасть.

Состоит из программы 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

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


Система: Windows 10 x64, Kali Linux
Среды программирования: Delphi 7, Delphi 10.x

Я не профессионал, я всего лишь любитель
Я не вредитель, я всего лишь теоретик


Сообщение отредактировал dolphin - Вторник, 11.01.2011, 13:55
 
piv66Дата: Понедельник, 20.06.2011, 22:38 | Сообщение # 2
Группа: Удаленные



После обновления игры, скрипт не работает((
 
piv66Дата: Понедельник, 20.06.2011, 22:41 | Сообщение # 3
Группа: Удаленные



Как поправить скрипт для Odnoklassniki

//version 1.41 universal
//
gosub init
gosub findrod
gosub changepreferences
if #staticdotx, #staticdoty #staticdot
:start
if #icon4x, #icon4y #icon4no
end_script
end_if
if_not #stati2dotx, #stati2doty #stati2dot
send {Escape}
end_if
gosub extra
wait 1s
left #bigbuttonx, #bigbuttony
wait #time
while #staticdotx, #staticdoty #staticdot
if_not #vibradotx, #vibradoty #vibradot
wait 100
if #rod = 120
while #polosax, #polosay #polosa
left_down #bigbuttonx, #bigbuttony
if #vk = 265
left_down #bigbutton2x, #bigbuttony
end_if
if #vk = 393
left_down #bigbutton2x, #bigbuttony
end_if
end_while
end_if
goto lovit
end_if
end_while
:zakritj
while_not #staticdotx, #staticdoty #staticdot
wait 1s
send {Escape}
end_while
gosub setki
wait 1s
goto start
:lovit
while #staticdotx, #staticdoty #staticdot
if_not #indikdotx, #indikdoty #indikdot
left_up #bigbuttonx, #bigbuttony
else
left_down #bigbuttonx, #bigbuttony
if #vk = 265
left_down #bigbutton2x, #bigbuttony
end_if
if #vk = 393
left_down #bigbutton2x, #bigbuttony
end_if
end_if
end_while
if_not #staticdotx, #staticdoty #staticdot
goto zakritj
end_if
goto start
else
end_script
end_if
//
//
//
:init
set #cx 1
set #cy 628
if_not #cx, #cy 11394023
set #cy 572
end_if
if_not #cx, #cy 11394023
set #cx 265
set #cy 0
while_not #cx, #cy 11394023
set #cy #cy + 1
if #cy = 700
goto newcx1
end_if
end_while
end_if
:newcx1
if_not #cx, #cy 11394023
set #cx 266
set #cy 0
while_not #cx, #cy 11394023
set #cy #cy + 1
if #cy = 700
goto newcx2
end_if
end_while
end_if
:newcx2
if_not #cx, #cy 11394023
set #cx 393
set #cy 0
while_not #cx, #cy 11394023
set #cy #cy + 1
if #cy = 850
goto newcx3
end_if
end_while
end_if
:newcx3
if_not #cx, #cy 11394023
set #cx 394
set #cy 0
while_not #cx, #cy 11394023
set #cy #cy + 1
if #cy = 850
end_script
end_if
end_while
end_if
set #vk #cx
set #cx #cx - 1
set #cy #cy - 628
return
//
//
:findrod
set #s150x #cx + 37
set #s150y #cy + 596
if #s150x, #s150y 6566180 //для спиннинга на 150 кг
set #rod 150
end_if
set #s120x #cx + 48
set #s120y #cy + 586
if #s120x, #s120y 3303605 //для спиннинга на 120 кг
set #rod 120
end_if
set #s121x #cx + 44
set #s121y #cy + 574
if #s121x, #s121y 4206120 //для удочки на 120 кг
set #rod 121
end_if
set #s100x #cx + 59
set #s100y #cy + 587
if #s100x, #s100y 2235288 //для удочки на 100 кг
set #rod 100
end_if
set #s80x #cx + 27
set #s80y #cy + 579
if #s80x, #s80y 8562630 //для спиннинга на 80 кг
set #rod 80
end_if
set #s81x #cx + 55
set #s81y #cy + 598
if #s81x, #s81y 6307979 //для удочки на 80 кг
set #rod 81
end_if
set #s50x #cx + 40
set #s50y #cy + 599
if #s50x, #s50y 9416100 //для удочки на 50 кг
set #rod 50
end_if
set #s35x #cx + 18
set #s35y #cy + 581
if #s35x, #s35y 11194573 //для спиннинга на 35 кг
set #rod 35
end_if
set #s25x #cx + 28
set #s25y #cy + 570
if #s25x, #s25y 3157546 //для удочки на 25 кг
set #rod 25
end_if
set #s15x #cx + 30
set #s15y #cy + 570
if #s15x, #s15y 2497821 //для спиннинга на 15 кг
set #rod 15
end_if
set #s9x #cx + 56
set #s9y #cy + 594
if #s9x, #s9y 3157292 //для удочки на 9 кг
set #rod 9
end_if
set #s5x #cx + 19
set #s5y #cy + 568
if #s5x, #s5y 12567749 //для спиннинга на 5 кг
set #rod 5
end_if
set #s3x #cx + 50
set #s3y #cy + 591
if #s3x, #s3y 3757944 //для удочки на 3 кг
set #rod 3
end_if
set #s1x #cx + 51
set #s1y #cy + 597
if #s1x, #s1y 1464740 //для удочки на 1 кг
set #rod 1
end_if
set #s12x #cx + 53
set #s12y #cy + 596
if #s12x, #s12y 10255204 //для удочки на 1/2 кг
set #rod 12
end_if
return
//
//
:changepreferences
if #rod = 150 //для спиннинга на 150 кг
set #vibradotx #cx + 257
set #vibradoty #cy + 353
get color #vibradot #vibradotx, #vibradoty
set #time 2000
end_if
if #rod = 120 //для спиннинга на 120 кг
set #vibradotx #cx + 258
set #vibradoty #cy + 308
get color #vibradot #vibradotx, #vibradoty
set #indikdotx #cx + 302 //точка вываживания для спиннинга на 120 кг
set #indikdoty #cy + 604
set #time 2000
end_if
if_not #rod = 120 //точка вываживания для остальных удилищ
set #indikdotx #cx + 308
set #indikdoty #cy + 608
end_if
if #rod = 121 //для удочки на 120 кг
set #vibradotx #cx + 250
set #vibradoty #cy + 402
set #vibradot 2677503
set #time 3000
end_if
if #rod = 100 //для удочки на 100 кг
set #vibradotx #cx + 253
set #vibradoty #cy + 374
set #time 3000
end_if
if #rod = 80 //для спиннинга на 80 кг
set #vibradotx #cx + 300
set #vibradoty #cy + 318
get color #vibradot #vibradotx, #vibradoty
set #time 2000
end_if
if #rod = 81 //для удочки на 80 кг
set #vibradotx #cx + 251
set #vibradoty #cy + 400
set #vibradot 12880473
set #time 3000
end_if
if #rod = 50 //для удочки на 50 кг
set #vibradotx #cx + 229
set #vibradoty #cy + 381
set #vibradot 246869
set #time 3000
end_if
if #rod = 35 //для спиннинга на 35 кг
set #vibradotx #cx + 300
set #vibradoty #cy + 338
get color #vibradot #vibradotx, #vibradoty
set #time 2000
end_if
if #rod = 25 //для удочки на 25 кг
set #vibradotx #cx + 276
set #vibradoty #cy + 370
set #vibradot 52479
set #time 3000
end_if
if #rod = 15 //для спиннинга на 15 кг
set #vibradotx #cx + 266
set #vibradoty #cy + 354
get color #vibradot #vibradotx, #vibradoty
set #time 2000
end_if
if #rod = 9 //для удочки на 9 кг
set #vibradotx #cx + 245
set #vibradoty #cy + 400
set #vibradot 33023
set #time 3000
end_if
if #rod = 5 //для спиннинга на 5 кг
set #vibradotx #cx + 263
set #vibradoty #cy + 321
get color #vibradot #vibradotx, #vibradoty
set #time 2000
end_if
if #rod = 3 //для удочки на 3 кг
set #vibradotx #cx + 252
set #vibradoty #cy + 404
set #vibradot 131797
set #time 3000
end_if
if #rod = 1 //для удочки на 1 кг
set #vibradotx #cx + 243
set #vibradoty #cy + 399
set #vibradot 255
set #time 3000
end_if
if #rod = 12 //для удочки на 1/2 кг
set #vibradotx #cx + 245
set #vibradoty #cy + 405
set #vibradot 16777215
set #time 3000
end_if
set #bigbuttonx #cx + 498
set #bigbuttony #cy + 414
set #bigbutton2x #cx + 499
set #staticdotx #cx + 546
set #staticdoty #cy + 475
set #polosax #cx + 393
set #polosay #cy + 616
set #icon4x #cx + 192
set #icon4y #cy + 608
set #icon4no 1911855
set #stati2dotx #cx + 390
set #stati2doty #cy + 360
get color #staticdot #staticdotx, #staticdoty
get color #stati2dot #stati2dotx, #stati2doty
get color #indikdot #indikdotx, #indikdoty
get color #polosa #polosax, #polosay
set #e1x #cx + 286
set #e1y #cy + 113
set #e2x #cx + 142
set #e2y #cy + 77
set #e3x #cx + 367
set #e3y #cy + 308
set #e4x #cx + 215
set #e4y #cy + 431
set #e5x #cx + 369
set #e5y #cy + 567
set #n1x #cx + 442
set #n1y #cy + 567
set #n2x #cx + 200
set #n2y #cy + 376
set #n3x #cx + 107
set #n3y #cy + 535
return
//
//
:extra
if #e1x, #e1y 4212306
left #e2x, #e2y
wait 200
left #e3x, #e3y
left #e4x, #e4y
send {Escape}
end_if
if #e5x, #e5y 3604
left #e5x, #e5y
wait 200
left #n3x, #n3y
send {Escape}
end_if
return
//
//
:setki
if #n1x, #n1y 212135
left #n1x, #n1y
left #n2x, #n2y
send {Escape}
end_if
wait 1s
if #n1x, #n1y 264
left #n1x, #n1y
wait 500
left #n3x, #n3y
send {Escape}
end_if
return
 
delphicode » Обсуждения » Свободное общение » Вконтакте рыбное место (Бот)
  • Страница 1 из 1
  • 1
Поиск:

delphicode.ru © 2008 - 2024 Хостинг от uCoz