diff options
| author | root <root@dc13.lemmi> | 2020-07-21 10:00:46 +0200 |
|---|---|---|
| committer | root <root@dc13.lemmi> | 2020-07-21 10:00:46 +0200 |
| commit | 1192c4575ea7afdf38e3fa0df4587a08620af11e (patch) | |
| tree | 6910a62487c282d0840d2e668aa7eb40b7c8a3fd /project/templates | |
| parent | 76de8a89f7c1d1b4522eb66e8f89d248e8c1781f (diff) | |
SZS v2.18a
Diffstat (limited to '')
| -rw-r--r-- | project/templates/DOCUMENTATION.txt | 35 | ||||
| -rw-r--r-- | project/templates/HISTORY-v0.txt | 784 | ||||
| -rw-r--r-- | project/templates/HISTORY-v1.txt | 1288 | ||||
| -rw-r--r-- | project/templates/HISTORY.txt | 396 | ||||
| -rw-r--r-- | project/templates/MILESTONES.txt | 153 | ||||
| -rw-r--r-- | project/templates/forums/mariokartwii.txt | 25 | ||||
| -rw-r--r-- | project/templates/module/features-de.forum | 6 | ||||
| -rw-r--r-- | project/templates/module/features-en.forum | 6 | ||||
| -rw-r--r-- | project/templates/module/features.txt | 13 | ||||
| -rw-r--r-- | project/templates/module/head.txt | 21 | ||||
| -rw-r--r-- | project/templates/module/last-history.txt | 33 |
11 files changed, 2760 insertions, 0 deletions
diff --git a/project/templates/DOCUMENTATION.txt b/project/templates/DOCUMENTATION.txt new file mode 100644 index 0000000..941dd38 --- /dev/null +++ b/project/templates/DOCUMENTATION.txt @@ -0,0 +1,35 @@ + +@@MODULE(head.txt)@@ + + +******************************************************************************* +******* Motivation ********* +******************************************************************************* + +The motives for writing a new tool are simple: + +I want to automate the creation of SZS files. I need this for Custom Mario +Kart Distributions. + +Visit @@URI-HOME@@ for more information. + + +******************************************************************************* +******* Features ********* +******************************************************************************* + +@@MODULE(features.txt)@@ + + +******************************************************************************* +******* HISTORY ******* +******************************************************************************* + +For the complete history see file 'HISTORY.txt'. The last changes: + +@@MODULE(last-history.txt)@@ + + +******************************************************************************* +******* END ******* +******************************************************************************* diff --git a/project/templates/HISTORY-v0.txt b/project/templates/HISTORY-v0.txt new file mode 100644 index 0000000..6bbc789 --- /dev/null +++ b/project/templates/HISTORY-v0.txt @@ -0,0 +1,784 @@ + +@@MODULE(head.txt)@@ + + +******************************************************************************* +******* HISTORY v0.* ******* +******************************************************************************* + +szs v0.01a.beta r2385 - 2011-03-31 + + - new Tool: wszst (Wiimms SZS Tool) + The following main commands are supported: + LIST, COMPRESS, DECOMPRESS, EXTRACT, CREATE. + + +szs v0.01a r2392 - 2011-04-01 + + - Bug fix for "wszst CREATE": Wrong calculation of parent directory link. + - New option: wszst CREATE --align: Overwrite the default aligment (32=0x20). + - wszst LIST: If --long is set three times debugging mode is enabled. + - wszst LIST: If listing a directory, then a virtual SZS file is created + (like CREATE do it) and listed. + - New command: wszst DIFF: Compare two sources (each SZS, U8 or directory) + on file level and report mismatches for each sub file. + + +szs v0.02a r2417 - 2011-04-04 + + - New option: --max-file-size: This options set the limit for input files. + The default value is 20 MiB. + - Option --dest: If the parameter is '-' the output is redirected to stdout. + - New tool: wbmgt: Wiimms BMG Tool + Commands: + - LIST : List a message file to proof the content. + - PATCH : Patch the entered text files. + - DECODE : Decode (and patch) the entered text files. + - ENCODE : Encode (and patch) the entered text files. + + +szs v0.03a r2437 - 2011-04-06 + + - wszst: Compression algorithm improved: The compression is now about 40%-50% + faster than before. + - wszst: New option --compr=level: define a compression level between 0-9. + Three clear text parameters accepted too: NONE=0, FAST=1 and BEST=9. + - wszst: New option --fast: This is a short cut for --compr=fast. Usually + "CREATE --fast" needs about 1/4 of time, but creates ~25% larger SZS files. + - New command: wszst CAT: Extract one or more sub files of SZS/U8 archives. + The output is written to stdout. Multiple outputs are concatenated. + - New command: wbmgt DIFF: Compare two BMG (raw or text) file on string level + and report mismatches for each string. + - wbmgt --patch: new mode: HIDE + - wbmgt is able to read BMG files directly from a SZS file. Just use a + combined path as 'my.szs/message/Common.bmg' + - new option: --ignore: Ignore non existing source files without warning. + + +szs v0.04a r2457 - 2011-04-09 + + - SZS compression improved: It uses now overlaps and save about 2% size. + With more complicated algorithm (that needs much more time) better + compression is possible -- but it's not worth it. + - wszst LIST --long: View the magic (first 4 bytes) of each file too. + - wszst can list, diff, (de-)compress and extract SZS.BRRES files. + - wbgmt: Bug fix: Wrong string end detection for the last message if + scanning Nintendos 0x1a (CTRL-Z, ASCII 'SUB') escape sequences. + - BGM/TEXT format: Allow \z{head,value} for Nintendos 0x1a escape sequence. + - Bug fix for wszst+wbmgt DIFF: Some files only in source #2 were not listed. + - New command: wszst NORMALIZE: resort and recompress an U8 archive. + - New option: wszst --norm: Force normalization while copying/converting. + - Many layout things. + + +szs v0.05a r2498 - 2011-04-15 + + - Code view & fine tuning (many little things...) + - wszst NORMALIZE: Bug fixed if source does not contain a "." directory. + - wszst CREATE+NORMALIZE: The files are ordered like Nintendo does it. + - New command: wszst SHA1: calculate and print the SHA1 checksum of + the decompressed data of all source files. + - wszst+wbmgt DIFF: If option --dest is set then all sources are compared + with the destination. + - New option: wszst --pdir (`point directory'): Decides if a base directory + named "." should be created. Modes are: REMOVE, AUTO, FORCE. + - New option: --preserve: If set, mtime and atime of the source(s) are used + to set the destination time stamps. + - wbmgt: If creating a text BMG file option --ho-header (or -H) suppresses + the output of the syntax information section. + - wbmgt: If creating a text BMG file the message IDs for tracks, battle + tracks and chat messages will be replaced by 'Txx', 'Uxx' and 'Mxx'. + This feature is disabled if option ---long is set. + + +szs v0.06a r2540 - 2011-04-27 + + - If extracting a SZS, U8 or BRRES archive a file named 'wszst-setup.txt' is + created. It contains some infos for a following creation. + - New option --ignore-setup: Ignore setup file 'wszst-setup.txt'. + - Option --pdir renamed to --pt-dir. --pdir is still allowed. + - wszst CREATE: Can now create a BRRES file as copy of a directory structure. + - wbmgt: If creating text BMG files, than unicode escapes "\z{801,hexnum}" + are written as \u{hexnum}. v0.05a can already scan such unicode escapes. + - wbmgt: new patch mode "print": create a new text using %s-escapes (like + print functions) to insert the old one. + - "wszst EXTRACT" can extract archives recursively and can decode BMG files + on the fly. This is controlled by the options --recurse, --decode and + --all. All needed information for recreation is stored in the setup file + 'wszst-setup.txt'. + - "wszst CREATE" creates a recursively directory structure created by EXTRACT + using 'wszst-setup.txt' as script. Files will be encoded again. + + +szs v0.07a r2584 - 2011-05-05 + + - wbmgt --patch mode PRINT: + - New escape %i inserts the message ID (MID, good for finding IDs) + - Inserting 'b-e' or 'e' between '%' and conversion character limits the + number of characters to copy. 'b' (begin) and 'e' (end) are numbers. + - Bug fix for wszst: The base directory was not always created if the U8 + archive has not point directory as base. + - Bug fix for wszst: If creating a BRRES file the programm runs sometimes + in a wrong assertion and terminates. + - Bug fix for wszst: Adjust all external offsets of BRRES sub files. + - wszst LIST: Can list files recursive if --recurse or --all is set. + - wszst: A string pool is added to extracted BRRES sub files. This string + pool is used for the creation of new BRRES files. + - "wszst CREATE file.brres" works now, but see also "Known bugs". + - New command: wszst DUMP: Dump the internal structure of BRRES files. The + main goal is to verify string relocation. + + - Known bugs: + + - If creating a BRRES the internal name of the sub file is not set to + the filename. This could be problematic if a sub file was renamed. + + +szs v0.08a r2617 - 2011-05-12 + + - Improved support for BRRES sub file versions (more string pointers). + - wszst EXTRACT --raw: Extract BRRES sub file in raw mode and do not adjust + string pointers and other offsets. + + - Known bugs: + + - If creating a BRRES the internal name of the sub file is not set to + the filename. This could be problematic if a sub file was renamed. + + +szs v0.09a r2636 - 2011-05-17 + + - New tool: wstrt: Wiimms StaticR Tool: manipulate StaticR files of MKW. + - It can analyze StaticR files and detects CTGP 4.4. patches and + modifications of track and arena orders. + - It can patch StaticR files and modifies the track and arena order. + So it is possible to move tracks with special features (like snow + or fog) to other slots. + - Commands TRACKS and ARENAS show details about tracks and arenas. + The order may be in StaticR related order. + - Command FILES shows the track and sound file names of all tracks and + arenas in machine readable format (not vertically formatted, one space + to separate columns). The order may be in 'StaticR' related order. + IMPORTANT: wstrt is EXPERIMENTAL! + - New option: --tracks=list: This option allow to define a new track order + for Mario Kart Wii. Tool wstrt uses this option for patching the track + order. Tools wszst and wbmgt use this to define the relation between Txx + and real message IDs. + - New option: --arenas=list: Does the same for arenas as --tracks for tracks. + + +szs v0.10a r2651 - 2011-05-21 + + - wstrt: Support for NTSC/JAP and KOREA version of StaticR.rel. + - wstrt: new command: FIND: Find tracks and arenas by name. + + +szs v0.11a r2670 - 2011-06-04 + + - New option: --single-line (-1): No continuation lines for BMG text output. + - Support for BREFF and BREFT files: Listing and extraction, but not creation: + - wszst LIST: List also BREFF and BREFT files including recursive lists. + - wszst EXTRACT: Extract also BREFF and BRRES files. Recursive extraction + of theses file types is implemented but disabled because of not + implemented creation support. + + +szs v0.12a r2693 - 2011-06-16 + + - Bug fix for Windows install script: Remove duplicate SZS entries from PATH. + - wszst CREATE: Create BREFF and BREFT files. + + +szs v0.13a r2840 - 2011-07-09 + + - Bug fix for tool wszst: Tool chrashed when creating BRRES files with empty + sub directories. + - wszst: Export of internal images (BREFT subfiles, TPL, TEX0) to PNG files + is done while extracting archives if decoding is enabled. Supported image + formats: I4, I8, IA4, IA8, RGB565, RGB5A3, RGBA32, C4, C8, C14X2 and CMPR. + - New tool: wimgt = Wiimms Image Tool : Convert and manage images files. + Supported file types: BREFT subfiles, TPL, TEX0 and PNG. + - wimgt LIST: List images files and print types and geometry data. + - wimgt DECODE: Export an internal image to a PNG file. + - wimgt ENCODE: Import PNG images and store them in internal formats. + - wimgt CONVERT: Convert formats (file and image format). + - All tools: new command FILETYPE (=FT): Scan the header of the entered files + and print file type and path for each file as list. + + +szs v0.14a r2862 - 2011-07-14 + + - New command: wszst UPDATE: Update sub files in an already existing archive. + - wbmgt --patch mode=file: A equal sign '=' is now used to separate mode and + filename. The old comma separator ',' is allowed but deprecated. + - New option for wimgt: --patch mode=file + This option allows to patch images by a list of other images. + + +szs v0.15a r2917 - 2011-08-07 + + - New tool: wkmpt: Wiimms KMP Tool + - wkmpt DECODE: Decode a binary KMP file and store the results + as user friendly, but machine readable text file. + - wkmpt ENCODE: Encode a text KMP file and store the results binary. + Indexing and grouping and some other stuff are done automatically. + - wszst EXTRACT: KMP files are decoded automatically. + - wszst CREATE: Encode KMP files automatically if changed. + - New image options for wszst: --transform= --encode-img + + +szs v0.16a r2931 - 2011-08-13 + + - Support of "Byte Order Marks" (BOM) when reading UTF-8 text files. + - New algorithm for CMPR image compression. + - Bug fix for KMP text files: Due a wrong info in the CT-Wiiki the 'prev' + and 'next' grouping values were swapped. + - Bug fix for KMP text files: Setting "[CKPT]/@AUTO-NEXT=1" failed. + + +szs v0.17a r2941 - 2011-08-16 + + - Scan KMP text: Correct line numbers in error messages. + - KMP: [CAME], [GOBJ] and [CHKT] entries can use names to point to the route + or respawn entries into the [POST] or [JGPT] sections. This makes list + modifications (inserting, removing, reordering) much easier. + - KMP: Parameter '@AUTO-ID=1' enables automatic setting of ID values. + - KMP text export: + - Improved and more detailed documentation. + - The sections are now sorted alphabetically. + - Links into other section uses generic names instead of index numbers. + + +szs v0.18a r2959 - 2011-08-26 + + - KMP: Improved text output with additinal infos. + - KMP: More intelligent group naming. + - KMP: Linear calculated points in CKPT, ENPT and ITPT. + - KMP: User may define local and global variables. + - KMP: Objects can be referenced my name (eg. o$itembox). + - KMP: Inter section links (AREA->CAME, CAME->POTI, GOBJ->POTI, CKPT->JGPT) + using names instead of indices. This allows easy reorganisation. + - KMP: AREA+CAME syntax (table layout) changed, old format stays compatible. + + +szs v0.18b r2966 - 2011-08-30 + + - Several small KMP decoding+encoding improvements. + + +szs v0.19a r3033 - 2011-09-15 + + - New option: --const NAME=VALUE,... + With this option the user can predefine variables in the command line. + - KMP scanner supports C like arithmetic expressions. + - KMP scanner supports nested @IF..@ELIF..@ELSE..@ENDIF structures. + - The KMP scanner accept copy&paste text of the SZS-Modifier, if parameter + @SZS-MODIFIER is set to 1. + - If decoding a KMP text file, names of entries of the source are used + instead of generic names while creating the destination output. + - Object infos (name, short description, parameters) are inluded into the + KMP object list. + - A decoded KMP file contains a template for parameters and conditional + encoding. Option --no-param (-P) disables the template. + - Several small KMP decoding+encoding improvements. + - New command: wkmpt SYMBOLS: Print a table with all predefined symbols. + - wszst CAT --decode: Decode files before output if possible. + - New command: wszst KMP: Open the sub file @course.kmp@, decode and print it. + - New command: wszst INFO: Print the content of the subfile 'info.txt' + or 'credits.txt' (first found file used, case ignored). + + +szs v0.20a r3069 - 2011-09-30 + + - Bug fix for KMP decoding: A wrong name was written for the opening camera. + - New option: --brief: Create KMP text files without most info lines. If set + twice, the output of unneeded sections is also suppressed. + - Tools exit with error status on encoding errors. + - The new KMP command '$BEZIER' works similar like '$LINE' and create + quadratic and cubic bezier curves for CKPT, ENPT, ITPT and POTI sections. + - New KMP commands: @ECHO and @WARN: Print a message or a warning. + - New option: --no-echo: Suppress messages made by the new '@ECHO' command. + - The KMP encoder and decoder support a free info string. It is stored at + and load from the end of the KMP file behind all sections. + - Mac: Support for PPC disabled, because the new LIBPNG does not support it. + - Mac: LIBPNG is now linked static. So there is no longer a need for Mac + users to install LIBPNG. + + +szs v0.21a.beta1 r3092 - 2011-10-09 + + - New wszst commands: XDECODE (=XD) as short cut for "EXTRACT --decode" and + XALL (=XA) as short cut for "EXTRACT --all". + - KMP encoder: Support of names for route points (section POTI). + - Mipmap support improved: + - If reading a TEX or BREFT, all mipmaps are scanned and internal stored. + - If reading a TPL file, all images are scanned internal stored. + - If reading a PNG, the tools search mipmap files. + - If storing a PNG, one PNG file is created for each image. + - If saving a format, all images are saved. The mipmaps of TEX and BREFT + are resized to have the correct size (half of the previos image). + - Option --no-mipmaps disables mipmap support. + - Option --n-mipmaps=NUM force the number of mipmaps. If needed, the + missing mipmaps are created from the existing images. + + +szs v0.21a r3142 - 2011-10-29 + + - Windows version only: Update to Cygwin DLL 1.7.9-1 + - Bug fix: If creating a TEX from multiple PNG files, sometimes not all + PNG sources were used. + - Bug fix: If extracting BRRES files, the informative file '.string-pool.txt' + was sometimes empty. + - The KMP/CAME text output contains now comments about camera, zoom and view + point durations. This helps to find out a good camera setup. + - KMP/CAME scanning: If zoom or view point speed is set to value -1, then the + value is calculated so that the time coincides with the camera running time. + - Internal object database updated. + + - The following points improve the diagnostic and analysis features: + - New wszst command: ILIST (or IL): List all images of an archive. To view + all sub archives recursivley, set option --all. Command ILL and ILLL are + short cuts for 'ILIST --long' and 'ILIST --long --long'. + - New option for tool wszst: --sort (-S): Define a sorting method for the + output of commands LIST and ILIST. + - New wszst command: MEMORY: Print a (recursive) memory map of all sources. + - New option --cut for "wszst LIST" and "wszst MEMORY": Cut different non + archive files into peaces (headers, groups, sections, ...) and list these + peaces as single sub files for a more detailed analysis. + Supported file types: BMG, BREFT-IMG, KMP, TEX, TPL and BRRES sub files. + + +szs v0.22a r3166 - 2011-11-06 + + - The KMP encoder is now a 2 pass compiler and the whole source is scanned + twice. In pass 1 only names are defined and warnings are suppressed. In + pass 2 all objects are defined. + - KMP logging: The job info line is now printed before warnings. + - Some new CAME+POTI variables are defined automatically as help for + calculated parameters, e.g. came.time or viewpt.len. + - If decoding or encoding a KMP, a plausibility check is done. This should + help to find KMP errors. Option --no-check disables this check. You can + find a detailed list of all checks on the tools website: + * https://szs.wiimm.de/cmd/wkmpt/check#desc + - New command: wkmpt CHECK: Run a KMP check and return 'DIFFER' as exit + status if any KMP error found. + - New command: wkmpt OBJECTS: Search objects in the internal object database + using the entered keywords and print infos about each found object. + Options --brief and --long control the verbosity of output. A online query + is also available: https://szs.wiimm.de/cgi/mkw/object + - Internal object database updated. + - KMP compiler/POTI: New command '$COPY': Copy some or all points from + previous defined routes. + - KMP compiler/POTI: New commands @shift-route, @hrotate-route, @scale-route: + These commands transform all points of a route. + + +szs v0.23a r3243 - 2011-11-25 + + - New command: wkmpt CAT: Print decoded KMP files to stdout. + - New option for wkmpt: --generic: Use generic names as references instead + of the names scanned from the source file. + - "wszst DIFF" supports now --recurse and --cut (and --all) to list + differences on sub file level. + + - Support of 3D vector variables and parser functions: + - New @DEF* and @GDEF* commands to define variables. The old @NUM, @GNUM, + @INT... are stil possible. + - Parser functions implemented, e.g. sin(x), hRot(pt,deg,[origin]). All + values of all KMP objects can be read by functions. + - New command: wkmpt FUNCTIONS: Print a return type and syntax info about + all parser functions. If --long is set, a little description is added. + The output can be filters by keywords. + - New command: wkmpt CALCULATE: Calculate each expression and print the + result to standard output. + + - Tool wstrt can now detect and patch region settings: + - wstrt ANALYZE: If a region patch is detected, a message is printed. + - wstrt PATCH --region=val: Patch a StaticR.rel to the entered region or, + if 'val' is 'RESET', restore it to the original Nintendo values. + + +szs v0.24a r3316 - 2011-12-30 + + - Feature to debug routes: The KMP compiler can automatically define + itemboxes for route points of the sections ENPT, ITPT and/or POTI. + - New commands: "wszst+wkmpt SYNTAX": Print out the generel syntax rules + for the text parser and compiler. + - Several bugs of parser functions fixed and some new functions added. + - Object DB updated. + - New feature: KMP transforming + The tools wszst & wkmpt support the new options --shift, --scale and + --hrot. With this options all position, size and rotation parameters + of a KMP can be transformed. The transformation is supported by nearly + all data commands like DECODE, ENCODE, CREATE, EXTRACT and NORMALIZE. + - wszst LIST/MEMORY/EXTRACT/UPDATE: Support of RARC and ARC files. + Creating a RARC file is not supported yet. + + +szs v0.25a r3321 - 2011-12-31 + + - The transformation options are now a little bit easier to handle: + - The execution order is now --scale before --shift before --hrot. + - New options for easier scale and shift setup: --xss, --yss and --zss. + => The user must select 2 points and make a note of the coordinates in + the old and in the new model. Then he must enter the coordinates as + parameters like --xss x1old,x1new,x2old,x2new and the scale and shift + values are calculated automatically. + + +szs v0.26a r3415 - 2012-02-04 + + - New general parser functions: dot(), cross(), unit(). + - New KMP specific parser functions: enpt$hDir(), enpt$next(), itpt$hDir(), + itpt$next(), stgi$byte(). + - An online function reference is also available: + -> https://szs.wiimm.de/cmd/functions#desc + - Bug fix: If scaling, the calculation of column 'scale' of sections ENPT + and ITPT were wrong. + - KMP/STGI table format changed to support 'pole position' and 'narrow'. + - Command FILETYPE: Accept --long to print an additional column with the + decompressed file type. + - wszst EXTRACT supports now --cut and stores the cutted peaces of files + into hidden directories. + - wszst EXTRACT supports extraction of BRRES sub files and all other file + formats, that supports the --cut option. + - New command for all tools: FILEATTRIB: Print out a table with all supported + file types and operations. + - First KCL support: + - New tool: "wkclt" with command DECODE (convert to obj like the + KCLexporter of `blank'). + - Tool wszst: If decoding is enabled, convert KCL to an obj file. + - Support for option --cut. + - wkmpt+wbmgt ENCODE: Wrong automatic file extensions fixed. + - New option for all tools: --chdir: Set a new working directory for all + following options, for all parameters and for the execution. + + +szs v0.27a r3437 - 2012-02-14 + + - KMP, sections JGPT+CNPT+MSPT: If parameter '@SNAP-TO-ENPT' is set to a + numeric value, then all points will be moved to the nearest point of the + ENPT section plus the entered value. The horizontal direction (Y-rotation) + is calculated to point to the next ENPT point, section linking is observed. + - KMP: Command '@ROUTE-ITEMBOX' is now avaialable for sections ENPT, ITPT, + JGPT, CNPT, MSPT and POTI. + - wszst EXTRACT: New option --ext or -e (for BRRES archives only): If a file + is extracted, add a handy file extension (like '.mdl') to the file name. + If set twice and a textual file magic is available, use the file magic in + lower case instead (like '.mdl0'). + - wszst CREATE: If creating a BRRES archive, the new file extensions (see + above) are detected and removed. + - wszst+wkmpt: More KMP checks. + See https://szs.wiimm.de/cmd/wkmpt/check#desc for a complete list. + + +szs v0.28a r3463 - 2012-02-20 + + - New command: wszst AUTOADD: Show the status of a auto-add archive and add + BRRES, BREFF and BREFT files to it. + Try "wszst AUTOADD ./path_to/Race/Course/" to add all supported files. + - New option: --auto-add (short: --aadd): Analyze the KMP (if exist) and add + missing BRRES 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 'SEARCH_PATH'; try 'wszst AUTOADD' to view them. + - New command: wszst CHECK: Check track files: Try to read KMP (and check it) + and find missing BRRES, BREFF and BREFT files needed by used global objects. + - KMP/CKPT: The KMP compiler is now able to make check points visible by + using and scaling any global object. For details read the built in help. + If enabled, option --auto-add is implicitly set. + + +szs v0.29a r3515 - 2012-02-28 + + - KMP/GOBJ @SORT-OBJECTS=mode: The KMP compiler can sort objects in 2 ways. + - KMP/POTI: There are new transformation commands with changed syntax and + semantics. They are now identical to the global transformation options. + - KMP/POTI: Command @REVERSE-ORDER reverse the order of points of a route. + - Command 'wkmpt OBJECT --long' lists all needed files for each object. + - Minimum support (detection only) for file type BRASD. + - AUTO-ADD database: Object dependent KCL and BRASD files added. + Please redo: "wszst AUTOADD ./path_to/Race/Course/" + - New command: wszst TRACKS: Print a list of all known track SZS files of + Mario Kart internal directory './Race/Course'. These files are 32 standard + track files, 10 arena files, and 9 other files. + - KMP/CKPT: The KMP compiler is able to make check points visible by using + and scaling global objects. The interface has changes to allow different + viewing modes (forget the old settings). See built in help for details. + - New Command: wszst CHECK: Make a validity check for track files: Try to + read KMP (and check it) and find unknown, modified, needed and unneeded + files. This command uses a new internal object and file database. + - HINT: Unknown file: This will is not part of any Nintendo track. + - HINT: Additional file: Known file with unknown usage. + - HINT: Modified file: This file is different to Nintendo tracks. + + WARNING: Missing file: This file is needed/used (by an object). + + +szs v0.29b r3528 - 2012-03-02 + + - Bug fix for "wszst CHECK": There was a crash with core dump if analyzing + a SZS without valid KMP. + + +szs v0.30a r3548 - 2012-03-10 + + - There is a new BRRES subfile iterator. The old one is very strict and do + wrong things with BRRES strings and names while extracting some custom + tracks (Nintendo tracks work fine). The new one is more tolerant and runs + better on custom tracks. Now you can extract and repack every track. + Use option --OLD to activate the old iterator. + + +szs v0.31a r3579 - 2012-04-06 + + - Bug fix if BRRES sub file is cutted into sections: + Wrong size calculation of last section, if section type is unknown. + - BTI support: + - All tools and listing commands: Detect BTI files and print details. + - wimgt: Can now convert TPL, TEX, BTI, BREFT and PNG into all directions. + - wszst: Decode and encode BTI files on the fly. + + +szs v0.32a r3593 - 2012-04-14 + + - Bug fix for option --auto-add: Sometimes a segmentation fault appeared when + auto adding a missing subdirectory for a missing file. + - New command: wimgt COPY <source> <dest> + Copy and convert source image to dest image. The default destination file + format is selected by scanning the file extension of the destination. + This is an alternative for the ENCODE and DECODE commands. + - KMP parser: @DEF.ENUM and @GDEF.ENUM define enumerated values. + - KMP parser: @DEF.SHIFT and @GDEF.SHIFT define shifted bit masks. + + +szs v0.33a r3627 - 2012-05-02 + + - Because of an update of the internal object & file database, redo the + command "wszst AUTOADD ./path_to/Race/Course/" to add more files to the + autoadd database -> see https://szs.wiimm.de/doc/autoadd for more info. + - wszst CHECK: Detect "optional files". + - KMP: New command '@HSNAP-TO-ENPT' is similar to '@SNAP-TO-ENPT', but + ignoring the vertical value of the enemy points. + - The text parser supports 5 kinds of nested loops (EXPERIMENTAL): + @LOOP ... @ENDLOOP : umlimted loop + @REPEAT ... @ENDREPEAT : loop with a predefined repeat count + @FOR ... @ENDFOR : classical 'for' with iterator variable + @FOREACH ... @ENDEACH : for each element in list + @WHILE ... @ENDWHILE : classical 'while' with condition + There are also conditional @BREAK and @CONTINUE. + - The KMP syntax and semantics documentation is now online available: + -> https://szs.wiimm.de/doc/kmp/syntax + The inline documentation in decoded KMP files is now much shorter. + - Command SYNTAX removed. Use page https://szs.wiimm.de/doc/syntax instead. + - The backtracking algorithm for analyzing of CKPH + ENPH + ITPH pathes has + been modified and optimized, because a test version of "Toad's Turnpike" + has 105 ITPH groups and needs much to much steps and time to calculate + about 10^28 pathes total. + + +szs v0.34a r3659 - 2012-05-12 + + - KMP text parser extensions: + - New commands: + @INCLUDE "filename": include text files. + @RETURN [val]: returns from the current input file. + @EXIT: exit the parser execution. + @ASSERT condition: exit execution, if 'condition' is false. + @MACRO .. @ENDMACRO: Define named macros. + @FUNCTION .. @ENDFUNCTION: Like @MACRO, but can also be used as + function in numerical expressions. + @CALL macroname(...): Call a previos defined macro with parameters. + '@:macroname(...)' is a short cut for '@CALL macroname(...):' + @DOIF (condition) anytext: Execute 'anytext', if 'condition' is true. + - New private variable name space: @PDEF + - P-Variables are only defined for the current source file or function. + - Loop variables (@FOR,@FOREACH) and macro parameters are defined in + this new private name space. + - New options for command FUNCTIONS (list parser functions): + - Option --long: The entered keys are compared against the description. + - Option --verbose: The description is printed too. + - Bug fix: Parser function minMax() returned wrong results. + + +szs v0.35a r3681 - 2012-05-20 + + - New options for "wstrt TRACKS+ARENAS": --brief --no-header + - KMP sections CKPH+ENPH+ITPH: Accept unsorted groups. + - New patching options: + - For wszst and wkclt: --kcl-flag=list: Exchange KCL flags in KCL files. + - For wszst and wkclt: --kcl-parse=script: Execute the script for each KCL + file and to calculate/modify the KCL flags. + - For wszst and wkmpt: --rm-gobj=list: Remove global objects in KMP files. + - New command: wkclt FLAGS: Print usage statistics about KCL flags. + - New parser functions: ptInCube(cube1,cube2,pt1,...) and a strict variant + ptInCubeS(cube1,cube2,pt1,...): Count the points in the cube. + - KCL exporter creates now 3dsMax compatible OBJ files with some issues. + + +szs v0.36a r3720 - 2012-05-28 + + - It the tools 'wkmpt' or 'wkclt' opens a SZS file, they use the internal + files 'course.kmp' or 'course.kcl' as source. + - New command: wszst KCL: Open the sub file @course.kcl@, decode and print it. + - KCL object exporter improved. + - New command: wkclt DUMP: Dumps the raw KCL records in human readable format. + - New command: wkclt OCTREE: Traverse and test the octree by using the entered + points. Logging of steps and triangles is controlled by --long and --brief. + - wkclt ENCODE: Import an OBJ file and create a new KCL from scratch. The + internal octree generator works fine and can be controlled by different + constants. See https://szs.wiimm.de/doc/kcl#encode for more details. + - If a KCL obj file with name NAME.EXT is scanned, a file name NAME.flag.txt + is scanned to find relations between group names and flags. + See https://szs.wiimm.de/doc/kcl#def-flag for more details. + - Read the new KCL export and import How-To: https://szs.wiimm.de/doc/kcl + + +szs v0.37a r3748 - 2012-06-02 + + - Read "Known Bugs" or https://szs.wiimm.de/doc/kcl about KCL issues. + - Command "wkclt dump" prints now more octree statistics. + As the result of the analysis of these statstics, the octree generation has + been optimized and some new parameters have been established. + - New command: wkclt TRIANGLES: It's like DUMP, but it print only 1 line + for each triangle data. The goal is to compare the data with other dumps. + - New option: --kcl-sort: Sort the triangles by length and positions to make + a dump more and easier compareable. + - New option: --kcl-drop: Remove all triangles, that are not referenced by + the octree. This helps to clean the KCL of custom tracks. + - The OBJ exporter creates Wavefront OBJ files compatible with "3ds Max" and + "Google SketchUp" (TIG's OBJ-importer plugin) and maybe with more 3D tools. + The exported data contains now also 'vn' vectors (normals). + - The OBJ importer read Wavefront OBJ files created by "3ds Max" and by + "Google SketchUp" (TIG's OBJ-exporter plugin) and maybe by other 3D tools. + + +szs v0.38a r3774 - 2012-06-05 + + - OBJ import and KCL creation tested with different tracks without issues. + - New option --kcl=list: 'list' is a comma separated list with keywords to + define options for the KCL processing. Allowed options are: RESET, FAST, + NORMALS, OUT-SWAP, IN-SWAP, AUTO, CLIP, DROP, SORT and DEFAULT. + See https://szs.wiimm.de/opt/kcl for details. + - The transforming options --shift, --scale, -xss, -yss, -zss and --hrot + are now available for KCL processing. + - Option --kcl-parse renamed to --kcl-script. + - Three new parser functions for the --kcl-script script: + tri$setPt() : Define new triangle points. + tri$shift() : Shift all points of a triangle. + tri$remove() : Remove a triangle from the list. + If one of these function is used, a new octree is calculated. + - New parser functions: sec(), mSec(), uSec() + - Several small bugs in the KCL creation removed. + + +szs v0.39a r3799 - 2012-06-09 + + - The KCL code was cleaned and the internal triangle data base has a new + optimized data structure. The new KCL tool will create the same KCL as + the previous r3774. Only the output of some dump commands and also + the created OBJ files have changed. + - Three new parser functions for the --kcl-script script: + tri$create() : Create a new triangle. + tri$scale() : Scale all points of a triangle. + tri$hRot() : Rotate all points of a triangle horizontally. + tri$unremove() : Clear 'REMOVED' marker + tri$isRemoved() : Get 'REMOVED' status. + Call "wkclt func tri$" for complete list of all 12 triangle functions. + - Command "wkclt OCTREE" renamed to "wkclt TRAVERSE". + - New command: wkclt COPY <source> <dest> + Copy and convert source collision file (KCL or OBJ) to dest. The default + destination file format is selected by scanning the file extension of the + destination. This is an alternative for the ENCODE and DECODE commands + for single copy operations. + - Optimization: If input and output are binary KCL files and only KCL flags + were changed, then the original KCL data is copied 1:1 to the output file + and only the flag values are modifed. Use --kcl=new to build always a new + binary KCL and to disable this optimization. + + +szs v0.40a r3837 - 2012-06-17 + + - Windows version only: Update to Cygwin DLL 1.7.15-1 + - The KCL obj export will now create a material file with adequate colors. + To disable materials support, use "--kcl -mtl". + - KCL flag scanning: Some 3D tools use the generic suffix '_number' in goup + names. This may result in a conflict with the automatic detection of KCL + flags. Not only therefor, the interface has changed: + - If creating an OBJ file, '_Fxxxx' (literal '_F' and 4 hex digits) + instead of '_xxxx' is now appended to the group names. + - If scanning a groupname, '_Fxxxx' is always accepted as flag value. + - The old way to detect flag values is now disabled by default, but can be + enabled by different --kcl keywords: 'HEX4' enables '_ffff' (flag), + 'HEX23' enables '_tt_vvv' (type and variant) and 'HEX' enables both. + - The flag file may define HEX4 and/ot HEX23 to 0 (disable) or 1 (enable) + to override the defaults set by option --kcl. + - For all groups with unknown flag assignments, the unusal values 0xFFE0, + 0xFFC0, 0xFFA0 and so on (all type 0x00 (road), each 0x20 lower) are + used in this order. This makes the groups discriminable in the KCL. + - The default extension of the flag file is now '.flag' and not longer + '.flag.txt'. If scanning both files are searched. + - The new option --flag-file=path overrides the default search for a flag + definitions file while scanning OBJ files. + - New command "wkclt CFF" will create a flag file with all group names + as template. + - If scanning a OBJ file, faces (polygons) with up to 50 vertices in a plane + are supported. Polygons with N>3 are split into adequate triangles. + - The user interface of the parser function tri$create() has changed to + allow the definition of polygons with any number of verteces. + - Bug fix: The naming of some parser functions were wrong: ptInCube*() are + renamed to ptInCuboid*(). The obsolete old names are allowed for a while. + - New command: wkclt CHECK: Run a KCL check and return 'DIFFER' as exit + status if any KCL error found. + - The KCL creation is now included into the SZS creator: Touched OBJ files + will now converted to KCL automatically if creating a SZS file. + + +szs v0.41a r3866 - 2012-06-24 + + - Bug fix: The triangle split of a face with exact 4 verteces fails in 50% of + all cases (bad optimization). + - Bug fix: The parser expression "a?b:c" fails, if the operators not followed + by a blank. + - Bug fix for some parser functions. + - Using a KCL for defining KMP positions: + Now it is possible to set a point anywhere and let it fall down until a + collision. This is a very good function to place global objects and other + points of the KMP. This internal KCL-FALL is available for the user in + different stages: + - Command "wkclt FALL source point..." for testing. + - Parser functions kcl$fall() and kcl$fallFlag() for scripts. + - Automatic adjusting of KMP points and objects in the sections CNPT, + ENPT, GOBJ, ITPT, JGPT, KTPT, MSPT and POTI. + + +szs v0.42a r3927 - 2012-07-06 + + - Linux+Mac: The math library is now included explicitly to avoid a linking + failure on some systems. + - Bug fix: Assigning values to private macro variables has overwritten + existing variables in the standard or global namespace. + - New parser command: '@PARAM': Define a parameter name list for macro and + function calls. + - 'ROUTE-ITEMBOX' replaced by a more flexible 'ROUTE-OBJECT'. + - New command: wkmpt COBJECT: Create an OBJ file: Load the related KCL and + add new faces representing the KMP elements are added. Enemy, item, check + and respawn points and cannon destinations are supported at the moment. + Option --draw=list decides which elements are included into the OBJ file. + See https://szs.wiimm.de/cmd/draw for more details. + - New parser functions: mean(), dir(), xDir(), yDir(), zDir(), rot(), xRot() + yRot(), zRot(), axisRot(), tri$createCuboid(), tri$createJoist(), + tri$createPrism() and tri$createPyramid(). The tri$create*() functions are + internally used to add KMP objects to the OBJ file. + - New KCL creating parameter: KCL_BLOW: If calculating the overlay between + cubes and triangles, the cubes are blowed up by the some units, so that a + triangle may be visible in a neighbor cube. This avoids unexpected rarely + effects like bike hopping. The default value is 400. + See https://szs.wiimm.de/doc/kcl#KCL_BLOW for more info. + * If you have created a KCL with a previous version of my tools, use this + command to create a new octree: + wkclt encode course.kcl --kcl drop,new --overwrite + The file 'course.kcl' will be overwritten with a repaired version. + + +******************************************************************************* +******* END ******* +******************************************************************************* diff --git a/project/templates/HISTORY-v1.txt b/project/templates/HISTORY-v1.txt new file mode 100644 index 0000000..0b91a49 --- /dev/null +++ b/project/templates/HISTORY-v1.txt @@ -0,0 +1,1288 @@ + +@@MODULE(head.txt)@@ + + +******************************************************************************* +******* HISTORY v1.* ******* +******************************************************************************* + +szs v1.00a r3958 - 2012-07-14 + + - wkmpt COBJECT --draw=modelist: + - Mode 'JGPT': Draw arrows at respawn positions. + - Mode 'CJGPT' does what the old 'JGPT' did: Draw connections between + check points and respawn positions. + - Mode 'CNPT': Draw arrows instead of lines. + - New command "wszst MINIMAP": Print and optional patch the releavant minimap + data of a SZS, U8, BRRES or MDL file. Supported patching options: --touch, + --xcenter, --ycenter, --zcenter, --center, --scale, --shift, --xss, --yss + and --zss. + + +szs v1.01a r3987 - 2012-07-22 + + - Command "wszst MINIMAP" can now automatically adjust the minimap, if the + new option --auto is set. It analyses MDL section 2 (vertex list) to find + the minimum and maximum values. Then it makes the ranges 4% wider, store + the calculated values in 'posRU' and 'posLD' of the MDL and calculate the + transformation matrices. The command is very flexible and can modify the + map of SZS, U8, BRRES and MDL0 files. + See https://szs.wiimm.de/opt/auto for details. + + +szs v1.02a r3992 - 2012-08-01 + + - KCL: Detect invalid triangles (e.g. length=0) on OBJ import. + - Option --kcl: There are now 2 groups of removing commands: + - 'DROP*' drop unused, invalid or fixed triangles (bad triangles). + - 'RM*' remove triangles with special characteristics. At this moment + RM-FACEDOWN is the only command of the 'RM*' class: It will remove all + face down drivable triangles to avoid KCL glitches. + - File DB: Sub files 'kinoko_*.kcl' are now assigned to object group 'kinoko'. + - Update of the KMP Object database. + + +szs v1.03a r4002 - 2012-08-11 + + - New global option: --force: The tools analyse input files and reject files + with invalid data structures. If --force is set, little repairable issues + are ignored or repaired and a warning is printed. + >>> THE RESULT MAY BE INVALID OUTPUT FILES! + - Option --kcl: If no 'DROP*' mode is set, the tools drops automatically all + bad triangles. For an existing octree, it is only 'DROP-UNUSED'. + - Option --kcl: Correct handling, if 'DROP-UNUSED' and 'NEW' are set together. + - wszst MINIMAP --auto: The Y-translation is also calculated to make very + high faces visible. + + +szs v1.04a r4050 - 2012-09-08 + + - Bug fix for v1.03a: With some option combinations, the KCL generator failed + and created an invalid KCL (if modifying an existing KCL) or a valid KCL + with some unwanted triangles (if importing from OBJ). + - Option --kcl: Better handling of DROP modes. + - Option --kcl: Correct handling, if 'DROP-UNUSED' and 'NEW' are set together. + (Same message as before, but now I have fixed one forgotten special case). + - "wszst CHECK" will now compare the number of cannons in KCL and KMP. + - New option: "wszst NORMALIZE --minimap": If --minimap is set, the minimap + is automatically adjusted like "wszst MINIMAP --auto" does it. All other + options like --scale are ignored for this kind of minimap processing. + - New option: "wszst minimap --set-flags=flags": Set the MDL flags to an user + defined value (default 0x31f). + - The tools accept now 'Yaz1' files in the exact same manner as 'Yaz0' files + hoping that the data structure and the compression method are the same. + - New options: --yaz0 and --yaz1: Force the magic of new created YAZ files + to 'Yaz0' or 'Yaz1'. + - Object database updated. + + +szs v1.05a r4097 - 2012-09-29 + + - For text files, only the first 4 characters are used as magic ('#BMG' + instead of '#BMG-TXT'; same for '#KCL', '#KMP' and '#MDL'). On creation + a 8 character magic is still written for compatibility. + - Update of the KMP Object database. + - Files './AIParam/AIParam.baa' and './AIParam/AIParam.bas' are now known by + the internal file database. + - Some optimizations around the KCL octree creation. This includes a new + handling of automatic dropping of invalid KCL triangles. + - Some minor text and layout changes. + + +szs v1.06a r4110 - 2012-10-06 + + - Bug fix: "wkclt COPY" printed always a false syntax error after correct + finishing all copy jobs. + - Bug fixes for "wszst NORMALIZE": + - BRRES files will not touched now. + - Memory bug, if rebuilding the KCL. + - wszst CHECK will now make slot proposals with comments: + - Slots 3.1 and 7.1: Check usage of KMP objects 'sunDS' and 'pylon01'. + - Slot 4.2: Only the usage of at least one KMP object of 'kart_truck', + 'car_body' or 'K_bomb_car' is done. An additonally MDL analysis is + missed, so the status is only "may run on slot 4.2". + - Slot 6.1: Test the existence of file 'ice.brres' and of KCL flag 0x70. + - Slot 6.2: Check usage of KMP object 'HeyhoShipGBA'. + - New command: wszst SLOTS: Print the possible slots for a track file. + The analysis is the same as for "wszst CHECK" (see above). The command + prints either a positive or a negative slot list, whatever is shorter. + + +szs v1.07a r4137 - 2012-10-19 + + - "wszst NORMALIZE --kcl ...": In the old versions, the KCL was patched in + place and the total size of the KCL was not changed. If the new KCL was + larger, parameters were changes in up to 5 iteration steps until the new + KCL was less or equal the old size. Now a complete new KCL is created with + the optimal settings and the size may shrink or grow. + If 'INPLACE' is added to the '--kcl list', the old behavior becomes active. + - wzszt CHECK: The logging of sub checks (KCL+KMP) is now better integrated + into the main log and there is now only one summary line for all. + - KCL creation tuned. + - The auto-add library holds now also unique files of folder 'posteffect'. + Try "wszst AUTOADD ./path/to/Race/Course/" to add all supported files. + - New archive format: WU8 (Wiimms U8) + WU8 is like U8, but the sub files are coded as patch for Nintendos original + files. This removes any code of Nintendo and a compressed WU8 (default) is + in general smaller than the related SZS. For encoding end decoding an + auto-add archive is needed (see https://szs.wiimm.de/doc/autoadd). + - wszst NORMALIZE/PATCH: + - Accept options --dest and --DEST for an alternative destination path. + - Accept options --u8 and --wu8 to define the new (W)U8-archive format. + - Object DB updated. + + +szs v1.08a r4148 - 2012-10-27 + + - wszst CREATE/COMPRESS/DECOMPRESS: + - All 3 commands support now U8 and WU8 conversions and accept the + options --u8 and --wu8. + - Support of U8/WU8 conversions of non track files. + - All 3 commands support the new option --remove-src (or --rm-src) to + remove the source files on success and if different to dest files. + - Better error handling of non existing files if --ignore is set. + - New keyword for option --kcl: If creating an OBJ file and 'TRIANGLES' is + set, the triangles are not stored as vertices and faces. Instead each + triangle is stored in an independent line. The OBJ file itself becomes + incompatible (or invalid), because TRI lines are not supported by any + other tool, but it makes adding points or mixing OBJ files much easier. + + +szs v1.09a r4169 - 2012-11-11 + + - BZIP2 compression is now supported as alternative to Yaz0. It is dedicated + to the WU8 file format for transferring files. BZIP2 files are smaller than + Yaz0 files and the creation is faster. + - The new option --bz forces BZIP2 compression instead of Yaz0 compression. + - The new option --wbz is a short cut for --wu8 --bz. + => To create a WBZ (WU8+BZ) file: wszst compress --wbz TRACK.szs + - The new option --szs is a short cut for --u8 --yaz0. + => To create a SZS (U8+Yaz0) file: wszst compress --szs TRACK.wbz + + +szs v1.10a r4186 - 2012-11-17 + + - Bug fix: File type printing (e.g. "YAZ0.U8:filename") was reimplemented + because of the new bzip compression, but with bugs. + - Command "wszst CHECK" will now accept option --verbose to print some more + slot hints (negative info about slots 4.2, 6.1 and 6.2). + - New debug command for all tools: ARGTEST: Print all scanned arguments as + list. This helps to find out wrong parameters, especially for windows. + - Cygwin (Windows): Filename handling improved. If using double quotes around + a filename, backslashes work in a Windows usual way as directory separator. + - Cygwin (Windows): Windows 'SendTo' support added. It must be (un-)installed + with the batch files 'sendto-install.bat' and 'sendto-uninstall.bat'. + Available SendTo jobs: + - normalize-SZS.bat : Normalize a file and convert it to SZS. + - convert-to-WBZ.bat : Convert a SZS file to a WBZ file. + - convert-to-SZS.bat : Convert a WBZ file to a SZS file. + - create-autoadd-library.bat : Use it with the extracted Race/Course + folder to create the autoadd library. It is needed for WBZ conversions. + - New option: --number or --num: If a destination file already exists, 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. Option --number is ignored if --overwrite is set. + + +szs v1.11a r4205 - 2013-01-01 + + - If creating the KCL file, the world will be enlarged by the KCL_BLOW value + to avoid problems at the world border. + - New parameter for KCL/octree fine tuning: KCL_MAX_SIZE: + Cubes, that are larger than KCL_MAX_SIZE, will always be splitted into 8 + sub cubes and will never have triangle lists. The maximum and default value + for KCL_MAX_SIZE is 1024*1024 (~1 million). + - New flag for --KCL=list: CENTER: If creating a new octree, adjust the cube + entrance values so that the real world is centered in the cube world. + - Some old and for a long time obsolate keywords removed. + + +szs v1.11b r4214 - 2013-01-20 + + - Bug fix: If creating a TEX0 file, the float number at offset 0x14 in the + TEX header was wrong (1 too large). The result were artifacts. + - Small updates of the object DB. + + +szs v1.12a r4236 - 2013-02-09 + + - Windows version only: Update to Cygwin v1.7.17 + - wstrt TRACKS+ARENAS: The index column shows now the internal zero based + track index of the track or arena instead of a simple track counter. + - wstrt FIND -lll: Additionally print the slot index and the internal index + (both zero based) before the file names. + - New command: wbmgt CAT: Print decoded BMG files to stdout. If a source is + a SZS file and no subfile is entered, subfile './message/Common.bmg' is + printed. + + +szs v1.12b r4246 - 2013-02-23 + + - Bug fix: The KCL cannon activator was internally handled as drivable type. + So it was wrongly a deletion candidate for --kcl=RM-FACEDOWN. + - Object DB updated. + + +szs v1.13a r4258 - 2013-03-01 + + - New option --rm-aiparam (short cut: --rmai): If set, the directory AIParam + and all files are removed from the archive. This option has only impact, + if creating a new archive or normalizing an existing archive. + - Command wszst NORMALIZE: Logging changed. + + +szs v1.14a r4274 - 2013-03-14 + + - wkmpt CHECK (and all commands calling this function internally): + 4 new tests for sections CKPH, ENPH and ITPH: + - The section must not be empty (WARNING). + - Only ITPH: The first 'next' link must be valid (WARNING). + - Each group must have at least one valid 'next' link (WARNING). + - Each group must have at least one valid 'prev' link (HINT). + See https://szs.wiimm.de/cmd/wkmpt/check#testlist for all tests. + - Option --kcl-script can now be used multiple times to execute multiple + kcl script in the entered order. + - Two new parser functions to identify the source within a script: isKCL() + and isKMP(). Both functions return 0 for false, 1 for true or 2 for true, + if the source is named 'course.*' (main KCL/KMP file). + + +szs v1.15a r4300 - 2013-03-28 + + - New docu file: INSTALL.txt + - Mac+Linux+Unix: Script 'install.sh' will call itself with 'sudo' if not + started by user 'root'. Read INSTALL.txt for details. + - Windows: Cygwin updated. + - Better detection of UTF-8 files with byte order mark (BOM). Tool wbmgt will + accept those files now. + - Bug fix: wbmgt CAT: The option --patch is now processed. + - Bug fix: wbmgt ENCODE: Wrong file naming fixed. + - Bug fix: Option --kcl: If no 'DROP*' mode is set, the tools drops all bad + triangles automatically. For an existing octree, it is only 'DROP-UNUSED'. + - Check KCL+KMP: The checks are now done after patching. + - New option --kmp=modes: It works like --kcl=modes to define KMP jobs and + modes. The first modes are: + - NEW : Scan KMP and create a new one. + - RM-SPCITEM : Clear 'special items for players' setting of the 6 item box + object types. + - FIX-CKPH : Fix the section CKPH. + - FIX-ENPH : Fix the section ENPH. + - FIX-ITPH : Fix the section ITPH. + - FIX-PH : Short cut for: FIX-CKPH,FIX-ENPH,FIX-ITPH. + - INPLACE : Force inplace replacing of KMP files (old mode). + - LOG : Debug: Enable KMP specific logging. + The fix modes are EXPERIMENTAL! + See https://szs.wiimm.de/opt/kmp for details. + + +szs v1.16a r4313 - 2013-04-08 + + - Bug fix for BTI detection (reduce false positives). + - wkmpt COBJECT --draw=ckpt: Draw lines to next point and to point linked + by the 'next' member. + - New command: wszst ENCODE: Works like wszst CREATE, but will not create a + first level archive. The intension is to create and update all subfiles. + 'wszst ENCODE' can be used as a prepararion before using 'wszst UPDATE'. + - New mode for --kmp: FIX-CKNEXT: Automatic calculation of the 'prev' and + 'next' links of KMP section CKPT. + See https://szs.wiimm.de/opt/kmp for details. + - Slot 4.2 detection: Improved 'moonview' detection, because MDL.s10 + 'polygon11' and 'polygon60' are searched and their size is checked. + - Command 'wszst SLOTS': Slots are assigned to output columns now. + - Windows 'SendTo' commands: Fix handling of filenames with spaces. + Reinstall the SendTo files with 'sendto-install.bat'. + - New Windows 'SendTo' commands: + - clean-KCL-of-SZS: Normalize a SZS, drop unneeded KCL triangles and + rebuild the KCL octree. + - adjust-minimap: Adjust the minimap of SZS, BRRES and MDL files. + - Object DB updated. + + +szs v1.17a r4358 - 2013-04-23 + + - Moonview slot proposal optimized. + - KMP check: Print a hint, if 200 or more global objects are defined. + - Option --fast overrides compression rates set by --norm or --compr=list. + - New --kcl mode: FIX-ALL: Short cut for DROP,RM,NEW,LOG. + - New option: --autoadd-path=dir: Define a path for the auto-add library + and override the default search pathes. + - New option: --mdl=list: Define a MDL patching method. VERTEX patching is + used by default. + - New option for wszst: --patch-file=list: Define, which kind of KMP, KCL and + BRRES/MDL files are objects for patching. The default is to patch only the + main KMP and KCL files and the MODEL and MAP files. --pfile is a short cut + for --patch-file. + - New name for option --hrot: --yrot + - New options: --xrot, --yrot, --zrot, --ypos: Options --xrot, --zrot and + --ypos are really new for X+Z rotation and --yrot is only a alternative + name for --hrot. See built in help for impact. + - New option: --translate: Works like --shift, but is done after the + rotation. This is similar to the MDL transformations, that works in the + order scale, x-rotate, y-rotate, z-rotate, translate. + - New command for testing: wszst MATRIX: Use the transformation options as + base and calculate and print the related vectors and the tranformation + matrices. Then execute the transformations for each vector (parameter). + - ATTENTION: Because of the new 3D rotation support, a new rotation + algorithm has been implemented. Implementation bugs are not impossible. + - ATTENTION: All new patching options are EXPERIMENTAL! + + +szs v1.18a r4404 - 2013-05-01 + + - There is a complete new transformation algorithm: All transforming options + will be used to create a transformation matrix. If using >1 transformation + steps (see below), the matrices are multiplied to get a final transformation + matrix. All transformations are now done using this final transformation + matrix. This is faster and the internal handling is now much easier. + - New option --next: This option allows and separates up to 10 transformation + steps. Logical, each point is transformed step by step in the definition + order. Internally, a final matrix is calculated and all transformations are + done in a single step by using this final matrix. There are some issues + transforming KMP object, see https://szs.wiimm.de/opt/next for details. + - Command MATRIX is now available for all tools with transformation support. + It was redesigned to control the impact of the new transformation steps. + See https://szs.wiimm.de/cmd/matrix + - New option --rot=deg@origin: Define the rotations for 3 axes by one option. + - New option --arot=deg[@pt1]@pt2: Do an (axis) rotation around the axis + specified by the 2 points as single transformation step. + This option is EXPERIMENTAL! See https://szs.wiimm.de/opt/arot + - New option --ascale=factor@dir: Do an (axis) scaling into the direction + specified by the vector 'dir' as single transformation step. + This option is EXPERIMENTAL! See https://szs.wiimm.de/opt/ascale + - KMP object database updated. + + +szs v1.19a r4461 - 2013-06-02 + + - wszst CHECK: Check existence of minimap bones 'posLD' and 'posRU'. + Read https://szs.wiimm.de/cmd/wszst/check#desc for a list of all tests. + - Check commands: KMP objects with presence flag == 0 will be handled as + non existent. This changes the missing files status and the slot proposals. + - KCL type names synchchronized to Wiki. + - Bug fix: If a function was searched and a const was defined with the same + name, a `segmentation fault´ (or similar) occured. + - New command: wkmpt STARTPOS: Print the start positions of players in + various formats. See https://szs.wiimm.de/cmd/wkmpt/startpos for details. + - Patching option --kmp accepts now the keywords LEFT, RIGHT, WIDE and NARROW + to modify the start options in section STGI. + - New global option --de: Use german track and arena names. + - Command FILETYPE --long: Column with version of file format added. + - wszst EXTRACT/CREATE: The version number of the archive file format is + stored in and read from the help file 'wszst-setup.txt' to support version + dependent file formats. + - BREFF and BREFT: + - Version numbers are printed in listings with version support. + - The file format version number is written to 'wszst-setup.txt' on + extracting and read from read from 'wszst-setup.txt' on creating. + - The default aligning for BREFT files depends now on the version number. + It is 0x20 for versions <10 (MKW=9) and 0x40 for versions >9 (NSMB=11). + At the moment the new alignment for NSMB is not well tested! + + +szs v1.19b r4482 - 2013-06-14 + + - Bug fix: If resizing an image (e.g. for mipmaps), an INTERNAL ERROR + appeared sometimes because of an unhandled combination of image type + and image size (odd height or width). [Thanx to HelloImYourMind] + + +szs v1.20a r4548 - 2013-07-21 + + - New Option for wszst and wimgt: --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 mipaps with odd width + or height. THIS NEW FUNCTION IS EXPERIMENTAL! + - Support of original SketchUp OBJ exporter, see next 2 points for details: + - More tolerant detection of Wavefront OBJ files. Export of the original + SketchUp exporter will be recognized as 'SKPOBJ' instead of 'WAVOBJ'. + - New --kcl flags: 'G' and 'USEMTL': If scanning an OBJ file, these flags + decides, which OBJ commands will define groups. If none is set (default) + 'USEMTL' is used for files of type 'SKPOBJ' and 'G' for all others. + - Command 'wkclt CFF' accepts now option --brief to suppress the comment + '# f(type,variant)' and option --long to force a '= f(type,variant)' + parameter. + - Suppress some patch logging messages for CHECK commands. + - CHECK KMP: If option --long is set, print some additional statistics. + - Some error messages are more exact now. + - Bug fix: If using options --test and --remove together, the destination + file was removed sometimes (but not created). + - New patching option: --tform-kmp=list: Fine control about the sections + and objects (position, rotation or scale vector), that are transformed. + See https://szs.wiimm.de/opt/tform-kmp for details. + - Windows only: Cygwin update to v1.7.20 2013-06-07. + + +szs v1.21a r4578 - 2013-09-07 + + - Improved built-in help system. Type e.g. "wszst help help" or visit + https://szs.wiimm.de/cmd/wszst/help for details. + - New keyword for option --kmp: FORCE: Ignore little repairable file structure + issues on reading KMP files. Works like --force, but only for KMP files. + - Bug fix: The check for the right position of all KMP sections failed. + - Optimized handling for SZS sub files with 'out of range offsets'. + - wszst: Option --auto-add can now be used together with the commands PATCH + and NORMALIZE. EXPERIMENTAL! + - Bug fix: Wrong calculation of parent directory index in U8 header fixed. + This bug existed from the beginning of the SZS tools and it seems, that it + had no impact for running a track or for other tools. However, the positive + impact is, that the creation of the files Track.szs, Race.szs and the other + language independent SZS files of MKWii directory './Scene/UI' works now. + + +szs v1.22a r4602 - 2013-09-14 + + - The Windows installer will now force type REG_EXPAND_SZ for path variables. + - New commmand: wbmgt MIX: Works like CAT, but combines all input files. + - Exported BMG text files will now show all characters of the Unicode Basic + Multilingual Plane (BMP; codes <=0xfffd) without escape sequences. + - Tool wbmgt: Option --single-line supports now 2 levels and option --brief + 3 levels. See https://szs.wiimm.de/opt/wbmgt/single-line and + https://szs.wiimm.de/opt/wbmgt/brief for details. + - New option: wszst --patch-bmg: Patch BMG sub files directly. There is no + more need to extract BMG files before patching. + - New option for tools wszst and wbmgt: --msg=list: If set, the BMG messages + are filtered by this list. Only enabled messages are exported to the ouput + BMG file (binary or text). + - If an archive (SZS,...) is found while reading a BMG file, the archive is + searched for BMG sub files and found sub files together are used as BMG + source. + - wstrt can now detect main.dol files and its type (PAL, USA, JAP or KOR). + - Option --kmp accepts now the keywords 1LAP, 2LAPS ... 9LAPS to modify the + first byte of KMP/STGI (number of laps). This first byte has only impact on + patched main.dol files. + + +szs v1.23a r4682 - 2013-10-05 + + - Exported BMG text files will now show all characters of the Unicode Basic + Multilingual Plane (BMP; codes <=0xfffd) without escape sequences. New is, + that surrogates and private ranges are always printed as escape sequences. + - New options for BMG text output: --color and --no-color: If enabled, colors + are printed as new escape sequence "\c{color}". 'color' is either a known + color name or a hex number with 4 digits. At the moment, --no-color is + the default to avoid problems with old versions and other externl tools. + In 2014 --color shall become the default. However, the BMG text scanner + accepts the new escape sequence from now and independent of these options. + - New modes for option --patch-bmg: 'ID', 'ID-ALL', 'CT-COPY' and 'CT-FILL'. + See https://szs.wiimm.de/opt/patch-bmg for details. + - New command: wstrt DUMP: Dump the data structure of DOL files as text. + - wstrt ANALYZE: Analyze DOL files and compare them section by section with + the orginal main.dol file of MKWii. + - New command: wstrt EXTRACT: Extract the sections of a DOL file into a + directory. StaticR.rel files are ignored. + - New global option: --ctcode: Enable the CT-CODE mode of the tools. + See https://szs.wiimm.de/doc/ctcode for details and about CT-CODE. + - wstrt PATCH --add-ctcode: Add CT-CODE to original main.dol files. + - New tool: wctct: Manage CT-CODE. See https://szs.wiimm.de/wctct and + https://szs.wiimm.de/doc/ctcode for details. + + +szs v1.24a r4703 - 2013-10-14 + + - Bug fix for wctct: Winning + losing ceremony after GP enabled. + - wctct: More possible names for music and property ids. + See https://szs.wiimm.de/doc/slot-id for details. + - Transforming complete tracks: VRCORN will now patched by default, if not + excluded by option --patch-file=list. + - Linux 'make': LIBPNG will be linked as static library, if available. + + +szs v1.25a r4715 - 2013-10-27 + + - New KMP command for CKPT, ENPT and ITPT: $SPLIT: Split the group into 2 or + more peaces. See https://szs.wiimm.de/doc/kmp/syntax#ckpt-grp for details. + - New KMP parameter for ENPT and ITPT: @AUTO-FILL: Add additional points if + the distance between points is smaller than the defined value. + See https://szs.wiimm.de/doc/kmp/syntax#enpt-par for details. + - KMP compiler: New snap variant to define x- and y-rotation. + See https://szs.wiimm.de/doc/kmp/snap for details. + - Command 'wkmpt COBJECT' accepts now option --kcl-script to filter the + exported OBJ file. + - Some small fixes for tool wctct. + + +szs v1.26a r4726 - 2013-11-10 + + - Bug fix: A patched file was not marked as dirty (and not written), if only + BMG was patched and only with modes 'ID' or 'ID-ALL'. + - New option --export (-X): 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 -HBl11 for BMG text files. + - Windows version only: Update to Cygwin v1.7.25. I hope that it fixes the + bug that occurred during creation of MKW-Fun 2013-10 with Windows 8.1. + + +szs v1.27a r4742 - 2013-11-24 + + - Bug fix: Occasional a triangle was marked as invalid by mistake, if it was + inserted by the script function tri$create() (option --kcl-script). + - Minimap fixing: From now the minmum and maximum values of the MDL.s1 root + are set too. + - KMP check: A test added, which controls, that the check points are not to + near together and that they build convex quadrilaterals. + See https://szs.wiimm.de/cmd/wkmpt/check#desc for check details. + - KMP check: Some WARNINGS are HINTS now. + - New transformation option: --tform-script=script + The script is loaded and a macro is called for every vertex. So it is + possible to add user defined and also non linear transformations. + See https://szs.wiimm.de/opt/tform-script for details. + - New parser functions: status(), len2(), hlen2(), sideOfLine(), + ptInConvexPolygon(), ptsInConvexTri(), ptsInConvexQuad(). + See https://szs.wiimm.de/cmd/wszst/functions#desc for details. + + +szs v1.28a r4771 - 2013-12-09 + + - There was a disorder using the escape sequences '%E' and '%T' for file + extensions/types. '%E' included a leading point, '%T' only sometimes. + Henceforth both will include then leading '.' or are empty, if no file + extension is available. So the earlier '%N.%T' becomes '%N%T'. + - Command wkmpt COBJECT will now also draw the start position with area, the + respawn positions with area, the POTI routes and standard itemboxes. See + https://szs.wiimm.de/opt/draw for details. + - Command wkmpt COBJECT: Check points with quadrilateral warnings are drawn + in red. This option can be disabled by --draw=-warn. + - New KMP check: Test, if all enemy and item root points are inside of at + least one convex check point quadrilateral. + + +szs v1.29a r4788 - 2013-12-13 + + - Command 'wkmpt COBJECT' was renamed to the more intuitive name + 'wkmpt DRAW'. The old command name can still be used. + - Option --draw has now a short twin: -w + - Option --draw supports the new keyword SOLIDOBJECTS: Draw all solid objects + without any route as a blue octahedron. At the moment, the native object + size, scaling and rotation are ignored. + - Command 'wkmpt DRAW --draw ITEMBOXES' draws itemboxes like in-game as a + grey cube with a vertex down. The color for itemboxes with special items + for players or enemies is dark grey. + - New KCL script functions: tri$createOctahedron(), tri$createAntiPrism() + and tri$createAntiArrow(). + + +szs v1.30a r4810 - 2013-12-27 + + - Object export (wkclt DECODE & wkmpt DRAW): + - The default for normals changed. Normals will only be included if the + keyword NORMALS of option --kcl is set. The new default is better for + the SketchUp OBJ importer plugin in time and correctness. + - The ambient color of the material 'Ka' is not longer defined. + - Bug fix: If the object needed more than 65535 vertices, then a wrong OBJ + was written with indices modulo 65536. + - wkmpt DRAW: The following objects are drawn in correct size and with a + recognizable form and color: itembox, obakeblockSFC*, dokan*, karehayama + and all trees. + - KCL: Improved error system, if a KCL has more than 65535 normals. Before + aborting, the normals are rounded in multiple steps to find duplicates. + + +szs v1.31a r4828 - 2014-01-03 + + - BMG handling: \c{color} escape sequences in text output are now enabled + by default. To be compatible with old tool versions (v1.22a released at + 2013-09-14 and older versions), use option --no-color. + - wctct: Support of hex coded filenames for the 32 original tracks. + - Windows only: Cygwin update to v1.7.27 2013-12-09. + - New option: wstrt --all-ranks: Manipulate a query for Nintendos servers, so + that all players in a region are found independent of their ranking points. + + +szs v1.31b r4841 - 2014-01-17 + + - KCL bug fix: Creating and managing the flag file failed sometimes. + + +szs v1.32a r4958 - 2014-02-07 + + - wszst+wbmgt: Options --color and --no-color have new meanings (see next + point). Instead of the old option --no-color, there is a new option named + --no-bmg-color to suppress '\c{color}' escape sequences of BMG files. + - New global options for all tools: Option --color forces colorized text. It + is enabled by default for output to terminals. Option --no-color disables + colorized text at all. At the moment only the commands COLORS, CHECK and + SLOTS support colorized text. + - New command: COLORS: Test colorized text by printing it in different modes + (colors, bold, underline). Also test the options --color and --no-color. + - Bug fix: A patched BMG file was not marked as dirty (and not written), if + only some characters in the second half of the string are modified and the + length don't change (compared N bytes and not N words). + - Bug fix: wstrt patch --region=name: New assignment of region names to + region numbers: 0=Japan, 1=America, 2=Europe, 3=Australia, ... + - KMP/STGI: Support of the last 2 bytes as `speed modifier': + - On output, the factor is appended as comment. + - On input, a floating point number instead 2 single bytes is accepted + as speed mulitplier. The floating point number is rounded to the nearest + possible number (16 bit cut float with only 7 bits for the mantissa). + - New option for tools wszst and wkmpt: --speed-mod=factor: Define a speed + modifier and patch KMP files. + + +szs v1.33a r4983 - 2014-03-01 + + - Colorized patch log. + - New Command: wszst COPY source dest: COPY is an alternative command for + copying and pathing files. It uses the same internal procedure as command + PATCH, but has another command line syntax. + - New mode for option --kmp: FIX-CKJGPT: Fix invalid links to respawn points. + - wszst CHECK: Test geometry of images: + - Warnings about invalid images with zero width or height. + - Warnings about images with width or height not power of 2. + - Hints about images with width or height >1024. + See https://szs.wiimm.de/cmd/wszst/check#testlist for details. + - wszst CHECK: Count and warn about the number of vertices in MDL files + of 'course_model.brres', 'map_model.brres' and 'vrcorn_model.brres', + and about the total of all MDL files. + - New KMP checks for wszst+wkmpt CHECK: + - STGI: Print modified lap counter. + - STGI: Print invalid start position or mode. + - STGI: Print defined speed modifier. + See https://szs.wiimm.de/cmd/wkmpt/check#testlist for details. + - The tools 'wkclt' and 'wbmgt' accept the literal "0" as source filename for + an empty file (like "-" for stdin). + - Windows only: Cygwin update to v1.7.28 2014-02-09. + + +szs v1.34a r5070 - 2014-04-19 + + - New Option --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 DAISY, DESERT, SHERBET, SHYGUY, STANDARD and + MOST. Slot numbers (except '42' or '4.2') are also accepted. + See https://szs.wiimm.de/opt/slot for details. + *** THIS NEW OPTION IS EXPERIMENTAL! *** + - New patch option: --https=mode: Patch the https strings of REL and DOL + files. 'mode' is one of the following keywords: + - RESTORE restores the original URLs and domains. + - HTTP replace HTTPS requests by HTTP and sub-domain 'naswii.' by 'nas.'. + - DOMAIN replace HTTPS requests by HTTP and domain 'nintendowifi.net' by + a domain specified by the option --domain. + - PORT1 sets the domain specified by option --domain in combination with + ports 90-93. + - PORT2 is like PORT1, but it uses 'mariokartwii.DOMAIN' to replace the + 'mariokartwii.race.gs.nintendowifi.net' domain. + - New patch option: --domain=dom: Define a domain for option --https. The + default domain is 'wiimmfi.de'. + + +szs v1.35a r5184 - 2014-05-16 + + - Two more modes for option --https: + - SAKE0: Same as DOMAIN, but don't replace URLs with SAKE domain. + - SAKE1: Same as SAKE0, but replace HTTPS of SAKE domains. + - New option: wstrt --wiimmfi: Patch the files for the new custom server. + It is a short cut for '{--https=domain --domain=wiimmfi.de}'. + + +szs v1.35b r5386 - 2014-07-02 + + - wstrt ANALYSE: Bug fix: HTTPS hint for original files removed. + - wstrt PATCH: Bug fix: Some forgotten 'https' and 1 'sake' are patched now. + + +szs v1.35c r5394 - 2014-07-03 + + - wstrt PATCH: Another 'https' bug fixed. + + +szs v1.36a r5680 - 2014-10-18 + + - New command: wstrt+wbmgt POINTS: Print a table with points assigned after + a versus or private room race. This command should help to find a good + parameter for option --points. + - New option --points=list: Define a new table with points assigned after a + versus or private room race. Predefined tables are: + NINTENDO: Original Nintendo table. + LINEAR: Last get 0 points, all other 1 point more than successor. + WIN15: Winner = 15 points, last=0, all other are evenly distributed. + WIN25: Winner = 25 points, last=0, all other are evenly distributed. + For LINEAR, WIN15 and WIN25 there are some options: + ONE: Last get 1 point instead of 0. + BONUS: Winner get a bonus of 1 point. + See https://szs.wiimm.de/opt/points for details. + - Windows only: Cygwin update to v1.7.32 2014-08-13. + + +szs v1.36b r5690 - 2014-10-21 + + - Bug fix: If transforming a track, the minimap became sometimes invisible. + The reason was, that the minimum and maximum parameters of the vertex list + were not calculated and not stored to reflect the new coordinates. + - New patching option: --null: Create a neutral transformation without + affecting the coordinates. The only influence is, that the dependent values + (like maximum) are calculated as if a transformation has taken place. + This option helps to fix the transforming bug mentioned above. + + +szs v1.37a r6010 - 2015-02-08 + + - New color management. + - Object database updated. + - New wstrt options --vs=ch & --bt=ch: Replace the second letter of + versus/battle identification ('vs','bt') to a new character. + - Windows only: Cygwin update to v1.7.34-6 2015-02-04. + + +szs v1.38a r6056 - 2015-02-27 + + - Tools WSZST contains now all other tools. It can be called in the usual way + or as tool wrappers. See https://szs.wiimm.de/doc/wrapper for details. + - wkmpt DRAW: If the drawing of itemboxes or other solid objects is enabled, + the routes of movable itemboxes or other solid objects are drawn too. + - Two new keywords for option --patch-bmg defined: + - CT-FORCE-COPY: Copy all standard track and arena name messages to + MID 4000..4029 and overwrite existing strings. + - RM-CUPS: Remove racing cup names (MID 23f0..23f7) from BMG. + - New keyword for option --msg=list: CTTRACKS enables the messages for the + CT-CODE track names (MID 4000..40ff). + - New option wctct --write-tracks=file : Create a machine readable file + reflecting the track distribution to the cups. --wtracks is a short cut. + - New option wctct --order-by=bmg : Load the BMG file and filter track + names. Then order the tracks in the cups by the alphabetic order of the + BMG messages. The tracks and its slots are notmodified. + - New option wctct --order-all : Option --order-by will order all tracks. + - New command wctct PATCH : Read each source file, find and scan the + CT-CODE part and patch it. + - New command wctct TRACKS: Create a track listing. + + +szs v1.39a r6123 - 2015-03-27 + + - BMG files: Support of new color names YOR0..YOR7: 8 continous colors from + (Y)ellow to (O)range to (R)ed. For compatibility reasons, hex-codes are + used instead of the new names on text output. + - wctct: Minor bugs fixed for handling BMG files. + - wctct CREATE: Support of output modes EU-BRRES, US-BRRES, JP-BRRES, EU-SZS, + US-SZS and JP-SZS to create strap files, either uncompressed (xx-BRRES) or + compressed (xx-SZS). + - New option: wctct CREATE --images=dir: Define a directory where the images + for BRRES or SZS files are searched. + - KMP/GOBJ/ELINE_CONTROL: Use group names instead of index numbers for links + into section ENPH. Reordering of groups is stable now. In section ENPT a + cross reference to ELINE_CONTROL objects is printed. + - New option for wstrt: --vs-region and --bt-region: Define different regions + for versus races and battles. + - New: wszst SHA1 --base64: print the checksum as BASE64 encoded string. + - New: wszst SHA1 --verify: Compare a checksum integrated in the filename. + + +szs v1.40a r6162 - 2015-04-13 + + - wstrt: The region is now patched at 4 places at StaticR.rel for versus + races and at 4 other places for battles. Versus and battle can be patched + to different regions. + - BMG: Each BMG string has an additional 32-bit value. In old versions, + a value different from 0x01000000 is printed as separate line using the + format 'NAME ~ VALUE'. With this version, also a combiantion of value and + string is possible. The new format is: NAME [value_vector] = STRING'. + At scanning, both formats are accepted. + - The new option --bmg-inline selects the new inline format for output. + It will be the default in the future. + - The new option --no-bmg-inline selects the old separate line format for + output. At the moment it is the default for compatibility reasons. + - Full support of PAT0 binary and text files including decoding and encoding: + - 2 models for text output are used. SIMPLE for all standard PAT0 files + and COMPLEX for PAT0 with extended features (e.g. multiple animations). + - The internal parser is used to scan text files (SIMPLE and COMPLEX). + - New tool 'wpatt': Wiimms PAT Tool: Decode and encode PAT0 files. + - Tool 'wszst' decodes on extract and encodes on archive creation if the + text file was touched. + - The new option --pat=list defines global options for PAT processing. + - Support of PACK archives (list, extract and create). + - New option --pack: Force a PACK archive on CREATE. + - New option --align-pack=size: Define the alignment for PACK sub-files. + - The tools of the Linux distributions are compiled now with static libraries + to improve the compatibility with various Linux systems. + + +szs v1.41a r6469 - 2015-09-04 + + - Bug fix: wstrt patch --region: Changing the region in a staticr.rel file + was internally not registered as modification with the result, that the + patched file was not rewritten. + - New option for wkmpt DRAW: --png geometry: A PNG with a top view of the + world is created instead of an OBJ file. Use rotation to view into other + directions. This is very slow. + - Internal sub-file database: Files "posteffect.bblm", "posteffect.bdof" and + "VolcanoPiece*.*" are now marked as 'optional'. The new classification + suppresses "Missing file:" warnings on checks. + + +szs v1.42a r6527 - 2015-10-03 + + - New commands: wszst STGI & wkmpt STGI: Print a single line statistic about + KMP/STGI settings (start pos, speed mod, laps) for each source file. + Both commands do the same and accept track and KMP (bin and text) files. + - New option: wstrt --add-section: Add a new section to a main.dol file. + It's also possible to add a gecko code interpreter together with cheat + codes, e.g. the Lap & Speed Modifier. + + +szs v1.43a r6536 - 2015-10-09 + + - Option --add-section supports now GCT files as input. In this case, + code-handler-only is added automatically. + + +szs v1.44a r6558 - 2015-10-17 + + - BMG: The `inline mode' for attributes is now enabled by default. It can be + disabled by option --no-bmg-inline. + - BMG message id 0 is allowed now. + - BMG: Support of 1A escapes with up to 254 bytes (before 12 bytes). + - BMG: Escape sequences \x{}, \u{} and \z{} can now handle comma separated + lists of parameters. See https://szs.wiimm.de/doc/bmg/esc for details. + - New option: --x-escapes: Use \x{} escapes instead of \z{} escapes. + - New option: --old-escapes: To be compatible with v1.43 and earlier, print + 1A escape sequences with total size of >12 bytes as single words. Also + don't use \x{} and \u{} with parameter lists. + - BMG supports now attribute vectors up to 20 bytes. MKWii uses only 4 bytes + for attributes. + - New option: --bmg-inf-size (also --inf-size for tool wbmgt): + Defines the size of section 'INF0'. For MKW it is usually 8. + - New option: --force-attrib=attrib: Override all BMG attributes with the + entered value. See https://szs.wiimm.de/doc/bmg/attrib for the syntax. + - New option: --def-attrib=attrib: Define alternative default attributes for + new BMG text files. See https://szs.wiimm.de/doc/bmg/attrib for the syntax. + - New option: --no-attrib: Suppress the output of string attributes at new + BMG text files. + + +szs v1.45a r6602 - 2015-10-31 + + - Option --patch-bmg=id: Better detection of the source file type (Race, + Event, MenuOther, ... ) especially in SZS files. + - The KMP compiler can now automatically create respawn points and/or + automatically connect check points to the nearest respawn point. Both + together make an initial respawn setup much easier. + Read https://szs.wiimm.de/info/respawn-setup.html for details. + - Tool wctct: It is now possible to define hidden tracks (don't appear in + any cup) by using control letter 'H' instead of 'T'. + - New option: wctct/wstrt --ct-dir: Define a search directory for CT-CODE + parts and use the internal copies only, if no valid file is found. Use + this option multiple times to define more than one search directory. + - wctct --ct-dir: Search files rmc?/mod1.bin, rmc?/mod2.bin, rmc?/ovr1.bin + and rmc?/bad1code.bin. + - wstrt --ct-dir: Search files rmc?/boot_code.bin and rmc?/boot_data.bin + if option --add-ctcode is used. + - Tools wctct and wstrt use now the most current CT-CODE version provided by + https://github.com/Wiimm/wii-ct-code (a fork of Chadderz code with support + of the SZS Tools). To use the old code of year 2013 download the zip file + https://szs.wiimm.de/download/ctcode/ctcode-2013-10.zip and use the base + directory as parameter for the new option --ct-dir (see above). + - wstrt --add-ctcode: The first free DOL sections are used now. Before only + sections T2 and D8 were added if not already in use. + - New option: wstrt --meno: Patch some 'MenuSingle' and 'MenuMulti' strings + of file StaticR.rel for online usage to 'MenO*' to distinguish between + offline and online. + + +szs v1.46a r6626 - 2015-11-08 + + - New option: --compatible=version: The option accpets a version number + (format '#.##' or 'v#.##') or a revision number (format 'r#') as parameter. + If set, the tools try to create BMG and KMP text files, that are compatible + to the entered version. This may override other legacy options. + - wkmpt DECODE: If creating a KMP text file, a new macro section is included. + The only yet provided macro is ITEMBOX: It help to setup a row of items + and supports automatic height correction. See the macro definition for more + details. The macro itself is very old and works also with old versions of + the tools, but they don't create it. + - wkmpt DRAW: Draw objects 'kinoko_*' and 'DKturibashiGC' as recognizable + polygons. These objects can also be used to stop fall-down on automatic + height evaluation, if the new parameter 'KCL-FALL-ADD-ROAD' is set to '1'. + - New: Post processing flags for KMP sections ENPT, ITPT and JGPT. To disable + the new flags column on text output, use option --compatible=v1.45. + - wkmpt DRAW: If drawing check point connection lines, red is used for the + left and green for the right side (like navigation lights). + - wkmpt DRAW: Option --draw supports now object filtering by presence flag. + The new keywords are: 1OFFLINE .. 3OFFLINE and 1ONLINE .. 3ONLINE. + + +szs v1.47a r6650 - 2015-11-27 + + - Tool wctct: Update of the internal CT-CODE (mod2). The new code improves + the modes "in order" and "random" for offline versus races. Here you can + find old CT-CODE version: https://szs.wiimm.de/download/ctcode/ + Visit https://github.com/Wiimm/wii-ct-code/ for more details. + + +szs v1.48a r6675 - 2015-12-11 + + - Tools wctct and wstrt support now Korean CT-CODE. Therefor external CT-CODE + files are needed. Use --ct-dir=path to declare at least one search path. + - Bug fix: wctct disables the hard coded region patch of the CT-CODE. Now + region patches in StaticR.rel are possible like before v1.45a. + - Bug fix: On CT-CODE text export wctct encloses the track names by quote + signs. This feature was accidentally lost with v1.38a. + - New option: wctct --allow-slots: Activate reserved slots for automatic + slot assigning. Example: --allow-slots ARENAS,SPECIAL + + +szs v1.49a r6974 - 2016-03-05 + + - The BMG is rewritten as independent source code lib. It can be used by + other tools (e.g. mkw-ana) now. + - BMG text output contains now more comments about message ID groups. + - Option --patch-bmg supports 2 new modes: + - UNICODE: Replace Unicode-escapes ('\u{xx}') with 16-bit codes by related + unicode character. + - RM-ESCAPE: Remove all 0x1a-escapes from all strings. + - KCL script 'lower-walls.txt' updated to support different gradients. + - New option: --mipmap-size=num: Define the minimal width and minimal height + of a generated mipmap. The default is 16. Tools before v1.49 used 1 as not + alterable value. --mm-size is a short cut. + - Option --kcl RM-FACEDOWN: Remove all road with face direction >30 degree + toward bottom. Before it was >0 degree. + - New keyword for option --kcl: RM-FACEUP: Remove all walls with a face + direction >80 degree towards the sky. + - New keyword for option --kcl: CONV-FACEUP: Convert all walls with a face + direction >80 degree towards the sky into a simple road. + - New keyword for option --kcl: SCRIPT: If set, KCL scripts are executed + before cleaning and transforming the KCL. + + +szs v1.50a r7053 - 2016-04-08 + + - Improved cheat code handling. + - Three new options: --gct-move & --gct-addr & --gct-space + With these 3 options it is possible to support a very large cheat code + table. Therefor a temporary section is created that runs at the very + beginning and takes space from the game heap to establish a code section + before the FST table. + - Tool wctct: Update of the internal CT-CODE (mod1). The new code allows to + select original tracks in regions. Here you can find old CT-CODE versions: + https://szs.wiimm.de/download/ctcode/ + Visit https://github.com/Wiimm/wii-ct-code/ for more details. + + +szs v1.51a r7107 - 2016-06-01 + + - wstrt is able to patch DOL files of other games and not only of MKWii. + - The CHECK for slot 4.2 will be more exact now because it looks for the + needed materials. The presence flags of objects 'car_body' and 'kart_truck' + is also tested. If option --OLD is set, the old polygon test will be used. + - Option --kmp=list supports now the keyword REVERSE as `backwards´ support: + Reverse KMP sections ENPH, ENPT, ITPH, ITPT, POTI. The implementation is + not finished yet and more section (CKPH, CKTP, KTPT, JGPT) will follow. + - Different small fixes. + + +szs v1.52a r7164 - 2016-06-29 + + - Bug fix for wkclt: Since v1.49a, the transformation was executed twice, + but only for commands DECODE and ENCODE. Command COPY works correct and + transforms only once. + - wstrt: Wiimmfi patching excludes now 3 patch positions for competitions. + It's now the job of the competition patcher to patch these 3 URLs. + - wkclt CFF: If creating a new flag file, the new function i(type,z,index) + is defined as support for fall boundaries (idea by Wexos). + - New tool: wmdlt: The tool wmdlt exists since v0.26a (2012), but was always + hidden, because it was useless. But now I started with MDL analysis and + plan to modifiy MDL data. + - wmdlt CAT/DECODE: Print a MDL file as text. It is incomplete, but can be + used for analysing. + - wmdlt STRINGS: Print all strings of a MDL. + - For slot 42 (moonview highway) the content of the 12 needed materials + is checked. + + +szs v1.53a r7308 - 2016-12-09 + + - Bug fix: Occasional a "Segmentation fault" occured, if reading an empty file. + - Option --draw supports the new keyword DECORATION: Draw unsolid objects + without any route as a magenta cuboid. + + +szs v1.54a r7393 - 2017-08-14 + + - Some KCL flags renamed. + - wkmpt draw --draw AREA: Areas of KMP are drawn as yellow arrows and as + transparent yellow cuboids. + - Support for RKC (competition) files added: + RKC files are handled like other archives. Tool wszst is able to detect, + list, extract or create a RKC file, also recursive. Direct creation and + optimation of the included SZS is not implemented yet. + - New keyword for option --kmp: MAX-LAPS: Keyword MAX-LAPS has only impact, + if one of 1LAP,...,9LAPS is set too. Then, the number of laps is only + decreased to the specified number, but never increased. + - New keyword for option --kmp: RM-EMPTY: After creating a new KMP, all empty + KMP sections are removed to make the KMP as small as possible. Use this + option only for compettitions! + - New command: YAZDUMP: Prints an info dump about the YAZ0/YAZ1 compression + details for analysis. + - New compression methods: 10 (=ULTRA) and 100-150: They need much more time + than BEST (=9) but create smaller SZS files than Nintendo did. It is + dedicated to competitions with strict size limitations. + - There is a new option: --tiny=level: It tries to minimize SZS and also the + included KCL and KMP by different technics (rounding values, sorting and + compression methods 100-150). It is not fully documentd yet. + See https://szs.wiimm.de/info/tiny.html for details. + - New keyword for option --kcl: WEAK-WALLS: Set the most significant bit + (bit 15, 0x8000) of KCL flag of all walls. It stops hard bumping at the + edges and has similar effects like lowering the walls. + - Windows only: Cygwin update to v2.8.1, 2017-07-03. + - Apple Mac is no longer supported because I no longer have access to a Mac. + + +szs v1.55a r7429 - 2017-11-11 + + - New command: wszst DISTRIBUTION: The aim is to create a text file that + describes a custom track distribution. The owner have to edit the created + file and send it to Wiimm. Wiimm add the information to the custom track + portal https://ct.wiimm.de/ with a complete track list. + + +szs v1.55b r7437 - 2017-11-19 + + - wszst DISTRIBUTION: New parameter: PREDECESSOR + - wszst AUTOADD: With option -v, the command will list invalid files too. + + +szs v1.56a r7461 - 2017-12-03 + + - wszst DISTRIBUTION: Track scanning improved. + - Option --cache is a global option now. It is used to speedup every YAZ0 + compression, but only for standard compression level 9 (BEST). A hash table + is used now for optimization. + - New option: --cname: Defines a cache file name for a single file. + - New Command: wszst SCANCACHE: Scan the cache directory for SZS files and + re-build the hash table. + + +szs v1.57a r7484 - 2018-04-11 + + - Windows version only: Update to Cygwin v2.10.0. + - New option for tools wkclt, wszst and wkmpt: --kcl-min=FLOAT: Define a + minimal `length` of KCL triangles. The length is the heights of the + reference side of the triangle. Smaller triangles are invalidated and + ignored or removed. The default value is 0.1 and good values are between + 0.01 and 2.0. Until v1.56a the minimal length was hard coded as 1e-6 + (1/million) to avoid mathematical overflows while calculating positions + by normals. The larger value reduces the number of KCL glitches + dramatically for some tracks with many unusual triangles. + - New option: --wc24: If set, options --wiimmfi and --domain will exclude + 2 strings of StaticR.rel from the URL patch to enable WC24 support. + + +szs v1.58a r7499 - 2018-04-20 + + - Option --kcl-min=EXPR: This option is deprecated, but still supported. It + is an alternative name for --tri-height=EXPR now. + - New option --tri-area=EXPR: Define the minimal area size of KCL triangles. + The intention is to ignore triangles that are generally to small. EXPR is + a floating point number or expression. Triangles are invalidated if their + area size is smaller than EXPR. The test is executed after reading files, + after transformations, and after calculating normals and lengths. Values + between 0.01 and 4.0 are recommended. The careful value 1.0 is used as + default. Value 0 disables this filter functionality. + - New option --tri-height=EXPR: Define the minimal height of KCL triangles. + The intention is to ignore deformed triangles (very slim, but long). EXPR + is a floating point number or expression. Triangles are invalidated if at + least 1 of the 3 heights is smaller than EXPR. The test is executed after + reading files, after transformations, and after calculating normals and + lengths. Values between 0.01 and 2.0 are recommended. The careful value 0.1 + is used as default. Value 0 disables this filter functionality. + - You can proof the impact of the options above by command wkclt TEST. + - Command wkclt DUMP has been expanded and shows metrics like side length, + area size and heights for each triangle. + - New command: wkclt LIST: Print a list of all triangles with metrics in + human and machine readable text format. It is like command DUMP, but + reduced to the list of triangles. + - New implementation for OBJ groups without assigned KCL flag. They will be + inserted into the OBJ export now. + + +szs v1.58b r7503 - 2018-05-18 + + - Default value for options --tri-area and --tri-height is now 1.0. + - Some more minor edits. + + +szs v1.59a r7533 - 2018-08-05 + + - Option --kcl-min is not longer supported. Use option --tri-height instead. + - The old file extension ".flag.txt" for KCL flag files is not longer + supported. + - wszst/wkmpt CHECK: Battle arenas are now detected in 2 levels: "some hints + found" and "is battle arena". Some hints and warnings are suppressed for + battle arenas. + - wszst SLOTS: For battle arenas, the keyword ARENA is printed instead of a + slot list. + - New option: --export-flags[=mode] (or short: --exflags): KMP compiler and + scanner support the export and import of KMP flags for sections ENPT, ITPT + and JGPT through a binary KMP file. Therefore, the last byte of the scale + or of the x-rotation is used. Values becomes inaccurate by 0.003% (not + relevant for scale or rotation and not noticeable while playing). + MODE is either OFF, AUTO (default) or ON. Without value, ON is used. ON and + OFF override the @EXPORT-FLAGS settings of a KMP text file. + - New option: --wim0[=mode]: KMP compiler and scanner support the export and + KMP parameters through a special KMP section named "@WIM0@". MODE is either + OFF, AUTO (default) or ON. Without value, ON is used. ON and OFF override + the @WIM0 setting of a KMP text file. This as an experimental feature at + the moment to proof the compatibility with other KMP tools. + - New command wkmpt WIM0: Analyze the WIM0 section of each KMP file (text, + binary or szs) and print an info about it. + - wkmpt DRAW: AREAs are drawn dependent of the mode either as a rectangle + cuboid or as a cylinder (more exact: as an anti prism with 20 sides). + - wkmpt: If creating a KMP by text file, the PREV and NEXT links of item + routes are checked. If missed, a link to self is added to avoid a freeze. + - Option --kmp FIX-CKPH,FIX-ENPH,FIX-ITPH: If a PREV or NEXT link is missed, + a link to itself is added. Before, a link to another group was inserted. + - Camera types 0 (Goal) and 3 (KartFollow) are excluded from transformation + and scaling now. + - KMP text files: STGI is printed with new column names according the new + knowledge of CT-Wiiki. + - Internal KMP GOBJ database updated by CT-Wiiki object table. + + +szs v1.60a r7578 - 2018-08-21 + + - Improved detection of battle arenas by KMP. The output of KMP text files + of racing tracks and battle arenas differ. + - New option:--battle[=mode]: The mode is either OFF, AUTO (default) or ON. + OFF and ON override the automatic detection of battle arenas. + - wkmpt DRAW: The connections between ENPT and ITPT routes are drawn with + half width and a brighter color now. Additional, there is a distinction + between bidirectional links, PREV only and NEXT only. + - wkmpt DRAW: Dispatch points of KMP sections ENPT and ITPT are detected and + printed as octahedron. The NEXT links point to the nearest end of the + destination routes. + - New keyword for option --draw: DISPATCH: If set, the settings of dispatch + points of areans are visualized by colors to support the analysis. + - New keyword for option --draw: COINS: If set, draw coins as yellow, orange + or red cubus. Color and size depend on coin place type. + - New keywords for option --draw: BLACK and WHITE: If set, a very dark grey + (BLACK) or a very bright grey (WHITE) ground is inserted at height 0.0. + The rectangle encloses all valid triangles. + - New command: wkmpt ROUTES: Print out the new internal cross references for + routes of KMP sections CKPH, CKPT, ENPH, ENPT, ITPH and ITPT. + - The settings of KMP sections CKPH, ENPH and ITPH are printed as "$SETTINGS" + line if not zero. They are also scanned and stored into binary KMP. Usually + only section ENPH of battle arenas use these settings. + - New feature for KMP sections ENPT and ITPT to support battle arenas: + @AUTO-CONNECT=MODE: Control the automatic calculation of PREV and NEXT + links. One MODE is DISPATCH: Connect routes and dispatch points + automatically controlled by different settings. THe default is to link all + routes, if no links is defined. + - Auto created group names of ENPT begin with 'DP' instead of 'G', if + DISPATCH mode is active. + - PREV links of KMP sections CKPH, ENPH and ITPH are printed as "$PREV" line, + if either @AUTO-CONNECT is changed or the PREV link lists is different from + automatic calculated list. + - New global option: --route-options: Disable or enable the new features + $SETTINGS, @AUTO-CONNECT, ... + - wkmpt CHECK and wszst CHECK improved: + - Info about arena classification: NONE, MAYBE, ARENA, ARREA+DISPATCH + - Battle arena: Hint about non empty CKPT and ITPT. + - Battle arena: Warnings about empty ENPT. + - Racing track: Warnings about empty CKPT, ENPT and ITPT. + - Check the number of KTPT elements and find missed or multiple defined + player indices for battle arenas. + - Check the number of MSPT elements and print warnings about too less or + hints about too much records. + - Check number and valid types of coin objects. + - Some camera warnings reduced to HINT. + - New global option: --battle=mode: MODE is either OFF, AUTO (default) or ON. + OFF and ON override the automatic battle detection. + - New commands to be used behind $GROUP: $PREV and $SETTINGS. + - New commands to fine control @AUTO-CONNECT: $DEF-CLASS, $CLASS, $AC-PREV, + $AC-NEXT and $ONEWAY. + - New keywords for option --kmp: DUMP-CLASS, DUMP-ONEWAY, DUMP-ALL: Dump + reference lists at the end of section ENPT and ITPT. + - Internal KMP GOBJ database updated by CT-Wiiki object table. + + +szs v1.61a r7601 - 2018-09-23 + + - Bug fix for the new route analysis (e.g. wkmpt DRAW): The positions were + wrong (e.g. NAN or too large) when analysing ITPT. + - New command: wszst ISARENA: Check the arena status of a SZS file, print a + status line and exit with an appropriate status code. + + +szs v1.62a r7620 - 2018-11-07 + + - Windows version only: Update to Cygwin 2.11.1. + - Cygwin bug fix: Color support failed, if tools started in a Windows console + window or as script outside a Cygwin window. + - The text parser (mainly used to scan KMP text files) supports the new data + type STRING. Different string functions and command @EXEC added. + - Battle arena detection improved. + - New command: wstrt HEXDUMP: Dump the content of a DOL file ordered by the + memory addres. Enter "wstrt help hexdump" to get a list of the many ouput + formatting options. + + +szs v1.62b r7624 - 2018-11-08 + + - Bug fix for new parser STRING support. + + +szs v1.62c r7630 - 2018-11-10 + + - wstrt --add-section FILE: If a single file is not found and the filename + (not path) contains at least 1 '@' character, then all '@' characters of + it are replaced by the region code (one of P,E,J,K) for a second try. + - New option for Command wstrt HEXDUMP: --sname=LIST: Select addresses to + dump by section names. + + +szs v1.62d r7634 - 2018-11-11 + + - DOL detection improved. + - Tool wstrt: After patching main.dol for Wiimmfi.de, the HTTP header + "Host: DOMAIN" is not longer sent twice. + - Tool wstrt: Patching and analysing of DOL files improved. + - Tool wstrt automatically patch main.dol to support the new login method + at Wiimmfi.de, when using option --wiimmfi. + + +szs v1.63a.beta1 r7657 - 2018-11-17 + + - Tool wstrt: The method to patch main.dol to support the new Wiimmfi login + changed: It don't use the Gecko Code Handler any more. + - The cheat code memory is allocated dynamically. It supports a total of more + than 90000 cheat code lines (>720kb). + - Behaviour of option --gct-move changed: It optionally accept one of the + keywords OFF, AUTO and ON. Without parameter, AUTO is used. + - A warning message is printed, if CT-CODE (option --add-ctcode) should be + added to a not original main.dol. + + +szs v1.63a r7664 - 2018-11-19 + + - Tool wstrt: All around Wiimmfi and CT-CODE patching, and around cheat code + management tuned and optimized. On the fly, some small bugs fixed. + Related options: --add-section --gct-move --gct-addr --gct-space + --add-ctcode --wiimmfi --domain --https --wc24 --force + + +szs v1.64a r7680 - 2018-11-23 + + - Tool wstrt: Wiimmfi patching optimized again, especially in combination + with CT-CODE. + - New option for tool wstrt: --clean-dol: Remove additional DOL sections, + reset entry point and VBI address, and try to restore other patches known + by SZS tools. This is done after loading a DOL and before analysing and + patching to allow re-patching. + - Error logging improved. + + +szs v1.65a r7690 - 2018-12-23 + + - Support of BMG files without section MID1. + - New Option: --bmg-mid=MODE: Control the creation of BMG section MID1. + MODE is one of OFF, AUTO (default) or ON. + - The impact of options --n-mipmaps, --max-mipmaps and --mipmap-size changed. + All 3 options together control the automatic creation of mipmaps. + Read https://szs.wiimm.de/info/mipmap.html for details. + - Option --smart is deprecated and ignored now. The new option --fast-mipmaps + will enable the old algorithm for images with odd width or with odd height. + Read https://szs.wiimm.de/doc/img/resize for details. + + +******************************************************************************* +******* END ******* +******************************************************************************* diff --git a/project/templates/HISTORY.txt b/project/templates/HISTORY.txt new file mode 100644 index 0000000..d546ea2 --- /dev/null +++ b/project/templates/HISTORY.txt @@ -0,0 +1,396 @@ + +@@MODULE(head.txt)@@ + + +******************************************************************************* +******* HISTORY v2.* ******* +******************************************************************************* + +szs v2.00a r7754 - 2019-02-22 + + - Windows version only: Update to Cygwin DLL 3.0.0 / 2019-02-16. + - A binary KCL with different section order is accepted now (like KMP before). + - The new option --repair-magics[=MODE] controls the reparing of missing or + wrong magics of files and sub-files by analysing file path and file + extension. MODE is one of OFF, ANALYSE or REPAIR. + - Command FLOAT accepts '+' and '-' to print the nearest successor and + predecessor of the previous value. + - New command: wszst VR-CALC: Calculate a VR increment for each given delta + value (=VR_winner-VR_loser). Print results as table. + - New command: wszst VR-RACE: Print a table with VR calculations for a race. + Each VR is the current rating of a player. + - wstrt analyse StaticR.rel: Detect modifications of cannon parameters. + - wstrt: New option: --cannon=IDX,P1,P2,P3,P4: Define parameters of cannon + with index IDX (0..2). + - New mode for option --patch-bmg: 'REGEX=list', where LIST is a semicolon + separated list of "/REGEX/REPLACE/" expressions (POSIX Extended Regex). + See https://szs.wiimm.de/opt/patch-bmg for details. + - New command: wbmgt REGEXP: Test implementation of regular expressions. + - New tool: wlect: Manage the LE-CODE (Leserattes CT-CODE) extension. + TOOL IS EXPERIMENTAL AND CAN'T BE USED WITHOUT ADDITIONAL FILES! + - Tool wctct accept LE-BIN files (LE-CODE binaries) as input. + - Global option --le-code: Enable LE-CODE (Leserattes CT-CODE) support for all + tools. It includes option --ct-code. + + +szs v2.01a r7798 - 2019-03-16 + + - Bug fix for BMG processing: Tools ran into endless loop, if an incorrect + 1A-escape tells a length of zero. + - BMG Filter option --msg renamed to the more meaningful name --filter-bmg. + The old name is still available. + - BMG Filter option --filter-bmg=modes supports more keywords now. + See https://szs.wiimm.de/opt/filter-bmg for details. + - Option --patch-bmg=mode[cond][=param]: The new 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. + - New command: wszst NAME-REF: For each BRRES file or subfile, create a name + based cross reference and print the result as list in selectable order. + - Some minor bugs on arena name replication to CT/LE slots fixed. + - New option: --links: Support hardlinks if creating U8 and WU8 archives. + Keep hardlinks if normalizing U8 and WU8 archives. On extracting, search + hardlinks in every archive and try to create hardlinks at local file system. + - KMP object database updated by CT-Wiiki. + - LE-CODE support completed for the moment. + - Support for new file format LEX (LE-CODE extension). + Commands for tool wlect: CREATE, CAT, DECODE, ENCODE. + See http://wiki.tockdom.com/wiki/LEX for LEX details. + + +szs v2.01b r7802 - 2019-03-21 + + - Bug fix for v2.01a: The string support of the text parser had an memory + allocation bug. wctct uses the new string functions since v2.01 and + produces occasional (~25%) wrong CT-CODE files (strap files). + + +szs v2.02a r7827 - 2019-05-04 + + - New option for wlect: --move1-tracks: Files with more than one hard link + are copied and removed and not moved to create an unique version of the + file. + - New assigning operator for BMG text files: "MID1 : MID2": Copy attributes + and text of message MID2 to message MID1. Forward and chained references + are allowed. Multi message ids like 'T12' are supported on both sides. + - New escape sequence for BMG text files: \m{a,b,...}: Each parameter is + interpreted as message id. If a message with given ID exists (must be + defined before and must not have an assigned value), then insert the text + of the message. + - New option for wszst EXTRACT: --basedir=DIRECTORY: Extract only files from + archives, that are below the DIRECTORY. Leading points and slashes and + trailing slahes are removed from the parameter. --bdir is short cut. + - New command: wszst XCOMMON: Scan archives and extract files from archives, + that are below directory 'common'. Command XCOMMON is a short cut for + EXTRACT --basedir=common. + - New command: wszst ANALYZE: Analyse track files and print resulta in + machine readable format. + + +szs v2.03a r7854 - 2019-05-25 + - Command wszst CHECK: Hints about special files in subdirectory ./Common/. + - Command wszst/wkmpt CHECK: Hints about special GOBJ settings, that are + recognized by LE-CODE only. + - Bug fix for wszst ANALYZE --json: Object names are enclosed by quotes now. + - New option: --macro-bmg=file: Load a BMG file and add or overwrite the + messages to the macro library. The macro library is accessed by escape + sequence \m{MID} as fallback. + - New escape sequence for BMG text files: \M{a,b,...}: Each parameter is + interpreted as message id. If a message with given ID is defined by the + macro library, then insert the text of the message. + - New command: wkmpt KTPT: Analyse the start positions (KMP:KTPT) and lap + counters (KMP:CKPT) and print a simple information list. Use enemy points + (KMP:ENPT) to find recommendations. This command is dedicated to LE-CODE, + which supports an alternative position for the finish line at the minimap. + - New patch option for wszst and wkmpt: --ktpt2=vector + Insert or replace a second KTPT. Use VECTOR as new position. Then find + nearest lap counter (CKPT with mode 0) and adjust position and direction. + + +szs v2.04a r7864 - 2019-06-02 + + - New option for wszst and wimgt: --cmpr-default=rgb1[,rgb2] + Define 2 colors for the case, that all 16 pixels of a CMPR block are + transparent. The default is to calculate an average color of all + transparent pixels. Before v2.04 white was used. + - Command wszst DISTRIBUTION: Added battle arena support. + - Option --bmg-inline removed. It is deprecated since 2015. + + +szs v2.05a r7879 - 2019-06-09 + + - Warnings for not supported versions and for wrong number of sections of + BRRES sub files (CHR, CLR, MDL, PAT, SCN, SHP, SRT and TEX) implemented. + Some of these invalid sub files will freeze the Wii: + - New command: wszst BRSUB: If no file is defined, print a table with + known BRRES sub files consisting of file format, version, number of + sections and warn message. Otherwise analyse the version number and + number of sections of each BRRES sub file of each source and print + warnings about invalid sub files. This is like command CHECK, but only + for BRRES sub files. + - Command wszst CHECK will check BRRES files now. For SZS files, all BRRES + sub files are checked. At the moment only valid version numbers and + number of sections are tested. + - Command wszst LIST: If displaying version numbers, invalid version + numbers for BRRES sub files will be marked by an appended "!" and + highlighted by magenta background if colors are activated. + - Bug fix for wszst DISTRIBUTION: Scanning of slot numbers failed. + - Option --ktpt2 accepts keyword AUTO now and calculates the position + automatically. The result is the recommendation of command wkmpt KTPT. + + +szs v2.06a r7905 - 2019-07-01 + + - Bug fix for wszst CHECK: The summary will include BRRES error counters now. + A summary line is also printed, if a standalone BRRES file is checked. + - New command: wlect DL: Short cut for: wlect DUMP --long + - New command: wlect DLL: Short cut for: wlect DUMP --long --long + - Tool wlect: Option --perf-mon=FORCE enables performance counter for Dolphin. + - Command wlect DUMP --verbose: Slot usage map is colored now. + - Command wszst ANALYZE prints more details now. + - CT-CODE definition files: Added additional and optional field IDENTIFIER to + optimize track-to-cup references. + - Support for outdated LE-CODE phase 1 removed. + - Bug fix for option --ktpt2: KMP is marked as modified now, so that the + KMP of the source file is updated.. + - Support of files ObjFlow.bin and GeoHitTable*.bin (binary and text). + - New commands: wszst BINARY and wszst TEXT: Both commands work like the + ENCODE and DECODE commands of the other tools. The main idea is to support + simple text-to-binary and binary-to-text conversions of new file formats by + tool wszst instead of creating own tools for every new file format. + - Command wszst BINARY: Read each source file (binary or text, but not an + archive) and write it as binary file. + - Command wszst TEXT: Read each source file (binary or text, but not an + archive) and write it as text file. + - Currently supported file formats are BMG, GEOHIT, KCL, KMP, LEX, + OBJFLOW, PAT and the related text formats. + - New option: wszst --delta: Print only modified records on text output. + Supported file formats until now: GEOHIT, OBJFLOW + + +szs v2.07a r7960 - 2019-08-30 + + - New file formats to distinguish GeoHitTable*.bin (standard variant) from + GeoHitTable*Obj.bin ("Obj" variant). + - Command wszst TEXT for OBJFLOW and GEOHIT updated to support new file + formats and new features. + - If extracting an U8 or WU8 archive, then course.kcl.*, course.kmp.txt and + course.lex.txt are always added to the exclude list of control file + wszst-setup.txt. Files course.kcl, course.kmp and course.lex are added to + the encode list. Before the files were only added, if the binary file + exists and option --decode was set. + - Command wlect CREATE CANNON: Create a LEX text file with cannon section + only. + - Command wszst ANALYZE updated to support calculated attributes of tracks + for web site https://ct.wiimm.de/ + - BMG section INF1: Maximum attribute length increased from 16 to 32 bytes. + - BMG: The tools support only BMG encoding #2 (UTF-16/be) fully. Encoding #1 + (CP1252) can be read, but not be stored as binary BMG file. Error messages + are printed for unsupported encodings. + - BMG: Unknown parameters of sections INF1 and MID1 are scanned and written. + - New BMG option: --bmg-encoding=NAME: Force a BMG encoding. It is only + relevant if creating a BMG file. 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. + At the moment, only encodings CP-1252 and UTF-16BE are supported on reading + and only encoding UTF-16BE on writing a binary BMG. MKWii uses UTF-16BE. + - New command: wbmgt EXTRACT name source: Extract BMG section NAME of file + SOURCE and write the binary data to standard output. If NAME consists of + less than 4 characters, then the first section that starts with these + characters is dumped. + - New command: wbmgt SECTIONS source...: List all sections of each binary + BMG file. Print offset, size, magic and a short info. If known, print + number and size of elements too. + + +szs v2.08a r7979 - 2019-09-05 + + - BMG: Encoding of types CP1252, UTF-16be, Shift-JIS and UTF-8 are fully + supported now. + - New command: wbmgt SLOTS source...: Print a slot ordered list with slot + number, message id, delta and attributes. + - BMG supports predifined slots now. These slot assignments are detected + automatically while reading binary BMG files. Slot assignments are saved to + and scanned from BMG text files. + - BMG text files: Each message ID can be followed by '@SLOT' to force a slot + number for the message. + - BMG: Unknown sections are stored as hex dumps into BMG text files. The hex + dumps can be edited and are scanned on reading. Each section is started by + parameter "@SECTION NAME". + - BMG section INF1: Maximum attribute length increased from 32 to 40 bytes. + + +szs v2.09a r8000 - 2019-09-24 + + - BMG section "STR1" detected, but not supported. Metrics are displayed. + - Commands wszst BINARY/TEXT: Full support of files minigame.kmg and + ItemSlot.bin (binary and text). + - Command wszst ANALYZE returns 5 different SHA1 checksums now. + + +szs v2.10a r8023 - 2019-11-23 + + - Command wszst TRACKS: More options. + - Command wszst ANALYZE: More results. + - wszst ANALYSE + Check KMP: Analysis of KTPT, ENPT and ITPT to find values + outside range +-131071 where items can not be used online. + - Text export of ItemSlot.bin: A comment column with row summaries added. + - Cygwin (Windows) version: Updated color support again. + + +szs v2.11a r8074 - 2020-01-18 + + - wszst ANALYSE --sh --array: Output format fixed. + - New keywords for option --filter-bmg: ALLCODE, ALLCUPS, ALLTRACKS, + ALLARENAS and ALLREFS. + - The optional parameter of option --le-code (LE-CODE phase) is deprecated + and ignored. From now on, option --le-code always enables LE-CODE (phase 2) + and CT-CODE support. + - Deprecated and useless option --smart removed. + - KMP/GOBJ, ID: Support of objects flags in bits 10-15 (0xfc00) for LE-CODE. + - File course.lex: Support of new section TEST. It forces game modes like + "Online, 12 players, itemrain" to test them in standard offline versus. + - wlect CREATE: New keywords. Call the command without keyword to get a list. + - wszst+wlect: New options to create, modify or delete course.lex and/or LEX + section TEST: --lt-clear, --lt-online, --lt-n-players and --lt-game-mode. + So patching a track file to test special conditions becomes easy. + - General support of 'extended presence flags'. + - KMP/GOBJ: Detect definition-objects and references. + - New commands for KMP/GOBJ for easier handling: $DEFOBJ-RACE and + $DEFOBJ-BATTLE define a definition-objects. $REFERENCE defines a + reference (ref_id and mode=1) for the previous defined object. + - Hints and warnings about extended objects. + - New command: wkmpt GAMEMODES: Analyze the presence flags combinations with + and without extension support and print a list. + - New command: wszst DUPLICATE: It reads a single track file and duplicates + it several times. Therefor it analyzes the presence flags combinations with + and without extension support and creates one file for each relevant + scenario. A LEX section TEST will be inserted to force the execution mode + for offline tests. + - New option for commands wkmpt GAMEMODES and wszst DUPLICATE: + --gamemodes=list: Select game modes for the list. + - See http://wiki.tockdom.com/wiki/Extension_of_Presence_Flags for details + about the new Extension of Presence Flags. + - Scanning a KMP file now takes into account the new information about the + length of the file header. + + +szs v2.11b r8079 - 2020-01-20 + + - XPF, hard coded conditions: New conditions added. Gaps in list removed. + Order changed. These changes invalidate binary KMP files with hard coded + conditions created by previous v2.11a. + - Small text corrections in the new texts of the previous version. + + +szs v2.12a r8129 - 2020-02-07 + + - Parser: Bug fix for shift-right operator if shifted value is an integer. + - If using --force or --kmp=force, the KMP scanner ignores the size stored in + the file header and uses the file size instead. + - New command: wkmpt diff: Compare the KMP of two or more sources (KMP, + KMP-text or SZS). Each KMP will be converted into the internal format, + fixed and patched controlled by options. The known sections are compared, + some of them sorted before. + - New option to support wkmpt diff: --diff=list: List of KMP sections names + that should be compared. Additional keywords possible. + - New option to support wkmpt diff: --epsilon=float: When comparing floating + point numbers, 2 numbers are considered identical if their difference is + less than or equal to epsilon. + - New option: --repair-xpflags: Load a KMP file and use it to repair the + settings of the extended presence flags, if they are destroyed by another + KMP tool. --repxpf is a short cut for this option. + - Option --auto-add was broken for objects, if flags (bits 10-12) were set. + Bit 12 is used by extended presence flags (XPF). + - Support of random selections of KMP/GOBJ objects: + - 6 random scenarios supported. + - New keyword for option --gamemodes: RANDOM. + - Command wkmpt GAMEMODES can list and command wszst DUPLICATE can create + up to 1573 variants now. + - Added a LEX/TEST parameter to force a random mode for testing. + - New LEX section SET1 for various settings. The first parameter defines 3 + factors to increase the range for items outside -131071 and +131071. + - New LEX section HIPT: Define places, where the position tracker is hidden. + + +szs v2.12b r8135 - 2020-02-09 + + - Bug fixes for LEX parser: + - Section TEST: Parameter @ENGINE wasn't implemented. + - Symbols LEX$OO_AUTO and LEX$GM_AUTO were not defined. + - New option: --lex-purge: Delete LEX sections without any impact. Delete + sub-file course.lex if it no longer contains a section. + - Tool wstrt option --clean-dol: HTTPS modifications are now also reset. + + +szs v2.13a r8146 - 2020-02-15 + + - XPF: Added support for negation flag of references to definition objects. + - New keywords for option --kmp: + - RM-LECODE: Remove all objects from section GOBJ, that are only relevant + for LE-CODE. The result is a minimized section for standard code. + - PURGE-GOBJ: Remove all objects from section GOBJ that are neither a + valid object nor a definiton object for LE-CODE. + - wszst ANALYSE + Check KMP: Analysis of KTPT, ENPT and ITPT to find values + outside range +-131071 where items can not be used online. Additionally a + recommendation for using option --shift and/or LEX section SET1 is printed. + + +szs v2.14a r8160 - 2020-02-29 + + - KMP text processor: Settings of definition objects are printed in hex now. + - Bug fix for KMP text parser: It created incorrect conditions if definition + objects were defined in combination with $DISABLE or $ENABLE commands. + - Bug fix for wstrt option --add-section=GCT: Crashed for some invalid cheat + codes (Cygwin only). + - Recommendation for option --shift item pos factors (LEX:SET1) optimized. + - wimgt COPY: Option --overwrite is set implicitly now. + + +szs v2.15a r8176 - 2020-04-03 + + - KTPT is not longer used to find values outside range +-131071 where items + can not be used online. + - Text parser: Fixed different bugs for data type 'string'. + - Slot recommendations now ignore the objects deactivated by presence flags. + - Chat in private rooms: Each special function can be assigned to any chat + message, and also to more than 1 message. Before, the function werde hard + coded to some messages. Current modes: + - Host selects track. + - Karts or bikes only. + - Force engine class. + - Select number of races between 1 and 512. + - Support of new text file format LPAR to manage LE-CODE parameters by file + instead of options. This includes the support of the new parameters for + chat message modes: + - wlect CREATE lpar: Create a standard LPAR text file. + - wlect LPAR: Read LE-CODE binary and export the parameters as LPAR file. + - wlect DUMP: New section for "Special chat messages". + - Option --lpar: Read a LPAR file to patch the current settings. + + +szs v2.16a r8184 - 2020-04-09 + + - All commands, that create LPAR files, accept option --no-header (-H) and + option --brief (-B) now. + - More built-in explanations in new LPAR files. + + +szs v2.17a r8204 - 2020-05-12 + + - Command wszst DISTRIBUTION: New track attribute FILL to mark a track as + filler (some tracks are needed to fill the last cups). + - LPAR BLOCK-TRACK: Block previously used tracks for the next 0-50 races. + - LPAR: More chat messages and up to 2 modes for each chat message. + - Object files of CommonObj*.szs are included into the internal object + library and added to auto-add library. + - Objects 'VolcanoPiece', 'bblock' and 'RM_ring1': Setting #1 is evaluated to + find missed files. This has impact to command CHECK and option --auto-add. + + +@@MODULE(last-history.txt)@@ + + +******************************************************************************* +******* END ******* +******************************************************************************* diff --git a/project/templates/MILESTONES.txt b/project/templates/MILESTONES.txt new file mode 100644 index 0000000..273855f --- /dev/null +++ b/project/templates/MILESTONES.txt @@ -0,0 +1,153 @@ + +szs v0.01a.beta r2385 - 2011-03-31 + - First version of tool 'wszst' (Wiimms SZS Tool) with the commands LIST, + COMPRESS, DECOMPRESS, EXTRACT and CREATE. + +szs v0.02a r2417 - 2011-04-04 + - First version of tool 'wbgmt' (Wiimms BGM Tool) with the commands LIST, + PATCH, DECODE and ENOCDE. + +szs v0.04a r2457 - 2011-04-09 + - wbmgt: Support of Nintendos 0x1a escape in BGM/TEXT as "\z{head,value}". + - New command: wszst NORMALIZE: Resort and recompress an U8 archive like + Nintendo does it. Best custom compression at all. + +szs v0.09a r2636 - 2011-05-17 + - First version of tool 'wstrt' (Wiimms StaticR Tool). It allows to rearange + the slot order for tracks and arenas. + +szs v0.11a r2670 - 2011-06-04 + - Extraction of BREFF and BREFT files. + +szs v0.13a r2840 - 2011-07-09 + - First version of tool 'wimgt' (Wiimms Image Tool). It will convert BREFT + subfiles, TPL, TEX0 and PNG to each other format. Supported image formats + are I4, I8, IA4, IA8, RGB565, RGB5A3, RGBA32, C4, C8, C14X2 and CMPR. + +szs v0.15a r2917 - 2011-08-07 + - First version of tool 'wkmpt' (Wiimms KMP Tool). The decoder creates a + user friendly text file and the encoder a binary file. + +szs v0.19a r3033 - 2011-09-15 + - Implementation of a parser with arithmetic expressions and nested + @IF..@ELIF..@ELSE..@ENDIF. The parser is used to scan KMP text files. + - First support of an internal Object DB (copy of Wiki page 'Object'). + +szs v0.22a r3166 - 2011-11-06 + - The KMP encoder is now a 2 pass compiler and the whole source is scanned + twice. In pass 1 only names are defined and warnings are suppressed. In + pass 2 all objects are defined. + +szs v0.23a r3243 - 2011-11-25 + - Support of 3D vector variables and parser functions. + +szs v0.26a r3415 - 2012-02-04 + - First version of tool 'wkclt' (Wiimms KCL Tool). It can only create OBJ + files. + +szs v0.28a r3463 - 2012-02-20 + - Improved usage of Object DB and first implementation of the auto-add archive + to add missing objects automatically. + - The parser supports now much more functions. + +szs v0.29a r3515 - 2012-02-28 + - First implementation of 'wkmpt CHECK' to make KMP plausibility checks. + +szs v0.33a r3627 - 2012-05-02 + - The text parser supports now 5 kinds of loops. + +szs v0.34a r3659 - 2012-05-12 + - The text parser supports now user defined macros and functions and a new + private name space. + +szs v0.36a r3720 - 2012-05-28 + - The tools can now create a KCL file from scratch ony by importing an OBJ + file. The internal octree generator works fine and can be controlled by + different constants. + - KCL scripts are supported (option --ksl-script=file). + +szs v0.42a r3927 - 2012-07-06 + - KCL (and octree) creator are now very good. Last importand issues are + fixed. The octree cubes overlap now. + - KCL trasformation is enabled. + +szs v1.01a r3987 - 2012-07-22 + - Automated adjusting of minimaps is now possible. + +szs v1.02a r3992 - 2012-08-01 + - KCL: Detection of invalid triangles and face down roads implemented. Both + kinds can be removed controlled by option --kcl=modes. + +szs v1.05a r4097 - 2012-09-29 + - For text files, only the first 4 characters are used as magic ('#BMG' + instead of '#BMG-TXT'; same for '#KCL', '#KMP' and '#MDL'). On creation + a 8 character magic is still written for compatibility. + - Files './AIParam/AIParam.baa' and './AIParam/AIParam.bas' are now known by + the internal file database. + +szs v1.06a r4110 - 2012-10-06 + - wszst CHECK will now make slot proposals with comments. + - New command: wszst SLOTS: Print the possible slots for a track file. + +szs v1.07a r4137 - 2012-10-19 + - New archive format: WU8 (Wiimms U8). + +szs v1.09a r4169 - 2012-11-11 + - BZIP2 compression is now supported as alternative to Yaz0. It is dedicated + to the WU8 file format for transferring files. BZIP2 files are smaller than + Yaz0 files and the creation is faster. + - First WBZ support. + +szs v1.13a r4258 - 2013-03-01 + - New option --rm-aiparam (short cut: --rmai): If set, the directory AIParam + and all files are removed from the archive. + +szs v1.17a r4358 - 2013-04-23 + - 3D rotation for all 3 axis and transformation of whole tracks. + +szs v1.21a r4578 - 2013-09-07 + - A very old well known bug is now fixed: The old versions couldn't create + the language independent SZS files of MKWii directory './Scene/UI' like + Track.szs, Race.szs and others. + +szs v1.22a r4602 - 2013-09-14 + - BMG text patching of SZS files is now possible without extract, patch and + recreate using the command "wszst PATCH --patch-bmg ..." + +szs v1.23a r4682 - 2013-10-05 + - CT-CODE support to manage CT distributions with >32 tracks. + +szs v1.34a r5070 - 2014-04-19 + - Direct slot transforming of tracks with option --slot=NAME. + +szs v1.35a r5184 - 2014-05-16 + - Support of the new custom server 'wiimmfi.de'. + +szs v1.40a r6162 - 2015-04-13 + - Support for PACK archives & PAT0 files. + - New tool: wpatt + +szs v1.44a r6558 - 2015-10-17 + - Advanced BMG support with larger attributes. + +szs v1.45a r6602 - 2015-10-31 + - Support of external CT-CODE files. + - Update to current CT-CODE version. + +szs v1.57a r7484 - 2018-04-11 + - Removal of very small triangles to avoid KCL glitches. + +szs v1.60a r7578 - 2018-08-21 + - Advanced support of battle arenas. + - Support of dispatch points (enemy routes) + +szs v2.00a + - Support of LE-CODE (Leserattes CT-CODE). + - VR calculations. + +szs v2.01a + - First LEX support. + +szs v2.08a + - Support of all known BMG encodings (CP-1252, UTF-16, SHIFT-JIS and UTF-8). + diff --git a/project/templates/forums/mariokartwii.txt b/project/templates/forums/mariokartwii.txt new file mode 100644 index 0000000..6d0203b --- /dev/null +++ b/project/templates/forums/mariokartwii.txt @@ -0,0 +1,25 @@ +I have released [color=#000080]Wiimms SZS Tools v1.40a[/color]. +[color=#800000](A [url=https://szs.wiimm.de/doc/cli]command line[/url] tool set for Linux, Mac and Windows)[/color] + +[color=#800000][b]What's new:[/b][/color] +[list] +[color=#ffffff].[/color] +[/list] + +[color=#800000][b]Change Log:[/b][/color] +[code] +[/code] + + +[color=#800000][b]Links:[/b][/color] +[list] +[*] [url=https://szs.wiimm.de/features.html][color=#000080][b]Features[/b][/color][/url] +[*] [url=https://szs.wiimm.de/download.html][color=#000080][b]Download[/b][/color][/url] +[*] [url=https://szs.wiimm.de/doc/cli][color=#000080][b]Command Line Interface (using the tools)[/b][/color][/url] +[*] [url=https://szs.wiimm.de/doc/kcl][color=#000080][b]KCL Guide to export and import object files[/b][/color][/url] +[*] [url=http://wiki.tockdom.com/wiki/Wiimms_SZS_Tools][color=#000080][b]Custom Mario Kart Wiiki[/b][/color][/url] +[*] [url=http://wiki.tockdom.com/wiki/WU8][color=#000080][b]File Format WU8[/b][/color][/url] (track patch) +[*] [url=http://wiki.tockdom.com/wiki/WBZ][color=#000080][b]File Format WBZ[/b][/color][/url] (BZIP2 compression) +[*] [url=https://szs.wiimm.de/cgi/mkw/object][color=#000080][b]KMP Object Query[/b][/color][/url] +[*] [url=https://szs.wiimm.de/cgi/mkw/track-ref][color=#000080][b]MKW Track Cross Reference[/b][/color][/url] +[/list] diff --git a/project/templates/module/features-de.forum b/project/templates/module/features-de.forum new file mode 100644 index 0000000..bfc768a --- /dev/null +++ b/project/templates/module/features-de.forum @@ -0,0 +1,6 @@ +[list] +[*][url=@@URI-HOME@@features.html#1][b]SZS (Wiimms SZS Toolset) ist eine Sammlung von Kommandozeilen-Programmen.[/b][/url] +[*][url=@@URI-HOME@@features.html#3][b]wszst (Wiimms SZS tool) ist das Hauptprogramm zu Manipulation von SZS-Dateien.[/b][/url] +[*][url=@@URI-HOME@@features.html#4][b]wbmgt (Wiimms BMG tool) ist das Hauptprogramm zu Manipulation von BMG-Dateien.[/b][/url] +[*][url=@@URI-HOME@@features.html#5][b]Besondere Unterstützung von Script-Sprachen.[/b][/url] +[/list]Besuche [url=@@URI-HOME@@features.html][b]@@URI-HOME@@features.html[/b][/url] für mehr Details. diff --git a/project/templates/module/features-en.forum b/project/templates/module/features-en.forum new file mode 100644 index 0000000..84b11d7 --- /dev/null +++ b/project/templates/module/features-en.forum @@ -0,0 +1,6 @@ +[list] +[*][url=@@URI-HOME@@features.html#1][b]SZS (Wiimms SZS Toolset) is a set of command line tools.[/b][/url] +[*][url=@@URI-HOME@@features.html#3][b]wszst (Wiimms SZS tool) is the main SZS manipulation tool.[/b][/url] +[*][url=@@URI-HOME@@features.html#4][b]wbmgt (Wiimms BMG tool) is the main BMG manipulation tool.[/b][/url] +[*][url=@@URI-HOME@@features.html#5][b]Advanced shell support.[/b][/url] +[/list]Visit [url=@@URI-HOME@@features.html][b]@@URI-HOME@@features.html[/b][/url] for more details. diff --git a/project/templates/module/features.txt b/project/templates/module/features.txt new file mode 100644 index 0000000..5079f58 --- /dev/null +++ b/project/templates/module/features.txt @@ -0,0 +1,13 @@ +Features: + + - SZS (Wiimms SZS Toolset) is a set of command line tools. + - wszst (Wiimms SZS Tool) is the main SZS manipulation tool. + - wimgt (Wiimms IMG Tool) is a graphics conversion tool. + - wkclt (Wiimms KCL Tool) is a KCL creation and modification tool. + - wkmpt (Wiimms KMP Tool) is a KMP creation and modification tool. + - wbmgt (Wiimms BMG Tool) is a BMG manipulation tool. + - wstrt (Wiimms STATIC.REL Tool) is a staric.rel and main.dol manipulation tool. + - wctct (Wiimms CT-CODE Tool) manage CT-CODE extensions. + - Advanced shell support. + +Visit @@URI-HOME@@features.html for more details. diff --git a/project/templates/module/head.txt b/project/templates/module/head.txt new file mode 100644 index 0000000..0c0fe9c --- /dev/null +++ b/project/templates/module/head.txt @@ -0,0 +1,21 @@ +******************************************************************************* +******* Wiimms SZS Tools v@.@@@ - @@@@-@@-@@ ******* +******************************************************************************* + +Wiimms SZS Tools (SZS) is a command line tool set for linux and for other +unix like operating systems including Cygwin. The tools manage SZS files. + +The software is developed under the GPL 2.0 license. See file gpl-2.0.txt +or http://www.gnu.org/licenses/gpl-2.0.txt for details. + +The most current source is available under: + @@URI-SOURCE@@/ +~ +~The most current source is available under: +~ @@URI-VIEWVC@@/ +~The source of this revision (@@REV@@) is available under: +~ @@URI-VIEWVC@@/?pathrev=@@REV-NEXT@@ +~You can also checkout the SVN repository: +~ @@URI-REPOS@@/ + +See @@URI-HOME@@ for announcements and discussions. diff --git a/project/templates/module/last-history.txt b/project/templates/module/last-history.txt new file mode 100644 index 0000000..97a5e29 --- /dev/null +++ b/project/templates/module/last-history.txt @@ -0,0 +1,33 @@ +szs v@@VERSION@@ r@@REV-NEXT@@ - @@@@-@@-@@ + + - wszst/wkmpt CHECK: Hints about self linked item routes and item routes with + exact 1 point. A warning is printed when both events apply for same route. + - Bug fix: The number of tables is set to 6 if writing a short binary + item-slot file (without tables for battles). + - wszst TEXT/BINARY: New options to patch KMG files: --kmg-limit=seconds to + limit the run time of battles and --kmg-copy=id to copy one slot definition + to the 9 other slots. + - Leseratte and I analysed the MKW internal VR calculations and adapted the + results into the tools. So the calculations are 100% identical now. + - Command wszst VR-RACE supports now up to 30 players for the VR calculation. + - KMP/CAME type 6 and the related route is excluded from any transformation. + +~ - MDL support: Scanning a MDL file and transferring the data into an internal +~ format was already implemented, but only used for analysis purposes. Now it +~ is possible to create a binary MDL by reading the internal data. This is +~ the first step to add MDL materials to enable a track for slot 4.2. +~ - The tools verify the maximum number of CKPT, ENPT and ITPT (=255). + +Known bugs: + + - Minimaps with an additional bones layer above 'posLD' and 'posRU' (e.g. for + scaling) are handled incorrect on auto adjusting the minimap. + - The tools try always to find the optimal PNG format by analyzing the main + image. The bug is, that mipmaps (or following images in TPL) may need a + different output format (for example colors instead of grayscale). + SOLUTION: Force an output format with for example --transform RGBA32. +~ - Creating a BRRES from local files is buggy, because missing adjust of +~ several BRRES and string pool pointers. +~ - If creating a BRRES the internal name of the sub file is not set to +~ the filename. This could be problematic if a sub file was renamed. +~ |
