Skip to content

@nicoboss nicoboss released this Nov 14, 2019 · 27 commits to master since this release

How to install:

Put dumped prod.keys to %userprofile%/.switch, install python, execute "pip install nsz" and use "nsz" like every other cmd command.

NSZ 2.1.1 Changelog:

  • Fixed block compression for pip and Nuitka (nsz_win64_portable) by using sys.argv[0] instead of __main__.__file__ so threads no longer need to be prevented from initializing their own nut environment
  • Made installation instructions easier to see and understand
  • Scripts to automate testing and publishing
Assets 3
Pre-release
Pre-release

@nicoboss nicoboss released this Nov 14, 2019 · 39 commits to master since this release

NSZ 2.1 Changelog:

  • 98 commits worth of changes since v2.0
  • Added pip support
  • Added Nuitka standalone windows build support
  • Enhanced File Existing Check #20
    • Skip already compressed/decompressed files by default
    • --overwrite
    • --rm-old-version
    • Extracting TitleIDs and Versions from filename if possible (#17 and #19)
      • The titleID checking is now immensely faster than when extracting from Cnmt
    • --parseCnmt to get TitleID/version from Cnmt if not extractable from filename
      • Otherwise it falls back to simple filename checking which is much faster
  • Batch error handling with tracebacks (#16)
    • Some debugging codes to find out erroneous files
    • Prevent batch process raising errors
    • Batch error handling with tracebacks
  • The --thread option now works even for solid compression however the progress bar still has some visual glitches
  • NSP/NSZ file hash verification now uses the hashes inside Cnmt instead of the nca filename (#22)
  • Fixed decompression memory leak (#21)
    • The memory leak only occurs for dctx.stream_reader and was fixed by switching to the simple decompressing API which makes more sense for block decompression anyways
  • Improved pageReadSize calculation speed by using math instead of a while loop
  • Added option --remove-source that deletes the source file after compression or decompression (#24)
    • For this we finally properly closed file containers too
  • Fix huge compression memory leak (#13)
  • Fixed wrong working directory when starting nut.py from a different directory (#18)
  • Improved exception handling during TitleID/Version extraction
    • Added support for prod.keys
  • Reorganized file structure
  • Fixed keys.txt path to always be the folder containing nsz.py
  • Fixed default thread amount to be cpu_count()
  • Implemented python version checking to prevent python from showing the users confusing compatibility related exceptions
    • Compatible and tested with Python 3.6 and later
  • General system stability improvements to enhance the user's experience.
Assets 2

@nicoboss nicoboss released this Oct 20, 2019 · 137 commits to master since this release

NSZ 2.0 Changelog:

  • Fully implemented block compression which can be enabled using the --block option
    • Supports for random read access on compressed files
    • Highly multithreaded compression when block compressing
    • Technically supports playing compressed games in the future
    • Current title installers do not support this yet
    • Comes with a low compression ratio cost
  • Implemented NSP/NSZ file hash verification
  • Overwrite/Duplicate protection
  • Reorganized the project's folder structure and enhanced code readability
  • Improved user feedback in form of better understandable messages and errors
  • Fixed a lot of bugs and non-working features
  • Added MIT License so all code inside this project can be used for whatever you like
  • General system stability improvements to enhance the user's experience.
Assets 2

@blawar blawar released this Oct 13, 2019

Scripts to compress and decompress NSZ files.

Assets 2
You can’t perform that action at this time.