Jump to content


  • Please log in to reply

Wiimms SZS Tools

, list, (de-)compress, extract and create SZS files (Go to first unread post)
Wiimm Post #31 Posted 20 February 2012 - 08:24 PM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.28a.
(A command line toolset for Linux, Mac and Windows)

What's new:
  • The most important new thing is the internal object file database. For each KMP object it contains the needed files (BRRES, BREFF and BREFT). Based on this new DB there are 3 extensions:
    • The new command wszst CHECK reads the KMP of a SZS and checks, if all needed files exist.
    • wszst CREATE with the new option --auto-add is able to add missing BRRES, BREFF and BREFT files from an auto-add archive.
    • The new command wszst AUTOADD manage the standard auto-add archive. If you have an extracted Mario Kart ISO and execute wszst AUTOADD ./path_to/Race/Course/ the auto-add archive is completely build by reading all track and arena files.
    .
  • KMP/CKPT: The KMP compiler is now able to make make check points visible by using and scaling any global object.
    .


Change Log:
CODE
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: --aa): 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.




Links:




Wiimm Post #32 Posted 28 February 2012 - 11:38 PM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.29a.
(A command line toolset for Linux, Mac and Windows)

What's new:
  • There is now an internal object and file database of all track and arena files. These database is used to check SZS track files for missing and unneeded files, see command "wszst CHECK".
    .

Change Log:
CODE
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.

 - Minimal 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 ols 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, modifed, 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).




Links:



WiiBricker Post #33 Posted 28 February 2012 - 11:46 PM

    GPL Police - Hunting down Google Code SVN repos 24/7


  • Group: Members
  • Posts: 2,781
  • Member No.: 217,655
  • Joined: 19-September 09
  • Location: Land of Potatoes

  •  

Just wanted to drop a quick thanks Wiimm. Sadly your tools don't seem to recieve the love they deserve :/


Wiimm Post #34 Posted 02 March 2012 - 04:33 PM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.29b.
(A command line toolset for Linux, Mac and Windows)

This is only a bug fix release!
CODE
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.



Links:



Wiimm Post #35 Posted 10 March 2012 - 11:02 AM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.30a.
(A command line toolset for Linux, Mac and Windows)

What's new:
  • I have implemented a new and more tolerant BRRES iterator. This iterator goes through every subfile, section and string to find the objects. I had implemented it some versions ago for the new analysis command MEMORY and also for LIST.

    Now this new BRRES iterator is used for extracting tracks into single files and also on SZS creation to find the internal strings. I have tested it with all Nintendo tracks and a lot of custom tracks without any failure.

    And this means: Extracting and creating tracks works now for every track. If you find some non working track, please tell me.
    .

Change Log:
CODE
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.



Links:



Wiimm Post #36 Posted 06 April 2012 - 01:47 PM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.31a.
(A command line toolset for Linux, Mac and Windows)

What's new:
  • BTI files (alternative graphics file format) are supported now:
    • All tools and listing commands: Detect BTI files and print details.
    • wimgt: Can now convert TPL, TEX, BTI, BREFT and PNG into all directions. Conversion of image formats (CMPR, IA8, RGB565, ...) are also supported.
    • wszst: Decode and encode BTI files on the fly.
    .

Change Log:
CODE
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.



Links:



Wiimm Post #37 Posted 14 April 2012 - 09:35 PM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.32a.
(A command line toolset for Linux, Mac and Windows)

What's new:
  • The image tool wimgt have now the new command COPY for easy conversions between fileformats.
    CODE
    # general syntax
    wimgt copy <SOURCE> <DEST> -x <INTERNAL_FORMAT>
    
    # examples: leave internal image format
    wimgt copy a.tpl b.tex
    wimgt copy b.tex c.bti
    
    # examples: change internal image format to cmpr
    wimgt copy a.tpl b.tex -x cmpr
    wimgt copy b.tex c.bti -x cmpr
    
    

    .

Change Log:
CODE
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.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.



Links:



Wiimm Post #38 Posted 02 May 2012 - 12:46 PM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.33a.
(A command line toolset for Linux, Mac and Windows)

What's new:

Change Log:
CODE
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 http://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:
    -> http://szs.wiimm.de/doc/kmp/syntax
   The inline documentation in decoded KMP files is now much shorter.

 - Command SYNTAX removed. Use page http://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.



Links:



Wiimm Post #39 Posted 12 May 2012 - 11:48 AM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.34a.
(A command line toolset for Linux, Mac and Windows)

What's new:
  • I have now implemented all planned things for the KMP compiler/parser:
    • Variables in different name spaces.
    • Numeric expressions with integers, floats and vectors.
    • Nested if..elif..else..endif.
    • 5 kinds of nested loops.
    • Includes. (new!)
    • Many predefined functions.
    • User defined macros and functions. (new!)
    • Commands for special features.
    • Conditional compiling controlled by command line settings.

    For Details read the new online syntax and semantics documentation:
    .

Change Log:
CODE
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.
       @[member='exit']: exit the parser execution.
       @ASSERT condition: exit execution, if 'condition' is false.
       @[member='macro'] .. @ENDMACRO: Define named macros.
       @FUNCTION .. @ENDFUNCTION: Like @[member='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.



Links:



Wiimm Post #40 Posted 20 May 2012 - 07:33 PM

    GBAtemp Advance Maniac


  • Group: Members
  • Posts: 1,528
  • Member No.: 191,758
  • Joined: 11-August 09
  • Location: Germany

  •  

I have released Wiimms SZS Tools v0.35a.
(A command line tool set for Linux, Mac and Windows)

What's new:
  • Now I have turned to KCL:
    .
    • The new option --kcl-flag=list allows to modify KCL flags by translation rules.
      .
    • The new option --kcl-parse=file allows to call a script, that may analyze the KCL triangle data and modify the KCL flag. This allows a more specific selection and calculation as --kcl-flag.
      .
    • I have implemented a KCL object exporter. It works fine for all tested Nintendo and Custom tracks, but is has some known issues.
    .

  • The next step is an object to KCL converter. Therefor I need more info how to create the Spatial Index.
    If you have info or an example code (in any programming language), please share it with me.

    .

Change Log:
CODE
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.



Links:








Users browsing this topic

2 user(s) are reading this topic

1 members, 1 guests, 0 anonymous users