Гость MEdition Жалоба Опубликовано 15 июня, 2011 Работает везде. Удочку в руки - Ловим рыбку. ##################### MIDDLE-EARTH.RU ########################## Sub FishTile(t, x, y, z) var timer repeat uo.WaitTargetTile(Str(t), Str(x), Str(y), Str(z)) uo.UseType(0x0DBF) #Удочка uo.DeleteJournal() timer = 0 repeat wait(1000) timer = timer + 1 until uo.InJournal("Points") or uo.InJournal("here") or uo.InJournal("line") or uo.InJournal("broken") or timer > 120 until uo.InJournal("here") or uo.InJournal("line") end sub sub Fishing() var i, j, tile uo.Disarm() while not uo.dead() for i = -6 to 6 for j = -6 to 6 tile = 168 while (not uo.PrivateGetTile(uo.GetX() + i, uo.GetY() + j, 251, tile, tile)) and (tile < 6045) if tile == 171 then tile = 310 else if tile == 311 then tile = 6039 else tile = tile + 1 endif endif wend if tile < 6039 then tile = 0 endif if tile < 6045 then uo.concolor(0x53) uo.Print("Fishing: " + Str((i + 6) * 13 + j + 7) + "/169...") uo.concolor(0) FishTile(tile, uo.GetX() + i, uo.GetY() + j, 251) endif next next uo.Print("Завершил круг. Продолжаю.") wend end sub ##################### MIDDLE-EARTH.RU ########################## Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Гость MEdition Жалоба Опубликовано 4 августа, 2011 Режем наловленные ботинки на кожу. ##################### MIDDLE-EARTH.RU ########################## sub Boots() DIM Boot[9] ;режет обувку на кожу Boot[0] = 0x170A Boot[1] = 0x170B Boot[2] = 0x170C Boot[3] = 0x170D Boot[4] = 0x170E Boot[5] = 0x170F Boot[6] = 0x1710 Boot[7] = 0x1711 Boot[8] = 0x0DC8 #сеть VAR i For i = 0 To 8 UO.FindType( Boot[i], '-1', 'backpack') if UO.FindCount() > 0 Then UO.WaitTargetobject( 'finditem' ) UO.UseType(0x0F9E) #ножницы repeat wait(3500) End if next Boots() end sub ##################### MIDDLE-EARTH.RU ########################## Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Danone 0 Жалоба Опубликовано 15 марта, 2012 2MEdition Иногда он видимо тыкает удочкой не туда, выскакивает That is too far away и на этом скрипт тупит, его не крашит, не закрывает, он просто перестаёт что либо делать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
nepret 0 Жалоба Опубликовано 16 июля, 2012 Чуть доработал скрипт. Что добавил: Проверка на наличие удочек в бекпаке, если удочек не сталось, закрываем клиент. Авто-кормёжка + проверка на наличие еды, если еды не осталось, закрываем клиент. Дроп пойманной обуви себе под ноги. Удаление пойманных сос-бутылок, карт и старых рыбацких сетей. В бекпаке ВСЕГДА иметь: Trash бочку. Еду. Удочки. При старте, скрипт попросит вас указать Trash бочку. По поводу самого скрипта на ловлю: Чар начинает ловить с правого верхнего угла, потом плавно переходит ближе к чару. Поэтому приходиться ставить рыбака в верхний угол лодки... Что-бы можно было поставить второго чара, на нижний угол, надо в скрипте, в строке FishTile(tile, uo.GetX() + i, uo.GetY() + j, 251) перед i поменять + на -, тогда всё заработает как надо. var food='0x097B' # Тип еды #'0x097B' - жаренная рыба #'0x09F2' - жаренное мясо #'0x171F' - бананы Sub check() var q dim bot[7] bot[0] = '0x170D' bot[1] = '0x170E' bot[2] = '0x170C' bot[3] = '0x170B' bot[4] = '0x170F' bot[5] = '0x1710' bot[6] = '0x1711' for q=0 to 6 while uo.Count(bot[q]) > 0 uo.findtype(bot[q]) if uo.FindCount() > 0 then uo.exec("moveitem 'finditem' '1' 'ground'") wait(300) endif wend next dim shlak[3] shlak[0] = '0x14ED' shlak[1] = '0x0DC8' shlak[2] = '0x099F' for q=0 to 2 while uo.Count(shlak[q]) > 0 uo.findtype(shlak[q]) if uo.FindCount() > 0 then uo.exec("moveitem 'finditem' '1' 'trash'") wait(300) endif wend next if uo.count("0x0DBF")<1 then uo.closeuo() endif uo.findtype(food) if uo.findcount() then uo.usetype(food) else uo.closeuo() endif end sub Sub FishTile(t, x, y, z) var timer repeat check() uo.WaitTargetTile(Str(t), Str(x), Str(y), Str(z)) uo.UseType(0x0DBF) #Удочка uo.DeleteJournal() timer = 0 repeat wait(1000) timer = timer + 1 until uo.InJournal("Points") or uo.InJournal("here") or uo.InJournal("line") or uo.InJournal("broken") or timer > 120 until uo.InJournal("here") or uo.InJournal("line") end sub sub Fishing() UO.canceltarget() UO.Print("Укажите Trash бочку...") UO.addobject('trash') While UO.Targeting() Wait(100) Wend var i, j, tile uo.Disarm() while not uo.dead() for i = -6 to 6 for j = -6 to 6 tile = 168 while (not uo.PrivateGetTile(uo.GetX() + i, uo.GetY() + j, 251, tile, tile)) and (tile < 6045) if tile == 171 then tile = 310 else if tile == 311 then tile = 6039 else tile = tile + 1 endif endif wend if tile < 6039 then tile = 0 endif if tile < 6045 then uo.concolor(0x53) uo.Print("Fishing: " + Str((i + 6) * 13 + j + 7) + "/169...") uo.concolor(0) FishTile(tile, uo.GetX() + i, uo.GetY() + j, 251) endif next next uo.Print("Завершил круг. Продолжаю.") wend end sub Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
nepret 0 Жалоба Опубликовано 16 июля, 2012 Переделал скрипт на резку обуви. Мой не парсит... sub Boots() DIM Boot[9] Boot[0] = 0x170A Boot[1] = 0x170B Boot[2] = 0x170C Boot[3] = 0x170D Boot[4] = 0x170E Boot[5] = 0x170F Boot[6] = 0x1710 Boot[7] = 0x1711 Boot[8] = 0x0DC8 VAR i For i = 0 To 8 while uo.Count(Boot[i]) > 0 uo.findtype(Boot[i]) if uo.FindCount() > 0 then UO.WaitTargetobject('finditem') UO.UseType(0x0F9E) wait(3500) endif wend next end sub Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Kallish 0 Жалоба Опубликовано 12 сентября, 2012 You cannot use that, боты вобще не режутся помоему ))))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MeSSiR 0 Жалоба Опубликовано 26 сентября, 2012 You cannot use that, боты вобще не режутся помоему ))))) Калич)) ну ты как обычно)) А ты вручную попробуй порезать))) на лоден нельзя юзать предметы типа дагера, ножниц или инструмента тинкера)) кроме тайла с трюмом) Кстати оба скрипта имеют неточности... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
bakar 0 Жалоба Опубликовано 30 января, 2013 Скрипт для ловли рыбы на лодке. Сортирует все что выловил по контейнерам, вся рыба в корыто, вся обувь в ящик, хлам - SOSки, сеть и прочее в урну. Так же декодирует карты и откладывает карты 4-лвл вместе с тулзом в отдельную сумку, остальные карты и тулзы в урну. Для корректной работы скрипта, необходимо наличие картографии у персонажа. Писался под ренджа с 100 картографии, по идее, при декодировании карт картография должна расти. Лодка должна стоять подальше от берега! Для корректной работы скрипта, положение лодки не имеет значения, но я ставлю ее всегда так, как показано на скрине, ибо при таком расположении нет "мертвых" тайлов на лодке(за мачтой). Становимся на трюм, в трюм кладем ящик, сумку, корыто и урну. В пек кладем удочки(я забивал почти всю сумку 200 - 250 удочек) и жаренную рыбу. скрипт - __work___Fishing_main_script.zip ################################################################ ## by: Hi Jack ## ## shard: Middle-Earth 2013 ## ################################################################ Sub Eat() #eda - fish steak If UO.Count('0x097B') > 0 Then UO.UseType ('0x097B') Wait(500) EndIf End Sub ################################################################ Sub SW() If UO.InJournal('Saving World State') Then Repeat Wait(200) Until UO.InJournal('Saving World State complete') EndIf UO.Click('backpack') Repeat Wait(200) Until uo.InJournal('Backpack|backpack') Wait(500) End Sub ################################################################ Sub Maps() #сортирует выловленные карты, 4-лвл в сумку, остальные в урну. UO.FindType('0x14ED') Wait(200) If UO.FindCount() > 0 Then Repeat UO.UseObject('finditem') Wait (500) Until Uo.InJournal('successfully') Repeat UO.FindType('0x14EB', '-1') UO.Click("finditem") Wait(500) Until UO.InJournal('map') Wait(200) If UO.InJournal('(1 lvl)|(2 lvl)|(3 lvl)')Then UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E77'") Wait(250) UO.Exec("moveitem '^0x0FB7' '1' 'aHatch.0x0E77'") Wait(250) EndIf If UO.InJournal('(4 lvl)|(5 lvl)') Then UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E75'") Wait(250) UO.Exec("moveitem '^0x0FB7' '1' 'aHatch.0x0E75'") Wait(250) EndIf EndIf End Sub ################################################################ Sub aBoots() #перемещает выловленную обувь в ящик VAR i DIM aBoot[7] aBoot[0] = 0x170A aBoot[1] = 0x170B aBoot[2] = 0x170C aBoot[3] = 0x170D aBoot[4] = 0x170E aBoot[5] = 0x170F aBoot[6] = 0x1710 aBoot[7] = 0x1711 For i = 0 To 7 UO.FindType(aBoot[i], '-1', 'backpack') If UO.FindCount() > 0 Then UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E3C'") Wait(500) EndIf Next End Sub ################################################################ Sub aFishs() #перемещает выловленную рыбу в бочку VAR i DIM aFish[3] aFish[0] = 0x09CE # фиолетовая рыба aFish[1] = 0x09CD # бежевая рыба aFish[2] = 0x09CC # зеленая рыба aFish[3] = 0x0DD6 # магическая рыбка For i = 0 To 3 UO.FindType(aFish[i], '-1', 'backpack') If UO.FindCount() > 0 Then UO.Exec("moveitem 'finditem' '' 'aHatch.0x0E83'") Wait(500) EndIf Next End Sub ################################################################ Sub aTrash() #перемещает выловленный мусор в урну VAR i DIM aTrash[1] aTrash[0] = 0x0DC8 #сеть aTrash[1] = 0x099F #sos бутылка For i = 0 To 1 UO.FindType(aTrash[i], '-1', 'backpack') If UO.FindCount() > 0 Then UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E77'") #!!!урна Wait(500) End if Next End Sub ################################################################ SUB MAIN() VAR mx, my, mz, i, j mx = UO.GetX('self') my = UO.GetY('self') mz = UO.GetZ('self') UO.CancelMenu() UO.CancelTarget() UO.DeleteJournal() UO.ConColor(0x0942) UO.Print('Укажи трюм корабля') UO.ConColor(0x0000) UO.Exec('addobject aHatch') While UO.Targeting() Wait(200) Wend UO.Disarm() UO.UseObject('aHatch') Wait(200) UO.UseObject('aHatch.0x0E83') UO.UseObject('aHatch.0x0E3C') UO.UseObject('aHatch.0x0E75') Begin: For i = mx-6 To mx+6 For j = my-6 To my+6 UO.DeleteJournal() UO.WaitTargetTile("0", str(i), str(j), str(mz)) UO.UseType('0x0DBF') #FishingPole Wait(200) If UO.InJournal('<uninitialized object>!') Then Wait(200) GoTo Begin EndIf While Not (UO.InJournal('attract|equip|sight|looks|seem|catch|find|there!')) Wait(200) Wend Eat() SW() Maps() aBoots() aFishs() aTrash() Next Next Goto Begin END SUB __work___Fishing_main_script.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
nicko5672 0 Жалоба Опубликовано 8 февраля, 2013 Отличный скрипт,что вот только картографи до 100 прокачивать персу,которого только для фишинга создал не очень хочется.Нельзя ли сделать так,что бы та карта,которую он не может прочитать(3-4 лвл) шли в сумку с картами в запечатанном виде,и хорошо бы ещё сразу резать боты на кожу).А так..скрипт конечно СУПЕР! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
nepret 0 Жалоба Опубликовано 10 февраля, 2013 а если ящик с ботами переполнится? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MeSSiR 0 Жалоба Опубликовано 11 февраля, 2013 Краш клиента!!!!!))))))))))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
bakar 0 Жалоба Опубликовано 12 февраля, 2013 Отличный скрипт,что вот только картографи до 100 прокачивать персу,которого только для фишинга создал не очень хочется.Нельзя ли сделать так,что бы та карта,которую он не может прочитать(3-4 лвл) шли в сумку с картами в запечатанном виде,и хорошо бы ещё сразу резать боты на кожу).А так..скрипт конечно СУПЕР! Резать и прочее на лодке нельзя, даже на трюме (как писал один человек с завышенным ЧСВ). так что раз в день - в два проверяй и меняй контейнеры ... по поводу карт ... замени сортировку на это, писался на "коленке", причесать не получилось =) 20 раз попытается декодировать, если не выйдет - кинет в пек, если выйдет - прочекает, что у него на выходе и сделает согласно выхлопа =) Sub Maps() #сортирует выловленные карты, 4-лвл в сумку, остальные в урну. VAR i UO.FindType('0x14ED') Wait(200) If UO.FindCount() > 0 Then i=0 Repeat UO.UseObject('finditem') i=i+1 Wait (500) Until UO.InJournal('successfully') or i==20 If UO.InJournal('successfully') Then Repeat UO.FindType('0x14EB', '-1') UO.Click("finditem") Wait(500) Until UO.InJournal('map') Wait(200) If UO.InJournal('(1 lvl)|(2 lvl)|(3 lvl)')Then UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E77'") Wait(250) UO.Exec("moveitem '^0x0FB7' '1' 'aHatch.0x0E77'") Wait(250) EndIf If UO.InJournal('(4 lvl)|(5 lvl)') Then UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E75'") Wait(250) UO.Exec("moveitem '^0x0FB7' '1' 'aHatch.0x0E75'") Wait(250) EndIf Else UO.FindType('0x14ED') Wait(200) If UO.FindCount() > 0 Then UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E75'") Wait(250) EndIf EndIf EndIf End Sub а если ящик с ботами переполнится? Цели сделать бота не было, а так, чар 1-2 суток стоит потом можно и руками отнести домой и порезать кожу рыбу и прочее... Краш клиента!!!!!))))))))))) Никаких крашей не происходит, забивает бекпек. Лениво было крутить реколлы домой с автосбросом ящиков и прочей дребедени ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Leonardo González 0 Жалоба Опубликовано 2 июля, 2013 Крашит Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты