Difference between revisions of "Oldunreal Localization Project"
Neon Knight (talk | contribs) |
Neon Knight (talk | contribs) |
||
(19 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Navbox Localization}} | {{Navbox Localization}} | ||
Unreal is very easy to translate as most strings in the maps and all of the menus are stored in plain text files with file extensions relative to the language of the game. New | Unreal is [[Localization|very easy to translate]], as most strings in the maps and all of the menus are stored in plain text files with file extensions relative to the language of the game. New translations can easily be added and modified with any tool, even the simplest Notepad - they are in fact regular .txt files. However, a lot of time is needed to fully complete a translation of the game. OldUnreal can use all the help you can give. | ||
__TOC__ | __TOC__ | ||
== Language index == | == Language index == | ||
Currently, the project has support for | Currently, the project has support for 15 languages: | ||
{| style="text-align: center; width: 100%;" | {| style="text-align: center; width: 100%;" | ||
Line 20: | Line 20: | ||
| <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:Flag of Sweden.png|100px|link=Swedish .set]]<br />'''[[Swedish .set|Swedish]]'''</div> | | <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:Flag of Sweden.png|100px|link=Swedish .set]]<br />'''[[Swedish .set|Swedish]]'''</div> | ||
| <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:CatalanFlag.png|100px|link=Catalan .ctt]]<br />'''[[Catalan .ctt|Catalan]]'''</div> | | <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:CatalanFlag.png|100px|link=Catalan .ctt]]<br />'''[[Catalan .ctt|Catalan]]'''</div> | ||
| <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:Flag of the Netherlands.png|100px|link=Dutch .nlt]]<br />'''[[Dutch .nlt|Dutch]]'''</div> | | <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:Flag of the Netherlands.png|100px|link=Dutch .nlt]]<br />'''[[Dutch .nlt|Dutch]]'''</div> | ||
| <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:Flag of Norway.png|100px|link=Norwegian .not]]<br />'''[[Norwegian .not|Norwegian]]'''</div> | | <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:Flag of Norway.png|100px|link=Norwegian .not]]<br />'''[[Norwegian .not|Norwegian]]'''</div> | ||
| <div style="background-color: #DEDEDE; border-radius: 8px; font-size: 110%; height:100px">[[File:Flag of Japan.png|100px|link=Japanese .jpt]]<br />'''[[Japanese .jpt|Japanese]]'''</div> | |||
|} | |} | ||
Line 29: | Line 29: | ||
If you are fluent in these or know someone who is, take a look. Again, ''no advanced knowledge is required'' to participate. Only some basic knowledge of the game is needed. | If you are fluent in these or know someone who is, take a look. Again, ''no advanced knowledge is required'' to participate. Only some basic knowledge of the game is needed. | ||
* | == Useful tools == | ||
*'' | * [https://www.openoffice.org OpenOffice] and Libreoffice have an extension for Wiki's [http://extensions.services.openoffice.org/project/wikipublisher?intcmp=1547 WikiPublisher], which can export any text into wiki formatted text files. Give it a try if you plan on adding your translation or modifying an existing one. | ||
* [https://notepad-plus-plus.org/downloads/ Notepad++] can help you work better by treating sections like folders as well as differentiating comments from actual lines. You need to go to '''Language -> I -> INI file''' for this. | |||
== | == Shared files == | ||
The following files are shared between many games. Note that the games marked belong to the following versions: Unreal/RTNP (v227j), Unreal Tournament (v469c), Unreal Tournament 2003 (v2225) and Unreal Tournament 2004 (v3369). | |||
Also we won't mention map files here. | |||
{| class="wikitable" | |||
|- | |||
!File!!U1!!UT99!!UT2k3!!UT2k4 | |||
|- | |||
|[[ALAudio.int|ALAudio]]||yes||yes||yes||yes | |||
|- | |||
|[[Bonuspack.int|Bonuspack]]||no||no||yes||yes | |||
|- | |||
|[[Core.int|Core]]||yes||yes||yes||yes | |||
|- | |||
|[[D3D9Drv.int|D3D9Drv]]||yes||yes||no||no | |||
|- | |||
|[[D3DDrv.int|D3DDrv]]||yes||yes||yes||yes | |||
|- | |||
|[[Editor.int|Editor]]||yes||yes||yes||yes | |||
|- | |||
|[[EndGame.int|EndGame]]||yes||no||yes||yes | |||
|- | |||
|[[Engine.int|Engine]]||yes||yes||yes||yes | |||
|- | |||
|[[Entry.int|Entry]]||yes||no||yes||yes | |||
|- | |||
|[[FMODAudioDrv.int|FMODAudioDrv]]||yes||yes||no||no | |||
|- | |||
|[[Galaxy.int|Galaxy]]||yes||yes||no||no | |||
|- | |||
|[[Gameplay.int|Gameplay]]||no||no||yes||yes | |||
|- | |||
|[[GlideDrv.int|GlideDrv]]||yes||yes||no||no | |||
|- | |||
|[[IpDrv.int|IpDrv]]||yes||yes||yes||yes | |||
|- | |||
|[[IpServer.int|IpServer]]||yes||yes||no||no | |||
|- | |||
|[[MeTaLDrv.int|MeTaLDrv]]||yes||yes||no||no | |||
|- | |||
|[[OpenGLDrv.int|OpenGLDrv]]||yes||yes||no||no | |||
|- | |||
|[[Setup.int|Setup]]||yes||yes||yes||yes | |||
|- | |||
|[[SglDrv.int|SglDrv]]||yes||yes||no||no | |||
|- | |||
|[[SkaarjPack.int|SkaarjPack]]||no||no||yes||yes | |||
|- | |||
|[[SoftDrv.int|SoftDrv]]||yes||yes||no||no | |||
|- | |||
|[[Startup.int|Startup]]||yes||yes||yes||yes | |||
|- | |||
|[[UBrowser.int|UBrowser]]||yes||yes||no||no | |||
|- | |||
|[[UMenu.int|UMenu]]||yes||yes||no||no | |||
|- | |||
|[[UnrealEd.int|UnrealEd]]||yes||yes||yes||yes | |||
|- | |||
|[[UnrealGame.int|UnrealGame]]||no||no||yes||yes | |||
|- | |||
|[[UnrealI.int|UnrealI]]||yes||yes||no||no | |||
|- | |||
|[[UnrealShare.int|UnrealShare]]||yes||yes||no||no | |||
|- | |||
|[[UTClassic.int|UTClassic]]||no||no||yes||yes | |||
|- | |||
|[[UWeb.int|UWeb]]||no||yes||yes||yes | |||
|- | |||
|[[UWindow.int|UWindow]]||yes||yes||no||no | |||
|- | |||
|[[Vehicles.int|Vehicles]]||no||no||yes||yes | |||
|- | |||
|[[Window.int|Window]]||yes||yes||yes||yes | |||
|- | |||
|[[WinDrv.int|WinDrv]]||yes||yes||yes||yes | |||
|- | |||
|[[XAdmin.int|XAdmin]]||no||no||yes||yes | |||
|- | |||
|[[XGame.int|XGame]]||no||no||yes||yes | |||
|- | |||
|[[XInterface.int|XInterface]]||no||no||yes||yes | |||
|- | |||
|[[XMaps.int|XMaps]]||no||no||yes||yes | |||
|- | |||
|[[XMesaGLDrv.int|XMesaGLDrv]]||yes||yes||no||no | |||
|- | |||
|[[XOpenGLDrv.int|XOpenGLDrv]]||yes||yes||no||no | |||
|- | |||
|[[XPickups.int|XPickups]]||no||no||yes||yes | |||
|- | |||
|[[XPlayers.int|XPlayers]]||no||no||yes||yes | |||
|- | |||
|[[XWeapons.int|XWeapons]]||no||no||yes||yes | |||
|- | |||
|[[XWebAdmin.int|XWebAdmin]]||no||no||yes||yes | |||
|} | |||
== Return to Na Pali notes == | == Return to Na Pali notes == | ||
Line 67: | Line 163: | ||
== Unreal Tournament notes == | == Unreal Tournament notes == | ||
=== Audio packages with spoken lines === | === Audio packages with spoken lines === | ||
There are eleven packages with spoken lines in the game: '''Announcer''', '''BossVoice''', '''Female1Voice''', '''Female2Voice''', '''Male1Voice''', '''Male2Voice''', '''OpeningWave''', '''TutVoiceAS''', '''TutVoiceCTF''', '''TutVoiceDM''' and '''TutVoiceDOM'''. These packages are located in the '''Sounds/''' folder of the game. In the english language they just have the default '''.uax''' extension, however, other languages use the '''.<lng>_uax''' extension. | There are eleven packages with spoken lines in the game: '''Announcer''', '''BossVoice''', '''Female1Voice''', '''Female2Voice''', '''Male1Voice''', '''Male2Voice''', '''OpeningWave''', '''TutVoiceAS''', '''TutVoiceCTF''', '''TutVoiceDM''' and '''TutVoiceDOM'''. These packages are located in the '''Sounds/''' folder of the game. In the english language they just have the default '''.uax''' extension, however, other languages use the '''.<lng>_uax''' extension. The package full filenames for the currently supported languages are as follows: | ||
While | {| class="wikitable" style="width:25%;" | ||
|- | |||
! Language | |||
! Full filename | |||
|- | |||
|English | |||
|Package.uax | |||
|- | |||
|German | |||
|Package.det_uax | |||
|- | |||
|French | |||
|Package.frt_uax | |||
|- | |||
|Spanish | |||
|Package.est_uax | |||
|- | |||
|Italian | |||
|Package.itt_uax | |||
|- | |||
|Russian | |||
|Package.rut_uax | |||
|- | |||
|Polish | |||
|Package.plt_uax | |||
|- | |||
|Portuguese | |||
|Package.ptt_uax | |||
|- | |||
|Hungarian | |||
|Package.hut_uax | |||
|- | |||
|Czech | |||
|Package.czt_uax | |||
|- | |||
|Swedish | |||
|Package.svt_uax | |||
|- | |||
|Catalan | |||
|Package.ctt_uax | |||
|- | |||
|Dutch | |||
|Package.nlt_uax | |||
|- | |||
|Norwegian | |||
|Package.not_uax | |||
|- | |||
|Japanese | |||
|Package.jpt_uax | |||
|} | |||
While the English, Spanish, Deutsch, Italian and French languages have translated voicelines, other languages must have packs created for them. Check [[OldUnreal 227 Localization Project/UT Audio Lines|this link]] for how each package is structured and for which lines. These, then, should be used, '''and their filenames and assetnames respected''', in order for people to create newer packages for the languages that require them. Also, be aware that '''all''' lines are required to be translated since, even if no '''official''' assets in the game proper may use them, there ''are'' definitely mods which rely on them. | |||
==Linux== | ==Linux== | ||
Line 108: | Line 255: | ||
| English (International) || English (International) || en || .int || 9 || 1 | | English (International) || English (International) || en || .int || 9 || 1 | ||
|- | |- | ||
| German || | | German || Deutsch || de || .det || 7 || 0 | ||
|- | |- | ||
| French || Français || fr || .frt || 11 || 0 | | French || Français || fr || .frt || 11 || 0 | ||
Line 126: | Line 273: | ||
| Czech || Čeština || cz || .czt || 5 || 0 | | Czech || Čeština || cz || .czt || 5 || 0 | ||
|- | |- | ||
| Swedish || Svenska || | | Swedish || Svenska || sv || .svt || 29 || 0 | ||
|- | |- | ||
| Catalan || Català || ct || .ctt || 3 || 0 | | Catalan || Català || ct || .ctt || 3 || 0 | ||
Line 133: | Line 280: | ||
|- | |- | ||
| Norwegian || Norsk || no || .not || 20 || 0 | | Norwegian || Norsk || no || .not || 20 || 0 | ||
|- | |||
| Japanese || 日本語 || ja || .jat || 17 || 0 | |||
|} | |} | ||
Line 138: | Line 287: | ||
{| class="list" style="width:100%;" | {| class="list" style="width:100%;" | ||
|- | |- | ||
!style="width:50%;font-weight:normal;text-align:left;"| | !style="width:50%;font-weight:normal;text-align:left;vertical-align:top;"| | ||
* '''Epic Games/Digital Extremes/Legend Entertainment:''' Original English/German/French/Spanish/Italian localizations | * '''Epic Games/Digital Extremes/Legend Entertainment:''' Original English/German/French/Spanish/Italian localizations | ||
* '''[[User:Neon Knight|Neon_Knight]]''': Project coordination, Spanish maintenance. | * '''[[User:Neon Knight|Neon_Knight]]''': Project coordination, Spanish maintenance. | ||
Line 150: | Line 299: | ||
* '''[[User:UBerserker|UBerserker]]''': Italian, additional contributions. | * '''[[User:UBerserker|UBerserker]]''': Italian, additional contributions. | ||
* '''[[User:TaglesMalsto|TaglesMalsto]]''': Italian, additional contributions. | * '''[[User:TaglesMalsto|TaglesMalsto]]''': Italian, additional contributions. | ||
* '''[[User:U.highPriest|u.HighPriest]]''': Russian, localization author. | * '''[[User:U.highPriest|u.HighPriest]]''': Russian, localization author. | ||
!style="width:50%;font-weight:normal;text-align:left;vertical-align:top;"| | |||
* '''[[User:Skaarj ZR|Skaarj ZR]]''': Russian, additional contributions. | * '''[[User:Skaarj ZR|Skaarj ZR]]''': Russian, additional contributions. | ||
* '''[[User:Delacroix|Delacroix]]''': Polish, additional contributions. | * '''[[User:Delacroix|Delacroix]]''': Polish, additional contributions. | ||
Line 163: | Line 312: | ||
* '''[[User:ElectricIce|ElectricIce]]''': Swedish, additional contributions. | * '''[[User:ElectricIce|ElectricIce]]''': Swedish, additional contributions. | ||
* '''[[User:Excalidar|Excalidar]]''': Norwegian, additional contributions. | * '''[[User:Excalidar|Excalidar]]''': Norwegian, additional contributions. | ||
* '''Vapor Mermaid''': Japanese, localization contributor. | |||
|} | |} | ||
== Links for more information == | == Links for more information == | ||
*http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes | * http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes | ||
*http://www.loc.gov/standards/iso639-2/php/English_list.php | * http://www.loc.gov/standards/iso639-2/php/English_list.php | ||
*http://www.mathguide.de/info/tools/languagecode.html | * http://www.mathguide.de/info/tools/languagecode.html | ||
== See also == | == See also == |
Latest revision as of 17:43, 18 July 2022
Oldunreal Localization Project |
---|
Portals: English • German • French • Spanish • Italian • Russian • Polish • Portuguese • Hungarian • Czech • Swedish • Catalan • Dutch • Norwegian • Japanese |
Unreal: English • German • French • Spanish • Italian • Russian • Polish • Portuguese • Hungarian • Czech • Swedish • Catalan • Dutch • Norwegian • Japanese |
UT99: English • German • French • Spanish • Italian • Russian • Polish • Portuguese • Hungarian • Czech • Swedish • Catalan • Dutch • Norwegian • Japanese |
UT2004: English • German • French • Spanish • Italian • Russian • Polish • Portuguese • Hungarian • Czech • Swedish • Catalan • Dutch • Norwegian • Japanese |
Guidelines: English • German • French • Spanish • Italian • Russian • Polish • Portuguese • Hungarian • Czech • Swedish • Catalan • Dutch • Norwegian • Japanese |
Unreal is very easy to translate, as most strings in the maps and all of the menus are stored in plain text files with file extensions relative to the language of the game. New translations can easily be added and modified with any tool, even the simplest Notepad - they are in fact regular .txt files. However, a lot of time is needed to fully complete a translation of the game. OldUnreal can use all the help you can give.
Language index
Currently, the project has support for 15 languages:
In addition to the individual files, every language page has a "language guideline" page with common names for repeated entries, as well as a general guidelines page with things to bear in mind when translating.
If you are fluent in these or know someone who is, take a look. Again, no advanced knowledge is required to participate. Only some basic knowledge of the game is needed.
Useful tools
- OpenOffice and Libreoffice have an extension for Wiki's WikiPublisher, which can export any text into wiki formatted text files. Give it a try if you plan on adding your translation or modifying an existing one.
- Notepad++ can help you work better by treating sections like folders as well as differentiating comments from actual lines. You need to go to Language -> I -> INI file for this.
The following files are shared between many games. Note that the games marked belong to the following versions: Unreal/RTNP (v227j), Unreal Tournament (v469c), Unreal Tournament 2003 (v2225) and Unreal Tournament 2004 (v3369).
Also we won't mention map files here.
File | U1 | UT99 | UT2k3 | UT2k4 |
---|---|---|---|---|
ALAudio | yes | yes | yes | yes |
Bonuspack | no | no | yes | yes |
Core | yes | yes | yes | yes |
D3D9Drv | yes | yes | no | no |
D3DDrv | yes | yes | yes | yes |
Editor | yes | yes | yes | yes |
EndGame | yes | no | yes | yes |
Engine | yes | yes | yes | yes |
Entry | yes | no | yes | yes |
FMODAudioDrv | yes | yes | no | no |
Galaxy | yes | yes | no | no |
Gameplay | no | no | yes | yes |
GlideDrv | yes | yes | no | no |
IpDrv | yes | yes | yes | yes |
IpServer | yes | yes | no | no |
MeTaLDrv | yes | yes | no | no |
OpenGLDrv | yes | yes | no | no |
Setup | yes | yes | yes | yes |
SglDrv | yes | yes | no | no |
SkaarjPack | no | no | yes | yes |
SoftDrv | yes | yes | no | no |
Startup | yes | yes | yes | yes |
UBrowser | yes | yes | no | no |
UMenu | yes | yes | no | no |
UnrealEd | yes | yes | yes | yes |
UnrealGame | no | no | yes | yes |
UnrealI | yes | yes | no | no |
UnrealShare | yes | yes | no | no |
UTClassic | no | no | yes | yes |
UWeb | no | yes | yes | yes |
UWindow | yes | yes | no | no |
Vehicles | no | no | yes | yes |
Window | yes | yes | yes | yes |
WinDrv | yes | yes | yes | yes |
XAdmin | no | no | yes | yes |
XGame | no | no | yes | yes |
XInterface | no | no | yes | yes |
XMaps | no | no | yes | yes |
XMesaGLDrv | yes | yes | no | no |
XOpenGLDrv | yes | yes | no | no |
XPickups | no | no | yes | yes |
XPlayers | no | no | yes | yes |
XWeapons | no | no | yes | yes |
XWebAdmin | no | no | yes | yes |
Return to Na Pali notes
Cutscenes with subtitles
- Crashsite2
- End
- Inter1..14
- InterCrashsite
- InterIntro
- Intro1
Important Changes
Gender support has been added to Polish and French. If you are localizing Unreal for a language where articles and verbs are neutral (such as English, where "a" has no gender and verbs do not show the gender of the subject/object), this is irrelevant to you. If the verb changes depending on the gender of the subject, as in Polish or certain situations in French, consult UnrealI.plt and UnrealI.frt, and look at the lines which have a "Fem" variation, as in UnrealI.plt:
[fell] AltName="spadł" FemAltName="spadła"
Since 227j every RTNP cutscene map contains a new actor called TransitionGenderEvent. This event is using different Hud types to draw the subtitles (UnrealHud, TransitionNullHud, CSHud). You can set up your subtitle text for both, female and male or only female or only male in your localization file. The settings are depending on the genders written and spoken output in some languages. The index value is the same if you are using FemaleText and MaleText. Here is a example:
[TransitionGenderEvent] CommonText[0]="CommonText" is drawn used by female or male with sound output without written and spoken verb differences. MaleText[1]=Use "MaleText" if your verb only typically for male FemaleText[1]="FemaleTExt" this is for the ladies ;) CommonText[2]=... CommonText[3]=.. CommonText[4]=.
Unreal Tournament notes
Audio packages with spoken lines
There are eleven packages with spoken lines in the game: Announcer, BossVoice, Female1Voice, Female2Voice, Male1Voice, Male2Voice, OpeningWave, TutVoiceAS, TutVoiceCTF, TutVoiceDM and TutVoiceDOM. These packages are located in the Sounds/ folder of the game. In the english language they just have the default .uax extension, however, other languages use the .<lng>_uax extension. The package full filenames for the currently supported languages are as follows:
Language | Full filename |
---|---|
English | Package.uax |
German | Package.det_uax |
French | Package.frt_uax |
Spanish | Package.est_uax |
Italian | Package.itt_uax |
Russian | Package.rut_uax |
Polish | Package.plt_uax |
Portuguese | Package.ptt_uax |
Hungarian | Package.hut_uax |
Czech | Package.czt_uax |
Swedish | Package.svt_uax |
Catalan | Package.ctt_uax |
Dutch | Package.nlt_uax |
Norwegian | Package.not_uax |
Japanese | Package.jpt_uax |
While the English, Spanish, Deutsch, Italian and French languages have translated voicelines, other languages must have packs created for them. Check this link for how each package is structured and for which lines. These, then, should be used, and their filenames and assetnames respected, in order for people to create newer packages for the languages that require them. Also, be aware that all lines are required to be translated since, even if no official assets in the game proper may use them, there are definitely mods which rely on them.
Linux
Linux users need to encode the files in unicode (UTF-16) format to make it work.
It is also possible to create or modify localizations for the original Unreal in its 226 version. Because great changes have been done to some files and some have been completely restructured, 227 and 226 files should not be mixed up. A dedicated page for legacy localizations has been set up. Feel free to create a new localization or modify the original one there too.
Adding new languages
- Main article: Localization
If you want to add your own native language to Unreal, please use a two-letter code of your language from the ISO 639-1 list + a "t" at the end of the file extension as an acronym for the translation file.
For example:
Native Language | ISO-639-1 language code | File extension |
---|---|---|
Bulgarian | bg | .bgt |
Greek | el | .elt |
Korean | ko | .kot |
A special note regarding Core.int and its equivalents: the file contains a field called Language wit the following format:
[Language] Language="English (international)" LangId=9 SubLangId=1
The Language= field can be replaced with its translated equivalent (i.e. Spanish = Español in Core.est and German = Deutsch in Core.det). As for the LangId and SubLangId, during the setup phase, the installer calls the function GetUserDefaultLangId. This document contains all the LangIds and SubLangIds; the way to recognize those is by looking at its bitfield: the first 10 bits mark the language ID, while the rest is sublanguage ID. These are the currently implemented languages in Unreal/UT:
Language | Translated name | ISO-639-1 | Extension | LangId | SubLangId |
---|---|---|---|---|---|
English (International) | English (International) | en | .int | 9 | 1 |
German | Deutsch | de | .det | 7 | 0 |
French | Français | fr | .frt | 11 | 0 |
Spanish | Español | es | .est | 10 | 0 |
Italian | Italiano | it | .itt | 16 | 0 |
Portuguese | Português | pt | .ptt | 22 | 0 |
Polish | Polski | pl | .plt | 21 | 0 |
Russian | Pусский | ru | .rut | 25 | 0 |
Hungarian | Magyar | hu | .hut | 14 | 0 |
Czech | Čeština | cz | .czt | 5 | 0 |
Swedish | Svenska | sv | .svt | 29 | 0 |
Catalan | Català | ct | .ctt | 3 | 0 |
Dutch | Nederlands | nl | .nlt | 19 | 0 |
Norwegian | Norsk | no | .not | 20 | 0 |
Japanese | 日本語 | ja | .jat | 17 | 0 |
Credits
|
|
---|
Links for more information
- http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
- http://www.loc.gov/standards/iso639-2/php/English_list.php
- http://www.mathguide.de/info/tools/languagecode.html
See also
- Localization, for an in-depth overview of how the Unreal Engine handles localization.