PDA

Просмотр полной версии : [13329] SMSG_UPDATE_OBJECT


Konctantin
12.12.2010, 15:03
Как известно - сменилась структура пакета *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
Вот в порту штормграда нашлась чайка (http://ru.wowhead.com/npc=44880):
UpdateFlags.Unk_0x0800
- Unknown UInt16-s: 835 0 0

на стартовой локации орков: Разведчик из крепости Северной Стражи (http://ru.wowhead.com/npc=39317)
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.InterpolatedPla yerTurning))
{
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
Подскажите что стряслось с этим пакетом в 4.2 :( Я пытался в клиенте разобрать его, но так и не получилось :(

https://github.com/ProjectSkyfire/SilinoronParser/commit/530be736538b97ef94f5e900fb4c9acc7876af4d
https://github.com/ProjectSkyfire/SilinoronParser/commit/d07b30399f418df71ddf521863e5c3ce784954b1
Структуру разбирали LordJZ и Dvlpr.
Правда иногда он все равно криво парсит, но обычно нормально.