Maybe one of you can make sence of this...
I think this is where the error is returned
Code:
if (app->size != sizeof(PlayerPositionUpdateClient_Struct)) {
LogFile->write(EQEMuLog::Error, "OP size error: OP_ClientUpdate expected:%i got:%i", sizeof(PlayerPositionUpdateClient_Struct), app->size);
return;
}
OP_ClientUpdate expected:38 got 36
now if i look for the PlayerPositionUpdateClient_Struct
I find
Code:
/*
** Player position update
** Struct sent from client->server to update
** player position on server
**
*/
struct PlayerPositionUpdateClient_Struct
{
/*0000*/ uint16 spawn_id;
/*0022*/ uint16 sequence; //increments one each packet
/*0004*/ float y_pos; // y coord
/*0008*/ float delta_z; // Change in z
/*0016*/ float delta_x; // Change in x
/*0012*/ float delta_y; // Change in y
/*0020*/ signed animation:10; // animation
signed delta_heading:10; // change in heading
signed padding0020:12; // ***Placeholder (mostly 1)
/*0024*/ float x_pos; // x coord
/*0028*/ float z_pos; // z coord
/*0034*/ unsigned heading:12; // Directional heading
unsigned padding0004:4; // ***Placeholder
/*0032*/ uint8 unknown0006[2]; // ***Placeholder
/*0036*/
};
Now if i'm understanding this doesn't that last line /*0036*/ mean this is 36 byte, then how does it expect 38, the only thing i dont understand is app->size since its part of the if statement and i either dont understand it or its being set to 38 somewhere which causes this to expect a 38 when it only gets a 36...
does any of that make sence?
vRandom
I'm not a c programmer so i could be totaly not reading it correctly...