Hey guys,
I have something rather important to tell you -- Recently we have finally completed a working client-side networked players system... Essentially, the player entities are controlled on the client instead of the server, allowing the client to do things like control the animation of the model and various other things. I'll quickly go over the problems of this system, and then tell you what it brings to the game/future of Xonotic.
It breaks compatibility with 0.5 clients in a few ways... The biggest way though is movement prediction - See, in order for this feature to work properly, the engine needed updates which 0.5 just does not have. So, if you play with an old engine on a server with CSQC players enabled, you will not have client side movement prediction, and movement will feel very laggy or broken.
On the plus side, lets take a look at what this achievement actually brings us: For now, the biggest new features are "forcemodels" and client-side playermodel LOD for better performance.
It should be noted that disabling CSQC players on a server DOES mean a loss of some functionality, like server-side LOD no longer works (so we don't have duplicated code) -- but it should function pretty much the same for most people.
Thanks everyone, and please spread the news, we'd like to avoid as many "OMG WHAT'S WRONG WITH THE PHYSICS ON THIS SERVER" bug reports as possible.
I have something rather important to tell you -- Recently we have finally completed a working client-side networked players system... Essentially, the player entities are controlled on the client instead of the server, allowing the client to do things like control the animation of the model and various other things. I'll quickly go over the problems of this system, and then tell you what it brings to the game/future of Xonotic.
It breaks compatibility with 0.5 clients in a few ways... The biggest way though is movement prediction - See, in order for this feature to work properly, the engine needed updates which 0.5 just does not have. So, if you play with an old engine on a server with CSQC players enabled, you will not have client side movement prediction, and movement will feel very laggy or broken.
On the plus side, lets take a look at what this achievement actually brings us: For now, the biggest new features are "forcemodels" and client-side playermodel LOD for better performance.
- Forcemodels allows you to force all other player models to your own model, so for example: If a server doesn't have fullbright skins on, you can simply select them and force them upon all the other enemies regardless of what the server has.
- Client side playermodel LOD works similar to the old LOD, however now it doesn't interrupt the animation, so it is MUCH more seamless and fluent.
- Additionally, this opens many more possibilities in the future than just this... potentially including: Ragdolls, player damage effects like fire/plasma, animation blending/smoothing/segmentation, dual weapon wielding, client side weapons (no latency when firing/attacking), etc etc etc... of course, those all need the work put in to implement them: but still they're possible now.
Code:
set sv_use_csqc_players 1 "set to 0 to disable CSQC players for better Xonotic 0.5 compat"
It should be noted that disabling CSQC players on a server DOES mean a loss of some functionality, like server-side LOD no longer works (so we don't have duplicated code) -- but it should function pretty much the same for most people.
Thanks everyone, and please spread the news, we'd like to avoid as many "OMG WHAT'S WRONG WITH THE PHYSICS ON THIS SERVER" bug reports as possible.