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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
 
 
Опции темы Опции просмотра
Старый 10.07.2010, 17:55   #15
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

Кхм, результат должен был быть чуть другим. Должны были быть отправлены первые 3 пакета, а потом "Поймали пакет #$11". Скрипт то правильно написан, почти. Я специально добавил логи чтобы вы это увидели.

Собственно проблема в строчке
Код:
buf:=hstr('1F' + 'IntToStr(ListID)' + '01 00 00 00 B1 19 00 00 01 00 00 00');
Смотрите что происходит при выполнении этой строки (если ListID=1234567891):
1) выполняется команда IntToStr и в результате мы получаем 1234567891 -> '1234567891'
2) Дальше суммируются строки:
'1F' + '1234567891' + '01 00 00 00 B1 19 00 00 01 00 00 00' ->
'1F 12 34 56 78 91 01 00 00 00 B1 19 00 00 01 00 00 00'
3) Выполняется функция hstr и получаем пакет
'1F 12 34 56 78 91 01 00 00 00 B1 19 00 00 01 00 00 00' ->
#$1F#$12#$34#$56#$78#$91#$01#$00#$00#$00#$B1#$19#$00#$00#$01#$00#$00#$00

Синим цветом я выделил то место куда мы запихнули ListID, но сразу бросается в глаза: оно занимает 5 байтов, а должно занимать 4 байта. А если ListID будет равно 1324, то получится что оно займет 2 байта в пакете и опять же пакет будет неправильным.

В чем проблема? В том что команда ReadD вытаскивает с пакета число в 10-тиричной системе вычислений, и команда IntToStr "пихает" в пакет чистой в той же 10-тиричной системе, а надо то в 16-ти.
Для этого случая есть команда WriteD и в вашем случаи надо ее использовать.


PS:
Hебольшая догадка почему чар крутится: возможно ListID нечетное количество символов получается, например 12345. Тогда в конец отсылаемого пакета попадает не 00, а просто 0 и это приводит к нарушению чтения всех последующих данных.
__________________

В любом из нас спит гений. И с каждым днем все крепче.

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
За это сообщение J-Fobos нажился спасибкой от:
 

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



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

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


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

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

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