Constants

message_const.inc

Destination types for message_begin()

MSG_BROADCAST
#define	MSG_BROADCAST               0        // Unreliable to all
#define	MSG_ONE                     1        // Reliable to one (msg_entity)
#define	MSG_ALL                     2        // Reliable to all
#define	MSG_INIT                    3        // Write to the init string
#define MSG_PVS                     4        // Ents in PVS of org
#define MSG_PAS                     5        // Ents in PAS of org
#define MSG_PVS_R                   6        // Reliable to PVS
#define MSG_PAS_R                   7        // Reliable to PAS
#define MSG_ONE_UNRELIABLE          8        // Send to one client, but don't put in reliable stream, put in unreliable datagram (could be dropped)
#define	MSG_SPEC                    9        // Sends to all spectator proxies

Hardcoded message types for message_begin()

SVC_BAD

Note

Look at the actual HLSDK for details

#define SVC_BAD 			0
#define SVC_NOP				1
#define SVC_DISCONNECT			2
#define SVC_EVENT			3
#define SVC_VERSION			4
#define SVC_SETVIEW			5
#define SVC_SOUND			6
#define SVC_TIME			7
#define SVC_PRINT			8
#define SVC_STUFFTEXT			9
#define SVC_SETANGLE			10
#define SVC_SERVERINFO			11
#define SVC_LIGHTSTYLE			12
#define SVC_UPDATEUSERINFO		13
#define SVC_DELTADESCRIPTION		14
#define SVC_CLIENTDATA			15
#define SVC_STOPSOUND			16
#define SVC_PINGS			17
#define SVC_PARTICLE			18
#define SVC_DAMAGE			19
#define SVC_SPAWNSTATIC			20
#define SVC_EVENT_RELIABLE		21
#define SVC_SPAWNBASELINE		22
#define SVC_TEMPENTITY			23
#define SVC_SETPAUSE			24
#define SVC_SIGNONNUM			25
#define SVC_CENTERPRINT			26
#define SVC_KILLEDMONSTER		27
#define SVC_FOUNDSECRET			28
#define SVC_SPAWNSTATICSOUND		29
#define SVC_INTERMISSION		30
#define SVC_FINALE			31
#define SVC_CDTRACK			32
#define SVC_RESTORE			33
#define SVC_CUTSCENE			34
#define SVC_WEAPONANIM			35
#define SVC_DECALNAME			36
#define SVC_ROOMTYPE			37
#define SVC_ADDANGLE			38
#define SVC_NEWUSERMSG			39
#define SVC_PACKETENTITIES		40
#define SVC_DELTAPACKETENTITIES		41
#define SVC_CHOKE			42
#define SVC_RESOURCELIST		43
#define SVC_NEWMOVEVARS			44
#define SVC_RESOURCEREQUEST		45
#define SVC_CUSTOMIZATION		46
#define SVC_CROSSHAIRANGLE		47
#define SVC_SOUNDFADE			48
#define SVC_FILETXFERFAILED		49
#define SVC_HLTV			50
#define SVC_DIRECTOR			51
#define SVC_VOICEINIT			52
#define SVC_VOICEDATA			53
#define SVC_SENDEXTRAINFO		54
#define SVC_TIMESCALE			55
#define SVC_RESOURCELOCATION 		56
#define SVC_SENDCVARVALUE 		57
#define SVC_SENDCVARVALUE2 		58

Flags for set_msg_block()

BLOCK_NOT
#define BLOCK_NOT                   0
#define BLOCK_ONCE                  1
#define BLOCK_SET                   2

Message argument types used with get_msg_argtype() and set_msg_arg_*

enum
{
	ARG_BYTE = 1,       /* int */
	ARG_CHAR,           /* int */
	ARG_SHORT,          /* int */
	ARG_LONG,           /* int */
	ARG_ANGLE,          /* float */
	ARG_COORD,          /* float */
	ARG_STRING,         /* string */
	ARG_ENTITY,         /* int */
};

TempEntity messages for message_begin()

Beam effect between two points

TE_BEAMPOINTS

Note

write_byte(TE_BEAMPOINTS)
write_coord(startposition.x)
write_coord(startposition.y)
write_coord(startposition.z)
write_coord(endposition.x)
write_coord(endposition.y)
write_coord(endposition.z)
write_short(sprite index)
write_byte(starting frame)
write_byte(frame rate in 0.1's)
write_byte(life in 0.1's)
write_byte(line width in 0.1's)
write_byte(noise amplitude in 0.01's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(brightness)
write_byte(scroll speed in 0.1's)

#define	TE_BEAMPOINTS               0

Beam effect between a point and an entity

TE_BEAMENTPOINT

Note

write_byte(TE_BEAMENTPOINT)
write_short(start entity)
write_coord(endposition.x)
write_coord(endposition.y)
write_coord(endposition.z)
write_short(sprite index)
write_byte(starting frame)
write_byte(frame rate in 0.1's)
write_byte(life in 0.1's)
write_byte(line width in 0.1's)
write_byte(noise amplitude in 0.01's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(brightness)
write_byte(scroll speed in 0.1's)

 #define TE_BEAMENTPOINT            1

Particle effect plus ricochet sound

TE_GUNSHOT

Note

write_byte(TE_GUNSHOT)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)

#define	TE_GUNSHOT                  2

Additive sprite, 2 dynamic lights, flickering particles, explosion sound, move vertically 8 pps

TE_EXPLOSION

Note

write_byte(TE_EXPLOSION)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_short(sprite index)
write_byte(scale in 0.1's)
write_byte(framerate)
write_byte(flags)

#define	TE_EXPLOSION                3

Flags for the TE_EXPLOSION effect, controlling its performance and aesthetic features

TE_EXPLFLAG_NONE
#define TE_EXPLFLAG_NONE            0        // All flags clear makes default Half-Life explosion
#define TE_EXPLFLAG_NOADDITIVE      1        // Sprite will be drawn opaque (ensure that the sprite you send is a non-additive sprite)
#define TE_EXPLFLAG_NODLIGHTS       2        // Do not render dynamic lights
#define TE_EXPLFLAG_NOSOUND         4        // Do not play client explosion sound
#define TE_EXPLFLAG_NOPARTICLES     8        // Do not draw particles

Quake1 "tarbaby" explosion with sound

TE_TAREXPLOSION

Note

write_byte(TE_TAREXPLOSION)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)

#define	TE_TAREXPLOSION             4

Alphablend sprite, move vertically 30pps

TE_SMOKE

Note

write_byte(TE_SMOKE)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_short(sprite index)
write_byte(scale in 0.1's)
write_byte(framerate)

#define	TE_SMOKE                    5

Tracer effect from point to point

TE_TRACER

Note

write_byte(TE_TRACER)
write_coord(startposition.x)
write_coord(startposition.y)
write_coord(startposition.z)
write_coord(endposition.x)
write_coord(endposition.y)
write_coord(endposition.z)

#define	TE_TRACER                   6

TE_BEAMPOINTS with simplified parameters

TE_LIGHTNING

Note

write_byte(TE_LIGHTNING)
write_coord(startposition.x)
write_coord(startposition.y)
write_coord(startposition.z)
write_coord(endposition.x)
write_coord(endposition.y)
write_coord(endposition.z)
write_byte(life in 0.1's)
write_byte(width in 0.1's)
write_byte(amplitude in 0.01's)
write_short(sprite model index)

#define	TE_LIGHTNING                7

TE_BEAMENTS

TE_BEAMENTS

Note

write_byte(TE_BEAMENTS)
write_short(start entity)
write_short(end entity)
write_short(sprite index)
write_byte(starting frame)
write_byte(frame rate in 0.1's)
write_byte(life in 0.1's)
write_byte(line width in 0.1's)
write_byte(noise amplitude in 0.01's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(brightness)
write_byte(scroll speed in 0.1's)

#define	TE_BEAMENTS                 8

8 random tracers with gravity, ricochet sprite

TE_SPARKS

Note

write_byte(TE_SPARKS)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)

#define	TE_SPARKS                   9

Quake1 lava splash

TE_LAVASPLASH

Note

write_byte(TE_LAVASPLASH)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)

#define	TE_LAVASPLASH               10

Quake1 teleport splash

TE_TELEPORT

Note

write_byte(TE_TELEPORT)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)

#define	TE_TELEPORT                 11

Quake1 colormaped (base palette) particle explosion with sound

TE_EXPLOSION2

Note

write_byte(TE_EXPLOSION2)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_byte(starting color)
write_byte(num colors)

#define TE_EXPLOSION2               12

Decal from the .BSP file

TE_BSPDECAL

Note

write_byte(TE_BSPDECAL)
write_coord(position.x) decal position (center of texture in world)
write_coord(position.y)
write_coord(position.z)
write_short(texture index of precached decal texture name)
write_short(entity index)
[optional - write_short(index of model of above entity) only included if previous short is non-zero (not the world)]

#define TE_BSPDECAL                 13

Tracers moving toward a point

TE_IMPLOSION

Note

write_byte(TE_IMPLOSION)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_byte(radius)
write_byte(count)
write_byte(life in 0.1's)

#define TE_IMPLOSION                14

Line of moving glow sprites with gravity, fadeout, and collisions

TE_SPRITETRAIL

Note

write_byte(TE_SPRITETRAIL)
write_coord(startposition.x)
write_coord(startposition.y)
write_coord(startposition.z)
write_coord(endposition.x)
write_coord(endposition.y)
write_coord(endposition.z)
write_short(sprite index)
write_byte(count)
write_byte(life in 0.1's)
write_byte(scale in 0.1's)
write_byte(velocity along vector in 10's)
write_byte(randomness of velocity in 10's)

#define TE_SPRITETRAIL              15

Additive sprite, plays 1 cycle

TE_SPRITE

Note

write_byte(TE_SPRITE)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_short(sprite index)
write_byte(scale in 0.1's)
write_byte(brightness)

#define TE_SPRITE                   17

A beam with a sprite at the end

TE_BEAMSPRITE

Note

write_byte(TE_BEAMSPRITE)
write_coord(startposition.x)
write_coord(startposition.y)
write_coord(startposition.z)
write_coord(endposition.x)
write_coord(endposition.y)
write_coord(endposition.z)
write_short(beam sprite index)
write_short(end sprite index)

#define TE_BEAMSPRITE               18

Screen aligned beam ring, expands to max radius over lifetime

TE_BEAMTORUS

Note

write_byte(TE_BEAMTORUS)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(axis.x)
write_coord(axis.y)
write_coord(axis.z)
write_short(sprite index)
write_byte(starting frame)
write_byte(frame rate in 0.1's)
write_byte(life in 0.1's)
write_byte(line width in 0.1's)
write_byte(noise amplitude in 0.01's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(brightness)
write_byte(scroll speed in 0.1's)

#define TE_BEAMTORUS                19

Disk that expands to max radius over lifetime

TE_BEAMDISK

Note

write_byte(TE_BEAMDISK)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(axis.x)
write_coord(axis.y)
write_coord(axis.z)
write_short(sprite index)
write_byte(starting frame)
write_byte(frame rate in 0.1's)
write_byte(life in 0.1's)
write_byte(line width in 0.1's)
write_byte(noise amplitude in 0.01's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(brightness)
write_byte(scroll speed in 0.1's)

#define TE_BEAMDISK                 20

Cylinder that expands to max radius over lifetime

TE_BEAMCYLINDER

Note

write_byte(TE_BEAMCYLINDER)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(axis.x)
write_coord(axis.y)
write_coord(axis.z)
write_short(sprite index)
write_byte(starting frame)
write_byte(frame rate in 0.1's)
write_byte(life in 0.1's)
write_byte(line width in 0.1's)
write_byte(noise amplitude in 0.01's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(brightness)
write_byte(scroll speed in 0.1's)

#define TE_BEAMCYLINDER             21

Create a line of decaying beam segments until entity stops moving

TE_BEAMFOLLOW

Note

write_byte(TE_BEAMFOLLOW)
write_short(entity:attachment to follow)
write_short(sprite index)
write_byte(life in 0.1's)
write_byte(line width in 0.1's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(brightness)

#define TE_BEAMFOLLOW               22

TE_GLOWSPRITE

TE_GLOWSPRITE

Note

write_byte(TE_GLOWSPRITE)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_short(model index)
write_byte(scale / 10)
write_byte(size)
write_byte(brightness)

#define TE_GLOWSPRITE               23

Connect a beam ring to two entities

TE_BEAMRING

Note

write_byte(TE_BEAMRING)
write_short(start entity)
write_short(end entity)
write_short(sprite index)
write_byte(starting frame)
write_byte(frame rate in 0.1's)
write_byte(life in 0.1's)
write_byte(line width in 0.1's)
write_byte(noise amplitude in 0.01's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(brightness)
write_byte(scroll speed in 0.1's)

#define TE_BEAMRING                 24

Oriented shower of tracers

TE_STREAK_SPLASH

Note

write_byte(TE_STREAK_SPLASH)
write_coord(startposition.x)
write_coord(startposition.y)
write_coord(startposition.z)
write_coord(vector.x)
write_coord(vector.y)
write_coord(vector.z)
write_byte(color)
write_short(count)
write_short(base speed)
write_short(random velocity)

#define TE_STREAK_SPLASH            25

Dynamic light, effect world, minor entity effect

TE_DLIGHT

Note

write_byte(TE_DLIGHT)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_byte(radius in 10's)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(life in 10's)
write_byte(decay rate in 10's)

#define TE_DLIGHT                   27

Point entity light, no world effect

TE_ELIGHT

Note

write_byte(TE_ELIGHT)
write_short(entity:attachment to follow)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(radius)
write_byte(red)
write_byte(green)
write_byte(blue)
write_byte(life in 0.1's)
write_coord(decay rate)

#define TE_ELIGHT                   28

TE_TEXTMESSAGE

TE_TEXTMESSAGE

Note

write_byte(TE_TEXTMESSAGE)
write_byte(channel)
write_short(x) -1 = center)
write_short(y) -1 = center)
write_byte(effect) 0 = fade in/fade out, 1 is flickery credits, 2 is write out (training room)
write_byte(red) - text color
write_byte(green)
write_byte(blue)
write_byte(alpha)
write_byte(red) - effect color
write_byte(green)
write_byte(blue)
write_byte(alpha)
write_short(fadein time)
write_short(fadeout time)
write_short(hold time)
[optional] write_short(fxtime) time the highlight lags behing the leading text in effect 2
write_string(text message) 512 chars max string size

#define TE_TEXTMESSAGE              29

TE_LINE

TE_LINE

Note

write_byte(TE_LINE)
write_coord(startposition.x)
write_coord(startposition.y)
write_coord(startposition.z)
write_coord(endposition.x)
write_coord(endposition.y)
write_coord(endposition.z)
write_short(life in 0.1 s)
write_byte(red)
write_byte(green)
write_byte(blue)

#define TE_LINE                     30

TE_BOX

TE_BOX

Note

write_byte(TE_BOX)
write_coord(boxmins.x)
write_coord(boxmins.y)
write_coord(boxmins.z)
write_coord(boxmaxs.x)
write_coord(boxmaxs.y)
write_coord(boxmaxs.z)
write_short(life in 0.1 s)
write_byte(red)
write_byte(green)
write_byte(blue)

#define TE_BOX                      31

Kill all beams attached to entity

TE_KILLBEAM

Note

write_byte(TE_KILLBEAM)
write_short(entity)

#define TE_KILLBEAM                 99

TE_LARGEFUNNEL

TE_LARGEFUNNEL

Note

write_byte(TE_LARGEFUNNEL)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_short(sprite index)
write_short(flags)

#define TE_LARGEFUNNEL              100

Particle spray

TE_BLOODSTREAM

Note

write_byte(TE_BLOODSTREAM)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(vector.x)
write_coord(vector.y)
write_coord(vector.z)
write_byte(color)
write_byte(speed)

#define	TE_BLOODSTREAM              101

Line of particles every 5 units, dies in 30 seconds

TE_SHOWLINE

Note

write_byte(TE_SHOWLINE)
write_coord(startposition.x)
write_coord(startposition.y)
write_coord(startposition.z)
write_coord(endposition.x)
write_coord(endposition.y)
write_coord(endposition.z)

#define	TE_SHOWLINE                 102

Particle spray

TE_BLOOD

Note

write_byte(TE_BLOOD)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(vector.x)
write_coord(vector.y)
write_coord(vector.z)
write_byte(color)
write_byte(speed)

#define TE_BLOOD                    103

Decal applied to a brush entity (not the world)

TE_DECAL

Note

write_byte(TE_DECAL)
write_coord(position.x) decal position (center of texture in world)
write_coord(position.y)
write_coord(position.z)
write_byte(texture index of precached decal texture name)
write_short(entity index)

#define TE_DECAL                    104

Create alpha sprites inside of entity, float upwards

TE_FIZZ

Note

write_byte(TE_FIZZ)
write_short(entity)
write_short(sprite index)
write_byte(density)

#define TE_FIZZ                     105

Create a moving model that bounces and makes a sound when it hits

TE_MODEL

Note

write_byte(TE_MODEL)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(velocity.x)
write_coord(velocity.y)
write_coord(velocity.z)
write_angle(initial yaw)
write_short(model index)
write_byte(bounce sound type)
write_byte(life in 0.1's)

#define TE_MODEL                    106

Spherical shower of models, picks from set

TE_EXPLODEMODEL

Note

write_byte(TE_EXPLODEMODEL)
write_coord(origin.x)
write_coord(origin.y)
write_coord(origin.z)
write_coord(velocity.x)
write_coord(velocity.y)
write_coord(velocity.z)
write_short(model index)
write_short(count)
write_byte(life in 0.1's)

#define TE_EXPLODEMODEL             107

Box of models or sprites

TE_BREAKMODEL

Note

write_byte(TE_BREAKMODEL)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(size.x)
write_coord(size.y)
write_coord(size.z)
write_coord(velocity.x)
write_coord(velocity.y)
write_coord(velocity.z)
write_byte(random velocity in 10's)
write_short(sprite or model index)
write_byte(count)
write_byte(life in 0.1 secs)
write_byte(flags)

#define TE_BREAKMODEL               108

Decal and ricochet sound

TE_GUNSHOTDECAL

Note

write_byte(TE_GUNSHOTDECAL)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_short(entity index???)
write_byte(decal???)

#define TE_GUNSHOTDECAL             109

Spray of alpha sprites

TE_SPRITE_SPRAY

Note

write_byte(TE_SPRITE_SPRAY)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(velocity.x)
write_coord(velocity.y)
write_coord(velocity.z)
write_short(sprite index)
write_byte(count)
write_byte(speed)
write_byte(noise)

#define TE_SPRITE_SPRAY             110

Quick spark sprite, client ricochet sound.

TE_ARMOR_RICOCHET

Note

write_byte(TE_ARMOR_RICOCHET)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_byte(scale in 0.1's)

#define TE_ARMOR_RICOCHET           111

TE_PLAYERDECAL

TE_PLAYERDECAL

Note

write_byte(TE_PLAYERDECAL)
write_byte(playerindex)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_short(entity???)
write_byte(decal number)
[optional] write_short(model index)

#define TE_PLAYERDECAL              112

Create alpha sprites inside of box, float upwards

TE_BUBBLES

Note

write_byte(TE_BUBBLES)
write_coord(position.x) (min start position)
write_coord(position.y)
write_coord(position.z)
write_coord(position.x) (max start position)
write_coord(position.y)
write_coord(position.z)
write_coord(float height)
write_short(model index)
write_byte(count)
write_coord(speed)

#define TE_BUBBLES                  113

Create alpha sprites along a line, float upwards

TE_BUBBLETRAIL

Note

write_byte(TE_BUBBLETRAIL)
write_coord(position.x) (min start position)
write_coord(position.y) (min start position)
write_coord(position.z) (min start position)
write_coord(position.x) (max start position)
write_coord(position.y) (max start position)
write_coord(position.z) (max start position)
write_coord(float height)
write_short(model index)
write_byte(count)
write_coord(speed)

#define TE_BUBBLETRAIL              114

Spray of opaque sprite1's that fall, single sprite2 for 1..2 secs (this is a high-priority tent)

TE_BLOODSPRITE

Note

write_byte(TE_BLOODSPRITE)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_short(sprite1 index)
write_short(sprite2 index)
write_byte(color)
write_byte(scale)

#define TE_BLOODSPRITE              115

Decal applied to the world brush

TE_WORLDDECAL

Note

write_byte(TE_WORLDDECAL)
write_coord(position.x) decal position (center of texture in world)
write_coord(position.y)
write_coord(position.z)
write_byte(texture index of precached decal texture name)

#define TE_WORLDDECAL               116

Decal (with texture index > 256) applied to world brush

TE_WORLDDECALHIGH

Note

write_byte(TE_WORLDDECALHIGH)
write_coord(position.x) decal position (center of texture in world)
write_coord(position.y)
write_coord(position.z)
write_byte(texture index of precached decal texture name - 256)

#define TE_WORLDDECALHIGH           117

Same as TE_DECAL, but the texture index was greater than 256

TE_DECALHIGH

Note

write_byte(TE_DECALHIGH)
write_coord(position.x) decal position (center of texture in world)
write_coord(position.y)
write_coord(position.z)
write_byte(texture index of precached decal texture name - 256)
write_short(entity index)

#define TE_DECALHIGH                118

Makes a projectile (like a nail) (this is a high-priority tent)

TE_PROJECTILE

Note

write_byte(TE_PROJECTILE)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(velocity.x)
write_coord(velocity.y)
write_coord(velocity.z)
write_short(modelindex)
write_byte(life)
write_byte(owner) projectile won't collide with owner (if owner == 0, projectile will hit any client).

#define TE_PROJECTILE               119

Throws a shower of sprites or models

TE_SPRAY

Note

write_byte(TE_SPRAY)
write_coord(position.x)
write_coord(position.y)
write_coord(position.z)
write_coord(direction.x)
write_coord(direction.y)
write_coord(direction.z)
write_short(modelindex)
write_byte(count)
write_byte(speed)
write_byte(noise)
write_byte(rendermode)

#define TE_SPRAY                    120

Sprites emit from a player's bounding box (ONLY use for players!)

TE_PLAYERSPRITES

Note

write_byte(TE_PLAYERSPRITES)
write_short(playernum)
write_short(sprite modelindex)
write_byte(count)
write_byte(variance) (0 = no variance in size) (10 = 10% variance in size)

#define TE_PLAYERSPRITES            121

Very similar to lavasplash

TE_PARTICLEBURST

Note

write_byte(TE_PARTICLEBURST)
write_coord(origin)
write_short(radius)
write_byte(particle color)
write_byte(duration * 10) (will be randomized a bit)

#define TE_PARTICLEBURST            122

Makes a field of fire

TE_FIREFIELD

Note

write_byte(TE_FIREFIELD)
write_coord(origin)
write_short(radius) (fire is made in a square around origin. -radius, -radius to radius, radius)
write_short(modelindex)
write_byte(count)
write_byte(flags)
write_byte(duration (in seconds) * 10) (will be randomized a bit)

#define TE_FIREFIELD                123

Flags for the TE_FIREFIELD effect, controlling its performance and aesthetic features

TEFIRE_FLAG_ALLFLOAT
#define TEFIRE_FLAG_ALLFLOAT        1        // All sprites will drift upwards as they animate
#define TEFIRE_FLAG_SOMEFLOAT       2        // Some of the sprites will drift upwards. (50% chance)
#define TEFIRE_FLAG_LOOP            4        // If set, sprite plays at 15 fps, otherwise plays at whatever rate stretches the animation over the sprite's duration.
#define TEFIRE_FLAG_ALPHA           8        // If set, sprite is rendered alpha blended at 50% else, opaque
#define TEFIRE_FLAG_PLANAR          16       // If set, all fire sprites have same initial Z instead of randomly filling a cube.

Attaches a TENT to a player (this is a high-priority tent)

TE_PLAYERATTACHMENT

Note

write_byte(TE_PLAYERATTACHMENT)
write_byte(entity index of player)
write_coord(vertical offset) (attachment origin.z = player origin.z + vertical offset)
write_short(model index)
write_short(life * 10 )

#define TE_PLAYERATTACHMENT         124

Will expire all TENTS attached to a player.

TE_KILLPLAYERATTACHMENTS

Note

write_byte(TE_KILLPLAYERATTACHMENTS)
write_byte(entity index of player)

#define TE_KILLPLAYERATTACHMENTS    125

Much more compact shotgun message

TE_MULTIGUNSHOT

Note

This message is used to make a client approximate a 'spray' of gunfire.
Any weapon that fires more than one bullet per frame and fires in a bit
of a spread is a good candidate for MULTIGUNSHOT use. (shotguns)

Note

This effect makes the client do traces for each bullet, these client
traces ignore entities that have studio models.Traces are 4096 long.

Note

write_byte(TE_MULTIGUNSHOT)
write_coord(origin.x)
write_coord(origin.y)
write_coord(origin.z)
write_coord(direction.x)
write_coord(direction.y)
write_coord(direction.z)
write_coord(x noise * 100)
write_coord(y noise * 100)
write_byte(count)
write_byte(bullethole decal texture index)

#define TE_MULTIGUNSHOT             126

Larger message than the standard tracer, but allows some customization.

TE_USERTRACER

Note

write_byte(TE_USERTRACER)
write_coord(origin.x)
write_coord(origin.y)
write_coord(origin.z)
write_coord(velocity.x)
write_coord(velocity.y)
write_coord(velocity.z)
write_byte(life * 10)
write_byte(color) this is an index into an array of color vectors in the engine. (0 - )
write_byte(length * 10)

#define TE_USERTRACER               127

From hltv.h from the HLSDK, these are used in conjunction with SVC_DIRECTOR sub commands of svc_director

DRC_CMD_NONE
#define DRC_CMD_NONE				0	// NULL director command
#define DRC_CMD_START				1	// start director mode
#define DRC_CMD_EVENT				2	// informs about director command
#define DRC_CMD_MODE				3	// switches camera modes
#define DRC_CMD_CAMERA				4	// sets camera registers
#define DRC_CMD_TIMESCALE			5	// sets time scale
#define DRC_CMD_MESSAGE				6	// send HUD centerprint
#define DRC_CMD_SOUND				7	// plays a particular sound
#define DRC_CMD_STATUS				8	// status info about broadcast
#define DRC_CMD_BANNER				9	// banner file name for HLTV gui
#define	DRC_CMD_FADE				10	// send screen fade command
#define DRC_CMD_SHAKE				11	// send screen shake command
#define DRC_CMD_STUFFTEXT			12	// like the normal svc_stufftext but as director command

#define DRC_CMD_LAST				12

HLTV_EVENT event flags

DRC_FLAG_PRIO_MASK
#define DRC_FLAG_PRIO_MASK		0x0F	// priorities between 0 and 15 (15 most important)
#define DRC_FLAG_SIDE			(1<<4)	//
#define DRC_FLAG_DRAMATIC		(1<<5)	// is a dramatic scene
#define DRC_FLAG_SLOWMOTION		(1<<6)  // would look good in SloMo
#define DRC_FLAG_FACEPLAYER		(1<<7)  // player is doning something (reload/defuse bomb etc)
#define DRC_FLAG_INTRO			(1<<8)	// is a introduction scene
#define DRC_FLAG_FINAL			(1<<9)	// is a final scene
#define DRC_FLAG_NO_RANDOM		(1<<10)	// don't randomize event data

#define MAX_DIRECTOR_CMD_PARAMETERS		4
#define MAX_DIRECTOR_CMD_STRING			128