Показать сообщение отдельно
Старый 05.02.2010, 16:17   #74
Заблокирован
 
Регистрация: 01.10.2007
Сообщений: 76
Сказал Спасибо: 22
Имеет 7 спасибок в 7 сообщенях
Murdoc
По умолчанию

Цитата:
Сообщение от NLObP Посмотреть сообщение
Imperial2008, наверное с неправильной обработкой пакета инвентаря и изменения инвентаря.
Ну да. Причем скорее всего проблема в смещении с предмента на предмет. Но почему то у меня не вышло ни вычислить это значение ни подобрать. первый предмет определяется, а остальные или пустые строчки или вещи которых реально нет да еще в нереальных количествах. Подскажите пожалуйста что я делаю не так.

Отчет о проделанной работе Вобщем таки пришлось чуть подредактировать процедуры по обработке пакетов ItemList и InventoryUpdate. Вчастности длину блока описывающего 1 вещь. Например в моем случае в процедуре procedure ItemList пришлось поменять inc(j,24) на inc(j,30). В процедуре procedure InventoryUpdate то же самое. Если нет желания разбиратся с форматом пакета под свой серв и искать в нем смещение, можно попробовать и просто перебором значений от 20 до 34(при условии что в пакете (Amount) таки qword если нет то можно столкнуться с тем что предметы определяются правильно, но не правильно определяется признак надетости). Но это для извращенцев

ЗЫ. Да-да я сначала тоже пошел путем извращений
ЗЫЫ мои значения смещения годятся для сборки от http://www.l2jserver.com/

Последний раз редактировалось Murdoc, 10.02.2010 в 15:52.
Murdoc вне форума   Ответить с цитированием