prevnext   » SZS: Wiimms SZS Toolset » wctct: Wiimms CT-CODE Tool » wctct create

wctct create

Read the source files, scan the CT-CODE part and create an output file controlled by the keyword. BRRES, TEX0, CT-CODE, CT-TEXT and LE-BIN files are accepted as input. Possible keywords are: CUP1, CRS1, r-MOD1, r-MOD2, r-OVR1, r-BAD1CODE, r-BAD1DATA (=r-CODE), r-TEX0, r-BRRES, r-SZS, BMG, TRACKS, LIST, REF and FULL. 'r' defines the region and is one of EU, RMCP, US, RMCE, JP, RMCJ, KO or RMCK.

The Korean support needs external CT-CODE files. Use option --ct-dir to define at least one search path.

Contents

1.   Syntax

wctct CREATE keyword [source]...

2.   Options

Options
Option Param Description
--write-tracks file 'IDX>MID|NAME' is written for each track. --wtracks is a short cut.
-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$'.
-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.
-u --update Update only existing files and don't create new files. If set, --overwrite and --remove-dest are ignored.
-p --preserve Preserve file times (atime+mtime) while converting or copying files.
-i --ignore Ignore non existing source files without warning.
--hex Normally and if available, names are printed for music and property slots. If this option is set, hex numbers are printed always.
-H --no-header Suppress the syntax information section in CTC text files.
-B --brief Suppress cross reference comments.
-X --export Enable the export mode and create small and machine readable text files for easy post processing. The option works similar like -HB for CT-CODE output.
--bmg-encoding name Force a BMG 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 but not value lines.
--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 BMG: Normally, only the track and arena names are exported. The message id (MID) range is 4000-40FF. If set, cup names are exported too as MID 4200-423F. If set twice, cup/track relations are also exported as MID 4300-43FF.
--no-echo Suppress output of @ECHO commands while scanning text files.
-N --no-check Do not make plausibility checks for KCL and KMP files.
--ct-dir dir Define a search directory for CT-CODE parts and use the internal copies only, if no valid file is found. Each file is searched without and then with extension '.bz2'. For both cases bzip2 files are detected and decompressed. Only files with correct file type are accepted.

wctct will search in the sub directory 'rmc[pujk]/' for files 'mod1.bin', 'mod2.bin', 'ovr1.bin' and 'bad1code.bin'.

Use this option multiple times to define more than one search directory.

--ct-log [=level] Define a log level for option --ct-dir. Without parameter, the current level is increased. Allowed keywords are: 0=0FF, 1=SUCCESS, 2=FOUND, 3=ALL
--allow-slots list Allow and disallow slots for automatic slot assigning. A comma separated list of slots (A), slot ranges (A:B) or keywords is expected. If preceded by a minus sign, the slots are disabled. The keywords are: TRACKS (slots 0:0x1f), ARENAS (0x20:0x29) and SPECIAL (0x36:0x3a). CTCODE is an abbreviation for ARENAS,SPECIAL.

The default is to enable slot ranges 0x00:0x1f, 0x2a:0x35, 0x3b:0x41 and 0x44:0xfe.

--images dir If creating a CT-CODE BRRES or SZS file, then search the 8 strap images in the specified directory. The images are searched with extensions .png, .tex, .tex0 and without extension in this order until a valid image is found. All images will be resized to the correct width and height and converted to format TEX.RGB565 without mipmaps. If no valid image is found, a hard coded default image is used.
--load-bmg file Load immediately the file to fill an internal message pool. The option can be used multiple times to fill the message pool by different sources. A later message overrides the previous message.

The internal message pool is patched by all --patch-bmg options.

--patch-bmg mode[cond][=param] This option specifies a BMG patch mode. Some of the modes need a parameter or a file name of a BMG patch file (raw or text BMG), both separated by an equal sign. Modes with required file names are PRINT, REPLACE, INSERT, OVERWRITE, DELETE, MASK, EQUAL and NOTEQUAL. Modes with text parameter are FORMAT, REGEXP and RM-REGEXP. Standalone modes are ID, ID-ALL, UNICODE, RM-ESCAPES, RM-CUPS, CT-COPY, CT-FORCE-COPY, CT-FILL, LE-COPY, LE-FORCE-COPY, LE-FILL, X-COPY, X-FORCE-COPY and X-FILL. Unique abbreviations are allowed.

The optional condition COND is either '?MID' or '!MID'. In case of '?MID', the patch is only applied if the message id MID already exists. In case of '!MID', the patch is only applied if the message id MID does not exists.

If this option is used multiple times, all patch files will be processed in the entered order.

--macro-bmg file Load a BMG file and add the messages to the macro library; already existing entries are replaced. The macro library is accessed by escape sequence \m{MID} as fallback, if the active file has not already defined the message MID by itself.
--filter-bmg list If this option is set, the BMG messages are filtered by this list. Only enabled messages are exported to the output BMG file (binary or text).

The parameter is a list of message ids (short MID, 'Txx' or 'Uxx' or Mxx' or hex number) or message ranges (MID:MID) or one of the keywords NONE, IDENT (=ID), PARAM, CUPS, TRACKS, ARENAS, CHAT, CTCODE (=CT), CTUPS, CTTRACKS, CTARENAS, CTREFS, LECODE (=LE), LEUPS, LETRACKS, LEARENAS, LEREFS, XCODE (=X), XUPS, XTRACKS, XARENAS, XREF, GENERIC or ALL. If an element is preceded by a minus sign, it is removed from the filter list (disabled).

With v2.01a, this option was renamed from --msg to the more meaningful name --filter-bmg. The old name is still available.

--patch-names If set, the names of the CUP1 and CSR1 sections are patched by the loaded BMG files directly after loading the source files.
--order-by bmg Load the BMG file and filter track names. Then before creating output files, re-distribute the tracks of the additonal cups (9-) to the same cups by the order of the read track names. Tracks without BMG reference are placed at the end of all tracks. This option modifes only the track order of the cups, but will not change any name.
--order-all Used together with option --order-by: Re-distribute the tracks of all cups beginning with Mushroom Cup.