jimbo
Member
- Joined
- Jun 16, 2006
- RedCents
- 0¢
I spent an ass-load of time figuring this out. So throw me a red cent if you find it helpful. Or if you know the two pieces of it that I don't know (Unknown2 and Unknown8), give me those instead.
I think it is complete enough for most purposes now though.
--jimbo
I think it is complete enough for most purposes now though.
Rich (BB code):
typedef struct _PositionPacket {
unsigned short SpawnID; //1
unsigned short TimeStamp; //1
signed int ZHeading:11; //2 scale -512(-0x200) to +512(0x200) down to up
DWORD Unknown2:21; //2 0 until you zone first time, 0x00633+1bit thereafter for low-lvl toon?
float DeltaZ; //3
float X; //4
signed int DeltaHeading:10; //5
signed int Animation:10; //5 speed-related -- spoof this low to avoid boot - walk=18, run0=27, walk/run backward=-18
signed int Padding5:12; //5 0
float Y; //6
float DeltaX; //7
unsigned int Heading:12; //8 scale 0 to 2047 (0x7FF) CCW starting at N
DWORD Unknown8:20; //8 0 until you zone first time,
float DeltaY; //9
float Z; //10
} PositionPacket, *pPositionPacket;


Nevermind that it is a tiny, insignificant improvement to Odessa's struct. It is an improvement. And that makes me at least ten feet tall, cause Odessa is King of the Packets.