Provided by: xoreos-tools_0.0.5-1build4_amd64 bug

NAME

       xml2tlk — XML to BioWare TLK converter

SYNOPSIS

       xml2tlk [options] [input_file] output_file

DESCRIPTION

       xml2tlk  converts  XML files created by the tlk2xml(1) tool back into the BioWare TLK format.  For a more
       in-depth description of TLK files, please see the man page for  the  tlk2xml(1)  tool.   Also  note  that
       currently, only the non-GFF versions, V3.0 and V4.0, can be created by xml2tlk.

       The format of the input XML is pretty simple and straight-forward.

       <?xml version="1.0" encoding="utf-8" standalone="yes"?>
       <tlk language="0">
         <string id="1">Continue</string>
         <string id="2" sound="hello">Well hello there!</string>
         <string id="3" sound="bye" soundlength="0.5">Bye!</string>
         <string id="4" soundid="23">Who are you?</string>
       </tlk>

       The  root  element is “tlk”, and it can have an optional language property.  That language ID can also be
       given on the command line, and it then overrides the one in the input XML.   When  creating  a,  versions
       V3.0 and V4.0 need a language ID, while versions V0.2 and V0.5 ignore the language ID.

       Each  child  tag  of the root element has to be a “string” element, and each “string” element requires an
       “id” property.  The ID is the string reference (StrRef) for the  text  line,  and  the  contents  of  the
       “string” element is the text itself.  The whole file has to be UTF-8 encoded.

       Version  V3.0  allows  the  following  extra properties on a “string”: “sound” (a resource reference of a
       voice-over for this line, ≤ 16 characters), “soundlength” (a floating point number denoting the length of
       the sound file in seconds), “volumevariance” (unused by the games) and  “pitchvariance”  (unused  by  the
       games).

       Version  V4.0  allows  the  extra  property “soundid” on a “string”, which is a numerical references to a
       voice-over line.

       Versions V0.2 and V0.5 do not allow any extra properties.

       Because TLK files contain localized string data, it is important to know the encoding of  those  strings.
       Unfortunately,  the TLK files do not contain information about the encoding.  Version 3.0 and 4.0 contain
       a language identifier, but the meaning of that varies between games.   V0.2  and  V0.5  even  lack  those
       completely.   However,  due to the Huffman-nature of V0.5 strings, the encoding there is fixed to little-
       endian UTF-16, and strings in V0.2 files are also usually in little-endian UTF-16 (with the exceptions of
       files found in the Nintendo DS game Sonic Chronicles: The Dark  Brotherhood).   To  manually  select  the
       encoding, this tool provides a wide range command line options for various encodings.

       Alternatively,  the  game  this  TLK  is  from  can be specified and xml2tlk will write the strings in an
       appropriate encoding for that game and the language ID.  Please note that this does not work for the game
       Sonic Chronicles: The Dark Brotherhood, since its TLK files do not provide a language ID.

OPTIONS

       -h
       --help
             Show a help text and exit.
       --version
             Show version information and exit.
       -3
       --version30
             Write a V3.0 TLK file.
       -4
       --version40
             Write a V4.0 TLK file.
       -l id
       --language id
             Override the TLK language ID.
       --cp1250
             Write strings as Windows CP-1250.

             Eastern European, Latin alphabet.
       --cp1251
             Write strings as Windows CP-1251.

             Eastern European, Cyrillic alphabet.
       --cp1252
             Write strings as Windows CP-1252.

             Western European, Latin alphabet.
       --cp932
             Write strings as Windows CP-932.

             Japanese, extended Shift-JIS.
       --cp936
             Write strings as Windows CP-936.

             Simplified Chinese, extended GB2312 with GBK codepoints.
       --cp949
             Write strings as Windows CP-949.

             Korean, similar to EUC-KR.
       --cp950
             Write strings as Windows CP-950.

             Traditional Chinese, similar to Big5.
       --utf8
             Write strings as UTF-8.
       --utf16le
             Write strings as little-endian UTF-16.
       --utf16be
             Write strings as big-endian UTF-16.
       --nwn
             Write strings in an encoding appropriate for Neverwinter Nights.
       --nwn2
             Write strings in an encoding appropriate for Neverwinter Nights 2.
       --kotor
             Write strings in an encoding appropriate for Knights of the Old Republic.
       --kotor2
             Write strings in an encoding appropriate for Knights of the Old Republic II.
       --jade
             Write strings in an encoding appropriate for Jade Empire.
       --witcher
             Write strings in an encoding appropriate for The Witcher.
       --dragonage
             Write strings in an encoding appropriate for Dragon Age: Origins.
       --dragonage2
             Write strings in an encoding appropriate for Dragon Age II.
       input_file
             The XML file to convert.  If no input file is specified, the XML data  is  read  from  stdin.   The
             encoding of the XML stream must always be UTF-8.
       output_file
             The TLK file will be written there.

EXAMPLES

       Convert file1.xml into a V3.0 CP-1252 TLK file:

             $ xml2tlk --version30 --cp1252 file1.xml file2.tlk

       Convert file1.xml into a V4.0 UTF-8 TLK file and override the language ID:

             $ xml2tlk --version40 --utf8 --language 1 file1.xml file2.tlk

       Convert file1.xml into a V3.0 TLK file from Neverwinter Nights:

             $ xml2tlk --version30 --nwn file1.xml file2.tlk

       Convert  the  UTF-8  TLK file1.tlk into an XML file on stdout with tlk2xml(1), modify it using sed(1) and
       write the result back into a TLK:

             $ tlk2xml --utf8 file1.tlk | sed -e 's/gold/candy/g' | xml2tlk \
               --utf8 --version30 file2.tlk

SEE ALSO

       tlk2xml(1), xml2ssf(1)

       More information about the xoreos project can be found on its website: https://xoreos.org/.

AUTHORS

       This program is part of the xoreos-tools package, which in turn is part of the xoreos  project,  and  was
       written by the xoreos team.  Please see the AUTHORS file for details.

Debian                                            July 23, 2015                                       XML2TLK(1)