Ru-MaNGOS  

Вернуться   Ru-MaNGOS > Ядро > Опкоды, Формулы, Клиент

Важная информация

Опкоды, Формулы, Клиент Разбор и изучение взаимодействия клиента с сервером

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.09.2013, 12:12   #1
Amaru
MaNGOS Dev
 
Регистрация: 16.01.2011
Сообщений: 262
Сказал(а) спасибо: 57
Поблагодарили 73 раз(а) в 59 сообщениях
Amaru На верном пути
По умолчанию Компрессия 5.x

Кто-нибудь собирался со сжатием опкодов в пандарии?

Походу теперь сжатый пакет имеет вид

Opcode:
SMSG_COMPRESSED_PACKET

Data:
uint32(compressedsize)array(compressedData)

compressedData:
compress(uint32(originalOpcode)array(originalData) )
Amaru вне форума   Ответить с цитированием
Старый 12.09.2013, 13:32   #2
RomanRom2
WowCore Dev
 
Аватар для RomanRom2
 
Регистрация: 31.03.2010
Сообщений: 465
Сказал(а) спасибо: 73
Поблагодарили 106 раз(а) в 70 сообщениях
RomanRom2 Это имя известно всемRomanRom2 Это имя известно всемRomanRom2 Это имя известно всемRomanRom2 Это имя известно всемRomanRom2 Это имя известно всемRomanRom2 Это имя известно всем
По умолчанию

он вроде таким и был всегда, обычный зип. а что за компресс в конце? что имеется ввиду?
RomanRom2 вне форума   Ответить с цитированием
Старый 12.09.2013, 13:57   #3
Amaru
MaNGOS Dev
 
Регистрация: 16.01.2011
Сообщений: 262
Сказал(а) спасибо: 57
Поблагодарили 73 раз(а) в 59 сообщениях
Amaru На верном пути
По умолчанию

это то что внутри array(compressedData)
сжатый оригинальный пакет, теперь 4-байтовый оригинальный опкод+данные. раньше оригинальный опкод не слался, к опкоду сжатого пакета прибавлялась маска 0x8000, означающая что он сжатый.

Ката:
Код:
Opcode:
originalOpcode |= 0x8000;
Data:
uint32(compressedsize)array(zlib_compress(array(data)))
Пандоры:
Код:
Opcode:
SMSG_COMPRESSED_PACKET
Data:
uint32(compressedsize)array(zlib_compress(uint32(originalOpcode)array(data)))

Последний раз редактировалось Amaru; 12.09.2013 в 15:38.
Amaru вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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



Текущее время: 23:33. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot