Developed by REDACTED and hosted by Notex

Latest version v2.6 - GUI + CLI

Download v2.6 Source Code v2.6

(8 April 2021)

Changelog

  • Brick Editor:
    • Multiple bricks now load if the main TEMP depends on them
    • Recursive TEMP dependencies
      • Editor keeps track of what TEMPs you have edited
    • H1 & H2 support for entity/brick (TEMP) editing
    • Fixed ZString bug that caused strings with commas in them to crash RPKG
  • Models (PRIM):
    • GLB exporting (glTF 2.0)
      • Either by right clicking a PRIM hash or right clicking a TEMP hash that has PRIM dependencies
      • LODs are parsed and will only export the highest resolution ones
      • No bone or texture support yet
  • Added JSON viewer for JSON hashes
  • Improved speed of loading RPKGs
rpkg-cli v2.6 - Works with RPKGv1 (GKPR) and RPKGv2 (2KPR) files.
--------------------------------------------------------------------------------
Note: All the information used to build this program was gleaned
      in a completely 'clean room' environment.
--------------------------------------------------------------------------------
Usage:

  Drag And Drop Options:
    - RPKG files can be dragged and dropped directly onto the rpkg.exe file.
        This causes rpkg.exe to automatically enter RPKG extraction mode and
        will fully extract all the hash files/resources from each RPKG dragged
        and dropped upon rpkg.exe. It mimics (-extract_from_rpkg) in behaviour.
        One or more RPKG files can be dragged and dropped onto rpkg.exe at a time.
    - rpkg.exe command JSON files can be dragged and dropped onto the rpkg.exe file.
        This causes rpkg.exe to automatically enter rpkg.exe command JSON mode and
        will import, parse, and run all the commands listed in the input JSON file.
        One or more JSON files can be dragged and dropped onto rpkg.exe at a time.

  Command Line Options:
    -compute_ioi_hash <string>
        Computes the IOI style truncated md5 hash/runtimeid from a string.
    -decrypt_packagedefinition_thumbs <path to file>
        Decrypts packagedefinitions.txt / thumbs.dat files.
    -encrypt_packagedefinition_thumbs <path to file>
        Encrypts packagedefinitions.txt / thumbs.dat files.
    -extract_direct_hash_depends <path to folder containing RPKG files>
        Lists and extracts the forward depends of a given hash file/resource.
        Scans a directory, commonly Hitman's Runtime dir, and imports and
        scans all available RPKG files for dependency information.
    -extract_from_rpkg <path to rpkg file>
        Extracts all hash linked files/resources from an RPKG file.
    -extract_gfxf_from <path to folder containing RPKG files>
        Extracts all hash linked files/resources located in the GFXF files
        and unpacks them to GFX and if available DDS/TGA files from all
        the RPKG files in a given directory.
    -extract_ores_from <path to folder containing RPKG files>
        Extracts all hash linked files/resources located in the ORES files
        by their full IOI path names from all the RPKG files in a given directory.
    -extract_wwem_to_ogg_from <path to folder containing RPKG files>
        Extracts all hash linked files/resources of type WWEM to their
        full IOI internal Wwise file paths / names. It also converts
        the WWES (*.wem) files directly to *.ogg files for easy listening.
    -extract_wwes_to_ogg_from <path to folder containing RPKG files>
        Extracts all hash linked files/resources of type WWES to their
        full IOI internal Wwise file paths / names. It also converts
        the WWES (*.wem) files directly to *.ogg files for easy listening.
    -extract_wwev_to_ogg_from <path to folder containing RPKG files>
        Extracts all hash linked files/resources of type WWEV to their
        partial IOI internal Wwise file paths / names. It also converts
        the WWEV (*.wem) files directly to *.ogg files for easy listening.
    -extract_dlge_to_json_from <path to folder containing RPKG files>
        Extracts all hash linked files/resources of type DLGE from
        all the RPKG files in a given directory and then decrypts
        them in memory and outputs / formats them as JSON files.
    -extract_locr_to_json_from <path to folder containing RPKG files>
        Extracts all hash linked files/resources of type LOCR from
        all the RPKG files in a given directory and then decrypts
        them in memory and outputs / formats them as JSON files.
    -extract_prim_to_glb_single_from <path to rpkg file>
        Extracts hash linked files/resources of type PRIM specified by
        -filter from specified RPKG file and then converts them in memory
        and outputs / formats them as a single 3D glTF GLB file(s).
    -extract_prim_to_glb_multiple_from <path to rpkg file>
        Extracts hash linked files/resources of type PRIM specified by
        -filter from specified RPKG file and then converts them in memory
        and outputs / formats them as a single 3D glTF GLB file(s).
    -extract_prim_to_gltf_single_from <path to rpkg file>
        Extracts hash linked files/resources of type PRIM specified by
        -filter from specified RPKG file and then converts them in memory
        and outputs / formats them as a single 3D glTF file(s).
    -extract_prim_to_gltf_multiple_from <path to rpkg file>
        Extracts hash linked files/resources of type PRIM specified by
        -filter from specified RPKG file and then converts them in memory
        and outputs / formats them as a single 3D glTF file(s).
    -extract_prim_to_obj_single_from <path to rpkg file>
        Extracts hash linked files/resources of type PRIM specified by
        -filter from specified RPKG file and then converts them in memory
        and outputs / formats them as a single 3D OBJ file(s).
    -extract_prim_to_obj_multiple_from <path to rpkg file>
        Extracts hash linked files/resources of type PRIM specified by
        -filter from specified RPKG file and then converts them in memory
        and outputs / formats them as a single 3D OBJ file(s).
    -extract_rtlv_to_json_from <path to folder containing RPKG files>
        Extracts all hash linked files/resources of type RTLV from
        all the RPKG files in a given directory and then decrypts
        them in memory and outputs / formats them as JSON files.
    -filter <hash filter>
        Filters hash linked files/resources by string filter.
        String filter can be a full hash value, partial hash value,
        the hash resource type, partial hash resource type, WWES or WWEV
        partial of full file/resource name, etc...
        Can accept multiple filters: -filter <filter1>,<filter2>,...
    -generate_rpkg_from <path to folder to generate rpkg from>
        Generates a RPKG file from hash file(s) in a given folder and all subfolders.
        The folder name is used for the filename of the generated RPKG file.
    -hash_depends <path to folder containing RPKG files>
        Lists the forward and reverse depends of a given hash file/resource.
        Scans a directory, commonly Hitman's Runtime dir, and imports and
        scans all available RPKG files for dependency information and lists the results.
    -hash_probe <path to folder containing RPKG files>
        Probes RPKG files for hash files/resources and displays key data points.
        Scans a directory, commonly Hitman's Runtime dir, and imports and
        scans all available RPKG files for the existence of the hash file/resource.
    -hex_search <hex string>
        Specifices the hex string to find within hash files/resources.
    -output_path <path to output folder>
        Specifies output folder path to use instead of the current directory.
    -rebuild_wwev_in <path to folders containing wem files>
        Rebuilds sets of individual Wwise .wem files that were previously
        extracted with (-extract_wwev_from). The folder specified by the
        argument can contain any number of sub folders, where each subfolder's
        name is linked to an individual WWEV that will be built from the *.wem
        files in that folder.
    -rebuild_gfxf_in <path to folders containing GFFX/(DDS/TGA) files>
        Rebuilds sets of GFX and if available DDS/TGA files that were previously
        extracted with (-extract_gfxf_from). The folder specified by the
        argument can contain any number of sub folders, where each subfolder's
        name is linked to an individual GFXF that will be built from
        the GFX and if available DDS/TGA files in that folder.
    -rebuild_dlge_from_json_from <path to folder containing JSON (DLGE) files>
        Rebuilds DLGE files/resources from JSON (DLGE) files that were previously
        extracted with (-extract_dlge_to_json_from).
    -rebuild_locr_from_json_from <path to folder containing JSON (LOCR) files>
        Rebuilds LOCR files/resources from JSON (LOCR) files that were previously
        extracted with (-extract_locr_to_json_from).
    -rebuild_rtlv_from_json_from <path to folder containing JSON (RTLV) files>
        Rebuilds RTLV files/resources from JSON (RTLV) files that were previously
        extracted with (-extract_rtlv_to_json_from).
    -regex_search <regex>
        Specifies the regex which is used to find within hash files/resources.
    -rpkg_command_json <path to rpkg command json file>
        Imports, parses, and runs all the commands listed in the input JSON file.
        See included rpkg_command_reference.JSON for complete JSON command descriptions.
        See included rpkg_command_JSON_examples\*.JSON for some command JSON examples.
    -search_rpkg <path to rpkg file>
        Specifies RPKG file whose hash files/resources will to be searched through.
    -text_search <text string>
        Specifices the text string to find within hash files/resources.
  Examples:
    Computes the IOI style truncated md5 hash/runtimeid from a string:
        rpkg.exe -compute_ioi_hash "[assembly:/_PRO/Scenes/Missions/CoastalTown/Mission01.entity].pc_entitytemplate"
    Decrypts packagedefinitions.txt / thumbs.dat files:
        rpkg.exe -decrypt_packagedefinition_thumbs packagedefinition.txt
    Decrypts packagedefinitions.txt / thumbs.dat files:
        rpkg.exe -encrypt_packagedefinition_thumbs packagedefinition.txt.decrypted
    Extracts all hash linked files/resources from an RPKG file:
        rpkg.exe -extract_from_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts all hash linked files/resources from an RPKG file to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -extract_from_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts one hash linked files/resources from an RPKG file by hash filter:
        rpkg.exe -filter 00123456789ABCDE -extract_from_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts multiple hash linked files/resources from an RPKG file by hash filter:
        rpkg.exe -filter 00123456789ABCDE,00123456789ABCDE -extract_from_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts all hash linked files/resources from an RPKG file by hash resource type filter:
        rpkg.exe -filter ORES -extract_from_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts all hash linked files/resources from an RPKG file by hash resource types ORES, REPO, and JSON:
        rpkg.exe -filter ORES,REPO,JSON -extract_from_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Generates a RPKG file from hash file(s) in a given folder and all subfolders:
        rpkg.exe -generate_rpkg_from chunk0patch1
    Extracts PRIM (to single 3D glTF GLB) hash linked files/resources from an RPKG file by hash filter:
        rpkg.exe -filter 00123456789ABCDE -extract_prim_to_glb_single_from "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts PRIM (to multiple 3D glTF GLB) hash linked files/resources from an RPKG file by hash filter:
        rpkg.exe -filter 00123456789ABCDE -extract_prim_to_glb_multiple_from "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts PRIM (to single 3D glTF) hash linked files/resources from an RPKG file by hash filter:
        rpkg.exe -filter 00123456789ABCDE -extract_prim_to_gltf_single_from "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts PRIM (to multiple 3D glTF) hash linked files/resources from an RPKG file by hash filter:
        rpkg.exe -filter 00123456789ABCDE -extract_prim_to_gltf_multiple_from "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts PRIM (to single 3D OBJ) hash linked files/resources from an RPKG file by hash filter:
        rpkg.exe -filter 00123456789ABCDE -extract_prim_to_obj_single_from "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts PRIM (to multiple 3D OBJ) hash linked files/resources from an RPKG file by hash filter:
        rpkg.exe -filter 00123456789ABCDE -extract_prim_to_obj_multiple_from "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Extracts all hash linked files/resources located in the ORES files from all the RPKG files in a given directory:
        rpkg.exe -extract_ores_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts all hash linked files/resources located in the ORES files from all the RPKG files in a given directory to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -extract_ores_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts and decrypts (to JSON) all hash linked files/resources of type DLGE from all the RPKG files in a given directory:
        rpkg.exe -extract_dlge_to_json_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts and decrypts (to JSON) all hash linked files/resources of type DLGE from all the RPKG files in a given directory to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -extract_dlge_to_json_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts and decrypts (to JSON) all hash linked files/resources of type LOCR from all the RPKG files in a given directory:
        rpkg.exe -extract_locr_to_json_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts and decrypts (to JSON) all hash linked files/resources of type LOCR from all the RPKG files in a given directory to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -extract_locr_to_json_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts and decrypts (to JSON) all hash linked files/resources of type RTLV from all the RPKG files in a given directory:
        rpkg.exe -extract_rtlv_to_json_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts and decrypts (to JSON) all hash linked files/resources of type RTLV from all the RPKG files in a given directory to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -extract_rtlv_to_json_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Rebuilds sets DLGE files from JSON files that were previously created with (-extract_dlge_to_json_from):
        rpkg.exe -rebuild_dlge_from_json_from "R:\DLGE"
    Rebuilds sets DLGE files from JSON files that were previously created with (-extract_dlge_to_json_from) to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -rebuild_dlge_from_json_from "R:\DLGE"
    Rebuilds sets LOCR files from JSON files that were previously created with (-extract_locr_to_json_from):
        rpkg.exe -rebuild_locr_from_json_from "R:\LOCR"
    Rebuilds sets LOCR files from JSON files that were previously created with (-extract_locr_to_json_from):
        rpkg.exe -rebuild_locr_from_json_from "R:\LOCR"
    Rebuilds sets RTLV files from JSON files that were previously created with (-extract_rtlv_to_json_from) to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -rebuild_rtlv_from_json_from "R:\RTLV"
    Rebuilds sets RTLV files from JSON files that were previously created with (-extract_rtlv_to_json_from) to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -rebuild_rtlv_from_json_from "R:\RTLV"
    Extracts all hash linked files/resources of type WWEM from all the RPKG files in a given directory:
        rpkg.exe -extract_wwem_to_ogg_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts all hash linked files/resources of type WWEM from all the RPKG files in a given directory to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -extract_wwem_to_ogg_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts all hash linked files/resources of type WWES from all the RPKG files in a given directory:
        rpkg.exe -extract_wwes_to_ogg_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts all hash linked files/resources of type WWES from all the RPKG files in a given directory to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -extract_wwes_to_ogg_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts all hash linked files/resources of type WWEV from all the RPKG files in a given directory:
        rpkg.exe -extract_wwev_to_ogg_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Extracts all hash linked files/resources of type WWEV from all the RPKG files in a given directory to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -extract_wwev_to_ogg_from "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Rebuilds sets of individual Wwise .wem files that were previously extracted with (-extract_wwev_from):
        rpkg.exe -rebuild_wwev_in "R:\WWEV"
    Rebuilds sets of individual Wwise .wem files that were previously extracted with (-extract_wwev_from) to an output folder:
        rpkg.exe -output_path "R:\my\output\path" -rebuild_wwev_in "R:\WWEV"
    Lists and extracts the forward depends of a given hash file/resource:
        rpkg.exe -filter 00123456789ABCDE -extract_direct_hash_depends "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Lists and extracts the forward depends of two hash files/resources:
        rpkg.exe -filter 00123456789ABCDE,00123456789ABCDE -extract_direct_hash_depends "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Lists the forward and reverse depends of a given hash file/resource:
        rpkg.exe -filter 00123456789ABCDE -hash_depends "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Lists the forward and reverse depends of two hash files/resources:
        rpkg.exe -filter 00123456789ABCDE,00123456789ABCDE -hash_depends "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Probes RPKG files for hash files/resources and displays key data points:
        rpkg.exe -filter 00123456789ABCDE -hash_probe "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Probes RPKG files for hash files/resources and displays key data points:
        rpkg.exe -filter 00123456789ABCDE,00123456789ABCDE -hash_probe "C:\Program Files\Epic Games\HITMAN3\Runtime"
    Search a RPKG file's hash files/resources by hex string:
        rpkg.exe -hex_search 00112233445566 -search_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Search a RPKG file's hash files/resources by regex:
        rpkg.exe -regex_search "assembly:[\w/_]+" -search_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Search a RPKG file's hash files/resources by text string:
        rpkg.exe -text_search assembly -search_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Search a RPKG file's hash files/resources by regex and filter by type ORES:
        rpkg.exe -filter ORES -regex_search "assembly:[\w/_.]+" -search_rpkg "C:\Program Files\Epic Games\HITMAN3\Runtime\chunk0.rpkg"
    Imports, parses, and runs all the commands listed in the input JSON file:
      The JSON input below batch extracts from all the RPKGs in the Hitman 3 Runtime folder:
        rpkg.exe -rpkg_command_json rpkg_command-batch_extract_chunk_rpkgs.JSON

Previous versions

Download v2.5 Source Code v2.5

(21 March 2021)

  • Implemented preliminary model (PRIM) viewer + exporter to OBJ models
    • -extract_prim_to_obj_from command in the CLI or you can use the GUI
  • HITMAN 3:
    • Added: enum support for brick files
    • Added: export all global entity coords to CSV file function
  • Fixed hash depends showing duplicate hashes

Download v2.4 Source Code v2.4

(19 March 2021)

  • HITMAN 3: Implemented entity/brick (TEMP) file editing (accessed by right clicking on TEMP files)
  • Added IOI paths to -hash_depends command line argument
  • Fixed H1 issue again

Download v2.31 Source Code v2.31

(6 March 2021)

  • Fixed GFXF rebuilding if the size is different
  • Fixed bug with Hitman 2016 RPKGs

Download v2.3 Source Code v2.3

(3 March 2021)

  • Added GFXF (Scaleform GFX) extraction and rebuilding
  • Fixed bug with archive generation in the GUI
  • New logo/icon thanks to Dribbleondo

Download v2.2 Source Code v2.2

(28 February 2021)

  • Added an audio player for WWEM, WWES and WWEV hashes.
  • Added an image viewer for GFXI hashes.

Download v2.1 Source Code v2.1

(26 February 2021)

  • Added new search GUI search feature where you can search through either:
    • The currently imported/loaded RPKGs
    • The hash list
  • Fixed an issue where the folder selection dialog appeared after clicking cancel on the right click popup menu
  • Added a horizontal scroll bar to the Details section
  • The hash details now displays the known IOI string for each known hash
  • Added extra error outputs for the localization rebuilding functions when malformed JSONs are input
  • Added patch archive deletion list for deleted hashes in the “Details” view for patch archives

Download v2.01 Source Code v2.01

(23 February 2021)

  • Added roughly 15k new hashes to the hash list thanks to grappigegovert
  • Fixed issue with the -hash_probe function where output was duplicated when used with multiple filters
  • Added new -extract_direct_hash_depends function that extracts direct depends to files and meta files
  • Fixed issue with RPKG Details tab reporting the wrong number of hashes and total hash sizes for RPKGs
  • Changed the default starting color theme to Dark/Red instead of Light/Blue
  • Added natural sorting for the RPKG archives when importing by folder or mass extraction

Download v2.0 Source Code v2.0

(22 February 2021)

  • Completely rewritten, streamlined all the functions, bug fixes, etc…
  • Transformed rpkg into a shared solution consisting of a DLL and a CLI component/program + a WPF .NET Framework based GUI
  • GUI greatly extends the capabilities of rpkg:
    • Treeview: Resource and hash dependencies
    • Ability to see all details for a given hash, resource type or whole RPKG archive
    • Hex viewer
    • JSON viewer for localisation files containing strings (LOCR, DLGE and RTLV)
  • Implemented revorb.exe for WWEM/WWES and WWEV audio file extraction when extracting to ogg
  • Implemented a master hash list that contains known hashes for all 3 of the HITMAN trilogy games

Download v1.3 Source Code v1.3

(4 February 2021)

  • Added extraction and rebuilding functionality for a variety of resources:
    • DLGE (Dialog subs) - Includes output specifying the WWES linked to the dialog
      • -extract_dlge_to_json_from
      • -rebuild_dlge_from_json_from
    • RTLV (Video subs)
      • -extract_rtlv_to_json_from
      • -rebuild_rtlv_from_json_from
  • Added extra meta file outputs when using WWES extraction mode

Download v1.21 Source Code v1.21

(31 January 2021)

  • Added rpkg.exe command JSON examples
  • Fixed ORES extraction issue when no input filter was present

Download v1.2 Source Code v1.2

(30 January 2021)

  • Added filtering to the ORES WWEV and WWES extraction modes
  • Implemented a new scripted command interface through the use of JSON files
  • Enable the use of drag and drag for both RPKG and JSON files directly upon the exe, thereby allowing full control of rpkg.exe without command line interface use

Download v1.11 Source Code v1.11

(29 January 2021)

  • Added hash probe function (-hash_probe) that allows you to probe RPKG files for the existence of the hash file/resource and provides information.
  • Added an error message to indicate if a resource was not found when using the -filter function.

Download v1.1 Source Code v1.1

(28 January 2021)

  • Added the ability to compute an IOI hash from an assembly string
  • Added extraction and rebuilding functionality for a variety of resources:
    • WWEV (SFX) - (With partial IOI internal Wwise file paths / names)
    • LOCR (Localisation)
  • WWES (Dialog) extraction with full IOI internal Wwise file paths / names
  • XTEA encryption/decryption for packagedefintion.txt / thumbs.dat

Download v1.03 Source Code v1.03

(25 January 2021)

  • Fixed issue preventing perfect 1:1 repacking of previously unpacked RPKG files

Download v1.02 Source Code v1.02

(25 January 2021)

  • Added the ability to specify a desired output folder using -output_path
  • Fixed an issue limiting importing RPKGs with under 100 hash files/resources
  • Fixed ORES extraction issue

Download v1.01 Source Code v1.01

(24 January 2021)

  • Decreased the RPKG file import time by an order of magnitude
  • Fixed issue related to handling multiple input filters

Download v1.0 Source Code v1.0

(24 January 2021)

  • Initial release