Editing Translation
Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | |||
− | |||
== Introduction == | == Introduction == | ||
− | Blood Omnicide support translation packs in the form of separate [[PK3 | PK3 files]]. This article will explain how to edit them, creating your own localization pack. | + | Blood Omnicide support translation packs in the form of separate [[PK3 | PK3 files]]. |
+ | |||
+ | This article will explain how to edit them, creating your own localization pack. | ||
Translation packs follows this rules: | Translation packs follows this rules: | ||
Line 15: | Line 15: | ||
== Names == | == Names == | ||
− | Standart naming for locale file is '''L-localename0.PK3''', where localename is | + | Standart naming for locale file is '''L-localename0.PK3''', where localename is language identificator. |
Example: localname is "espanol" and pack name will be '''L-espanol0.PK3'''. | Example: localname is "espanol" and pack name will be '''L-espanol0.PK3'''. | ||
Line 34: | Line 34: | ||
** '''locales''' | ** '''locales''' | ||
*** ''localename.nsx'' - heading locale script | *** ''localename.nsx'' - heading locale script | ||
− | *** ''localename.tga'' - а picture to | + | *** ''localename.tga'' - а picture to show in the locale selection menu |
*** '''locale/''' - general locales folder | *** '''locale/''' - general locales folder | ||
**** '''localename/''' - base locale folder | **** '''localename/''' - base locale folder | ||
Line 44: | Line 44: | ||
***** ''characters.nsx'' - [[NSX (Translation string files) | translation strings]] for character names | ***** ''characters.nsx'' - [[NSX (Translation string files) | translation strings]] for character names | ||
***** ''credits.nsx'' - translation strings for credits | ***** ''credits.nsx'' - translation strings for credits | ||
− | ***** ''gameover | + | ***** ''gameover.nsx'' - translation strings for game over screen |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
***** ''gamestats.nsx'' - translation strings for game stats | ***** ''gamestats.nsx'' - translation strings for game stats | ||
***** ''mapnames.nsx'' - translation strings for map names (keys are filenames under kain/maps, values are names) | ***** ''mapnames.nsx'' - translation strings for map names (keys are filenames under kain/maps, values are names) | ||
Line 62: | Line 57: | ||
# Download sample pack; | # Download sample pack; | ||
− | # Unpack it so | + | # Unpack it so you will have access to all files |
# Rename it to your language | # Rename it to your language | ||
# Find .TTF/.OTF fonts that matches your language and place them to the pack (replace default fonts); | # Find .TTF/.OTF fonts that matches your language and place them to the pack (replace default fonts); | ||
− | # Translate all | + | # Translate all strings files (.nsx); |
# Translate cinematics subtitles (.dpsubs) | # Translate cinematics subtitles (.dpsubs) | ||
# Translate ui.ns2; | # Translate ui.ns2; | ||
Line 75: | Line 70: | ||
# Make a [[PK3]] file; | # Make a [[PK3]] file; | ||
− | == | + | == How speech works on Blood Omnicide == |
+ | Speeches are activated by a game scripts which calls a ''character'':''group'':''key'' name to be played. | ||
− | + | Characters are defined in <locale>/strings/characters.nsx file (also can be defined in any other .nsx file under <locale>/strings/ in the [character] group). | |
− | + | Groups are speech groups, defined inside NSX files in the ''[speech_<groupname>]'' style. There are separate groups for kain/monologues, scene speech, gossip etc. | |
− | Character+Grops+Keys form | + | Keys are key name inside speech groups, a value given to that key sets a text for speech. |
+ | |||
+ | Character+Grops+Keys form an unique speech, which have a text (a value of key) and points to sound file. The sound file path is expected to be: <basepath>/key.ogg or / <speechbase>/key.wav. The ''basepath'' is a basepath for speech files which are set per-character in the [speech] group (defined in very top of speech.nsx). For example, basepath for speech of kain character is 'speech/kain/'. | ||
Example: | Example: | ||
Line 96: | Line 94: | ||
* kain:kain:aver2 - points to speech/kain/aver2 | * kain:kain:aver2 - points to speech/kain/aver2 | ||
− | + | == The speech text == | |
− | Speech text are subtitles text | + | Speech text are subtitles text which also have gaps to break speech in several parts to be played in sequence. it is important to break speech text into a parts as blood omen have very large speech files, more than 50 seconds, which will take a half-screen for a text if shown all at once. |
− | The | + | The gaps are set in <seconds> tags, where ''seconds'' is a time, when text after <>-tag will be displayed. |
+ | |||
+ | The last <seconds> tag sets a length of whole speech, so if speech sound file get missing, speech are displayed anyway. | ||
Example: | Example: | ||
Line 106: | Line 106: | ||
This breaks aver1 speech into 2 parts: | This breaks aver1 speech into 2 parts: | ||
− | + | - The gate of Avernus opened slowly before me, daring me to cross the threshold. | |
− | + | - Who was I to reject such an invitation? (starts at 5.5 seconds). | |
The whole length of speech is 9 seconds. | The whole length of speech is 9 seconds. | ||
− | == | + | == Testing speech in game == |
+ | {{cmd|cl_cmd playspeech <type> <character> <number>| [[console]] command helps to test any speech available at current map.}} | ||
− | + | Types are: | |
− | + | *speech - standart speech | |
− | + | *whisp - voice 'in head of kain' (like mortanius comments), always player in classic mode | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | * | + | |
− | * | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | ' | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
== Sample locale packs == | == Sample locale packs == | ||
Here is the list of reference locale packs that you can use as a base: | Here is the list of reference locale packs that you can use as a base: | ||
− | ''' Blood Omnicide v0.1 | + | ''' Blood Omnicide v0.1 ''' |
− | + | ||
− | + | ||
− | : | + | :English: [http://omnicide.legacy-of-kain.ru/files/omnicide/0.1/locales/L-default0.PK3 download] |
''' Blood Omnicide Demo ''' (Using old translation layout) | ''' Blood Omnicide Demo ''' (Using old translation layout) |