edd
March 10, 2020, 4:23am
1
does anyone know how this movement packet works?
I mean how would I determine the x,y of a coordinate?
[C->S][7021][9 bytes]
0000000000 01 4F 69 9D 03 50 00 31 05 .Oi…P.1…
[S->C][B021][24 bytes]
0000000000 C7 E6 DE 00 01 4F 69 9D 03 50 00 31 05 01 4F 69 ÇæÞ…Oi…P.1…Oi
0000000016 A4 23 17 00 A0 42 44 34 ¤#… BD4…
Check it out xSROMap and may give you an idea.
1 Like
uint UniqueID
bool HasDestionation
if(HasDestination){
byte RegionX
byte RegionY
short OffsetX
short OffsetZ
short OffsetY
IngameEndX = (RegionX-135)*192+(OffsetX/10)
IngameEndY = (RegionY-92)*192+(OffsetY/10)
}
else
{
byte unk
ushort Angle
}
bool HasSource
If(HasSource)
{
byte RegionX
byte RegionY
short OffsetX
float OffsetZ
short OffsetY
IngameStartX = (RegionX-135)*192+(OffsetX/100)
IngameStartY = (RegionY-92)*192+(OffsetY/100)
}
Something like this for B021.
7021 should have the same structure like the HasDestination
1 Like
edd
March 10, 2020, 8:31pm
4
Many Many thanks guys this is very helpful
I have a question for you tho G4ndalf pls
in if HasDestination
the equation for IngameEndY = (RegionX-92)*192+(OffsetY/10)
when I use RegionX in the equation it gives in-game Y coordinate in negative
I tried using RegionY instead and the result was correct
is this correct or am I missing something?
and biiiiiiig thanks really
Yeah my mistake it should have been RegionY
1 Like