NOSEND
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.
NOSEND_ALPHA
Prevents sending of alpha.
NOSEND_AMBIENT
Prevents sending of ambient and albedo.
NOSEND_ANGLES
Prevents sending of pan, tilt, roll.
A7.70
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.
NOSEND_ATTACH
Prevents sending any ent_morphskin instructions.
NOSEND_COLOR
Prevents sending of red, green, blue.
NOSEND_FLAGS
Prevents sending of all visual entity flags.
NOSEND_FRAME
Prevents sending of frame and next_frame.
NOSEND_LIGHT
Prevents sending of lightrange.
NOSEND_ORIGIN
Prevents sending the x, y, z coordinates.
NOSEND_Z
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.
NOSEND_SCALE
Prevents sending of scale_x, scale_y, scale_z.
NOSEND_SKIN
Prevents sending of the skin number.
NOSEND_SOUND
Prevents sending entity sounds.
Type:
flag (smask)
Remarks:
- 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,
is passed.
Example:
my.NOSEND_ALPHA = ON; // C-Script
my.NOSEND_AMBIENT = ON;
...
my.smask |= NOSEND_ALPHA | NOSEND_AMBIENT; // lite-C
See also:
proc_local
► latest
version online