halflife-adm-legacy
halflife-adm-legacy copied to clipboard
Clientside entities
Think about this for a second. Does the server really need to keep track of all those little environmental details, such as when you walk on a bridge, you hear creaking of the wooden planks below you, or maybe you see a nice steam effect comprised out of a series of sprites?
Those things waste network bandwidth and use edict slots. A clientside entity system would be amazing for this type of thing, especially if it could support triggering as well. This links to #11 where vegetation could also be a use case for this system.
So, basically, clientside entities would be much more primitive compared to game entities, with mostly the following properties:
- origin
- angles
- scale
- name
- className
- target
- nextThink
- modelIndex
- model
- sequence
- framerate
- controller
- renderMode
- renderAmount
- constantLight
- constantGlow
Note: clientside ents wouldn't necessarily be the same as cl_entity_t
, as that is very often an entity coming from the server to the client.
The foundation for this may get implemented in 0.5.0 or 0.6.0