Автоматизация заточки предметов до необходимого уровня by NLObP
Возможности скрипта
--------------------
+ Панель управления;
+ Затачиваем по очереди все предметы с ItemID пока не переломаем
или не заточим. Один предмет всегда остаётся.
Необходимо затариться оружием, заточками и валерьянкой.
Name='NLObP'; //Вписать сюда имя чара
//установить константу в зависимости от типа игры (С4 или Интерлюд)
interlude=true; //Interlude - true, C4 - false
Внимание!
Из комбобокса обязательно надо выбрать вещь, чтобы скрипт узнал
ID и количество, только потом ставить напротив галочку.
Галочки снимать не надо, если кончились заточки/вещи - можно сразу идти
покупать и продолжать заточку.
В инвентаре должно быть не менее двух одинаковых затачиваемых вещей, степень заточки значения не имеет
Скрипт распространяется как есть, и я не несу ответственности за то, что ВЫ натворили у себя, его используя.
id все подходят строчки при выборе веши и скола все пустые тыкал на угад смотрел по id и количеству , проставил везде галки нажал старт , все надписи в логе видно . Что я не так зделал ?
Последний раз редактировалось leto, 23.01.2012 в 19:11.
6569:Blessed Scroll Enchant Weapon Grade A
6570:Blessed Scroll Enchant Armor Grade A
6571:Blessed Scroll Enchant Weapon Grade B
6572:Blessed Scroll Enchant Armor Grade B
6573:Blessed Scroll Enchant Weapon Grade C
6574:Blessed Scroll Enchant Armor Grade C
6575:Blessed Scroll Enchant Weapon Grade D
6576:Blessed Scroll Enchant Armor Grade D
6577:Blessed Scroll Enchant Weapon Grade S
6578:Blessed Scroll Enchant Armor Grade S
6579:Arcana Mace
6608:Arcana Mace agum
6609:Arcana Mace
6610:Arcana Mace
то что у меня в ItemsID
Во вложении лог. помогите пожалуйста. Что я сделал не так.
прочитал что надо поменять как то CreateItemBase и InventoryUpdate. но не нашел как.
Всю тему не читал, т.к. 67 страниц. Поэтому, возможно, кто-то уже написал об этой проблеме, но все же я скажу о ней. Когда выключаешь скрипт, если не остановить заточку, то начинают вылетать Access Violation, из-за включенного таймера. Конечно, можно просто нажать "Стоп", но я часто забывал об этом, да и другие, думаю, тоже. Из-за этого возникает неприятная ситуация дисконнекта. Вылечить можно отключением таймера в процедуре Free.
P.S. Если не трудно, подскажите, есть ли скрипт без интерфейса. Нужен для нескольких аккаунтов, чтобы лишний раз интерфейс не грузить.
дак при чем интерфейс, если в таймере дело? вы чего ребят?
в procedure free попробуй вставить обнуление\уничтожение таймера
__________________ На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."
А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?
Breadfan, Ты наверное неправильно понял смысл сообщения) Я уже так сделал. Просто хотел другой скрипт найти, без интерфейса. Он удобнее для использования на нескольких аккаунтах.
И в процедуре Free как раз стоит уничтожение, так что там нужно именно выключение, а не обнуление.
Забродская, Я itemid.ini вообще не пользуюсь) Интуитивно ставлю галочку на пустой строке. Если итемов много - значит, все правильно выбрано. Заточку выбираю по такому же принципу. Она одна в количестве, и находится первой в списке, если ты покупал ее последней.
P.S. Скачал скрипт от Shadow. Нашел несколько недоработок.
В нем неправильно реализована авто покупка вещей. Тестировалось на С4. Процедура AutoBuy нигде не вызывается в скрипте.
Также, в одном из ByPass допущена ошибка, в строке 1620. Параметр "reply" статический, а должен зависеть от ScrollListID. На некоторых серверах это не имеет значения, но на том, где я запускал, при неправильном пакете кикает. Еще OID продавца неплохо было бы сделать константой, т.к. он не всегда определяется автоматически, и при старте заточки нужно добавить код, чтобы выделить NPC, чтобы ByPass уходил ему, а не в пустое место.
Далее, в процессе теста выяснилось, что пакет Multisell с покупкой предмета уходит на ByPass, в котором закупали заточки (нужно выполнять одно действие, либо покупку предмета, либо покупку заточки, в строке 2080. Либо выполнять покупку итема до конца, а не отсылать разные ByPass от покупки предмета и Multisell от покупки заточки). Нужно поставить условие, если начали закупать итемы, то выходим из процедуры заранее, перед покупкой заточек.
В самом конце, где стоит проверка на пакет MultiSellList, по ошибке стоит переменная ItemCount, а должна быть BuyItemCount. Поэтому при покупке покупает 0 предметов. И еще, в константы желательно добавить переменные BuyItemCount и ItemPrice.
При заточке интервал таймера всегда одинаковый, т.к. он выставляется один раз, в процедуре Init. Нужно перенести этот участок в процедуру нажатия кнопки "Начать".
Слежение за пакетами с информацией о персонаже и инвентаре происходит для любого соединения. Необходимо добавить проверку на имя соединения.