-
Notifications
You must be signed in to change notification settings - Fork 0
Registry
Certain values in the registry are able to be overridden by the config.opt file.
Flags that get negated and bitwise and'd with some other values.
This key is read by the game but is not editable in GameSetup.exe
. A value of 1
inverts the Y-Axis movement of the camera. This is separate from the OPTIONS
-> CONTROLS
-> SETTINGS
-> Camera Y Axis
Inverted
option. The registry value and Camera Y Axis
value stack together. If both are inverted then it is as if the camera Y-Axis is not inverted. The arrow key camera controls are always inverted regardless of either setting.
This key is read by the game but is not editable in GameSetup.exe
. The movement of the camera along each axis is multiplied by MouseSensitivity * 0.0099999998 * 1.5 + 0.5
.
This key is read by the game but is not editable in GameSetup.exe
. After the game reads the value, it is immediately discarded.
This key is read by the game but is not editable in GameSetup.exe
. This value is unused in favor of MouseSensitivity
.
The value for this key corresponds to a trtext
ID.
UserLanguageID |
trtext ID |
Language |
---|---|---|
1041 | 0 | PATCH_STR_LANG_JAPANESE_Z |
1033 | 1 | PATCH_STR_LANG_ENGLISH_Z |
1036 | 2 | PATCH_STR_LANG_FRENCH_Z |
1034 | 3 | PATCH_STR_LANG_SPANISH_Z |
1031 | 4 | PATCH_STR_LANG_GERMAN_Z |
1040 | 5 | PATCH_STR_LANG_ITALIAN_Z |
1043 | 6 | PATCH_STR_LANG_DUTCH_Z |
1044 | 7 | PATCH_STR_LANG_NORWEGIAN_Z |
1045 | 8 | PATCH_STR_LANG_POLISH_Z |
1042 | 9 | PATCH_STR_LANG_KOREAN_Z |
2057 | 10 | PATCH_STR_LANG_ENGLISH_UK_Z |
1029 | 11 | PATCH_STR_LANG_CZECH_Z |
1030 | 12 | PATCH_STR_LANG_DANISH_Z |
1053 | 13 | PATCH_STR_LANG_SWEDISH_Z |
1046 | 14 | PATCH_STR_LANG_BRAZIL_Z |
1032 | 15 | PATCH_STR_LANG_GREEK_Z |
1037 | 16 | PATCH_STR_LANG_FINLANDAIS_Z |
1049 | 17 | PATCH_STR_LANG_RUSSIAN_Z |
2070 | 18 | PATCH_STR_LANG_PORTUGESE_Z |
3084 | 19 | PATCH_STR_LANG_FRENCH_US_Z |
20 | PATCH_STR_LANG_SPANISH_US_Z | |
21 | PATCH_STR_LANG_TCHINESE_Z | |
22 | PATCH_STR_LANG_SCHINESE_Z |
It is unclear how the Version
key's value is determined. The value does not appear to have changed between FUEL and Up.
The value for this key is the index in the Video Adapter
drop-down selection in GameSetup.exe
.
The value for this key is the Anisotropic Level
selected in GameSetup.exe
. Disabled
is 1
, 2x
is 2
, 4x
is 4
, 8x
is 8
, and 16x
is 16
.
If the value of this key is 0
then some global flags variable is bitwise or'd with 0x40000
.
This value is a boolean that cannot be set using GameSetup.exe
. The game looks normal with the default value of 1
. With a value of 0
, the game looks overexposed and several meshes are invisible. Recompiling shaders with the value of 0
does not seem to help. Clicking Play
or Quit
in GameSetup.exe
sets this value to 1
.
The value for this key is the index in the Resolution
drop-down in GameSetup.exe
. However, the VideoResolution
key is what is actually used to determine the resolution the game runs at. Clicking Play
or Quit
in GameSetup.exe
sets the value of VideoResolution
to the corresponding resolution for the selected index in the Resolution
drop-down, overwriting any custom resolution set in VideoResolution
.
The value for this key is the Antialiasing
selected in GameSetup.exe
. Disabled
is 0
, 1x
is 1
, 2x
is 2
, 4x
is 4
, and 8x
is 8
.
The value for this key is the index in the Performance
drop-down in the Advanced
window in GameSetup.exe
. Low
is 0
, Medium
is 1
, and High
is 2
.
The VideoResolution
registry key is encoded as (height << 16) | width
, that is, the height component is the upper 16 bits of the 32-bit REG_DWORD
value and the width component is the lower 16 bits. So width=1920=0x0780, height=1080=0x0438
becomes VideoResolution=0x04380780
.
This key is read by the game but is not editable in GameSetup.exe
. After the game reads the value, it is immediately discarded.
The value for this key is the checkbox Enable Shadow Maps
in the Advanced
window in GameSetup.exe
. Unchecked is 0
and checked is 1
.
The value for this key is the index in the Texture Filtering
drop-down in GameSetup.exe
. Bilinear
is 0
, Trilinear
is 1
, and Anisotropic
is 2
.
The value for this key is the index in the Texture Quality
drop-down in GameSetup.exe
. HIGH
is 0
and LOW
is 1
.
The subkey Controls00
has a number of subkeys matching the pattern Control.XX.YY.Primary/Secondary
where XX
is in the range [0, NbContext)
and YY
is in the range [0, 32)
. By default NbContext
has a value of 3
. Not all possible permutations are used by default.
The value of each of these keys is encoded as (data << 16) | type
, that is, the data component is the upper 16 bits of the 32-bit REG_DWORD
value and the type component is the lower 16 bits. There are four possible types, each type uses the data component differently.
See also: Custom Gamepad Control Mapping
A type component with a value less than or equal to -3
represents no selected input for that control. The data component is unused and 0
by default.
A type component with a value equal to -2
represents something. Possibly controller trigger inputs? Although it does not seem possible to rebind gamepad controls from within the game.
A type component with a value equal to -1
represents a DirectInput KeyCode input for that control. In this case, the data component is a DIK KeyCode.
A type component with a value greater than or equal to 0
represents a DirectInput joystick, where the exact value is the index of the Joystick. In this case, the data component is encoded as (data_type << 8) | data_data
, that is, the data_type component is the upper 8 bits of the 16-bit word
value and the data_data component is the lower 8 bits. There are 5 possible values for data_type.
A data_type component with a value equal to 0
represents a joystick button. In this case, the data_data component represents the button index.
A data_type component with a value equal to 1
represents something.
A data_type component with a value equal to 2
represents something.
A data_type component with a value equal to 3
represents a joystick rotation. In this case, the data_data component is encoded as (data_data_axis << 4) | data_data_sign
, that is, the data_data_axis component is the upper 4 bits of the 8-bit byte
value and the data_data_sign component is the lower 4 bits. A data_data_axis
component with a value of 0, 1, or 2 corresponds to X, Y, or Z respectively. A data_data_sign
component with a value of 0 or 1 corresponds to negative or positive respectively.
A data_type component with a value equal to 4
represents a joystick axis. In this case, the data_data component is encoded as (data_data_axis << 4) | data_data_sign
, that is, the data_data_axis component is the upper 4 bits of the 8-bit byte
value and the data_data_sign component is the lower 4 bits. A data_data_axis
component with a value of 0, 1, or 2 corresponds to X, Y, or Z respectively. A data_data_sign
component with a value of 0 or 1 corresponds to negative or positive respectively.
The following table describes the default registry values for the Controls00
subkeys and their decoding according to the scheme described above. DIK KeyCodes in the table are given assuming a QWERTY keyboard layout.
Key | Value | Data | Type |
---|---|---|---|
Control.00.00.Primary | 0x1effff | DIK_A | DirectInput KeyCode |
Control.00.00.Secondary | 0xfffd | 0 | Disabled |
Control.00.01.Primary | 0x20ffff | DIK_D | DirectInput KeyCode |
Control.00.01.Secondary | 0xfffd | 0 | Disabled |
Control.00.02.Primary | 0x11ffff | DIK_W | DirectInput KeyCode |
Control.00.02.Secondary | 0xfffd | 0 | Disabled |
Control.00.03.Primary | 0x1fffff | DIK_S | DirectInput KeyCode |
Control.00.03.Secondary | 0xfffd | 0 | Disabled |
Control.00.04.Primary | 0xcbffff | DIK_LEFT | DirectInput KeyCode |
Control.00.04.Secondary | 0xfffd | 0 | Disabled |
Control.00.05.Primary | 0xcdffff | DIK_RIGHT | DirectInput KeyCode |
Control.00.05.Secondary | 0xfffd | 0 | Disabled |
Control.00.06.Primary | 0xc8ffff | DIK_UP | DirectInput KeyCode |
Control.00.06.Secondary | 0xfffd | 0 | Disabled |
Control.00.07.Primary | 0xd0ffff | DIK_DOWN | DirectInput KeyCode |
Control.00.07.Secondary | 0xfffd | 0 | Disabled |
Control.00.08.Primary | 0x4fffff | DIK_NUMPAD1 | DirectInput KeyCode |
Control.00.08.Secondary | 0xfffd | 0 | Disabled |
Control.00.09.Primary | 0x1ffff | DIK_ESCAPE | DirectInput KeyCode |
Control.00.09.Secondary | 0xfffd | 0 | Disabled |
Control.00.10.Primary | 0x13ffff | DIK_R | DirectInput KeyCode |
Control.00.10.Secondary | 0xfffd | 0 | Disabled |
Control.00.11.Primary | 0x1cffff | DIK_RETURN | DirectInput KeyCode |
Control.00.11.Secondary | 0xfffd | 0 | Disabled |
Control.00.12.Primary | 0x39ffff | DIK_SPACE | DirectInput KeyCode |
Control.00.12.Secondary | 0xfffd | 0 | Disabled |
Control.00.13.Primary | 0x1dffff | DIK_LCONTROL | DirectInput KeyCode |
Control.00.13.Secondary | 0xfffd | 0 | Disabled |
Control.00.14.Primary | 0x52ffff | DIK_NUMPAD0 | DirectInput KeyCode |
Control.00.14.Secondary | 0xfffd | 0 | Disabled |
Control.00.15.Primary | 0x21ffff | DIK_F | DirectInput KeyCode |
Control.00.15.Secondary | 0xfffd | 0 | Disabled |
Control.00.16.Primary | 0x12ffff | DIK_E | DirectInput KeyCode |
Control.00.16.Secondary | 0xfffd | 0 | Disabled |
Control.01.00.Primary | 0x1fffff | DIK_S | DirectInput KeyCode |
Control.01.00.Secondary | 0xfffd | 0 | Disabled |
Control.01.01.Primary | 0x1effff | DIK_A | DirectInput KeyCode |
Control.01.01.Secondary | 0xfffd | 0 | Disabled |
Control.01.02.Primary | 0x11ffff | DIK_W | DirectInput KeyCode |
Control.01.02.Secondary | 0xfffd | 0 | Disabled |
Control.01.03.Primary | 0x20ffff | DIK_D | DirectInput KeyCode |
Control.01.03.Secondary | 0xfffd | 0 | Disabled |
Control.01.04.Primary | 0x14ffff | DIK_T | DirectInput KeyCode |
Control.01.04.Secondary | 0xfffd | 0 | Disabled |
Control.01.05.Primary | 0x15ffff | DIK_Y | DirectInput KeyCode |
Control.01.05.Secondary | 0xfffd | 0 | Disabled |
Control.01.06.Primary | 0x16ffff | DIK_U | DirectInput KeyCode |
Control.01.06.Secondary | 0xfffd | 0 | Disabled |
Control.01.07.Primary | 0x17ffff | DIK_I | DirectInput KeyCode |
Control.01.07.Secondary | 0xfffd | 0 | Disabled |
Control.02.00.Primary | 0xc8ffff | DIK_UP | DirectInput KeyCode |
Control.02.00.Secondary | 0xfffd | 0 | Disabled |
Control.02.01.Primary | 0xd0ffff | DIK_DOWN | DirectInput KeyCode |
Control.02.01.Secondary | 0xfffd | 0 | Disabled |
Control.02.02.Primary | 0xcdffff | DIK_RIGHT | DirectInput KeyCode |
Control.02.02.Secondary | 0xfffd | 0 | Disabled |
Control.02.03.Primary | 0xcbffff | DIK_LEFT | DirectInput KeyCode |
Control.02.03.Secondary | 0xfffd | 0 | Disabled |
Control.02.04.Primary | 0x1cffff | DIK_RETURN | DirectInput KeyCode |
Control.02.04.Secondary | 0xfffd | 0 | Disabled |
Control.02.05.Primary | 0x12ffff | DIK_E | DirectInput KeyCode |
Control.02.05.Secondary | 0xfffd | 0 | Disabled |
Control.02.06.Primary | 0x1ffff | DIK_ESCAPE | DirectInput KeyCode |
Control.02.06.Secondary | 0xfffd | 0 | Disabled |
Control.02.07.Primary | 0x14ffff | DIK_T | DirectInput KeyCode |
Control.02.07.Secondary | 0xfffd | 0 | Disabled |
Control.02.08.Primary | 0x15ffff | DIK_Y | DirectInput KeyCode |
Control.02.08.Secondary | 0xfffd | 0 | Disabled |
Control.02.09.Primary | 0x16ffff | DIK_U | DirectInput KeyCode |
Control.02.09.Secondary | 0xfffd | 0 | Disabled |
Control.02.10.Primary | 0x17ffff | DIK_I | DirectInput KeyCode |
Control.02.10.Secondary | 0xfffd | 0 | Disabled |
Control.02.11.Primary | 0x2cffff | DIK_Z | DirectInput KeyCode |
Control.02.11.Secondary | 0xfffd | 0 | Disabled |
Control.02.12.Primary | 0x2dffff | DIK_X | DirectInput KeyCode |
Control.02.12.Secondary | 0xfffd | 0 | Disabled |
Control.02.13.Primary | 0x23ffff | DIK_H | DirectInput KeyCode |
Control.02.13.Secondary | 0xfffd | 0 | Disabled |
Control.02.14.Primary | 0x2effff | DIK_C | DirectInput KeyCode |
Control.02.14.Secondary | 0xfffd | 0 | Disabled |
Control.02.15.Primary | 0xeffff | DIK_BACK | DirectInput KeyCode |
Control.02.15.Secondary | 0xfffd | 0 | Disabled |
Control.02.16.Primary | 0x13ffff | DIK_R | DirectInput KeyCode |
Control.02.16.Secondary | 0xfffd | 0 | Disabled |
Notably the F1
key does not appear in the registry despite being used to show the Immediate Mode Popup Menu.
A formatted dump of the result of running reg query HKEY_CURRENT_USER\SOFTWARE\FUEL /s
follows.
HKEY_CURRENT_USER\SOFTWARE\FUEL
Version REG_DWORD 0x5887c8ac
VideoMode REG_DWORD 0x0
VideoResolution REG_DWORD 0x4380780
VideoAdapter REG_DWORD 0x0
VideoPref REG_DWORD 0x2
VideoMultisample REG_DWORD 0x8
VideoAnisotropic REG_DWORD 0x10
VideoHDRI REG_DWORD 0x1
VideoSFX REG_DWORD 0x0
VideoShadowMap REG_DWORD 0x1
BitmapEnable REG_DWORD 0x0
VideoCubeMap REG_DWORD 0x1
VideoTextureQuality REG_DWORD 0x0
VideoTextureFiltering REG_DWORD 0x2
InvertYAxis REG_DWORD 0x0
MouseSensitivity REG_DWORD 0x32
PadsSensitivity REG_DWORD 0x32
NbPlayer REG_DWORD 0x1
UserLanguageID REG_SZ 1033
HKEY_CURRENT_USER\SOFTWARE\FUEL\Controls00
NbContext REG_DWORD 0x3
Control.00.00.Primary REG_DWORD 0x1effff
Control.00.00.Secondary REG_DWORD 0xfffd
Control.00.01.Primary REG_DWORD 0x20ffff
Control.00.01.Secondary REG_DWORD 0xfffd
Control.00.02.Primary REG_DWORD 0x11ffff
Control.00.02.Secondary REG_DWORD 0xfffd
Control.00.03.Primary REG_DWORD 0x1fffff
Control.00.03.Secondary REG_DWORD 0xfffd
Control.00.04.Primary REG_DWORD 0xcbffff
Control.00.04.Secondary REG_DWORD 0xfffd
Control.00.05.Primary REG_DWORD 0xcdffff
Control.00.05.Secondary REG_DWORD 0xfffd
Control.00.06.Primary REG_DWORD 0xc8ffff
Control.00.06.Secondary REG_DWORD 0xfffd
Control.00.07.Primary REG_DWORD 0xd0ffff
Control.00.07.Secondary REG_DWORD 0xfffd
Control.00.08.Primary REG_DWORD 0x4fffff
Control.00.08.Secondary REG_DWORD 0xfffd
Control.00.09.Primary REG_DWORD 0x1ffff
Control.00.09.Secondary REG_DWORD 0xfffd
Control.00.10.Primary REG_DWORD 0x13ffff
Control.00.10.Secondary REG_DWORD 0xfffd
Control.00.11.Primary REG_DWORD 0x1cffff
Control.00.11.Secondary REG_DWORD 0xfffd
Control.00.12.Primary REG_DWORD 0x39ffff
Control.00.12.Secondary REG_DWORD 0xfffd
Control.00.13.Primary REG_DWORD 0x1dffff
Control.00.13.Secondary REG_DWORD 0xfffd
Control.00.14.Primary REG_DWORD 0x52ffff
Control.00.14.Secondary REG_DWORD 0xfffd
Control.00.15.Primary REG_DWORD 0x21ffff
Control.00.15.Secondary REG_DWORD 0xfffd
Control.00.16.Primary REG_DWORD 0x12ffff
Control.00.16.Secondary REG_DWORD 0xfffd
Control.01.00.Primary REG_DWORD 0x1fffff
Control.01.00.Secondary REG_DWORD 0xfffd
Control.01.01.Primary REG_DWORD 0x1effff
Control.01.01.Secondary REG_DWORD 0xfffd
Control.01.02.Primary REG_DWORD 0x11ffff
Control.01.02.Secondary REG_DWORD 0xfffd
Control.01.03.Primary REG_DWORD 0x20ffff
Control.01.03.Secondary REG_DWORD 0xfffd
Control.01.04.Primary REG_DWORD 0x14ffff
Control.01.04.Secondary REG_DWORD 0xfffd
Control.01.05.Primary REG_DWORD 0x15ffff
Control.01.05.Secondary REG_DWORD 0xfffd
Control.01.06.Primary REG_DWORD 0x16ffff
Control.01.06.Secondary REG_DWORD 0xfffd
Control.01.07.Primary REG_DWORD 0x17ffff
Control.01.07.Secondary REG_DWORD 0xfffd
Control.02.00.Primary REG_DWORD 0xc8ffff
Control.02.00.Secondary REG_DWORD 0xfffd
Control.02.01.Primary REG_DWORD 0xd0ffff
Control.02.01.Secondary REG_DWORD 0xfffd
Control.02.02.Primary REG_DWORD 0xcdffff
Control.02.02.Secondary REG_DWORD 0xfffd
Control.02.03.Primary REG_DWORD 0xcbffff
Control.02.03.Secondary REG_DWORD 0xfffd
Control.02.04.Primary REG_DWORD 0x1cffff
Control.02.04.Secondary REG_DWORD 0xfffd
Control.02.05.Primary REG_DWORD 0x12ffff
Control.02.05.Secondary REG_DWORD 0xfffd
Control.02.06.Primary REG_DWORD 0x1ffff
Control.02.06.Secondary REG_DWORD 0xfffd
Control.02.07.Primary REG_DWORD 0x14ffff
Control.02.07.Secondary REG_DWORD 0xfffd
Control.02.08.Primary REG_DWORD 0x15ffff
Control.02.08.Secondary REG_DWORD 0xfffd
Control.02.09.Primary REG_DWORD 0x16ffff
Control.02.09.Secondary REG_DWORD 0xfffd
Control.02.10.Primary REG_DWORD 0x17ffff
Control.02.10.Secondary REG_DWORD 0xfffd
Control.02.11.Primary REG_DWORD 0x2cffff
Control.02.11.Secondary REG_DWORD 0xfffd
Control.02.12.Primary REG_DWORD 0x2dffff
Control.02.12.Secondary REG_DWORD 0xfffd
Control.02.13.Primary REG_DWORD 0x23ffff
Control.02.13.Secondary REG_DWORD 0xfffd
Control.02.14.Primary REG_DWORD 0x2effff
Control.02.14.Secondary REG_DWORD 0xfffd
Control.02.15.Primary REG_DWORD 0xeffff
Control.02.15.Secondary REG_DWORD 0xfffd
Control.02.16.Primary REG_DWORD 0x13ffff
Control.02.16.Secondary REG_DWORD 0xfffd
For FMTK Users and Mod Developers
For FMTK Developers
Asobo BigFile Format Specification
Asobo Classes
Animation_Z
Binary_Z
Bitmap_Z
Camera_Z
CollisionVol_Z
Fonts_Z
GameObj_Z
GenWorld_Z
GwRoad_Z
Keyframer*_Z
Light_Z
LightData_Z
Lod_Z
LodData_Z
Material_Z
MaterialAnim_Z
MaterialObj_Z
Mesh_Z
MeshData_Z
Node_Z
Omni_Z
Particles_Z
ParticlesData_Z
RotShape_Z
RotShapeData_Z
Rtc_Z
Skel_Z
Skin_Z
Sound_Z
Spline_Z
SplineGraph_Z
Surface_Z
SurfaceDatas_Z
UserDefine_Z
Warp_Z
World_Z
WorldRef_Z
Asobo File Format Idioms
Asobo CRC32
Asobo LZ Compression
Asobo Arithmetic Coding Compression
Asobo Save Game File Format Specification
Asobo Audio Formats
TotemTech/ToonTech/Zouna/ACE/BSSTech/Opal Timeline
Zouna Modding Resources
Miscellaneous