SZS Change Log
1. szs v2.21a r8311 - 2020-11-30
- Windows only: 32 bit and 64 bit versions of Cygwin are supported now.
The 64 bit version is recommended.
- 32 bit version: Cygwin DLL 3.0.7 / 2019-04-30
- 64 bit version: Cygwin DLL 3.1.7 / 2020-08-22
- Support of LE-CODE build 25:
- Speedometer support for LPAR-files.
- New option for wlect: --speedometer=off/on
- Again fewer program crashes when reading faulty SZS files.
- BMG supports little endian files now, but only encoding UTF-8 was checked.
I need example files to verify other encodings (CP-1252,UTF-16,SHIFT-JIS).
- KCL/OBJ: Faces with any number of vertices are accepted now. Before there
was a limit of 50 vertices.
- Bug fix for CT-CODE/LE-CODE configuration file: Command 'S' stored a slot
number as single byte, so that only values between 0 and 255 were possible.
2. szs v2.20a r8279 - 2020-10-03
- Time stamps of the files are now managed in nanoseconds instead of seconds.
- wszst ANALYSE: New result "warn=": Print warnings about Item Position Bug
and self linked item routes with 1 point.
- wszst CHECK: Hints about unusual TEX version 1 are suppressed now if option
--verbose is not set.
- Fewer program crashes when reading faulty SZS files.
3. szs v2.19b r8243 - 2020-08-03
- Bug fix for wlect LPAR: Message functions are not longer printed twice.
4. szs v2.19a r8237 - 2020-08-01
- Bug fix: Tool wlect didn't read the second chat message functions from
binary LE-CODE files.
- Support of an old GameCube BMG variant (internally named "legacy").
- Check minimap: Bones 'posRU' and 'posLD' are detected even if the root bone
is renamed. This suppresses wrong warnings.
5. szs v2.18a r8217 - 2020-06-28
- 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.
6. 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.
7. 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.
8. 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.
9. 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.
10. 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.
11. 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.
12. 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.