prevnext   » SZS: Wiimms SZS Toolset » wszst: Wiimms SZS Tool » wszst text

wszst text

Read each source file (binary or text, but never archives) and write the content as text file. Wildcards and pipe characters are parsed.

The file extension of the new file is usually .txt. Currently supported file formats are BMG, GEOHIT, ITEMSLOT, KCL, KMG, KMP, LEX, OBJFLOW, PAT and the related text formats.

Contents

1.   Syntax

wszst TEXT [source]...

2.   Options

Options
Option Param Description
--no-wildcards Disable wildcard parsing and use each filename exactly as specified.
--in-order Process the input files in order of the command line and don't delete duplicates.
-i --ignore Ignore non existing source files without warning.
--decode If a extracted file is known and can be decoded, do it. --dec is a short cut.
--kmg-limit seconds Limit the run time for Ballon Battle and Coin Runners to the given time in SECONDS. Smaller values are not changed. The limitation is carried out after loading a binary file and before scanning a text file. Value 0 disables this option.
--kmg-copy id Make all 10 slots of a KMG file equal after loading a binary file and before scanning a text file. ID is either a slot index (0..9) or a slot name (A11..A25) and declares the source slot. Value -1 disables this option. If ID contains brackets [...], then it is analysed as an arena name and the part between the brackets is searched for attributes A11..A25.
-H --no-header Suppress the syntax information section in decoded text files.
-B --brief Suppress information lines in decoded text files. This includes syntax information (--no-header). If set twice, the output of unneeded sections is also suppressed.
--delta Print only modified records or sections on text output. Supported file formats until now: GEOHIT, ITEMSLOT, KMG and OBJFLOW. If set twice, limit output to modified records (only relevant for ITEMSLOT).
--diff On text output, print only differences from original files. It's a short cut for --no-header --brief --brief --delta --delta. Additional, the output is limited to data sections.
-X --export Enable the export mode and create small and machine readable text files for easy post processing. The option works similar like -HBB for KMP and like -HBl1 for BMG text files.
-P --no-param Disable parameter support in decoded KMP text files.
--bmg-endian name Force an endian for new BMG files. Accepted values are BIG or BE for big endian, LITTLE or LE for little endian and AUTO for automatic detection (default).

Mario Kart Wii uses big endian; the default if no other endian is defined.

--bmg-encoding name Force an encoding for new BMG files. Accepted encoding names are CP-1252, UTF-16BE (or UTF-16), SHIFT-JIS, UTF-8 and AUTO for automatic detection (default). Same keywords without minus signs are accepted too.

Mario Kart Wii uses encoding UTF-16BE; the default if no other encoding is defined.

--bmg-inf-size size Defines the 'INF1' size of new BMG files between 4 and 1000. The first 4 bytes of a INF1 record is an offset into the string pool and the remaining bytes the attributes. Maximal 40 attribute bytes are supported and additional bytes are assumed to be NULL. All BMG files of MKW have a size of 8.
--bmg-mid [mode] Control the creation of BMG section MID1. Suppress the creation, if mode is OFF. Force the creation, if mode is ON. On mode AUTO (default), the source is analysed for the decision.
--force-attrib attrib Forces, that all attributes are set to this vector.
--def-attrib attrib Define the default attributes for BMG files. If not set, the default attributes are estimated. On text output, strings with default attributes are printed without attribute vector. The usual default attribute for MKW is [1].
--no-attrib Suppress the output of any BMG attributes if creating BMG text files.
--x-escapes Use \x{} escapes instead of \z{} escapes.
--old-escapes To be compatible with v1.43 and earlier, print 1A escape sequences with total size of >12 bytes as single words using \x{}. Also don't use \x{} and \u{} with parameter lists.
-1 --single-line If set, don't print continuation lines for BMG text output. If set twice, print only single text lines and suppress attributes like option --no-attrib does it.
--no-bmg-colors If set, suppress the output of '\c{color}' escape sequences for colors definitions in BMG text output to be compatible with old versions of the tools.
--bmg-colors Force output of '\c{color}' escape sequences with names, even for foreign (not MKWii) BMG files.
--no-bmg-inline Print BMG attributes as separate line before the message definition to be compatible with versions until v1.39. The output for the standard value 0x01000000 is always suppressed. This was the default until v1.43.
-l --long Print long numeric message IDs instead of alternative message names like Txx, Uxx or Mxx.
-d --dest path Define a destination path (directory/file). The destination - means: write to standard output.

The path may contain escape sequences: %Q is replaced by the fully qualified source name. %P and %F are replaced by the source path or by the filename. %N and %E are replaced by source filename without extension or by the source extension. Finally, %T is replaced by the default extension of the destination format.

A '?' direct behind '%' in %E and %T conversions avoid that the same extension is used twice in row.

-D --DEST path Like --dest, but create the directory path automatically.
-E --esc char Define an alternative escape character for destination files. The default is '%'. For Windows batch files it is a good choice to set '-E$'.
-p --preserve Preserve file times (atime+mtime) while converting or copying files.
-u --update Update only existing files and don't create new files. If set, --overwrite and --remove-dest are ignored.
-o --overwrite Overwrite already existing files without warning and ignore option --number.
--number If a file already exist, append a number directly before the file extension to make the filename unique. If other numbered files already exist (ignoring case), use the maximum existing index+1. --num is a short cut.
-r --remove-dest Remove already existing files before creating it. If set, --overwrite is ignored. --rm-dest is a short cut.

3.   Description

The main usage is to decode a binary file and store the result as text file. Anyway, scanning and decoding a text file is possible too. In this case the new text file normalized and updated (depends on file format).

Use option --overwrite (short: -o) to overwrite already existing files.

Some file formats support option --delta. If set, only modified records are included into the output. On scanning, the complete original binary is used and the modifications of the text file override the original values.

Text files are scanned by a 2-pass parser. Because of the parser, expression enclosed in parenthesis (...) can be used instead simple values. See »Text Parser« for details.

See »wszst BINARY« to create binary versions of text files.