STRG (Metroid Prime)

The STRG format is used to store string tables. Each STRG file can contain any number of strings, as well as variations for different languages; the Prime series supports English, French, German, Spanish, Italian, Dutch, and Japanese. The format's been updated in each game it appeared in, so no two games share the exact same STRG format, although it's very similar between all of them.

Header
These are the possible version numbers:

Languages
Following is a table that describes which languages appear in the file.

String Names
In Echoes, strings can have names attached to them. Note that this table only appears in the Echoes STRG format; for Prime 1, skip ahead to the string tables.

Each entry is structured as follows:

After every name entry comes all the names in the form of a large UTF-8 string array. The names are zero-terminated, and they're sorted in alphabetical order; the sorting is case-sensitive, so 'Z' will appear before 'a'.

String Tables
Last are the actual string tables themselves. Each table contains some metadata followed by a series of UTF-16 strings. The number of strings is declared in the header; there will be one of these tables present per language present in the file.

Tools

 * STRG Editor by Parax - supports creating/editing and resaving STRG files in Metroid Prime 1/2's formats