On 2012-11-15 05:47:50 +0000, James Cameron said:

> These numbers are byte swapped forms of the raw data.
> 
> 541982720 is 0x204E0000 and should be 0x00004E20
> 2151153920 is 0x80380100 and should be 0x00013880
> 
> So check the order of the bytes as they are unpacked into your local
> variables.
> 
> Should not cause misalignment though.

That was it.

        gamePacket.x = NSSwapBigIntToHost(gamePacket.x);

Fixes the problem.

-- 
Bob Tanner <basic at us.netrek.org>          
Key fingerprint = 9906 320A 8BB6 64AD 96A7  7785 CBFB 10BF 568B F98C