Commands CVARS Communications Scripting

Communications

Q3F provides two different options for communicating with your team-mates. The first (and easiest) method of communication if to use the inbuilt Radio Commications System that's part of the in-game HUD. If you'd like to write your own communications script, then read the section below entitled Advanced Communications.

The Q3F Radio Communications System

Q3F includes an inbuilt Radio Communications System. This system is menu-driven and contained within your HUD. Once you have decided on the key you wish to use to invoke it (you specify this in the Q3F options menu under controls in Quake 3) simply hit the key and you'll be presented with a menu that looks like this:

By default:

As well as sending a text message, other players will also hear an associated sound file. For example; if you select option 1 'Offense Menu' followed by option 3 'Attack Now', the message 'Attack Now!' will both be seen and heard by all members of your team.

When you send or receive a message via the Radio Communications System, it has an associated tag that designates the group of people it's destined for.. Think of this like the channel on a radio with Offense and Defense having their own channels. If you'd like to 'tune-in' to a specific channel (thereby ignoring messages being sent to the other channel), you can do this by selecting the required channel via option 7 'Channel Selector'.

While it can encourage teamplay and be good fun to use this Radio System, please note that it can be very annoying to other players if you over do it. For server administrators who wish to control the way in which this system is used, we have extended the g_teamChatSounds CVAR - full details for this are available from the Running Servers sub-section of this guide.Players can also enable and disable playing of team radio comms via option 8 'Radio Options'.

It's also possible to reposition the placement of team-mate (messagemode2) messages on your HUD and increase the font size. These choices are made available buy selecting option 8 'Radio Options'.

Advanced Communications

Q3F's communication features allow you to more accurately communicate information to team-mates, such as your current location or health and also play WAV files to them.

When you send or receive a message in Q3F you can also designate the group of people it's destined for (or become a member of a specific receiving group) by using a special command called 'channel'. Think of this like the channel on a radio.

The channel command can be used to set, add, remove and clear channels that you're currently receiving. If you give no command, your current list of channels will be shown:

\channel
> Now listening on all channels.
\channel set #offence #defence
\channel add #command
\channel rem #defence
\channel
> Now listening on: #offence #command.
\channel clear
> Now listening on all channels.

To send a channel message you simply prefix it with the channel name (including # symbol). For example somebody sending:

say_team "#offence Regroup at $L."

Will be seen by you because you're a member of the #off channel, and additionally anyone else that has used the command 'channel set #offense'.

Wondering what that '$L' is? It's just like Nitro, Cheapo and Qizmo - it prints your current location! Other '$' strings include:

$H Health
$A Armour
$L Location (returns 'unknown location' if unable to work it out)
$D Location of last death. $R Last reported location (i.e. identical to last $L)
$T Team name (e.g. "Red Team", "Blue Team" etc.)
$C Team colour (e.g. red, blue etc.)
$G Disguise (returns 'not disguised' if not wearing a disguise)
$S Current Class (e.g. "Soldier")
$N Name (player name / entity groupname (or one of them)
$E State (e.g. "active", "carried" etc.)

See below for a complete communications example script using $ variables for offence and defence.

You can also make use of a special Q3F feature which allows you to play a wav sound file to all team-mates. The wav you wish to play must exist on all listening clients.

The syntax is as follows:

say_team #channel &sample message

Where:

#channel is the channel to play the sound on (players with no channel selected will also get the message).

&sample is the sample to play, from amongst the set included in the mod (only if the server permits team chat sounds to be played).

Automating Communications

Here's an example script that you might use to make use of the $ communications variables:

//Offence bind "say_team Enemy flag - $l"
bind "key" "say_team Enemy flag - $d" // Use this after dying when you died near flag
bind "key""say_team Enemy flag outgoing - $l"
bind "key""say_team Position - $l [$hH $aA]"
bind "key""say_team Where is the enemy flag?"
//Defence
bind "key""say_team Our flag - $l"
bind "key""say_team Our flag outgoing - $l"
bind "key""say_team Incoming - $l"
bind "key""say_team Where is our flag?"
//Misc
bind "key""say_team Yes/OK!"
bind "key""say_team Cancel that!"
bind "key""tell_teamtarget I have you covered!"
bind "key""say_team ^1NEED HELP!!! - $l [$hH $aA]"
bind "key""say_team Need health/armor/ammo - $l [$hH $aA];saveme"