autoload v.0.20a, VeL |
autoload v.0.20a, VeL |
Сообщений: 2039 Рег. 24.01.2010 |
9 июня 2016 13:37
Сообщение #261
|
Цитата: Mirage Хотя наверное проще купить за 35К возможность на 15 минут делать дейлинки 1 кнопкой :) Нет, не проще, давай делай, мы ждем. =) |
|
|
|
9 июня 2016 14:59
Сообщение #262
|
|
Не вижу смысла в таком скрипте, если уж и создавать базу, то явно надо делать кравт автоматом, без лишних телодвижений. Вот накидал примерчик, можно легко добавлять предметы. ;---------------------------------------------------------------------------- ; by VeL The Best ;---------------------------------------------------------------------------- var Count = 40 var Ingots = 0x1BEF ; тип ингов "Iron Ingots" var Copper = 0x1BE3 ; тип ингов "Copper Ingots" var Logs = 0x1BDD ; тип логов "Logs" var IronWire = 0x1876 ; тип проволоки "Iron Wire" var Tools = 0x1EBC ; тип инструмента "Tinker Tools" ;-------------------------------------------------------- ; Выполнение заказа ;-------------------------------------------------------- sub CraftOrder() var Name = GetGumpQuest(33) Count = val(GetWord(Name, 1)) Name = Right(Name, Len(Name) - 3) if Count == 0 then UO.ColorPrint(0x0026, 'Ошибка открытия гампа!') return end if switch Name case 'Iron Wire' return IronWire() case 'Saw' return Saw() case 'Pickaxe' return Pickaxe() end switch UO.ColorPrint(0x0026, 'Предмет "' + Name + '" не найден в базе!') end sub ;-------------------------------------------------------- ; Изготовление предметов ;-------------------------------------------------------- sub IronWire() return CraftOrder("'Tinkering' 'Parts' 'Parts'", "Iron Wire", 0x1876, Ingots, 1, Ingots, 1) end sub sub Saw() return CraftOrder("'Tinkering' 'Tools' 'Tools'", "Saw", 0x1034, Ingots, 5, Logs, 1) end sub sub Pickaxe() return CraftOrder("'Tinkering' 'Tools' 'Tools'", "Pickaxe", 0x0E85, Ingots, 10, Logs, 1) end sub Sub CraftOrder(Menu, Name, Type, Res1, CountRes1, Res2, CountRes2) UO.ColorPrint(0x042B, 'Изготавливаем "' + Name + '" ' + str(Count) + 'шт.') while UO.Count(Type, 0x0000) < Count if not Tinkering(Menu + " '" + Name + "'", Res1, CountRes1, Res2, CountRes2) then UO.ColorPrint(0x0026, '- изготовлено "' + Name + '" ' + Str(UO.Count(Type, 0x0000)) + 'шт.') return False end if wend UO.ColorPrint(0x042B, 'Изготовление "' + Name + '" завершено.') return True end sub Sub Tinkering(Menu, Res1, CountRes1, Res2, CountRes2) if UO.Count(Tools) == 0 then UO.ColorPrint(0x0026, 'Инструмент не найден!') return False end if if UO.Count(Res1, 0x0000) < CountRes1 || UO.Count(Res2, 0x0000) < CountRes2 then UO.ColorPrint(0x0026, 'Недостаточно ресурсов!') return False end if UO.Exec('waitmenu ' + Menu) UO.UseType(Tools) UO.WaitingForJournalText(Now(), 60000, 'You put|fail|You broke|destroyed!') Wait(50) return True end sub Sub GetGumpQuest(Index) UO.SendGumpSelect(1, 0) while UO.LastGump('replyed') Wait(300) wend Wait(500) UO.SendGumpSelect(9) while UO.LastGump('replyed') Wait(300) wend Wait(500) UO.RClick(100, 100) return UO.LastGump('text', Index) end sub |
|
|
|
9 июня 2016 15:10
Сообщение #263
|
|
Zombie, Строка помощи должна быть открыта (та что появляется при нажатии на кнопку HELP). Необходимо закинуть ресурсы в пак и запустить макрос CraftOrder(), будут изготовлены текущие предметы в нужном кол-ве (ресурсы самому считать не надо). Если нужно изготовить определенное кол-во предметов, например 100 Iron Wire, то ставим Count = 100 и запускаем макрос IronWire() |
|
|
|
Сообщений: 3319 Рег. 19.11.2013 |
9 июня 2016 16:48
Сообщение #264
|
Zombie, Идея у нас с Ромой изначально и была делать автокрафтера отталкиваясь от меню, названия предметов и количества заказа. Только чтобы получить глубину крафта все равно придется прописывать либо массив меню либо как у тебя много много сабов на каждый предмет. Мы с ним остановились на том что количество берем из хелпа, я раскомментирую меню из массива руками, и крафчу то что указываю кликом, а он по другому немного :). Основное противоречие против полного автомата было то что система рушится стоит админу поменять одну букву в меню крафта отличную от названия предмета в мире - в чем Слава раньше был не однократно замечен. |
|
|
|
9 июня 2016 17:13
Сообщение #265
|
|
Mirage, Что мудрить то. Все гораздо проще. Берем название предмета из хелпа, сравниваем со списком названий и сопоставляем с нужным макросом, например: case 'Iron Wire' return IronWire() sub IronWire() return CraftOrder("'Tinkering' 'Parts' 'Parts'", "Iron Wire", 0x1876, Ingots, 1, Ingots, 1) end sub и если "админ поменяет одну букву", то просто вносим изменение в IronWire() |
|
|
|
Сообщений: 76 Рег. 26.10.2014 |
10 июня 2016 10:53
Сообщение #266
|
можно такое реализовать под стел там есть хорошие функции, будет время напишу |
|
|
|
Сообщений: 3319 Рег. 19.11.2013 |
10 июня 2016 11:29
Сообщение #267
|
Halfeer, Такое какое? Если то что выше привел в пример Зомби то оно уже есть, и даже лучше чем на инжекте - там не надо самому открывать окна, стелс лучше с гампами работает (как не пичалька :( ) Но заморачиваться не было желания ибо основной чар и сам себя может обеспечить без стелс ботов. Если полного автономного заказокрафтера то было бы не плохо. Держать фоном на базе чара который после обновления квестов просто набирает материал и крафтит заказы для основного чара. Не жизь а сказка. |
|
|
|
Сообщений: 262 Рег. 18.06.2013 |
10 июня 2016 12:57
Сообщение #268
|
Вам троим можно гильдию создавать, у вас посты будут автоматически боты отбивать, у каждого по 4 окна ;) |
|
|
|
Сообщений: 3319 Рег. 19.11.2013 |
10 июня 2016 16:05
Сообщение #269
|
Morgan La Fey, Зомби уже создал, Роман тоже (Алоны), а мне нравится черный и пока не выгоняют :) Мы уравновешиваем чуть чуть стороны. Играть лень пока что. Может позже... А так когда можно было в пати месагу передавать с ID чаром можно было на стелсе водить за собой чаров 20 и тупо давить мясом Щаз тоже можно но хуже и менее удобно. |
|
|
|
Сообщений: 76 Рег. 26.10.2014 |
10 июня 2016 18:40
Сообщение #270
|
Mirage, Вот именно, что там можно сделать автономного крафта, который будет сам смотреть что делать и делать, при этом не надо отдельно выписывать все итемы, стелс сам может определить в каком меню какой итем )) |
|
|
|
Сообщений: 3319 Рег. 19.11.2013 |
10 июня 2016 19:55
Сообщение #271
|
Пример плиз :) Со стелсом работал давно и с другими скриптами так что тут я новичег |
|
|
|
Сообщений: 76 Рег. 26.10.2014 |
10 июня 2016 20:32
Сообщение #272
|
Mirage, Примеров не будет, кину одну процедуру )) procedure GetMenuItems(Caption : String; var TL : TStringList); |
|
|
|
Сообщений: 3319 Рег. 19.11.2013 |
10 июня 2016 20:53
Сообщение #273
|
Больше всего меня смущает в примере Визитора "крат бай Драбаланчик" Надо много вспоминать и изучать, спасибо за указатель :) |
|
|
|
Сообщений: 76 Рег. 26.10.2014 |
10 июня 2016 21:08
Сообщение #274
|
Я случайно на эту процедуру наткнулся, описаний на нее нет на офф сайте стелса )) Стала работать она у меня только на новом стелсе 7.4.0. |
|
|
|
10 июня 2016 21:14
Сообщение #275
|
|
Хмм, я вот новенький на этом сервере да и вообще со скриптами и инжектом не очень, но появилась такая проблема, что после того как запускаю скрипт передвижение любого предмета заканчиваеться эррором или когда атакую мобом, то клиент воовсе виснит. В чём может быть проблемка? |
|
|
|
Сообщений: 76 Рег. 26.10.2014 |
10 июня 2016 21:17
Сообщение #276
|
Ser Arthur Dayne, Ну это смотря какие ты скрипты используешь и какой у тебя инжект стоит. |
|
|
|
10 июня 2016 21:48
Сообщение #277
|
|
Инжект скачал с Yoko форума 2015 версию. Скрипты ставил всё как в настройке. |
|
|
|
Сообщений: 253 Рег. 28.04.2016 |
10 июня 2016 22:11
Сообщение #278
|
Ser Arthur Dayne, Тут |
|
|
|
10 июня 2016 22:17
Сообщение #279
|
|
Иронично т.к я кок-раз по этой теме и делал всё. EDIT: Боже, как же стыдно, немного не то поставил без "=>@''. |
|
|
|
Сообщений: 3319 Рег. 19.11.2013 |
11 июня 2016 00:10
Сообщение #280
|
Надо Z попросить поставить подпись ">= ни <=" В каждой теме одно и тоже, один и тот же скриншот. |
|
|
|
Сейчас: 23 ноября 2024 22:24 |