Wouldnt have thought you would need this:
Code:
for (byte ByLeft = LeaLen; ByLeft < 40; ByLeft++)
{
Packet.Int(0);
}
Un-assigned values default to 0, so really the buffer behind all of this has already had its existing bytes set to 0, theres no need to do it all again.
So after removing that if the problem still exists then it comes down to the size of the packet, and whether your setting it correctly.