Translation

From Blood Wiki
(Difference between revisions)
Jump to: navigation, search
(Text encoding)
(Text encoding)
Line 27: Line 27:
 
{{important|National encodings (ones Windows Notepad uses) are not suppored. All files should USE UTF-8 encoding.}}
 
{{important|National encodings (ones Windows Notepad uses) are not suppored. All files should USE UTF-8 encoding.}}
  
{{bug|It is also important UTF-8 files to have no BOM, avoiding this rule could lead to engine crash.}}
+
{{bug|It is also important UTF-8 files to have no BOM (Byte-Order-Mark), avoiding this rule could lead to engine crash.}}
  
 
Tools to edit text files in UTF-8:
 
Tools to edit text files in UTF-8:

Revision as of 14:30, 22 February 2016

Contents

Introduction

Blood Omnicide support translation packs in the form of separate PK3 files.

This article will explain how to edit them, creating your own localization pack.

Translation packs follows this rules:

  • Translate texts, textures, sounds, everything
  • Language can be chosen without quitting the game
  • More translation packs should be created to allow support for more languages

Names

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.

A number in the end is used to break up locale to separate PK3 files (or make update pack later), engine reads them in the order: L-espanol0.PK3, L-espanol1.PK3, L-espanol2.PK3 etc.

Text encoding

All text files should use Unicode (UTF-8) encoding with no BOM (Byte-Order-Mark).

Important: National encodings (ones Windows Notepad uses) are not suppored. All files should USE UTF-8 encoding.
Bug: It is also important UTF-8 files to have no BOM (Byte-Order-Mark), avoiding this rule could lead to engine crash.

Tools to edit text files in UTF-8:

Contents of translation pack

  • kain - base folder
    • locales
      • localename.nsx - heading locale script
      • localename.tga - а picture to show in the locale selection menu
      • locale/ - general locales folder
        • localename/ - base locale folder
        • fonts/ - font definition files and font faces (see QFONT files)
        • maps/ - map translation strings (see NSX files)
        • video/- subtitles translation for FMV' (see DPSUBS files)
        • credits.nsx - translation strings for credits
        • gameover.nsx - translation strings for game over screen
        • gamestats.nsx - translation strings for game stats
        • menu.nsx - translation strings for menus
        • prestige.nsx - translation strings for prestige status
        • speech.nsx - translation strings for speech
        • ui.ns2 - user interface initialization (see NS2 files)

How to make a translation

  1. Download sample pack;
  2. Unpack it so you will have access to all files
  3. Rename it to your language
  4. Find .TTF/.OTF fonts that matches your language and place them to the pack (replace default fonts);
  5. Translate all strings files (.nsx);
  6. Translate cinematics subtitles (.dpsubs)
  7. Translate ui.ns2;
  8. Create translated worldmap tile
  9. Create a picture to show in the locale selection menu;
  10. Edit heading locale script (set author and version);
  11. (Optional) Add dialogue override files
  12. (Optional) Add cinematics sound override files
  13. Make a PK3 file;

Speech interactive tags

There is two modes for speech subtitles - classic and interactive. Classic mode shows subtitles at the bottom of the screen, interactive subtitles are drawn ontop of NPC they are spoken by.

Interactive mode is a bit different in representation, so there is special tags to let speech to be shown best way in classic and interactive mode:

  • {text} - will be only shown in classic mode
  • [text] - will be only shown in interactive mode
  • <number> - time marker for interactive subtitles parts. "some<2>speech" will make subtiles to be rendered as two parts, with second part to be shown 2 seconds since speech was started.

Testing speech in game

 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

Here is the list of reference locale packs that you can use as a base:

Blood Omnicide v0.1

English: download

Blood Omnicide Demo (Using old translation layout)

English: download
Russian: download
Espanol: download
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox