Closed 0xlsca closed 1 year ago
It should be okay to move everything to Aero, as Aero is the golden source for the packets. All the other information was sourced from other places and is less precise/complete.
But of course there might be some additional code changes required that we can document.
Tbh, my motivation originates from the transition to ConfirmedPoseUpdate
in Character/BaseController.MovementInput
where I spotted that Aero doesn't include a field we have a name for.
ConfirmedPoseUpdate
in Aero:
[Aero]
[AeroMessageId(MsgType.GSS, MsgSrc.Message, 2, 111)]
public partial class ConfirmedPoseUpdate
{
public MovementPoseData PoseData;
public ushort Unk; <-- This field
}
ConfirmedPoseUpdate
in PIN:
[GSSMessage(Enums.GSS.Controllers.Character_BaseController, (byte)Events.ConfirmedPoseUpdate)]
public class ConfirmedPoseUpdate
{
[Field]
public ushort ShortTime;
[Field]
public byte UnkByte1;
[Field]
public byte UnkByte2;
[Field]
public Vector Position;
[Field]
public Quaternion Rotation;
[Field]
public ushort State;
[Field]
public Vector Velocity;
[Field]
public ushort UnkUShort1;
[Field]
public ushort UnkUShort2;
[Field]
public ushort LastJumpTimer;
[Field]
public byte UnkByte3;
[Field]
public ushort NextShortTime; <-- This field
Additionally, just tracking the removed files and when they were removed seems suitable because we can proceed with removing obsolete code and don't need to scan all of them at once.
Tbh, my motivation originates from the transition to
ConfirmedPoseUpdate
inCharacter/BaseController.MovementInput
where I spotted that Aero doesn't include a field we have a name for.
ConfirmedPoseUpdate
in Aero:[Aero] [AeroMessageId(MsgType.GSS, MsgSrc.Message, 2, 111)] public partial class ConfirmedPoseUpdate { public MovementPoseData PoseData; public ushort Unk; <-- This field }
ConfirmedPoseUpdate
in PIN:[GSSMessage(Enums.GSS.Controllers.Character_BaseController, (byte)Events.ConfirmedPoseUpdate)] public class ConfirmedPoseUpdate { [Field] public ushort ShortTime; [Field] public byte UnkByte1; [Field] public byte UnkByte2; [Field] public Vector Position; [Field] public Quaternion Rotation; [Field] public ushort State; [Field] public Vector Velocity; [Field] public ushort UnkUShort1; [Field] public ushort UnkUShort2; [Field] public ushort LastJumpTimer; [Field] public byte UnkByte3; [Field] public ushort NextShortTime; <-- This field
Additionally, just tracking the removed files and when they were removed seems suitable because we can proceed with removing obsolete code and don't need to scan all of them at once.
Thanks for pointing it out, just wanted to note here, I have since updated this in AeroMessages: https://github.com/themeldingwars/AeroMessages/commit/3febce7f1fe01f3826eaefc78d65ae3c808f58f9
Switch has been done with #30
The following removed classes need to be searched for named fields which are unknown in
AeroMessages
.UdpHosts/GameServer/Packets/GSS/Character/BaseController/MovementInput.cs
(removed in #7d5c351)UdpHosts/GameServer/Packets/GSS/Generic/ScheduleUpdateRequest.cs
(removed in #7d5c351)