Introduction
In AMX Mod X you are able to hook in-game messages/events with register_message / register_event. Here are the list of messages/events and their arguments which can be read with get_msg_arg_* / read_data.
- See the Advanced Scripting article for more on events and messages.
- See messages.inc and message_const.inc from amxmodx/scriptong/include folder or Messaging functions and Message constants for full messages control including blocking, argument alteration and much more.
- Type meta game in the server console to list messages for the current mod.
- Damaged Soul's Message Logging plugin for AMX Mod X can be used to log messages and their parameters on a live server.
ADStop
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
Note: No Information is available for this message.
Note: This message has no arguments.
AllowSpec
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Half-Life: Opposing Force • Team Fortress Classic |
This message changes whether or not "SPECTATE" appears on the change team menu. It is sent whenever the allow_spectators CVar is changed, with its new value sent as the byte.
Note: This changes how the change team menu appears, but spectating functionality is based on the actual CVar value.
Name:
|
AllowSpec
|
Structure:
|
|
AmmoPickup
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message temporarily draws HUD numerical ammo amount and corresponding ammo HUD icon in the middle of the right side of the screen.
Note: Draw time depends on the hud_drawhistory_time client CVar value.
Note: See CS Weapons Information for more information.
Name:
|
AmmoPickup
|
Structure:
|
|
AmmoX
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message updates the green bar indicator in the HUD weapons list. It also updates HUD backpack ammo number in the lower right corner of the screen if the given ammo type is compatible with the current weapon.
Note: See CS Weapons Information for more information.
ArmorType
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message draws/removes the helmet HUD icon. If flag is set to 1, the helmet HUD icon will be drawn (located right on the armor icon).
Name:
|
ArmorType
|
Structure:
|
|
BarTime
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message draws a HUD progress bar which is filled from 0% to 100% for the time Duration seconds. Once the bar is fully filled it will be removed from the screen automatically.
Note: Set Duration to 0 to hide the bar.
BarTime2
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
The message is the same as BarTime, but StartPercent specifies how much of the bar is (already) filled.
Note: Display time can be calculated with this formula: (1 - (StartPercent / 100)) / Duration
Name:
|
BarTime2
|
Structure:
|
short
|
Duration
|
short
|
StartPercent
|
|
Battery
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message updates the icon and numerical armor value on the HUD.
BlinkAcct
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message makes a player's money display flash rapidly, a total of BlinkAmt times.
Name:
|
BlinkAcct
|
Structure:
|
|
BombDrop
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message is sent when the bomb is dropped or planted by a player.
The first three arguments are the origin of the dropped bomb. The last argument is set to 0 if the bomb was dropped due to voluntary dropping or death/disconnect. It is set to 1 if the bomb was planted, which will trigger the round timer to hide. It also will show the dropped bomb on the Terrorist team's radar in the location specified by the first three arguments.
Name:
|
BombDrop
|
Structure:
|
coord
|
CoordX
|
coord
|
CoordY
|
coord
|
CoordZ
|
byte
|
Flag
|
|
BombPickup
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message just tells the clients that the bomb has been picked up. It will cause the dropped bomb to disappear from the Terrorist team's radar.
Note: This message has no arguments.
Name:
|
BombPickup
|
Structure:
|
|
BotProgress
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message is sent when CZ's bots are learning a new map. It displays a progress bar in the middle of the screen, with some header text. The bar doesn't move, and you can't do anything while the bar is displayed. This is a different style of progress bar than from the BarTime event. This really doesn't display well in CS.
Note: Flag can be 0 (update bar), 1 (create new bar), or 2 (remove bar). When using flag 0, send all arguments. When using flag 1, send only Flag and Header. When using flag 2, send only Flag.
Name:
|
BotProgress
|
Structure:
|
byte
|
Flag
|
byte
|
Progress
|
string
|
Header
|
|
BotVoice
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message displays (or hides) the voice icon above a user's head and the talking icon on the right side of the screen. This is called by CZ for bots; it's not called for regular players, although you can specify a regular player (non-bot) for the PlayerIndex. Status is 1 for talking, or 0 for not talking.
Name:
|
BotVoice
|
Structure:
|
byte
|
Status
|
byte
|
PlayerIndex
|
|
Brass
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message creates a brass shell. Used, for example, by the AWP, after firing.
Name:
|
Brass
|
Structure:
|
byte
|
MessageID
|
coord
|
StartX
|
coord
|
StartY
|
coord
|
StartZ
|
coord
|
VelocityX?
|
coord
|
VelocityY?
|
coord
|
VelocityZ?
|
coord
|
UnknownX
|
coord
|
UnknownY
|
coord
|
UnknownZ
|
angle
|
Rotation
|
short
|
ModelIndex
|
byte
|
BounceSoundType
|
byte
|
Life
|
byte
|
PlayerID
|
|
BuyClose
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message forces the buy menu to close. This is not called when the player manually closes the buy menu; it's only called when the game forces them to do so (e.g. walking outside of the buy zone, getting killed, etcetera).
Note: This message has no arguments.
Name:
|
BuyClose
|
Structure:
|
|
CapMsg
Supported Mods: |
Day of Defeat |
This displays a message like "Player captured the Allied plaza for the Axis". An example PointName is POINT_CAEN_AXISPLAZA.
Name:
|
CapMsg
|
Structure:
|
byte
|
PlayerID
|
string
|
PointName
|
byte
|
TeamID
|
|
ClCorpse
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat |
This message spawns a player's corpse. ModelName is the player's model name, for example: "leet". Delay is a delay before animation playback, which can be a negative value.
Note: Coord and Delay is multiplied by 128.
Note: In CS, argument #10 is always equal to 0.
Name:
|
ClCorpse
|
Structure:
|
string
|
ModelName
|
long
|
CoordX
|
long
|
CoordY
|
long
|
CoordZ
|
coord
|
Angle0
|
coord
|
Angle1
|
coord
|
Angle2
|
long
|
Delay
|
byte
|
Sequence
|
byte
|
ClassID?
|
byte
|
TeamID
|
byte
|
PlayerID
|
|
Crosshair
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message draws/removes a crosshair. If Flag is set to 1 the crosshair will be drawn.
Note: This crosshair looks not like the regular one, but like the one that is drawn in spectator mode.
Name:
|
Crosshair
|
Structure:
|
|
CurWeapon
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message updates the numerical magazine ammo count and the corresponding ammo type icon on the HUD.
Note: See CS Weapons Information for more information on Counter-Strike weapons.
Name:
|
CurWeapon
|
Structure:
|
byte
|
IsActive
|
byte
|
WeaponID
|
byte
|
ClipAmmo
|
|
CZCareer
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message supplies certain updates to the player regarding Condition Zero single-player missions.
Note: See the CZCareer page for more information.
Note: Using an invalid type has no repercussions whatsoever. Therefore, you can use this to make your own custom communications (you can send any number of arguments of any type after the first string).
Note: The Type argument is case-sensitive.
Note: This event does nothing in CS and CZ multiplayer.
Name:
|
CZCareer
|
Structure:
|
|
CZCareerHUD
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message displays certain HUD elements regarding Condition Zero single-player missions.
Note: See the CZCareerHUD page for more information.
Note: Using an invalid type has no repercussions whatsoever. Therefore, you can use this to make your own custom communications (you can send any number of arguments of any type after the first string).
Note: The Type argument is case-sensitive.
Note: This event has some limited functionality in CS and CZ multi-player (albeit better in CZ).
Name:
|
CZCareerHUD
|
Structure:
|
|
Damage
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message is sent when a player takes damage, to display the red locational indicators. The last three arguments are the origin of the damage inflicter or victim origin if inflicter isn't found. DamageType is a bitwise value which usually consists of a single bit.
Note: To capture this message, you should use "b" as the third parameter in the register_event() function.
Name:
|
Damage
|
Structure:
|
byte
|
DamageSave
|
byte
|
DamageTake
|
long
|
DamageType
|
coord
|
CoordX
|
coord
|
CoordY
|
coord
|
CoordZ
|
|
DeathMsg
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This event is fired to all players (MSG_ALL or MSG_BROADCAST) to notify them of a death. This generates the HUD message the client sees in the upper right corner of their screen.
It also prints the console text message "KillerName killed VictimName with TruncatedWeaponName" or "*** KillerName killed VictimName with a headshot from TruncatedWeaponName ***"
Note: This message has different parameters depending upon the mod.
Note: KillerID may not always be a Player ID. It would be 0 if a player died from fall/acid/radiation/fire/etc damage/lack of oxygen or from touch to a "trigger_hurt" entity, in which cases TruncatedWeaponName will be "worldspawn" and "trigger_hurt" respectively.
Note: For vehicle kills, TruncatedWeaponName could be "vehicle", "tank", etc.
Name:
|
DeathMsg
|
Structure:
|
byte
|
KillerID
|
byte
|
VictimID
|
string
|
TruncatedWeaponName
|
|
Counter-Strike
Note: TruncatedWeaponName doesn't contain a "weapon_" prefix. See CS Weapons Information for more information.
Note: For a grenade kill, TruncatedWeaponName isn't "hegrenade", but rather "grenade", which is the actual classname of a thrown grenade.
Name:
|
DeathMsg
|
Structure:
|
byte
|
KillerID
|
byte
|
VictimID
|
byte
|
IsHeadshot
|
string
|
TruncatedWeaponName
|
|
Day of Defeat
Name:
|
DeathMsg
|
Structure:
|
byte
|
KillerID
|
byte
|
VictimID
|
byte
|
WeaponID
|
|
FlashBat
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message updates the flashlight battery charge on the HUD.
Name:
|
FlashBat
|
Structure:
|
|
Flashlight
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message updates the flashlight state and battery charge on the HUD. If Flag is set to 1 the flashlight HUD icon will be shown as active.
Name:
|
Flashlight
|
Structure:
|
byte
|
Flag
|
byte
|
ChargePercent
|
|
Fog
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Natural Selection • Sven Co-op |
Note: mp_Fog 1 for fog in Counter-Strike
Name:
|
Fog
|
Structure:
|
byte
|
FogValue
|
byte
|
FogValue
|
byte
|
Unknown
|
|
ForceCam
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message is sent whenever mp_forcecam or mp_forcechasecam are changed, with their new values passed. There is presumably a third CVar that this tracks, but which one is currently unknown. Note that this message doesn't actually change any of the spectating rules for the client.
Note: Even if mp_forcechasecam is set to 2, it is sent by this message as 1.
Name:
|
ForceCam
|
Structure:
|
byte
|
ForcecamValue
|
byte
|
ForcechasecamValue
|
byte
|
Unknown
|
|
Frags
Supported Mods: |
Day of Defeat |
This message sets a player's kills, as seen on the scoreboard.
Name:
|
Frags
|
Structure:
|
byte
|
PlayerID
|
short
|
Kills
|
|
GameMode
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message informs the client of the current game mode.
Name:
|
GameMode
|
Structure:
|
|
GameTitle
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
Note: No Information is available for this message.
Name:
|
GameTitle
|
Structure:
|
|
Geiger
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message signals the client to notify the player of the radiation level through special sound signals. Distance is the distance to the hazard area.
Health
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message updates the numerical health value on the HUD.
HideWeapon
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message hides the specified HUD elements.
Flags:
1 (1<<0) - crosshair, ammo, weapons list
2 (1<<1) - flashlight, +
4 (1<<2) - ALL
8 (1<<3) - radar, health, armor, +
16 (1<<4) - timer, +
32 (1<<5) - money, +
64 (1<<6) - crosshair
128 (1<<7) - +
Symbol + mean that an additional crosshair will be drawn. That crosshair looks exactly like the one from Crosshair message.
Name:
|
HideWeapon
|
Structure:
|
|
HLTV
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat |
This message is sent for HLTV and is unique for each round-start.
On new round is fired 2 messages:
// reset all players health for HLTV
MESSAGE_BEGIN( MSG_SPEC, gmsgHLTV );
WRITE_BYTE( 0 ); // 0 = all players
WRITE_BYTE( 100 | 128 );
MESSAGE_END();
// reset all players FOV for HLTV
MESSAGE_BEGIN( MSG_SPEC, gmsgHLTV );
WRITE_BYTE( 0 ); // all players
WRITE_BYTE( 0 );
MESSAGE_END();
HostageK
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message temporarily draws a blinking red dot on the CT players' radar when a hostage is killed.
Name:
|
HostageK
|
Structure:
|
|
HostagePos
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message draws/updates the blue mark on the CT players' radar which indicates the corresponding hostage's position.
Note: It is called with Flag set to 1 on player HUD full update.
Name:
|
HostagePos
|
Structure:
|
byte
|
Flag
|
byte
|
HostageID
|
coord
|
CoordX
|
coord
|
CoordY
|
coord
|
CoordZ
|
|
HudText
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message prints HUD text.
Note: Prints message with specified style in titles.txt with small signs (like in HL)
Name:
|
HudText
|
Structure:
|
string
|
TextCode
|
byte
|
InitHUDstyle
|
|
HudTextArgs
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message prints HUD text.
Note: An example of TextCode could be "#Hint_you_have_the_bomb".
Note: Prints message with specified style in titles.txt with Big signs (CS Default)
Note: If you have problems specifying the last two arguments, use 1 and 0 respectively.
Name:
|
HudTextArgs
|
Structure:
|
string
|
TextCode
|
byte
|
InitHUDstyle
|
byte
|
NumberOfSubMessages
|
string
|
SubMsg
|
string
|
SubMsg
|
string
|
...
|
|
HudTextPro
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message prints HUD text.
Note: Prints message with specified style in titles.txt with Big signs (CS Default)
Name:
|
HudText
|
Structure:
|
string
|
TextCode
|
byte
|
InitHUDstyle
|
|
InitHUD
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message initializes the HUD.
Note: This message has no arguments.
InitObj
Supported Mods: |
Day of Defeat |
This message updates the flags (axis/allies/objective flags, not programming flags) displayed to the client when a point is captured.
Name:
|
InitObj
|
Structure:
|
byte
|
TotalObjectives
|
Objective
|
...
|
...
|
|
|
TotalObjectives represents the number of Objective sub-messages that are present. Each Objective sub-message is in the following format:
Name:
|
Objective
|
Structure:
|
short
|
EntityID?
|
byte
|
ObjectiveID?
|
byte
|
TeamID
|
byte
|
Unknown
|
byte
|
Unknown
|
byte
|
Unknown
|
byte
|
Unknown
|
coord
|
CoordX?
|
coord
|
CoordY?
|
|
If a map has 5 objectives, this message will have 46 arguments (1 + 5 * 9).
ItemPickup
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message temporarily draws a corresponding item HUD icon in the middle of the right side of the screen.
Note: Draw time is dependent on the hud_drawhistory_time client CVar value.
Name:
|
ItemPickup
|
Structure:
|
|
ItemStatus
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message notifies the client about carried items.
Example of some item bits:
1 (1<<0) - nightvision goggles
2 (1<<1) - defusal kit
Name:
|
ItemStatus
|
Structure:
|
|
Location
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message is sent when a player changes zones on a map.
Name:
|
Location
|
Structure:
|
byte
|
PlayerId
|
string
|
LocationName
|
|
Money
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message updates the amount of money on the HUD. If the Flag is 1, the amount of money added will also be displayed.
MOTD
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message displays the MOTD window.
Note: Max. Text length is 60. A larger MOTD is sent in multiple messages. Flag will be set to 1 for the final segment.
NVGToggle
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message toggles night vision mode. For Flag: 1 is on, 0 is off.
Name:
|
NVGToggle
|
Structure:
|
|
ObjScore
Supported Mods: |
Day of Defeat |
This message sets a player's score, as seen on the scoreboard.
Name:
|
ObjScore
|
Structure:
|
byte
|
PlayerID
|
short
|
Score
|
|
PClass
Supported Mods: |
Day of Defeat |
Note: No Information is available for this message.
Name:
|
PClass
|
Structure:
|
byte
|
PlayerID?
|
byte
|
Unknown
|
|
PStatus
Supported Mods: |
Day of Defeat |
Note: No Information is available for this message.
Name:
|
PStatus
|
Structure:
|
byte
|
PlayerID?
|
byte
|
Unknown
|
|
Radar
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message draws/updates the dot on the HUD radar which indicates the given player position.
Note: This works for teammates only.
Name:
|
Radar
|
Structure:
|
byte
|
PlayerID
|
coord
|
CoordX
|
coord
|
CoordY
|
coord
|
CoordZ
|
|
ReceiveW
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message tells the client which visual weather effect to be executed client side, if client's cl_weather CVar is above 0.
Note: Main part of CBasePlayer::SendWeatherInfo() function that is sent in CBasePlayer :: UpdateClientData() when player offset m_fInitHUD is 1
(right after putinserver or after fullupdate command)
Mode: 1 is for rain effect, 2 is for snow effect
Though mode 0 is never sent by the game itself, it removes the weather effect.
Alternatively send mode 1 and mode 2 with judicious delays (time for effect to disappear) to make both rain and snow effect
Name:
|
ReceiveW
|
Structure:
|
|
ReloadSound
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message plays generic reload sounds.
Note: Setting IsNotShotgun to 1 will play weapons/generic_reload.wav
Note: Setting IsNotShotgun to 0 will play weapons/generic_shot_reload.wav
Name:
|
ReloadSound
|
Structure:
|
byte
|
Volume * 255
|
byte
|
IsNotShotgun
|
|
ReqState
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
Note: No Information is available for this message.
Note: This message has no arguments.
Name:
|
ReqState
|
Structure:
|
|
ResetHUD
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message resets the HUD.
Note: This message has no arguments.
Name:
|
ResetHUD
|
Structure:
|
|
ResetSens
Supported Mods: |
Day of Defeat |
This message resets the client's sensitivity?
Note: This message has no arguments.
Name:
|
ResetSens
|
Structure:
|
|
RoundTime
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message updates the round timer on the HUD. Time is in seconds.
Name:
|
RoundTime
|
Structure:
|
|
SayText
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message prints say HUD text. The second argument can be a predefined string or a custom one. In the latter case, the last two arguments aren't required.
Examples of predefined Counter-Strike string values include #Cstrike_Chat_AllDead and #Cstrike_Name_Change.
Note: For #Cstrike_Name_Change String2 is an old name and String3 is a new name.
Name:
|
SayText
|
Structure:
|
byte
|
SenderID
|
string
|
String1
|
string
|
String2
|
string
|
String3
|
|
Scenario
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
If Active is 0, this display will be hidden. If Active is 1, this displays Sprite (valid names listed in sprites/hud.txt) to the right of the round timer with an alpha value of Alpha (100-255). If FlashRate is nonzero, then the sprite will flash from the given alpha to an alpha of 100, at a rate of FlashRate (measured in ???). This is used by CZ to display how many hostages remain unrescued, and also to display the ticking bomb when it is planted.
Scenario message in CS, using the following parameters: 1, d_mp5navy, 150
Note: If Active is 0, don't send any other arguments afterwards. Also, you don't need to send either short if FlashRate is just going to be 0.
Note: This works in both CS and CZ!
Note: In CZ (and possibly CS), if someone respawns after the bomb has been planted, their Scenario event will not work at all until the next round.
Name:
|
Scenario
|
Structure:
|
byte
|
Active
|
string
|
Sprite
|
byte
|
Alpha
|
short
|
FlashRate
|
short
|
Unknown
|
|
Scope
Supported Mods: |
Day of Defeat |
Note: No Information is available for this message.
ScoreAttrib
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message updates the scoreboard attribute for the specified player. For the 2nd argument, 0 is nothing, (1<<0) i.e. 1 is dead, (1<<1) i.e. 2 is bomb, (1<<2) i.e. 4 is VIP.
Note: Flags is a bitwise value so if VIP player is dying with the bomb the Flags will be 7 i.e. bit sum of all flags.
Name:
|
ScoreAttrib
|
Structure:
|
|
ScoreInfo
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message updates the scoreboard with the given player's Score and Deaths. In Counter-Strike, the score is based on the number of frags and the bomb detonating or being defused.
Note: In CS the 4th argument (ClassID) is always equal to 0.
Name:
|
ScoreInfo
|
Structure:
|
byte
|
PlayerID
|
short
|
Score
|
short
|
Deaths
|
short
|
ClassID
|
short
|
TeamID
|
|
ScoreShort
Supported Mods: |
Day of Defeat |
This message updates a player's Score, Kills, and Deaths as seen on the scoreboard. This message is only sent for the victim.
Note: The fifth argument was always 1 in my testing.
Name:
|
ScoreShort
|
Structure:
|
byte
|
PlayerID
|
short
|
Score
|
short
|
Kills
|
short
|
Deaths
|
short
|
Unknown
|
|
ScreenFade
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message fades the screen.
Note: Duration and HoldTime is in special units. 1 second is equal to (1<<12) i.e. 4096 units.
Flags (from HLSDK):
FFADE_IN 0x0000 // Just here so we don't pass 0 into the function
FFADE_OUT 0x0001 // Fade out (not in)
FFADE_MODULATE 0x0002 // Modulate (don't blend)
FFADE_STAYOUT 0x0004 // ignores the duration, stays faded out until new ScreenFade message received
Name:
|
ScreenFade
|
Structure:
|
short
|
Duration
|
short
|
HoldTime
|
short
|
Flags
|
byte
|
ColorR
|
byte
|
ColorG
|
byte
|
ColorB
|
byte
|
Alpha
|
|
ScreenShake
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message shakes the screen.
Note: All arguments is in special units. 1 second is equal to (1<<12) i.e. 4096 units.
Name:
|
ScreenShake
|
Structure:
|
short
|
Amplitude
|
short
|
Duration
|
short
|
Frequency
|
|
SendAudio
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message plays the specified audio. An example of AudioCode could be "%!MRAD_rounddraw".
Name:
|
SendAudio
|
Structure:
|
byte
|
SenderID
|
string
|
AudioCode
|
short
|
Pitch
|
|
ServerName
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message sends the server name to a client.
Name:
|
ServerName
|
Structure:
|
|
SetFOV
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message sets the specified field of view.
ShadowIdx
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
Note: No Information is available for this message.
Name:
|
ShadowIdx
|
Structure:
|
|
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message displays a "menu" to a player (text on the left side of the screen). It acts like AMXX's show_menu (in fact, this is how AMXX shows a menu).
Note: Multipart should be 1 if your menu takes up multiple messages (i.e.: string is too big to fit into one). On the final message, Multipart should be 0.
Name:
|
ShowMenu
|
Structure:
|
short
|
KeysBitSum
|
char
|
Time
|
byte
|
Multipart
|
string
|
Text
|
|
ShowTimer
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message forces the round timer to display.
Note: This message has no arguments.
Name:
|
ShowTimer
|
Structure:
|
|
SpecHealth
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Team Fortress Classic |
Note: No Information is available for this message.
Name:
|
SpecHealth
|
Structure:
|
|
SpecHealth2
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message updates a spectator's screen with the name and health of the given player.
Name:
|
SpecHealth2
|
Structure:
|
byte
|
Health
|
byte
|
PlayerID
|
|
Spectator
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Half-Life: Opposing Force • Ricochet • Sven Co-op • Team Fortress Classic |
This message is sent when a player becomes an observer/spectator.
Note: On join to Spectators this usually is fired twice in a row.
Name:
|
Spectator
|
Structure:
|
byte
|
ClientID
|
byte
|
Unknown
|
|
StatusIcon
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Half-Life: Opposing Force • Team Fortress Classic |
This message draws/removes the specified status HUD icon. For Status, 0 is Hide Icon, 1 is Show Icon, 2 is Flash Icon. Color arguments are optional and are required only if Status isn't equal to 0.
Name:
|
StatusIcon
|
Structure:
|
byte
|
Status
|
string
|
SpriteName
|
byte
|
ColorR
|
byte
|
ColorG
|
byte
|
ColorB
|
|
StatusValue
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Natural Selection • Team Fortress Classic • Half-Life Deathmatch |
This message sends/updates the status values. For Flag, 1 is TeamRelation, 2 is PlayerID, and 3 is Health. For TeamRelation, 1 is Teammate player, 2 is Non-Teammate player, 3 is Hostage. If TeamRelation is Hostage, PlayerID will be 0 or will be not sent at all.
Usually this is fired as a triple message, for example:
{1, 2} - non-teammate player
{2, 17} - player index is 17
{3, 59} - player health is 59
Name:
|
StatusValue
|
Structure:
|
|
StatusText
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Natural Selection • Team Fortress Classic • Half-Life Deathmatch |
This message specifies the status text format.
Name:
|
StatusText
|
Structure:
|
|
TaskTime
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message displays a secondary timer above the round timer. It is used for Condition Zero singleplayer missions.
If Time is -1, the timer dissappears. If Time is any other negative value, it is displayed as green instead of yellow, and considered positive.
If Active is true, timer counts down. Otherwise, it is paused.
If Fade is above zero, the timer will slowly fade out after that many seconds have passed (even if the timer is inactive).
Note: This event can only be used on missions that have an objective requiring a secondary timer!
Name:
|
TaskTime
|
Structure:
|
short
|
Time
|
byte
|
Active
|
byte
|
Fade
|
|
TeamInfo
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message sets the team information for the given player.
Note: In CS TeamName is either "UNASSIGNED", "TERRORIST", "CT" or "SPECTATOR".
Name:
|
TeamInfo
|
Structure:
|
byte
|
PlayerID
|
string
|
TeamName
|
|
TeamScore
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message updates the team score on the scoreboard.
Note: This message has different parameters depending upon the mod.
Note: In CS TeamName is either "TERRORIST" or "CT".
Name:
|
TeamScore
|
Structure:
|
string
|
TeamName
|
short
|
Score
|
|
Day of Defeat
Name:
|
TeamScore
|
Structure:
|
|
TextMsg
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message prints a custom or predefined text message.
There does not necessarily have to be a total of 6 arguments; there could be as little as 2. For example, you can send a message with the following:
Arg1: 1
Arg2: #Game_join_ct
Arg3: Pimp Daddy
Name:
|
TextMsg
|
Structure:
|
byte
|
DestinationType
|
string
|
Message
|
string
|
Submsg
|
string
|
Submsg
|
string
|
Submsg
|
string
|
Submsg
|
|
Train
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message displays the speed bar used for controlling a train.
Note: Speed is as follows: 0 (disable display), 1 (neutral), 2 (slow speed), 3 (medium speed), 4 (maximum speed), 5 (reverse)
TutorClose
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message closes all CZ-style tutor popups.
Note: This message has no arguments.
Name:
|
TutorClose
|
Structure:
|
|
TutorLine
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
Note: No Information is available for this message.
Name:
|
TutorLine
|
Structure:
|
short
|
Unknown1
|
short
|
Unknown2
|
|
TutorState
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
Note: No Information is available for this message.
Name:
|
TutorState
|
Structure:
|
|
TutorText
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero |
This message is used to display a CZ-style tutor popup.
Note: If NumberOfSubMsgs is higher than 0, there should be such amount of write_string after this byte.
Note: TutorMessageEventId is indexed as listed in czero/tutordata.txt and starts from 0
Note: IsDead is the message receiver alive status
DEFAULT 1 // 1<<0 | GREEN | INFO
FRIENDDEATH 2 // 1<<1 | RED | SKULL
ENEMYDEATH 4 // 1<<2 | BLUE | SKULL
SCENARIO 8 // 1<<3 | YELLOW | INFO
BUY 16 // 1<<4 | GREEN | INFO
CAREER 32 // 1<<5 | GREEN | INFO
HINT 64 // 1<<6 | GREEN | INFO
INGAMEHINT 128 // 1<<7 | GREEN | INFO
ENDGAME 256 // 1<<8 | YELLOW | INFO
Name:
|
TutorText
|
Structure:
|
string
|
String
|
byte
|
NumberOfSubMsgs
|
string
|
SubMessage
|
string
|
...
|
short
|
TutorMessageEventId
|
short
|
IsDead
|
short
|
Type
|
|
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Half-Life: Opposing Force • Sven Co-op • Team Fortress Classic |
This message displays a predefined VGUI menu.
Name:
|
VGUIMenu
|
Structure:
|
byte
|
MenuID
|
short
|
KeysBitSum
|
char
|
Time?
|
byte
|
Multipart?
|
string
|
Name?
|
|
ViewMode
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Team Fortress Classic |
Note: No Information is available for this message (HLSDK says this switches to first-person view, but it doesn't seem to function as so).
Note: This message has no arguments.
Name:
|
ViewMode
|
Structure:
|
|
VoiceMask
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message tells a client whom they can hear over the microphone.
Name:
|
VoiceMask
|
Structure:
|
long
|
AudiblePlayersIndexBitSum
|
long
|
ServerBannedPlayersIndexBitSum
|
|
WeaponList
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message configures the HUD weapons list.
Note: This is fired on map initialization.
Note: SlotID starts from 0.
Flags (from HLSDK):
ITEM_FLAG_SELECTONEMPTY 1
ITEM_FLAG_NOAUTORELOAD 2
ITEM_FLAG_NOAUTOSWITCHEMPTY 4
ITEM_FLAG_LIMITINWORLD 8
ITEM_FLAG_EXHAUSTIBLE 16 // A player can totally exhaust their ammo supply and lose this weapon.
Note: See CS Weapons Information for more information.
Name:
|
WeaponList
|
Structure:
|
string
|
WeaponName
|
byte
|
PrimaryAmmoID
|
byte
|
PrimaryAmmoMaxAmount
|
byte
|
SecondaryAmmoID
|
byte
|
SecondaryAmmoMaxAmount
|
byte
|
SlotID
|
byte
|
NumberInSlot
|
byte
|
WeaponID
|
byte
|
Flags
|
|
WeapPickup
Supported Mods: |
Counter-Strike • Counter-Strike: Condition Zero • Day of Defeat • Deathmatch Classic • Half-Life: Opposing Force • Natural Selection • Ricochet • Sven Co-op • Team Fortress Classic • Half-Life Deathmatch |
This message temporarily draws the corresponding weapon HUD icon in the middle of the right side of the screen.
Note: Draw time depends on the hud_drawhistory_time client CVar value.
Note: This is fired right before weapon is picked up (notice "before").
Note: See CS Weapons Information for more information.
Name:
|
WeapPickup
|
Structure:
|
|