by Spike » Thu Dec 20, 2012 7:00 pm
client should send 16 bit angles to the server.
'fast updates' have additional byte values, which may conflict with any other protocols you might have tried to add support for in the past.
#define FITZU_EXTEND1 (1<<15) (byte after other bits bytes)
#define FITZU_ALPHA (1<<16) (byte after angle 3)
#define FITZU_FRAME2 (1<<17) (after scale byte, if present.)
#define FITZU_MODEL2 (1<<18) (after frame2 byte)
#define FITZU_LERPFINISH (1<<19) (after model2 byte, says when the entity next thinks, supposedly useful for step interpolation)
#define RMQU_SCALE (1<<20) (1 byte, comes after alpha byte, and yeah, perhaps I shouldn't include this here)
svc_clientdata has a load of extra bytes for 16bit stats.
and of course there's these:
#define svcfitz_skybox 37
string skyname. coulda used a stuffcmd instead...
#define svcfitz_bf 40
no payload. coulda used a stuffcmd instead...
#define svcfitz_fog 41
byte density, byte r, byte g, byte b, short time
coulda used a stuffcmd instead...
#define svcfitz_spawnbaseline2 42
byte bits, short|byte modelindex, short|byte frame, byte colormap, byte skinnum, (coord+angle)*3, byte trans
#define FITZB_LARGEMODEL (1<<0)
#define FITZB_LARGEFRAME (1<<1)
#define FITZB_ALPHA (1<<2)
#define svcfitz_spawnstatic2 43
fte doesn't support this, not found a map that actually required it so can't test it.
#define svcfitz_spawnstaticsound2 44
fte doesn't support this, not found a map that actually required it so can't test it.
dunno what 38 and 39 are... I've not found them to be important...
and of course the protocol version = 666, but that goes without saying.
make sure your client is also able to correctly receive 65k network messages.
I'm not aware of any other changes that are not actually RMQe extensions instead.
.