Ru-MaNGOS

Ru-MaNGOS (http://mangos.ytdb.ru/index.php)
-   Копаем клиент (http://mangos.ytdb.ru/forumdisplay.php?f=35)
-   -   [13329] SMSG_UPDATE_OBJECT (http://mangos.ytdb.ru/showthread.php?t=3196)

Konctantin 12.12.2010 15:03

[13329] SMSG_UPDATE_OBJECT
 
Как известно - сменилась структура пакета *UPDATE_OBJECT*. Кроме того, что добавили в этот пакет номер карты, и немного изменили порядок чтения блоков в movement блок, были добавлены новые поля.
Код:

// 13329
if ((movement.updateFlags & UpdateFlags.Unk_0x0800) != 0)
{
    movement.UnkUshortValue1 = Reader.ReadUInt16();
    movement.UnkUshortValue2 = Reader.ReadUInt16();
    movement.UnkUshortValue3 = Reader.ReadUInt16();
}

// 3.1
if ((movement.updateFlags & UpdateFlags.GameObjectRotation) != 0)
{
    movement.GoRotation = Reader.ReadPackedQuaternion();
}

//13329
if ((movement.updateFlags & UpdateFlags.Unk_0x1000) != 0)
{
    byte count = Reader.ReadByte();
    for (int i = 0; i < count; ++i)
        movement.UnkIntListValues.Add(Reader.ReadInt32());
}

В снифах я этих полей не обнаружил, правда снифал я только на стартовых локациях. По сему вопрос, известно ли что это за поля?

Fabian 06.02.2011 23:13

I think in 4.0.6 it has been changed

Konctantin 07.02.2011 08:43

Вот в порту штормграда нашлась чайка:
Код:

UpdateFlags.Unk_0x0800
  - Unknown UInt16-s: 835 0 0

на стартовой локации орков: Разведчик из крепости Северной Стражи
Код:

UpdateFlags.Unk_0x0800
  - Unknown UInt16-s: 0 565 0


Fabian 07.02.2011 17:36

Can you gibe me the complete struct for 4.0.6 ?
Can't find out it

Ok I know it's the same struct

HuntsMan 22.02.2011 11:13

В 4.0.6 что-то убрали из этого пакета?

Lordronn 22.02.2011 12:40

Немного мовемент блок изменили

Было

Код:

            move.FallTime = reader.ReadUInt32();

            if (move.moveFlags.HasFlag(MovementFlags.FALLING))
            {
                move.XYSpeed = reader.ReadSingle();
                move.FallCosAngle = reader.ReadSingle();
                move.FallSinAngle = reader.ReadSingle();
                move.FallSpeed = reader.ReadSingle();
            }

Стало

Код:

                if (move.extraFlag.HasFlag(ExtraFlags.InterpolatedPlayerTurning))
                {
                    move.FallTime = reader.ReadUInt32();
                    move.FallSpeed = reader.ReadSingle();

                    if (move.moveFlags.HasFlag(MovementFlags.FALLING))
                    {
                        move.FallSinAngle = reader.ReadSingle();
                        move.FallCosAngle = reader.ReadSingle();
                        move.XYSpeed = reader.ReadSingle();
                    }
                }


HuntsMan 19.07.2011 18:43

Подскажите что стряслось с этим пакетом в 4.2 :( Я пытался в клиенте разобрать его, но так и не получилось :(

Chameleon 19.07.2011 20:17

Цитата:

Сообщение от HuntsMan (Сообщение 24194)
Подскажите что стряслось с этим пакетом в 4.2 :( Я пытался в клиенте разобрать его, но так и не получилось :(

https://github.com/ProjectSkyfire/Si...4c9acc7876af4d
https://github.com/ProjectSkyfire/Si...e5c3ce784954b1
Структуру разбирали LordJZ и Dvlpr.
Правда иногда он все равно криво парсит, но обычно нормально.


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

ru-mangos.ru - Русское сообщество MaNGOS