Q3Offline Document Templates
Introduction to Q3Offline Templates
As well as playing Quake III Arena with Q3Offline, you can also use Q3Offline with other retail games based on the Quake III Arena engine, such as Star Trek Voyager: Elite Force, as long as the supports playing against bots.
For each game you want to configure using Q3Offline, you must have a template (.q3t) file in the Templates sub directory below the main Q3Offline run time directory. The template file tells Q3Offline important information about the configuration of the game.
Q3Offline is provided with template files for a number of games, including Quake III Arena itself, and Star Trek Voyager: Elite Force. If you have created a template file for other games not already supported, please send the template file to me and I will posted it onto the Q3Offline web site, on the Download page.
To install a new template, simply copy it to the Templates sub directory below the main Q3Offline run time directory. Q3Offline will automatically pick up the template the next time you create a new document using the File, New command.
If you have one or more templates (.q3t) files in the Templates sub directory, then the Q3Offline File, New command results in the New dialog being displayed. The New dialog allows you to pick from the available templates. If you only have one template file, then Q3Offline will automatically use it instead. If you do not have any template files, then Q3Offline will use a default template that is suitable for Quake III Arena.
When you open an existing document in Q3Offline, Q3Offline reads the template for that document. This means then when you make a change to a template, it will affect existing documents, as well as new ones that you create.
Q3Offline templates have been tested with Quake III Arena, and Star Trek Voyager: Elite Forces, the two games I own that use the Quake III Arena engine. I want to make sure it works with other Quake III Arena based games too. If you think you have spotted a problem with the templates, or something that the templates don't cover, then please contact me and I'll try my best to fix it.
Format of Q3Offline Templates
Q3Offline templates use the Windows ini file format. You can edit them using any text editor, such as Notepad.
A template has a number of sections.
[General]
Main settings.
Version: Mandatory. Always set to 1.
Name: Mandatory. The name that will appear in the New dialog from the File New menu. This can be any suitable text.
ShortName: Mandatory. The name Q3Offline uses internally to refer to the game, e.g., as part of the registry key to store information about the game. Use a short string, with no spaces or punctuation characters.
ExeFileName: Mandatory. The name of the executable file for the game. Do not include the directory.
DefaultGameSubDir: Mandatory. The default game folder. For Quake III Arena this is baseq3.
CfgFileName: Mandatory. The cfg file the game uses to store its configuration. For Quake III Arena this is q3config.cfg. Q3Offline needs to able to write to this file.
Levelshots: Optional. The location of map levelshots for the game. The location may be in a pk3 file in the game folder, or in a sub-directory below the game folder. Use %map% to substitute for the map name.
The levelshot for a map is displayed by Q3Offline when you select the map on the Maps page.
BotIcon: Optional. The location of bot icons for the game. The location may be in a pk3 file in the game folder, or in a sub-directory below the game folder. Use %model%, %skin%, and %bot% to substitute for the bot's model, skin and name, respectively.
The bot icon is displayed by Q3Offline when you select the bot on the Bots page.
BotTaunt: Optional. The location of bot sound files for the game. The location may be in a pk3 file in the game folder, or in a sub-directory below the game folder. Use %model%, %skin%, and %bot% to substitute for the bot's model, skin and name, respectively.
The bot taunt is played by Q3Offline when you select the bot on the Bots page. Note: not all types of sound file are supported by Q3Offline; .wav files will be played correctly, but .mp3 files will not. Support for mp3 files may be added at a later date.
MapLongnameKey: Optional. Defaults to longname. This is the name of the field in the arenas.txt file that defines the long name for the map. Normally this field is called longname, but some games supply long names in other languages. For example, Star Trek Voyager: Elite Forces defines long names in English, German and French. Thus the map hm_dn1 in the arenas.txt file is defined as follows:
map "hm_dn1"
longname "The Machine"
longname_deutsch "Die Maschine"
longname_francais "La Machine"
To get Q3Offline to display the German long names for maps, set MapLongnameKey=longname_deutsch.
GameAnnounceSound: Optional. Used by Q3Offline to announce the start of the game.
[DefaultFreeForAllMaps]
This section contains the default Free For All maps that Q3Offline will display on the Maps page. This information can usually be obtained from a scripts/arenas.txt file in the game's pk3 files.
Each line in the section contains the settings for one map, as a list of comma separated items. Do not use any space characters between the items.
The items are:
[DefaultTournamentMaps]
This section contains the default Tournament maps that Q3Offline will display on the Maps page. See [DefaultFreeForAllMaps] above for a description of the format of the entries in this section.
[DefaultTeamDeathmatchMaps]
This section contains the default Team Deathmatch maps that Q3Offline will display on the Maps page. See [DefaultFreeForAllMaps] above for a description of the format of the entries in this section.
[DefaultCTFMaps]
This section contains the default Capture the Flag maps that Q3Offline will display on the Maps page. See [DefaultFreeForAllMaps] above for a description of the format of the entries in this section.
[DefaultBots]
This section contains the default bots that Q3Offline will display on the Bots page. This information can usually be obtained from a scripts/bots.txt file in the game's pk3 files.
Each line in the section contains the settings for one bot, as a list of comma separated items. Do not use any space characters between the items.
The items are: