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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 19.05.2008, 00:23   #1
Новичок
 
Регистрация: 10.04.2008
Сообщений: 2
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
MOHTEP
Вопрос Количество денег в инвентаре....

Помагите или подскажите, в каком пакете идет инфа о количестве денег чара моего. Если чесно пакеты знаю еше плохо что в каком и какие данные, но скрипты уже несложные пишу.
MOHTEP вне форума   Ответить с цитированием
Старый 19.05.2008, 00:43   #2
Пользователь
 
Регистрация: 21.10.2007
Сообщений: 42
Сказал Спасибо: 5
Имеет 2 спасибок в 2 сообщенях
Cucumber
По умолчанию

Как и любой другой предмет ItemList($1B), InventoryUpdate($27).
Cucumber вне форума   Ответить с цитированием
Старый 19.05.2008, 00:50   #3
Новичок
 
Регистрация: 10.04.2008
Сообщений: 2
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
MOHTEP
По умолчанию

я ето понял но где в пакете?
MOHTEP вне форума   Ответить с цитированием
Старый 19.05.2008, 01:00   #4
Пользователь
 
Регистрация: 21.10.2007
Сообщений: 42
Сказал Спасибо: 5
Имеет 2 спасибок в 2 сообщенях
Cucumber
По умолчанию

1B=ItemList:-(2)w(COUNT)w(itemType1)d(ObjectId)d(ITEMID)d(COUNT _ITEM)w(itemType2)w(CustType1)w(isEquipped)d(BodyP art)w(EnchantLevel)w(CustType2)
27=InventoryUpdate:w(COUNT)w(tip_operacii)w(itemTy pe1)d(ObjectId)d(ITEMID)d(COUNT_ITEM)w(itemType2)w (CustType1)w(isEquipped)d(BodyPart)w(EnchantLevel) w(CustType2)
Проверяешь весь пакет размером COUNT, если ITEMID = 57(для адены) то COUNT_ITEM кол-во адены.
Cucumber вне форума   Ответить с цитированием
Старый 19.05.2008, 12:45   #5
Рыцарь
 
Аватар для QaK
 
Регистрация: 28.09.2007
Сообщений: 1,558
Сказал Спасибо: 71
Имеет 351 спасибок в 244 сообщенях
QaK пока неопределено
По умолчанию

Цитата:
Сообщение от Cucumber Посмотреть сообщение
Проверяешь весь пакет размером COUNT
точнее - количество предметов в инвентаре.
QaK вне форума   Ответить с цитированием
Старый 21.05.2008, 01:02   #6
Новичок
 
Регистрация: 24.11.2007
Сообщений: 10
Сказал Спасибо: 17
Имеет 1 спасибку в 1 сообщении
Sergey
По умолчанию

Вот сваял скрипт (и малость содрал), пишет в приват количество денег в инвентаре.

delphi Код:
// скрипт на количество денег в инвентаре const    name='CTEPBA'//ник чара //****************************************************************************** var    i,k,l: integer; //****************************************************************************** procedure Say(msg:string); begin   buf:=hstr('4A 00 00 00 00');   WriteD(2);   WriteS(Name);   WriteS(msg);   SendToClientEx(Name); end; //****************************************************************************** begin    if FromServer and (ConnectName=name)and (pck[1]=#$27)and (pck[12]=#$39)then       begin          i:=12;          k:=ReadD(i);    //item ID          l:=ReadD(i);    //количество адены          Say('Мои деньги:');          Say('item ID='+IntToStr(k));          Say('количество адены='+IntToStr(l));       end;       end.

Проверял он пашет. Но правда серв баганутый. Но чет у мя сомнения на правильность работы его....

Последний раз редактировалось Sergey, 21.05.2008 в 01:24.
Sergey вне форума   Ответить с цитированием
За это сообщение Sergey нажился спасибкой от:
Старый 21.05.2008, 12:22   #7
Новичок
 
Регистрация: 22.04.2008
Сообщений: 21
Сказал Спасибо: 8
Имеет 26 спасибок в 6 сообщенях
poizon пока неопределено
По умолчанию

Sergey, на вид скрипт не может работать, потомучто при приходе пакета с инвентарём надо создать базу с предметами и их количеством, а потом сканировать базу на предмет 57 (ид адены) и вытаскивать в say количество предмета.а у тебя я както не поййму как работает.я реализовывал такую функцию на основе бота рыбака ( от туда берёшь все процедуры для принятия пакетов о инвентаре) а далее всё просто
poizon вне форума   Ответить с цитированием
Старый 21.05.2008, 14:22   #8
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Он наврное проверял с пустым инвентарём, где только деньги.
В принципи можно без занесения в базу.
1B=ItemListPacket:w(window)w(ListCount)w(itemType1 )h(ObjectID)i(ItemID)d(count)
В цикле пока ListCount не закончилось проверяем соответствие на требуемое ItemID и берем count.
NLObP вне форума   Ответить с цитированием
Старый 21.05.2008, 15:21   #9
Новичок
 
Регистрация: 24.11.2007
Сообщений: 10
Сказал Спасибо: 17
Имеет 1 спасибку в 1 сообщении
Sergey
По умолчанию

Скрипт проверял с забитым инвентарем под нехочю. Работает норм, при деиствия с деньгами он пишет в приват скок их. А я его еше подописал и те просто бегаю собираю деньги по достижении 2ккк автоматом обменивает на 1 кол. Просто у мя сомнения на верность

delphi Код:
if FromServer and (ConnectName=name)and (pck[1]=#$27)and (pck[12]=#$39)then       begin          i:=12;          k:=ReadD(i);    //item ID          l:=ReadD(i);    //количество адены          Say('Мои деньги:');          Say('item ID='+IntToStr(k));          Say('количество адены='+IntToStr(l));       end;
есть впечатление что можно сделать подругому,чтоб проверял еше что либо по ID.
Sergey вне форума   Ответить с цитированием
Старый 21.05.2008, 15:22   #10
Новичок
 
Регистрация: 22.04.2008
Сообщений: 21
Сказал Спасибо: 8
Имеет 26 спасибок в 6 сообщенях
poizon пока неопределено
По умолчанию

NLObP, ну да можно и без базы, типа цикл проверяет itemid в пакете если находит 57 то считывает d(count) след раз
delphi Код:
procedure howmanyadena var adena,j,i:integer; begin j:=4; listcount:=readh(j);  for i:=1 to listcount do begin  j:=j+6;   if (readd(j)=57) then begin   adena:=readd(j);   break;   end;  j:=j+26; end; if fromserver and (pck[1]:=#$1b) then howmanyadena



вот такой скриптик в adena будет записано кол адены, но запускать надо уже в окне выбора персонажа. скрипт не проверял.это набросок.
+ещё приходит пакет о изменении количества предметов , для него тоже надо писать процедуру.
end;
poizon вне форума   Ответить с цитированием
За это сообщение poizon нажился спасибкой от:
Ответ

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



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

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


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

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

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