Xfire_games.ini entries
Table of contents
Overview
This document contains all known properties and environment variables used in
the main game detection file of Xfire, xfire_games.ini. You can use this
document as a reference to see what values are available and what properties
to use if you don't remember or are not sure.
This document has been written by Joonas Lehtolahti (aka GODJonez)
to help people create game support code for
Xfire. This document is especially
written for Xfire Plus to help
people to publish their code with other Xfire users easily.
The copyright for this document is valid and belongs to the author.
If you wish to use any part of the document on your own productions,
please ask for the permission from the author. You can find contact
information from his public profiles on the websites mentioned earlier.
You are allowed to link to this document without any special permission.
This document might contain wrong or misleading information. If you find
some wrong information and know how it should be, please inform the author
and the document will be updated if your information can be confirmed.
This document with all its contents copyrighted © 2006 by
Joonas Lehtolahti
Properties
- [ID number]
- Required
-
The ID number is an unique number that Xfire uses to
identify a game in both server and client side.
For example, the ID for Counter-Strike 1.6 is 5, so when the user
is playing Counter-Strike 1.6, Xfire reports to its servers that
the user is playing game 5 and the server then checks from the
database what the game name is and can then show in profile that
the user is playing Counter-Strike 1.6.
-
Every game and voice chat software must have an unique number
so that there won't be false detections. Every game detection
entry in xfire_games.ini starts with the ID number block definition.
- LongName
- Required
-
This is the friendly name shown to people.
- ShortName
- Required
-
ShortName is an unique name consisting of only lower case letters and
numbers. Xfire uses this name to look for the icon and custom infoview
panels for the game.
- LauncherDirKey
- Recommended
-
If the game stores its install location to Windows registry, it would
be good if the registry location was told to Xfire. Xfire checks the
registry entries on startup and if it finds the install path, it can
automatically make the game status as "Installed" so you don't even
have to manually click Apply on the Find Installed Software dialog
or add the game from Tools -> Options... -> Games
-
If you use LauncherDirKey, do not use
LauncherDirShortcut or
LauncherDirDefault.
-
See also:
- DetectDirKey
- Optional
-
In case the executable file that is running when playing the game is
different than the one used to launch the game and the file is stored in
different location, you can use this property to show Xfire the key in
Windows registry that stores the location of the file to be detected.
-
Use DetectDirKey only if it is necessary. The only games that need this
property are those whose launcher is an external program, such as LaunchPad
that is installed in its own location. In these cases, set the LauncherDir
point to the folder where the launcher resides and use this property to make
Xfire find the actual game executable that the launcher starts.
-
You may use other DetectDir properties in the same way as LauncherDir properties.
As their usage is the same except that the executable they are for, they are
not documented separately.
-
See also:
- LauncherDirShortcut
- Recommended
-
One way to find out where the game is installed is to give Xfire the location
where the game usually saves its shortcut. Usually the shortcut points to the
game executable file, so you might also need to use
LauncherDirTruncAt property to cut the path.
The folder that points to the Programs folder in Start menu is
CSIDL_PROGRAMS.
-
If you use LauncherDirShortcut, do not use
LauncherDirKey or
LauncherDirDefault.
-
See also:
- LauncherDirTruncAt
- Dependent
-
Used only with LauncherDirKey in case
the registry value referenced to contains more than just the path.
For example if the value in registry was
C:\Program Files\Game\game.exe
You would like to make the following line:
LauncherDirTruncAt=game.exe
To make Xfire to cut the value and leave only the program install dir.
-
See also:
- LauncherDirAppend
- Dependent
-
Used only with LauncherDirKey in case
the registry value referenced to contains a path to a parent folder.
For example if the value in registry was
C:\Program Files
You would like to make the following line:
LauncherDirAppend=\Game
To make Xfire to create the full path to:
C:\Program Files\Game\
.
-
See also:
- LauncherDirDefault
- Recommended
-
If the game does not store its installation path to registry
you can still tell Xfire a path where the game is likely installed to.
If the game is found from the location specified by this property
Xfire is likely to add it to Installed games automatically.
-
If you use LauncherDirDefault, do not use
LauncherDirKey.
-
See also:
- LauncherExe
- Required
-
This property tells Xfire the main executable file that is used
to start the game. If this file is not found from the game folder,
Xfire will not accept the game. When you choose the game from Xfire's
Launch menu or use one-click joining, Xfire uses this file to start
the game.
-
See also:
- LauncherPasswordArgs
- Optional
-
If one-click joining is supported for the game and there are
password-protected servers, you can add the command line parameters
used to deliver the password to the game using this property.
-
The password given to Xfire can be referenced using
%UA_GAME_HOST_PASSWORD%
-
See also:
- LauncherUsernameArgs
- Optional
-
If one-click joining is supported for the game and the game needs
username to be specified in the command line, you can use this property
to tell Xfire how to add the username into the command line.
-
The username given to Xfire can be referenced using
%UA_GAME_HOST_USERNAME%
-
See also:
- LauncherLoginArgs
- Optional
-
If the game needs logging in and it is supported by command line, you
can specify the parameters for that procedure with this property.
The login box is displayed automatically on Xfire when this property is
used in the detection code.
-
The login information can be referenced with environment variables
%UA_GAME_LOGIN_NAME% and
%UA_GAME_LOGIN_PASSWORD%.
-
See also:
- LauncherRconArgs
- Optional
-
If one-click joining is supported for the game and the game supports
giving RCON password from command line
you can give the form of the command line parameter using this property.
-
The RCON password given to Xfire can be referenced using
%UA_GAME_RCON_PASSWORD%
-
See also:
- LauncherNetworkArgs
- Optional
-
If one-click joining is supported for the game, this property
defines the parameters given to the game when joining a server.
-
The variables that can be used:
-
See also:
- LauncherUrl
- Optional
-
Some online games need you to log in to the game on a website.
For those games you can enter the URL
as a value for this property.
- DetectExe
- Optional
-
If the game is using different executable file from the one that is used
to launch the game, use this property to tell Xfire what file to track.
If this file is not found from the install location, the game can't be
added to Lauch list.
-
See also:
- InstallHint
- Optional
-
If there is some kind of unique file that would be a good hint to tell
that the game exists in the folder, you can specify that file as
Install hint. If the file specified does not exist, Xfire does not
recognize the game in that folder. This is especially useful with game
mods.
-
See also:
- Launch
- Required
-
When you choose to launch the game from Xfire or you use one-click joining,
this is the actual command line used to start the game. Almost always this
line is the line:
%UA_LAUNCHER_EXE_PATH%
%UA_LAUNCHER_NETWORK_ARGS%
%UA_LAUNCHER_EXTRA_ARGS%
The only exception usually made is to add extra command line parameters
that are always used to launch the game (especially with game mods).
-
See also:
- ServerStatusType
- Optional
-
The value of this property tells Xfire how to query the server data.
There are only limited number of values you can assign to this property.
You can't add a new server type as they are coded inside the Xfire program.
The values accepted are:
| Value |
Server type |
| AA |
America's Army |
| ASE |
All Seeing Eye |
| BF1942 |
Battlefield 1942 |
| BF2 |
Battlefield 2 |
| BFVIETNAM |
Battlefield Vietnam |
| COD |
Call of duty |
| DEUSEX |
Deus Ex |
| DH2K5 |
Deer Hunter 2005 |
| DOOM3 |
Doom 3 |
| FARCRY |
Farcry |
| FL |
Freelancer |
| GHOSTR |
Ghost Recon |
| GORE |
Gore |
| GS |
GameSpy |
| GS2 |
GameSpy 2 |
| HL |
Half-Life |
| HLSTEAM |
Steam - Half-Life |
| HND2 |
Hidden & Dangerous 2 |
| MOHAA |
Medal of honor: Allied Assault |
| NWN |
Neverwinter Nights |
| OPFLASH |
Operation Flashpoint |
| PAINKILLER |
Painkiller |
| Q2 |
Quake 2 |
| Q3A |
Quake 3 Arena |
| Q4 |
Quake 4 |
| QW |
QuakeWorld |
| R63 |
Rainbox six 3 |
| RNG |
Command & Conquer Renegade |
| SAVAGE |
Savage |
| SOF |
Soldier of fortune |
| SOURCE |
Steam - Source |
| SWAT4 |
Swat 4 |
| SWRC |
Star Wars Republic Commando |
| THPS3 |
Tony Hawk's Pro Skater 3 |
| TRIBES |
Tribes |
| TRIBES2 |
Tribes 2 |
| TRIBESV |
Tribes Vengeange |
| U2 |
Unreal II |
| UT |
Unreal Tournament |
| UT2K3 |
Unreal Tournament 2003 |
| VCG |
Vietcong |
| WOLFET |
Wolfenstein: Enemy Territory |
-
See also:
- ServerEncodingType
- Optional
-
In some cases you need to specify the encoding of the server query.
The valid values are UTF8 and ASCII. If the game you are
trying to add uses one of the supported server types but the query doesn't
seem to return valid data, you might try using either values of this
property to see if that makes the query successful.
-
See also:
- InGameRenderer
- Optional
-
This is the main property to define Xfire In-Game support for the game.
The value of this property is determined by the rendering engine the game uses.
Valid values are:
| Value |
Rendering type |
Commonly used in |
| DDRAW |
DirectDraw |
Games using 2D graphics |
| D3D7 |
Direct3D 7 |
Older 3D games |
| D3D8 |
Direct3D 8 |
Newer 3D games |
| D3D9 |
Direct3D 9 |
Current 3D games |
| OGL |
OpenGL |
Many 3D games, especially ones found on Linux/Mac also |
-
See also:
- InGameFlags
- Optional
-
Some games need additional tweaks to make the in-game chat to work properly.
InGameFlags is the most common method to use
tweaks built into XIG engine. To assign more than one tweak, use the
vertical pipe character |.
The valid values for this property are:
| Value |
Meaning |
When to use |
| BLOCK_ASYNC |
Exact information not available |
| CHECK_LISTENER |
Exact information not available |
| DISABLE_RELEASE |
Disables releasing control |
Low FPS rate |
| DISPATCH_CONURE_MESSAGES |
Exact information not available |
Game crashes with XIG support |
| DISABLE_DIRECT_INPUT_HOOK |
Completely disables DirectInput hook |
Game does not receive keyboard input |
| REINSTALL_KEYBOARD_HOOK |
Restart keyboard hook |
Keyboard problems |
| USE_DINPUT1 |
Alternate DirectInput method |
Keyboard problems |
| USE_PRESENT |
Exact information not available |
| USE_WINDOWS_INPUT |
Alternate input method |
Keyboard problems |
| VALIDATE_USING_EXE_NAME |
Ensure game executable |
XIG not working |
| WGLSWAPLAYERBUFFERS |
Special tweak |
Only for nwn |
| WOLF_ETPRO |
Special tweak |
Only for wolfet |
-
See also:
- InGameOGLTextureOffset
- Optional
-
This property was made to replace
InGameFlags=OGL_EXTRA_HOOKS
with a more precise offset value. The only value so far used is 32000.
-
See also:
- InGamePaletteIgnore
- Optional
-
This propery is only useful on games running in 256 color mode.
You can specify ranges of colors that should not be modified when
Xfire In-Game chat window is drawn. You know when you need to specify
this property when the colors in the game are messed up due to XIG.
-
An example value could be 1-13,248-254, meaning that palette
entries 1 to 9 and 240 to 254 should not be altered. To find out what
palette entries are used in which part of the screen, take a screenshot,
paste it to a good image manipulating program and check the palette.
-
See also:
- InGameDelay
- Optional
-
This property assigns a delay to the in-game system.
The values are usually multiplies of 10000.
Details are still unknown.
-
See also:
- ChangeTolerance
- Optional
-
This property is used to make in-game chat work better in some games.
Details are still unknown.
-
See also:
- DisconnectTolerance
- Optional
-
Details are still unknown.
- SoftwareType
- Optional
-
This property only accepts one value currently: VoiceChat.
It is used to make Xfire detect the program as a voice chat program instead
of a game. Since voice chat programs need support from Xfire servers also,
this property is of no use in custom game support.
- DetectServer
- Optional
-
If you set this property a value FALSE, then Xfire will not track
the server IP for the game. This is often used with
MMORPG's
since the user doesn't usually need to know the IP address of the server.
-
See also:
- ExcludeIPPorts
- Optional
-
The value of this property is comma separated list of ports that Xfire
should not detect IP address from. This is useful for example if the
master server uses different port than normal game server, so excluding
the master server port prevents the master server IP being detected as the
server the user is playing on.
-
See also:
- PlayingDetectType
- Optional
-
Sometimes it is needed to order Xfire to detect the game by using window
title instead of just the executable name to prevent false detections.
In these cases this property should be given value: ByWindow.
If this is used, then ProcessWindowTitle
must be used also.
-
See also:
- ProcessWindowTitle
- Dependent
-
If PlayingDetectType has been set to
ByWindow, then this property is also needed. The value used
should be exactly the same as the window title of the game.
-
See also:
- CommandLineMustContain[i]
- Optional
-
This property is useful with game mods: when multiple games are launched
from the same executable file. Then you can make Xfire to check the
command line parameters given to the detected exe and the command line
must contain the parameters given in this property.
You can assign more than one of these properties. To make this possible,
you need to include an incremental number inside the square brackets, starting
from 0. You must always include the number if you use this property.
-
See also:
- CommandLineMustNotContain[i]
- Optional
-
This property is useful with game mods: when multiple games are launched
from the same executable file. Then you can make Xfire to check the
command line parameters given to the detected exe and the command line
must not contain the parameters given in this property. So this property
is especially useful in the detection code of the master game.
You can assign more than one of these properties. To make this possible,
you need to include an incremental number inside the square brackets, starting
from 0. You must always include the number if you use this property.
-
See also:
- Locale
- Optional
-
Currently only used with WoW.
Details are still unknown.
- AlwaysFullScreen
- Optional
-
Currently only used with wormsa.
Details are still unknown.
- LobbyGUID
- Optional
-
The value of this property should be the game lobby GUID, an unique
identifier that is used to distinguish between the games in DirectPlay.
-
See also:
- LobbyType
-
Specifies the type of the DirectPlay lobby. Two values are available:
| Value |
Explanation |
| DP |
DirectPlay 7 and older |
| DP8 |
DirectPlay 8 and newer |
Environment variables
- %UA_GAME_HOST_NAME%
-
This evaluates to the server's IP address.
- %UA_GAME_HOST_PORT%
-
This evaluates to the server's port.
- %UA_GAME_LOGIN_NAME%
-
This evaluates to the username given to log in to the game.
- %UA_GAME_LOGIN_PASSWORD%
-
This evaluates to the password given to log in to the game.
- %UA_GAME_HOST_PASSWORD%
-
This evaluates to the password the user typed in.
- %UA_GAME_HOST_USERNAME%
-
This evaluates to the username the user typed in. For games without
LauncherUsernameArgs, this environment variable
contains the nickname of the Xfire user.
- %UA_GAME_RCON_PASSWORD%
-
This evaluates to the RCON password
user typed in.
- %UA_LAUNCHER_EXE_DIR%
-
This evaluates to the Install folder of the game being launched.
- %UA_LAUNCHER_EXE_PATH%
-
This evaluates to the combination of
%UA_LAUNCHER_EXE_DIR%
and LauncherExe.
- %UA_LAUNCHER_URL%
-
This evaluates to the final value of
LauncherUrl.
-
This evaluates to the extra command line parameters given in the advanced
options of the game in Xfire client.
- %UA_LAUNCHER_NETWORK_ARGS%
-
This evaluates to the final value of
LauncherNetworkArgs
- %UA_LAUNCHER_PASSWORD_ARGS%
-
This evaluates to the final value of
LauncherPasswordArgs
- %UA_LAUNCHER_RCON_ARGS%
-
This evaluates to the final value of
LauncherRconArgs
- %UA_LAUNCHER_USERNAME_ARGS%
-
This evaluates to the final value of
LauncherUsernameArgs
- %UA_LAUNCHER_LOGIN_ARGS%
-
This evaluates to the final value of
LauncherLoginArgs
Links