Yoko http://forum.yoko.com.ua/ |
|
Бот-помощник для ПВП http://forum.yoko.com.ua/viewtopic.php?f=17&t=16156 |
Page 1 of 1 |
Author: | sovogg [ 2011-01-25 19:54:55 ] |
Post subject: | Бот-помощник для ПВП |
Подумал создать бота-помощника для пвп, который бы ходил за основным чаром и творил всякие полезные дела. собственно с полезными делами думаю проблем нет, - можно что угодно наставить. а вот с ходилкой всё не слишком хорошо получается - идеального синхрона нет. можно ли сделать такую ходилку, которая бы ходила за основным чаром по пятам не отставая ни на шаг по крайней мере на прямой дистанции? спасибо ps: я использовал ходилку, взятую с этого форума.(кажется её писал ВЕТЕРАН), только убавил ожидалки и убрал чеклаг.. выложу её сюда Quote: sub WalkN(x,y,Target) ########################################## Ходилка
VAR LastTimer LastTimer=UO.Timer() VAR i VAR dir,ldir,rdir,key,olddir VAR dx,dy,Exit=0 VAR CacheLimit=9,CacheIndex="Text" DIM CacheX[10], CacheY[10] CacheX[0]="Test" While Exit<>1 If Target<>"" Then dx=UO.GetX(Target)-UO.GetX() dy=UO.GetY(Target)-UO.GetY() If UO.GetDistance(Target)<2 OR LastTimer+200<UO.Timer() Then wait(500) Exit=1 Endif Else dx=x-UO.GetX() dy=y-UO.GetY() If dx==0 AND dy==0 OR LastTimer+50<UO.Timer() Then Exit=1 Endif Endif If dx<>0 AND dy<>0 Then If dx>0 AND dy>0 Then ; GoSE dir=3 ldir=2 rdir=4 key=40 ; DownArrow olddir=UO.GetDir() If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then If olddir==2 Then ; GoNE dir=1 ldir=0 rdir=1 key=39 ; RightArrow While UO.GetDir()<>1 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Else ; GoSW dir=5 ldir=5 rdir=6 key=37 ; LeftArrow While UO.GetDir()<>5 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Endif Endif Endif If dx>0 AND dy<0 Then ; GoNE dir=1 ldir=0 rdir=2 key=39 ; RightArrow olddir=UO.GetDir() If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then If olddir==0 Then ; GoWN dir=7 ldir=6 rdir=7 key=38 ; UpArrow While UO.GetDir()<>7 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Else ; GoSE dir=3 ldir=3 rdir=4 key=40 ; DownArrow While UO.GetDir()<>3 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Endif Endif Endif If dx<0 AND dy>0 Then ; GoSW dir=5 ldir=4 rdir=6 key=37 ; LeftArrow olddir=UO.GetDir() If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then If olddir==6 Then ; GoWN dir=7 ldir=7 rdir=0 key=38 ; UpArrow While UO.GetDir()<>7 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Else ; GoSE dir=3 ldir=2 rdir=3 key=40 ; DownArrow While UO.GetDir()<>3 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Endif Endif Endif If dx<0 AND dy<0 Then ; GoWN dir=7 ldir=6 rdir=0 key=38 ; UpArrow olddir=UO.GetDir() If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then If olddir==0 Then ; GoNE dir=1 ldir=1 rdir=2 key=39 ; RightArrow While UO.GetDir()<>1 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Else ; GoSW dir=5 ldir=4 rdir=5 key=37 ; LeftArrow While UO.GetDir()<>5 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Endif Endif Endif Endif If dx<>0 AND dy==0 Then If dx>0 Then ; GoE dir=2 key=34 ; PgDown olddir=UO.GetDir() If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then If olddir==2 Then ; GoSE dir=3 ldir=3 rdir=4 key=40 ; DownArrow While UO.GetDir()<>3 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Else ; GoNE dir=1 ldir=1 rdir=0 key=39 ; RightArrow While UO.GetDir()<>1 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Endif Endif Endif If dx<0 Then ; GoW dir=6 key=36 ; Home key olddir=UO.GetDir() If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then If olddir==0 Then ; GoWN dir=7 ldir=7 rdir=0 key=38 ; UpArrow While UO.GetDir()<>7 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Else ; GoSW dir=5 ldir=4 rdir=5 key=37 ; LeftArrow While UO.GetDir()<>5 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Endif Endif Endif Endif If dx==0 AND dy<>0 Then If dy>0 Then ; GoS dir=4 key=35 ; End If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then If olddir==2 Then ; GoSE dir=3 ldir=2 rdir=3 key=40 ; DownArrow While UO.GetDir()<>3 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Else ; GoSW dir=5 ldir=6 rdir=5 key=37 ; LeftArrow While UO.GetDir()<>5 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Endif Endif Endif If dy<0 Then ;GoN dir=0 key=33 ; PgUp olddir=UO.GetDir() If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then If olddir==2 Then ; GoNE dir=1 ldir=1 rdir=2 key=39 ; RightArrow While UO.GetDir()<>1 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Else ; GoWN dir=7 ldir=7 rdir=6 key=38 ; UpArrow While UO.GetDir()<>7 StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Wend Endif Endif Endif Endif Wend end sub sub StepEdit(x,y,dir,key) VAR walkwait=10 VAR ErrLevel=0 If UO.GetDir()<>dir Then UO.Press(key) wait(walkwait) If UO.GetDir()<>dir Then Endif Endif UO.Press(key) wait(walkwait) If x==UO.GetX() AND y==UO.GetY() Then If x==UO.GetX() AND y==UO.GetY() Then ;zatik ErrLevel=1 Endif Endif Return ErrLevel end sub sub StepArrow(x,y,dir,ldir,rdir,key) VAR walkwait=10 VAR ErrLevel=0 If UO.GetDir()<>dir Then UO.Press(key) wait(walkwait) If UO.GetDir()<>dir AND UO.GetDir()<>ldir AND UO.GetDir()<>rdir Then Endif Endif If UO.GetX()==x AND UO.GetY()==y Then UO.Press(key) wait(walkwait) If UO.GetDir()==dir AND UO.GetX()==x AND UO.GetY()==y Then If UO.GetDir()==dir AND UO.GetX()==x AND UO.GetY()==y Then ; zatik ErrLevel=1 Endif Endif Endif Return ErrLevel end sub |
Author: | Weee [ 2011-01-25 20:10:48 ] |
Post subject: | Re: Бот-помощник для ПВП |
Я вот в одной из недавних тем увидел вот эту догонялку и она мне вполне понравилась тем, как работает: Code: sub chase() |
Author: | sovogg [ 2011-01-25 20:32:07 ] |
Post subject: | Re: Бот-помощник для ПВП |
пока что не попробовал, но попробую. спасибо |
Author: | Weee [ 2011-01-25 22:38:04 ] |
Post subject: | Re: Бот-помощник для ПВП |
один в один оно, конечно же, бежать не будет, но это было бы слишком уж палевно. так, в принципе, бегает без тормозов, не отставая. одно плохо - может застрять на лестницах или если упрется куда-то. только в опциях клиента надо поставить типа "вечный бег") не знаю кто автор скрипта, к сожалению. |
Author: | Mirage [ 2011-01-26 00:10:53 ] |
Post subject: | Re: Бот-помощник для ПВП |
Забудьте вы про путное преследование на инжекте. Это как на велосипеде от Питера до Москвы - реально но трындец как геморойно. Используйте Изиуо. Там РЕАЛЬНОЕ преследование делается несколькими строками. |
Author: | Weee [ 2011-01-26 13:32:09 ] |
Post subject: | Re: Бот-помощник для ПВП |
Mirage wrote: Забудьте вы про путное преследование на инжекте. Это как на велосипеде от Питера до Москвы - реально но трындец как геморойно. Используйте Изиуо. Там РЕАЛЬНОЕ преследование делается несколькими строками. Жаль не очень комфортно и надежно использовать изиуо на 2.0.3, который подключен как 1.26.4 с инжой) |
Author: | sovogg [ 2011-02-06 06:35:33 ] |
Post subject: | Re: Бот-помощник для ПВП |
попробовал ходилку которую нашёл Wee - оч неплохо, лучше той котороую я использовал. конечно идеального преследования нет, но как телохранители в данжах или при обороне вполне сойдет ) |
Author: | Weee [ 2011-02-06 10:13:00 ] |
Post subject: | Re: Бот-помощник для ПВП |
Есть ходилки и догонялки покруче, но как их настраивать я не знаю. Само то преследование очень даже ничего, но эта догонялка упирается в препятствия. Можно было бы сделать обход, но помоему удобней её включать\выключать чтоб самому подправить положение чара. |
Author: | Tiger1989 [ 2011-05-13 20:14:20 ] |
Post subject: | Re: Бот-помощник для ПВП |
Почему то у меня чар зигзагами ходит не знаю почему коннект нормальный в принципе |
Author: | Tiger1989 [ 2011-05-13 20:14:42 ] |
Post subject: | Re: Бот-помощник для ПВП |
А выложи пожалуйста те крутые догонялки которые незнаешь как настроить |
Author: | Mirage [ 2011-05-14 09:39:27 ] |
Post subject: | Re: Бот-помощник для ПВП |
все что есть путное есть вот тут |
Author: | Tiger1989 [ 2011-05-14 18:50:43 ] |
Post subject: | Re: Бот-помощник для ПВП |
и вот ещё, почему чар ходит зиг загами ? )) |
Author: | Mirage [ 2011-05-14 20:39:47 ] |
Post subject: | Re: Бот-помощник для ПВП |
Скрипт который выложил Weee не виляет. Попробуй перед запуском все галки отключить в окошке main инжекта. |
Author: | Tiger1989 [ 2011-05-15 09:18:37 ] |
Post subject: | Re: Бот-помощник для ПВП |
Ситуация такая, когда того кого надо преследовать бежит по прямо потом делает 1 шаг в сторону и опять же бежит по прямой то чар-преследователь начинает вилять не может встать параллельно тому кого преследует вот |
Author: | Scripts Writer [ 2011-05-25 10:23:17 ] |
Post subject: | Re: Бот-помощник для ПВП |
Mirage wrote: Забудьте вы про путное преследование на инжекте. Это как на велосипеде от Питера до Москвы - реально но трындец как геморойно. Используйте Изиуо. Там РЕАЛЬНОЕ преследование делается несколькими строками. Мне NewMoveXY очень понравилась ![]() |
Author: | Mirage [ 2011-05-25 12:25:54 ] |
Post subject: | Re: Бот-помощник для ПВП |
Чтобы контактировать с ботом на стелсе нужно будет ваять скрипт чуть больше чем средней паршивости ходилка на инжекте. А Изи держит открытый клиент - хочешь перекинул реги, хочешь смысла из засады. Активное управление чаром. PS на старых версиях стелса ходилка была говняненькая. Приходилось процедурами писать. |
Page 1 of 1 | All times are UTC+02:00 |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |