Options | |||
---|---|---|---|
Option | Param | Description | |
-N | --no-check | Don't check the KCL and KMP files. | |
-i | --ignore | Ignore non existing source files without warning. | |
--color | Force colorized text. This is the default, if an output file is a terminal. But colorized text is only supported for a few messages. | ||
--no-color | Deactive colorized text. This is the default, if an output file is not a terminal. | ||
-B | --brief | Print only warnings and suppress hints. | |
-l | --long | Be verbose and print more statistics. | |
-q | --quiet | Be quiet until the first warning or hint is found. | |
--ignore-setup | Ignore hidden setup file ' |
||
--u8 | Create an U8 archive, if possible. If the source is a WU8 archive, convert it to an U8 archive. This is the default if the setup file ' |
||
--wu8 | Create a WU8 archive, if possible. If the source is an U8 archive, convert it to a WU8 archive. | ||
--brres | Create an BRRES archive. | ||
--breff | Create an BREFF archive. | ||
--breft | Create an BREFT archive. | ||
--yaz0 | If creating a compressed file, force Yaz0 compression. Yaz0 compression is the default, if no compression method is defined by option or setup file. | ||
--yaz1 | If creating a compressed file, force Yaz1 compression. The difference to Yaz0 is only the magic, which is set to 'Yaz1'. | ||
--bz | If creating a compressed file, force BZ compression (a BZIP2 variant). | ||
--szs | Short cut for »--u8 --yaz0«: Create an U8 archive, if possible, and set the compression method to Yaz0. | ||
--wbz | Short cut for »--wu8 --bz«: Create a WU8 archive, if possible, and set the compression method to BZ. | ||
--pt-dir | [=mode] | Set one of the `point directory' modes This option is only relevant if creating an U8 archive. It decides, if a special directory with name '.' will be added as base for all other files. |
|
--rm-aiparam | Remove the directory AIParam and all files from the archive. This option has only impact, if creating a new archive or normalizing an existing archive. |
||
--align-u8 | size | Define an align value for the sub files in U8 archives. The value must be a power of 2 and the default value is 32 (0x20) This value is only relevant if creating or normalizing U8 archives. | |
--align-brres | size | Define an align value for the sub files in BRRES archives. The value must be a power of 2 and the default value is 4 This value is only relevant if creating or normalizing BRRES archives. | |
--align-breff | size | Define an align value for the sub files in BREFF archives. The value must be a power of 2 and the default value is 4 This value is only relevant if creating or normalizing BREFF archives. | |
--align-breft | size | Define an align value for the sub files in BREFT archives. The value must be a power of 2 and the default value is 0x20 This value is only relevant if creating or normalizing BREFT archives. | |
--align | size | Define an align value for the sub files in all archives. This is a short cut for »--align-u8=size --align-brres=size --align-breff=size --align-breft=size«. | |
-L | --logging | This debug option enables the logging of internal lists and maps. | |
--encode-all | Encode all files. Normally a file is only encoded, if the source is younger than the destination or the destination is missing. Only files in the |
||
--encode-img | Encode all image files. Normally a image file is only encoded, if the source is younger than the destination or the destination is missing. Only files in the |
||
-a | --all | Encode all files. This is a short cut for --encode-all (and more options in the future). | |
--no-encode | Do not encode files before creating an archive. |
||
--no-recurse | Do not create archives recursively. Normally files in the |
||
--no-echo | Suppress output of @ECHO commands while scanning text files. | ||
-x | --transform | list | Convert image formats when reading. A comma separated list with terms is expected. A term have the syntax
Allowed file formats are: All terms are managed as list. For each graphic the list is iterated until the first SRC tupel of a term matches the graphic. Then the destination tupel is used for the transformation. The command »wimgt TEST« prints a clearly arranged readable table as result of this option. |
--auto-add | Analyze the KMP (if exist) and add missing BRRES, BREFF, BREFT, BRASD and KCL files automatically, if the tool can find the files in any sub directory named 'auto-add'. This sub directory is searched in all directories of |
||
--n-mipmaps | num | Force the number of mipmaps. Values between 0 and 20 are allowed. Value |
|
--mipmaps | If reading a source, scan for mipmaps and load them too. For PNG files, files named |
||
--no-mipmaps | If reading a source, ignore mipmaps. This disables not the creation of mipmaps (see -n-mipmaps). |
||
--smart | If resizing an image, use the new smart resize function. The new function is much slower (factor 2-4) than the old function, but creates much better resized images. This is only relevant for creating mipmaps with odd width or height. | ||
-c | --const | list | Define constant values, that are used by the internal encoders and by the numeric options as predefined global variables. This option allows a conditional encoding of text files. It can be used multiple times for multiple definitions.
The Parameter is a comma separated list of terms and a term is ' |
--scale | vector[@origin] | Transform the data: Scale all coordinates and size values by 'vector' relative to the point 'origin'. If the origin is not set, Negative values mirror the coordinates. Each parameter is either a vector expression or a comma separated expression list of coordinates ('x,z' or 'x,y,z'). Transformations are calculated in the order SCALE, SHIFT, ROTATE, TRANSLATE. |
|
--shift | vector | Transform the data: Add 'vector' to all coordinates. Is's simlar to --translate, but the addition is done before rotation. The parameter is either a vector expression or a comma separated expression list of coordinates ('x,z' or 'x,y,z').
Transformations are calculated in the order SCALE, SHIFT, ROTATE, TRANSLATE. |
|
--xss | x1old,x1new,x2old,x2new | --xss (x-scale-shift) calculates the X values of --scale and --shift, so that the old values are transformed to the new values. The parameters are numbers or expression. | |
--yss | y1old,y1new,y2old,y2new | --yss (y-scale-shift) calculates the Y values of --scale and --shift, so that the old values are transformed to the new values. The parameters are numbers or expression. | |
--zss | z1old,z1new,z2old,z2new | --zss (z-scale-shift) calculates the Z values of --scale and --shift, so that the old values are transformed to the new values. The parameters are numbers or expression. | |
--rot | degree[@origin] | Transform the data: Rotate all coordinates and rotation values by the angle 'degree' (is a vecotr) around the 3 axes. All 3 axes goes through the point 'origin'. If the origin is not set, Each parameter is either a vector expression or a comma separated expression list of coordinates ('x,y,z'). Option --rot is an alternative for --xrot, --yrot and --zrot to define all 3 rotations in one step. Transformations are calculated in the order SCALE, SHIFT, X-ROTATE, Y-ROTATE, Z-ROTATE, TRANSLATE. |
|
--xrot | degree[@origin] | Transform the data: Rotate all coordinates and rotation values by the angle 'degree' around the x-axis, that goes through the point 'origin'. If the origin is not set, Each parameter is either a vector expression or a comma separated expression list of coordinates ('y,z' or 'x,y,z'). Transformations are calculated in the order SCALE, SHIFT, X-ROTATE, Y-ROTATE, Z-ROTATE, TRANSLATE. |
|
--yrot | degree[@origin] | Transform the data: Rotate all coordinates and rotation values by the angle 'degree' around the x-axis, that goes through the point 'origin'. If the origin is not set, Each parameter is either a vector expression or a comma separated expression list of coordinates ('x,z' or 'x,y,z'). Transformations are calculated in the order SCALE, SHIFT, X-ROTATE, Y-ROTATE, Z-ROTATE, TRANSLATE. |
|
--zrot | degree[@origin] | Transform the data: Rotate all coordinates and rotation values by the angle 'degree' around the z-axis, that goes through the point 'origin'. If the origin is not set, Each parameter is either a vector expression or a comma separated expression list of coordinates ('x,y' or 'x,y,z'). Transformations are calculated in the order SCALE, SHIFT, X-ROTATE, Y-ROTATE, Z-ROTATE, TRANSLATE. |
|
--ypos | pos | This option defines an Y position for KMP/CKPT transformations. It has only impact to X and Z rotations (Options --xrot and --zrot). If not set, the mean y of the active rotation origins are used. | |
--translate | vector | Transform the data: Add 'vector' to all coordinates. Is's simlar to --shift, but the addition is done after rotation. The parameter is either a vector expression or a comma separated expression list of coordinates ('x,z' or 'x,y,z'). Transformations are calculated in the order SCALE, SHIFT, ROTATE, TRANSLATE. |
|
--null | Create a neutral transformation without affecting the coordinates. The only influence is, that the dependent values (like maximum) are re-calculated as if a transformation has taken place. | ||
--next | Close the current transformation step with all scaling, shifting, rotation and translation options and open a new step with cleared options. On transformation each step is logical done one by one. In real, one total transformation matrix is calculated and used for fast transformations.
If option --next is used, the ability for modifying the scale and rotation vectors (not the positions) of different KMP sections is nearly always lost. A warning is printed if this occurs. |
||
--ascale | factor@dir | Transform the data and do an axis scale: Close the current transformation step like --next and scale the data by This kind of transformation is EXPERIMENTAL! |
|
--arot | degree[@pos1]@pos2 | Transform the data and do an axis rotation: Close the current transformation step like --next and rotate the data by This kind of transformation is EXPERIMENTAL! |
|
--tform-script | script | Load the script and execute it by the text parser.
Then for each coordinate (2D and 3D), call the macro
For each file, macro Before each macro call, the private and local variables are cleared and only global parameters are permanent. The zero based index is cleared for each new source. The parameters of the macro calls are defined in the local name space. |
|
--rm-gobj | objlist | Remove objects from the KMP section |
|
--slot | keyword | Patch a track file to run at the specified slot. KMP and KCL may be modified. BRRES files may be added to or removed from SZS. The main keywords are |
|
--load-kcl | file | Load a KCL or OBJ file for reference issues. | |
--kcl | list | Set global options for KCL processing. Parameter
Keyword |
|
--kcl-flag | joblist | Modify the KCL flag of KCL files. A comma separated job list in the format
All KCL flags of the source list are assigned to the new value |
|
--kcl-script | script | After reading a KCL source file and executing all transformations, the text file If this option is used multiple times, each script is executed in the entered order. |
|
--kmp | list | Set global options for KMP processing. Parameter
Keyword |
|
--speed-mod | factor | The speed modifier is a user extensions to change the basic speed of all vehicles. The speed factor itself is stored into KMP/STGI section of a track.
If --speed-mod is set to a value >0.0, then the last 2 bytes of the STGI section are patched. The value 0.0 reset these 2 bytes and deactivates the speed modifier. |
|
--tform-kmp | list | Select KMP sections and objects for a transformation.
Sections are selected by the KMP section names AREA, CAME, CKPT, CNPT, ENPT, GOBJ, ITPT, JGPT, KTPT, MSPT and
Objects are selected by the keywords AREA-POSITION, AREA-ROTATE, AREA-SCALE, CAME-POSITION, CKPT-POSITION, CNPT-POSITION, CNPT-ROTATE, ENPT-POSITION, ENPT-SCALE, GOBJ-POSITION, GOBJ-ROTATE, GOBJ-SCALE, ITPT-POSITION, ITPT-SCALE, JGPT-POSITION, JGPT-ROTATE, KTPT-POSITION, KTPT-ROTATE, MSPT-POSITION, MSPT-ROTATE and
The keywords |
|
--mdl | list | Set global options for MDL processing. To enable MDL patching, use option --patch-file to select BRRES files for patching.
Parameter
A MDL transformation (controlled by the transformation options) is only done, if at least one of the keywords
Keyword |
|
--minimap | Fix the minimap position in the same way as »wszst MINIMAP --auto«. All other minimap related options are ignored for the minimap processing. | ||
--patch-file | list | Define, which kind of KMP, KCL and BRRES/MDL files are objects for patching.
Parameter
Keyword |
|
--patch-bmg | mode=file | This option specifies a BMG patch mode. Some of the modes need a file name of a 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 |
|
--msg | list | If this option is set, the BMG messages are filtered by this list. Only enabled messages are exported to the ouput 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, PARAM, CUPS, TRACKS, ARENAS, CHAT, CTCODE or |
»wszst CHECK« inlcudes the KCL and KMP checks of »wkclt CHECK« and »wkmpt CHECK«.
List of tests | ||
---|---|---|
Type | Status | Description |
— | KCL | Do a KCL check (»wkclt CHECK«) while scanning the relevant KCL file. The KCL check is done before track check. This KCL check can be suppressed with option --no-check ( |
— | KMP | Do a KMP check (»wkmpt CHECK«) while scanning the relevant KMP file. The KMP check is done before track check. This KMP check can be suppressed with option --no-check ( |
HINT | Unknown file | Find files in the track file, that are not found in the internal DB. |
HINT | Optional file | Find files in the track file, that are optional. |
HINT | Additional file | Find files in the track file, that are not required and not supported by any included global object. |
HINT | Modified file | Find files in the track file, that are not a 1:1 copy of a Nintendo track. This test is done with SHA-1 check sums. |
WARN | Missing file | Find files, that are required or needed by an included global object and that are not part of the track file. |
WARN | Missing cannon in KMP | The KCL defines cannon indices, but the KMP doesn't support all of them. |
HINT | Unused cannon in KMP | The KMP defines cannon, that are not used by the KCL. |
WARN | Minimap bone missed | Check existence of minimap bones 'posLD' and 'posRU'. |
WARN | Invalid image | Find images with zero width or heigth. |
WARN | Bad image size | Find images with width or heigth not power of 2. |
HINT | Large image | Find images with width or heigth >1024 pixel. |
VERBOSE | Image count | If option --verbose ( |
SLOT | Slot proposals | KMP and more files are analysed to make slot proposals for the track. The proposals are done for slots 3.1, 4.2, 6.1, 6.2 and 7.1. If option --verbose ( |