|
At first I give you an overview of Local IDs that have been used by
Blizzard in their games up to Warcraft III:
|
Language |
Language ID decimal |
Language ID hexadecimal |
|
Language Neutral |
0 |
0x000 |
|
Spanish |
1024 |
0x400 |
|
Chinese (Traditional) |
1028 |
0x404 |
|
Czech |
1029 |
0x405 |
|
German |
1031 |
0x407 |
|
English (US) |
1033 |
0x409 |
|
Spanish |
1034 |
0x40A |
|
French |
1036 |
0x40C |
|
Italian |
1040 |
0x410 |
|
Japanese |
1041 |
0x411 |
|
Korean |
1042 |
0x412 |
|
Polish |
1045 |
0x415 |
|
Portuguese (Brazilian) |
1046 |
0x416 |
|
Russian |
1049 |
0x419 |
|
Thai |
1054 |
0x41E |
|
Turkish |
1055 |
0x41F |
|
Chinese (Simplified) |
2052 |
0x804 |
|
English (UK) |
2057 |
0x809 |
|
Portuguese (Portugal) |
2070 |
0x816 |
Now comes the question "Why do we need Local IDs?". The answer is
simple. Local IDs are used to keep different language versions of a file
in the same directory inside a MPQ file. According to the value set in
config.txt (which can be found inside war3.mpq) Warcraft III will
use the appropriate language. Therefore Warcraft III will use the files
with the same language ID as set in config.txt with higher priority than
language neutral files (ID = 0). Anyway, Warcraft III looks for a file it
needs only with neutral ID (0) and with the ID
set in config.txt.
Concrete example: Let's take one of the ID dependent files (see
list below). I will take UI\war3skins.txt. If there is a
war3skins.txt with ID 1031 and ID 0 in War3Patch.mpq and the
current language ID is set to 1031, Warcraft III will use the file with ID
1031 and ignore the file with ID 0 (and any other IDs). If there is a
war3skins.txt with ID 0 and none with ID 1031 and 1031 is the current ID,
Warcraft III will use the file with ID 0 and ignore any other IDs. If the
current ID is 1031 and neither a war3skins.txt with ID 1031 nor with ID 0
is in War3Patch.mpq Warcraft III will find none, even if there is a
war3skins.txt with ID 1033 (for example). In this case Warcraft III will
find a file war3skins.txt, because in war3.mpq there is also a
war3skins.txt with ID 0 (in version 1.0 Warcraft III doesn't use language
IDs for files as all files in war3.mpq are ID 0). Otherwise
Warcraft III would find no file and would maybe hang.
Local ID dependent files:
| Filename |
Used IDs |
Game |
Version |
| UI\FrameDef\GlobalStrings.fdf |
0, 1028,1029, 1031,
1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| UI\FrameDef\Glue\BattleNetChatPanel.fdf |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| UI\FrameDef\NetworkStrings.fdf |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| UI\FrameDef\UI\EscMenuOptionsPanel.fdf |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| UI\MacHelpStrings.txt |
0, 1031, 1036 |
Warcraft III |
1.04b |
| UI\MacStrings.txt |
0, 1031, 1036 |
Warcraft III |
1.04b |
| UI\war3skins.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| UI\WorldEditLayout.txt |
1031, 1036 |
Warcraft III |
1.04b |
|
UI\WorldEditStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\CommandStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\HumanAbilityStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\HumanUnitStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\ItemStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\NeutralAbilityStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\NeutralUnitStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\NightElfAbilityStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\OrcAbilityStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
| Units\UndeadAbilityStrings.txt |
0, 1028,1029, 1031, 1034,1036, 1040, 1041, 1042, 1045, 1049 |
Warcraft III |
1.04b |
Note: The column "Used IDs" is based on the german version of Warcraft
III (which is the only one I have). In other versions there may be other
IDs used. If you want to, you can inform me about which IDs are used in
other language versions of Warcraft III.
This article corresponds to Warcraft III since 1.04b.
Any question/suggestion/comment regarding this article should be sent
to
scfreak045@hotmail.com or posted into my
forum.
|