Difference between revisions of "GXT"
(→Tools) |
m (→Tools: stories use vc format) |
||
Line 585: | Line 585: | ||
==Tools== | ==Tools== | ||
* {{Icon|2}} [http://gtamp.com/GTA2/gta2gxt.rar GTA2 GXT Editor v2.0] - by {{U|Delfi}} | * {{Icon|2}} [http://gtamp.com/GTA2/gta2gxt.rar GTA2 GXT Editor v2.0] - by {{U|Delfi}} | ||
− | * {{Icon|trilogy}} [http://web.archive.org/web/20070102011246/http://zverik.rbcmail.ru/gxtedit13.zip Grand Theft Auto GXT Editor v1.3] - by Zverik, retrieved from archive.org | + | * {{Icon|trilogy}} {{Icon|LCS}} {{Icon|VCS}} [http://web.archive.org/web/20070102011246/http://zverik.rbcmail.ru/gxtedit13.zip Grand Theft Auto GXT Editor v1.3] - by Zverik, retrieved from archive.org |
− | * {{Icon|trilogy}} {{Icon|4}} [http://sannybuilder.com/forums/viewtopic.php?pid=9533 SAGE v0.9.7] - by AleX AciD | + | * {{Icon|trilogy}} {{Icon|LCS}} {{Icon|VCS}} {{Icon|4}} [http://sannybuilder.com/forums/viewtopic.php?pid=9533 SAGE v0.9.7] - by AleX AciD |
− | *{{Icon|3}} {{Icon|VC}} [http://www.gtagaming.com/downloads/gta-vice-city/tools/151 GTA Texter v0.93] - by feroCT5 | + | *{{Icon|3}} {{Icon|VC}} {{Icon|LCS}} {{Icon|VCS}} [http://www.gtagaming.com/downloads/gta-vice-city/tools/151 GTA Texter v0.93] - by feroCT5 |
<!--*{{Icon|3}} [http://www.gtatools.com/filedb/action.php?action=file&id=22 GTA 3 GXT] - by {{U|JernejL}}--> | <!--*{{Icon|3}} [http://www.gtatools.com/filedb/action.php?action=file&id=22 GTA 3 GXT] - by {{U|JernejL}}--> | ||
*{{Icon|3}} [http://www.thegtaplace.com/downloads/f562-gxt-editor-1-3 GXT Editor 1.3] - by Jevon | *{{Icon|3}} [http://www.thegtaplace.com/downloads/f562-gxt-editor-1-3 GXT Editor 1.3] - by Jevon | ||
− | *{{Icon|VC}} [[GXT Editor (VC)|GTA: Vice City GXT Editor v1.2]] - by {{U|CyQ}} | + | *{{Icon|VC}} {{Icon|LCS}} {{Icon|VCS}} [[GXT Editor (VC)|GTA: Vice City GXT Editor v1.2]] - by {{U|CyQ}} |
*{{Icon|SA}} [http://web.archive.org/web/20080417084055/http://media.gtanet.com/hosted/gtatools.com/filedb/files/gta_sa_gxt.rar GTA San Andreas Text Editor] - by {{U|JernejL}}, retrieved from archive.org | *{{Icon|SA}} [http://web.archive.org/web/20080417084055/http://media.gtanet.com/hosted/gtatools.com/filedb/files/gta_sa_gxt.rar GTA San Andreas Text Editor] - by {{U|JernejL}}, retrieved from archive.org | ||
*{{Icon|SA}} [http://www.thegtaplace.com/downloads/f568-gta-san-andreas-gxt-editor-1-3 GTA: San Andreas GXT Editor v1.3] - by {{U|Hammer83}} | *{{Icon|SA}} [http://www.thegtaplace.com/downloads/f568-gta-san-andreas-gxt-editor-1-3 GTA: San Andreas GXT Editor v1.3] - by {{U|Hammer83}} |
Revision as of 02:48, 21 December 2010
This article may need to be rewritten. Please help improve this article. The discussion page may contain suggestions. |
A GTA Text (GXT) file contains almost all texts that are displayed on the screen of GTA2 and above. The location of those files may differ between the various game versions, but they are usualy located in a text\
folder inside the games installation directory. Except for GTA 2 There is one GXT file for each language, but the number of gxt files does not define the number of supported languages by the game.
File Format
Each GXT file contains certain tables with entries. And each entry has a unique CRC identifier and a normal text.
GTA San Andreas / GTA IV Format
Header
The header contains data about the tables and their subtables.
INT32 - 4b - Version (0x080004 for ASCII, 0x100004 for UTF-16) CHAR[4] - 4b - TABL
Table Block
The Table Block contains data about the subtables and their offsets.
INT32 - 4b - Blocksize //Array of [Blocksize / 12 Entries] CHAR[8] - 8b - Subtablename INT32 - 4b - Offset
The Offset of the subtable points to an 8-byte Char Array with the subtable's name, followed by TKEY. For the MAIN Table this points directly to TKEY!
TKEY and TDAT
TKEY
The TKEY Block of an subtable contains the CRC32-values of the entrytitles. The game calculates the CRC32-value out of a given string and checks if they exist in the GXT.
CHAR[4] - 4b - TKEY INT32 - 4b - Blocksize //Array of [Blocksize / 8] INT32 - 4b - Entryoffset INT32 - 4b - CRC32 (Entryname)
The TKEY block is directly followed by the TDAT Block which contains the contents of the entries. The Entryoffset is relative to the TDAT + 4 offset.
TDAT
CHAR[4] - 4b - TDAT INT32 - 4b - Blocksize
From here the entryoffset of each entry points to the content. The content can have different sizes. However it always ends in '\0'! For Example "Hello!" needs to be transformed to "Hello!\0" here and this gives a size of 6 bytes (To tell it in a short form content is a null-terminated string). If this is the 1st content in TDAT the next got an offset of 0x06!
Encodings
GTA SA : Windows-1252 always. GTA IV(8 bits) : Custom Encoding GTA IV(16 bits) : Well, its a fake 16 bits encoding, all you need to take care about first 8 bits(1 byte). Eg. A3F4 C2DD E922, read only A3, C2, E9.
GTA III / GTA Vice City Format
Vice City and GTA III GXTs are very similar to the SA GXTs. In this article all those additional infos are not listed.
Header
The header contains data about the tables and their subtables.
CHAR[4] - 4b - TABL
Table Block
INT32 - 4b - Blocksize //Array of [Blocksize / 12 Entries] CHAR[8] - 8b - Subtablename INT32 - 4b - Offset
TKEY and TDAT
TKEY
CHAR[4] - 4b - TKEY INT32 - 4b - Blocksize //Array of [Blocksize / 12] INT32 - 4b - Entryoffset CHAR[8] - 8b - Entryname
Unlike San Andreas entrynames are stored directly in 8b chararrays here. This means to calculate the entries in the table you have to divide the blocksize through 12. The Entryoffsets are relative to the end of the "TDAT Header". This means you have to add the entryoffset to the stream position after the TDAT size. (TDAT_Offset + 8 + Entryoffset), to get to the entry.
TDAT
CHAR[4] - 4b - TDAT INT32 - 4b - Blocksize
The TDAT-Block contains the strings which are displayed by the game. But here are some differences towards San Andreas. The strings are encoded in unicode, which means that each character takes the space of 2 characters (which means 2 bytes per character). Mostly the last byte is 0x00.
GTA2 Format
Except for additional header at beginning GTA2 GXT files are identical to GTA3 format.
The first 4 bytes can be one of following, and identify the language for the file: GBLE - english GBLF - french GBLG - german GBLI - italian GBLS - spanish GBLJ - japanese
A uint16 file version follows which is always 100 (decimal)
Text is stored with some specialities, characters are 16 bit while only one of these bytes is actual character the other may store special data such as gang message icon id, etc.. the text is zero-terminated.
The rest of file is same as gta3 with familiar tkey & tdat sections.
GXT Editing
Symbols & Colorcodes (Control Character)
Symbol | Description | ||
---|---|---|---|
GTA III | Vice City | San Andreas | |
~1~ | number within a text | ||
~a~ | text within a text | ||
~b~ | blue text | blue text | blue text |
~d~ | ▼-icon | ||
~g~ | green text | hot pink text | green text |
~h~ | white text | highlight | |
~j~ | ? | ||
~k~ | key (followed by keypresses) | ||
~l~ | black text | forces text to default color and ignores set colors |
black text |
~n~ | newline | ||
~m~ | ? | ||
~o~ | pink text | ? | |
~p~ | purple text | purple text | purple text |
~q~ | plum pink text | ||
~r~ | red text | hot pink text | red text |
~s~ | reset color to standard | ||
~t~ | green text | ||
~u~ | ▲-icon | ||
~v~ | ? | ||
~w~ | gray text | gray text | white text |
~x~ | light blue text | ? | |
~y~ | yellow text | yellow text | yellow text |
~z~ | subtitle (doesn't shown when the Subtitles option is off) | ||
~<~ | ◄-icon | ||
~>~ | ►-icon | ||
Special symbols (otherwise normal or blank) | |||
" | triangle icon | ||
< | ◄ icon | armor icon | |
> | ► icon | wanted level (star) icon | |
@ | |||
^ | |||
_ | |||
{ | heart icon | ||
| | circle icon | ||
} | dollar sign icon (not "$") |
Note that using "~" by itself will crash the game when the game attempts to display it.
Keypresses
You can use opcode 00E1 to check if these keys are being pressed.
Foot Controls
Key | Game | Entry |
---|---|---|
Fire | ~PED_FIREWEAPON~ | |
Next Weapon / Target | ~PED_CYCLE_WEAPON_RIGHT~ | |
Previous Weapon / Target | ~PED_CYCLE_WEAPON_LEFT~ | |
Group Ctrl Foward | ~GROUP_CONTROL_FWD~ | |
Group Ctrl Back | ~GROUP_CONTROL_BWD~ | |
Conversation - No | ~CONVERSATION_NO~ | |
Conversation - Yes | ~CONVERSATION_YES~ | |
Foward | ~GO_FORWARD~ | |
Backwards | ~GO_BACK~ | |
Left | ~GO_LEFT~ | |
Right | ~GO_RIGHT~ | |
Zoom In | ~PED_SNIPER_ZOOM_IN~ | |
Zoom Out | ~PED_SNIPER_ZOOM_OUT~ | |
Enter+Exit | ~VEHICLE_ENTER_EXIT~ | |
Change Camera | ~CAMERA_CHANGE_VIEW_ALL_SITUATIONS~ | |
Jump | ~PED_JUMPING~ | |
Sprint | ~PED_SPRINT~ | |
Target / Aim Weapon | ~PED_LOCK_TARGET~ | |
Crouch | ~PED_DUCK~ | |
Action | ~PED_ANSWER_PHONE~ | |
Walk | ~SNEAK_ABOUT~ | |
Look Behind | ~PED_LOOKBEHIND~ | |
Look Left | [1] | ~PED_1RST_PERSON_LOOK_LEFT~ |
Look Right | [1] | ~PED_1RST_PERSON_LOOK_RIGHT~ |
Look Up | [1] | ~PED_1RST_PERSON_LOOK_UP~ |
Look Down | [1] | ~PED_1RST_PERSON_LOOK_DOWN~ |
Next Target | [1] | ~PED_CYCLE_TARGET_LEFT~ |
Previous Target | [1] | ~PED_CYCLE_TARGET_RIGHT~ |
Center Camera | [1] | ~PED_CENTER_CAMERA_BEHIND_PLAYER~ |
Vehicle Controls
Key | Game | Entry |
---|---|---|
Fire | ~VEHICLE_FIREWEAPON~ | |
Secondary Fire | ~VEHICLE_FIREWEAPON_ALT~ | |
Accelerate | ~VEHICLE_ACCELERATE~ | |
Brake / Reverse | ~VEHICLE_BRAKE~ | |
Left | ~VEHICLE_STEERLEFT~ | |
Right | ~VEHICLE_STEERRIGHT~ | |
Steer Foward / Down | ~VEHICLE_STEERDOWN~ | |
Steer Back / Up | ~VEHICLE_STEERUP~ | |
Enter+Exit | ~VEHICLE_ENTER_EXIT~ | |
Trip Skip | ~CONVERSATION_YES~ | |
Change Radio Station | ~VEHICLE_CHANGE_RADIO_STATION~ | |
Next Radio Station | ~VEHICLE_RADIO_STATION_UP~ | |
Previous Radio Station | ~VEHICLE_RADIO_STATION_DOWN~ | |
User Track Skip | none | |
Horn | ~VEHICLE_HORN~ | |
Sub-mission | ~TOGGLE_SUBMISSIONS~ | |
Change Camera | ~CAMERA_CHANGE_VIEW_ALL_SITUATIONS~ | |
Handbrake | ~VEHICLE_HANDBRAKE~ | |
Mouse Look | ~VEHICLE_MOUSELOOK~ | |
Look Left | ~VEHICLE_LOOKLEFT~ | |
Look Right | ~VEHICLE_LOOKRIGHT~ | |
Turret Left / Special Ctrl Left | ~VEHICLE_TURRETLEFT~ | |
Turret Right / Special Ctrl Right | ~VEHICLE_TURRETRIGHT~ | |
Turret Up / Special Ctrl Up | ~VEHICLE_TURRETUP~ | |
Turret Down / Special Ctrl Down | ~VEHICLE_TURRETDOWN~ | |
Look Behind | [2] | ~VEHICLE_LOOKBEHIND~ |
^[1] Classic controls key only
^[2] Hardcoded key in III and VC, unavailable in SA
Unused
Here are some keypress codes only used during development stage. They were removed or replaced later but probably they are still working. Maybe this is useful for further research. Some are only used in PS2 Version.
~TAKE_SCREEN_SHOT~ |
~SWITCH_DEBUG_CAM_ON~ |
~TOGGLE_DPAD~ |
~NETWORK_TALK~ |
Tools
- GTA2 GXT Editor v2.0 - by Delfi
- Grand Theft Auto GXT Editor v1.3 - by Zverik, retrieved from archive.org
- SAGE v0.9.7 - by AleX AciD
- GTA Texter v0.93 - by feroCT5
- GXT Editor 1.3 - by Jevon
- GTA: Vice City GXT Editor v1.2 - by CyQ
- GTA San Andreas Text Editor - by JernejL, retrieved from archive.org
- GTA: San Andreas GXT Editor v1.3 - by Hammer83
- A-GXT Editor v1.0a - by Aschratt
- X GXT Editor v2.1 - by xmen
External links
- List of all GXT entries from GTA III to Vice City Stories
- Some of GTA IV GXT text entry names
- GTAForums: List of usable characters
Grand Theft Auto IV | |
---|---|
File Formats | .dat • .gxt • .ide • .img • .ipl • .nod • .sco • .rpf • .rrr • .wad • .wbd/.wbn • .wdd • .wdr • .wft • .whm • .wpl • .wtd |
Documentation | Audio • Bink Video • Cryptography • Cutscenes • GXT Text • Image listing • Keycodes • Map Listing • Native functions • Paths • Radar Blips • Radio Stations • Saves • Scenarios • VTable • Weapons |
Tools | ASI Loader • ENBSeries • G-Texture • GIMS IV • Ingame WPL Editor • IV Needle • OpenIV • SparkIV • XLiveLess • WPL Manager • X Mod Installer Alice • C++ Script Hook • .NET Script Hook • Scocl |
Tutorials | Importing Textures with OpenIV • Importing Textures with SparkIV |
Modifications | GTA Connected • Gostown IV • Four Multiplayer • IV Multiplayer • CitizenMP:IV Reloaded |
Useful links | Community portal • Discussion forums • Modding forums • Mods on GTAGarage.com |