Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг
Войти через OpenID

Скриптинг Форум посвещенный созданию скриптов для L2PacketHack

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 03.04.2009, 12:58   #1
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Цитата:
Сообщение от 3xdimon Посмотреть сообщение
Меня вот что интереусет:
Когда заточка удачна то оно идет дальше затачиватся до тех пор пока не выполнятся условия...
А когда заточка неудачна - то куда идет дальше процес, на какую строку кода?

И какой код нужно ввести, чтоб перед началом заточки (после того как заточка прошла неудачно) - оно проверяло текущий уровень заточки?
Т.к. там где сбрасывается до 10, это очень важно...
Напиши алгоритм, по которому ты предполагаешь, что должно точить, тогда я могу что-то в коде менять.

Смотрим скрипт для Грации (другие я не буду рассматривать). Сейчас алгоритм такой:
кратко – точим все предметы по очереди, пока не останется один или достигнем требуемого уровня.
подробнее –
По таймеру, раз в N мс, выполняем действия:

1. Проверяем, текущий уровень заточки больше или равен требуемому уровню заточки?
2. да, выход к п.п. 15
3. Проверяем, осталась одна вещь?
4. да, выход к п.п. 15
5. Проверяем флаг «готовы затачивать» на true
6. да, выход к п.п. 15
7. Проверяем, остались свитки?
8. нет, выход к п.п. 15
9. Задействовали свиток
10. устанавливаем флаг «готовы затачивать» в true
11. выход

В основном теле программы:
1. Пришел пакет $7C = ChooseInventory?
2. нет, выход к п.п. 9
3. Есть предмет для улучшения, с текущим уровнем заточки?
4. нет, «текущий уровень» + 1, к п.п. 3
5. Проверяем, текущий уровень заточки больше или равен требуемому уровню заточки?
6. да, отменяем использование свитка заточки (шлем соответствующий пакет), выход к п.п. 9
7. Шлем пакет на заточку предмета
8. устанавливаем флаг «готовы затачивать» в false
9. Выход

1. Пришел пакет $87 = EnchantResult?
2. нет, выход к п.п. 8
3. Проверяем второй байт пакета
4. Равен 0?
5. да, улучшение прошло, выход к п.п. 8
6. Равен 1?
7. да, улучшение не прошло, выход к п.п. 8
8. Выход

Добавлено через 3 минуты
Цитата:
Сообщение от LBEST Посмотреть сообщение
Variant or safe array index out of bounds.
Как с этим бороца помогите плиз!!!
Была в старых версиях скрипта, связана с тем, что itemsid.ini из комплекта пакетхака не соответствует данным клиента. Приведи в соответствие свой itemsid.ini.
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни



Последний раз редактировалось NLObP, 03.04.2009 в 12:58. Причина: Добавлено сообщение
NLObP вне форума   Ответить с цитированием
Старый 03.04.2009, 13:40   #2
Новичок
 
Регистрация: 02.04.2009
Сообщений: 5
Сказал Спасибо: 1
Имеет 5 спасибок в 3 сообщенях
3xdimon пока неопределено
По умолчанию

Цитата:
Сообщение от NLObP Посмотреть сообщение
Напиши алгоритм, по которому ты предполагаешь, что должно точить, тогда я могу что-то в коде менять.
Я щас пытаюсь сделать под Interlude -> точу одну шмотку ->при неудачно оно сбрасывает на 10+.
Вот он:
Цитата:
Сообщение от NLObP Посмотреть сообщение
Хочу сделать чтоб когда:
>>3. Проверяем второй байт пакета
>>4. Равен 0?
>>5. да, улучшение прошло, выход к п.п. 8
>>6. Равен 1?
>>7. да, улучшение не прошло, выход к п.п. 8

То если неудачно то оно шло к п.п. 8, проверяло сколько сейчас заточено, и потом начинало опять точить...

Или выкидывало на самое начало и сново проверяло сколько заточено, сколько точек и т.д. и затем начинало точить как будто старт нажал.


А на интерлюде пойдет скрипт грации???
А то на интерлюде слегка отличается он...

Последний раз редактировалось 3xdimon, 03.04.2009 в 15:21. Причина: Сдегка дополнил
3xdimon вне форума   Ответить с цитированием
Старый 03.04.2009, 14:32   #3
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Попробуй эту часть
delphi Код:
#$87: begin         if readd(2)=0 then begin           msg.Lines.Add('Улучшили ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));           inc(good);         end else begin           msg.Lines.Add('Сломали ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));           inc(broken);         end; //        CurEnchLvl:=0; //начнем с начала. Расскоментировать для блессет скроллов       end;     end;
заменить на эту
delphi Код:
#$87: begin         if readd(2)=0 then begin           msg.Lines.Add('Улучшили ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));           inc(good);         end else begin           msg.Lines.Add('Сломали ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));           inc(broken);           CurEnchLvl:=10; //выставляем текущий уровень при фэйле и при точке блесседами         end;       end;     end;
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
За это сообщение NLObP нажился 2 спасибками от:
Старый 03.04.2009, 18:01   #4
Новичок
 
Регистрация: 02.04.2009
Сообщений: 5
Сказал Спасибо: 1
Имеет 5 спасибок в 3 сообщенях
3xdimon пока неопределено
По умолчанию

Все)
Совместил
#$87: begin
if readd(2)=0 then begin
msg.Lines.Add('Улучшили ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
inc(good);
end else begin
msg.Lines.Add('Сломали ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
inc(broken);
CurEnchLvl:=10; //выставляем текущий уровень при фэйле и при точке блесседами
end;
end;
end;

С интерлюдовским кодом, еще кучу всякой фигни поставлял) Терь не виснет) И Если надо заточить на 20, то надо вводить максимальную заточку 19) т.е. вводить на 1 меньше)

Последний раз редактировалось 3xdimon, 03.04.2009 в 18:49.
3xdimon вне форума   Ответить с цитированием
За это сообщение 3xdimon нажился спасибкой от:
Старый 04.04.2009, 00:20   #5
Пользователь
 
Аватар для DzumoHu4
 
Регистрация: 28.06.2008
Сообщений: 73
Сказал Спасибо: 7
Имеет 24 спасибок в 16 сообщенях
DzumoHu4 пока неопределено
По умолчанию

Цитата:
Сообщение от 3xdimon Посмотреть сообщение
Все)
Совместил
#$87: begin
if readd(2)=0 then begin
msg.Lines.Add('Улучшили ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
inc(good);
end else begin
msg.Lines.Add('Сломали ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
inc(broken);
CurEnchLvl:=10; //выставляем текущий уровень при фэйле и при точке блесседами
end;
end;
end;

С интерлюдовским кодом, еще кучу всякой фигни поставлял) Терь не виснет) И Если надо заточить на 20, то надо вводить максимальную заточку 19) т.е. вводить на 1 меньше)
Будь добра опубликуй исправленный код.Очень нужно
DzumoHu4 вне форума   Ответить с цитированием
Старый 04.10.2009, 22:27   #6
Новичок
 
Регистрация: 04.09.2009
Адрес: Питер
Сообщений: 3
Сказал Спасибо: 1
Имеет 0 спасибок в 0 сообщенях
Sirocco пока неопределено
По умолчанию

Цитата:
Сообщение от 3xdimon Посмотреть сообщение
Все)
Совместил
#$87: begin
if readd(2)=0 then begin
msg.Lines.Add('Улучшили ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
inc(good);
end else begin
msg.Lines.Add('Сломали ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
inc(broken);
CurEnchLvl:=10; //выставляем текущий уровень при фэйле и при точке блесседами
end;
end;
end;

С интерлюдовским кодом, еще кучу всякой фигни поставлял) Терь не виснет) И Если надо заточить на 20, то надо вводить максимальную заточку 19) т.е. вводить на 1 меньше)
хэлп, при вставке кода пишет тчо нехватает ;
Sirocco вне форума   Ответить с цитированием
Старый 06.04.2009, 10:56   #7
Новичок
 
Регистрация: 13.01.2008
Сообщений: 2
Сказал Спасибо: 4
Имеет 0 спасибок в 0 сообщенях
SkaWe
По умолчанию

играю на сервере vlineage.com
со скриптом в приницпе разобрался... выбираю оружие, точку. ставлю макс лвл точки, жму старт и пишет прервано... много чего уже перепробывал, нифига не помогло. может кто подскажет что сделать нужно?
SkaWe вне форума   Ответить с цитированием
Старый 06.04.2009, 10:58   #8
Новичок
 
Регистрация: 13.01.2008
Сообщений: 2
Сказал Спасибо: 4
Имеет 0 спасибок в 0 сообщенях
SkaWe
По умолчанию

i=5 ItemOID=269819590 ItemID=1345 ItemKol=1898 ItemLVL=0
Команда Старт!!!
Прервано!
SkaWe вне форума   Ответить с цитированием
Старый 07.04.2009, 10:46   #9
Новичок
 
Регистрация: 02.04.2009
Сообщений: 5
Сказал Спасибо: 1
Имеет 5 спасибок в 3 сообщенях
3xdimon пока неопределено
По умолчанию

Цитата:
Сообщение от SkaWe Посмотреть сообщение
i=5 ItemOID=269819590 ItemID=1345 ItemKol=1898 ItemLVL=0
Команда Старт!!!
Прервано!
Там есть одно место, где надо указывать или 1 пуху точеш или от 2-х...
У тебя чуствуется там осталось что точить от 2-х предметов.

Попробуй поменять вот эту строку:

delphi Код:
if (sumitem(ItemID)<=1) then begin


на вот такую

delphi Код:
if (sumitem(ItemID)<=0) then begin
3xdimon вне форума   Ответить с цитированием
За это сообщение 3xdimon нажился спасибкой от:
Старый 09.04.2009, 01:17   #10
Новичок
 
Регистрация: 09.04.2009
Сообщений: 3
Сказал Спасибо: 1
Имеет 0 спасибок в 0 сообщенях
bestar пока неопределено
По умолчанию

Помогите плиз что я делаю не так скажите и если есть у каво та норм рабочий скрипт для vlineage.ru то дайте сорри за оффтоп как бы=) если там защита скажите тоже плиз
http://s49.radikal.ru/i125/0904/1e/122eecbe87bb.jpg
bestar вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 22:18.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!