On a server, prevents sending
of entity parameter updates from the server to clients. If this flag is not set, all entity parameters listed below are updated from the server to the clients, which can cause a lot of traffic when many clients are connected. Individual parameters can be exluded from sending by using the flags listed below.
Prevents sending of alpha.
Prevents sending of ambient and albedo.
Prevents sending of pan, tilt, roll.
On a client, prevents receiving pan, tilt, or roll updates from the server, and allowings to control the angles directly in the entity action for preventing lag.
Prevents sending any ent_morphskin instructions.
Prevents sending of red, green, blue.
Prevents sending of all visual entity flags.
Prevents sending of frame and next_frame.
Prevents sending of lightrange.
Prevents sending the x, y, z coordinates.
A7.78 LC Prevents sending the z coordinate. This reduces position updates to 6 bytes, but the client script is then responsible for keeping the height above the ground.
Prevents sending of scale_x, scale_y, scale_z.
Prevents sending of the skin number.
Prevents sending entity sounds.
- Normally the server periodically updates all changed visual entity parameter
like position, angles, colors, etc - on the clients. This requires maximum
bandwidth and is normally not recommended for online multiplayer games. For
reducing the bandwidth, certain parameters, given through the flags above,
or even all can be exempt from the updates. Those parameters can then be
set by local functions (proc_local)
on the client side. By carefully selecting the parameters to be sent, and
doing entity effects and animation on the client side, the network traffic
can be remarkably reduced and two or three times as many clients can be served.
- When setting the NOSEND flag immediately after entity creation,
the entity can remain invisible on the client because it's file name and
position is not sent. For preventing this, set the NOSEND flag
only after the time between two entity updates, given by dplay_entrate,
my.NOSEND_ALPHA = ON; // C-Script
my.NOSEND_AMBIENT = ON;
my.smask |= NOSEND_ALPHA | NOSEND_AMBIENT; // lite-C