Svarn Audit Pack

Check a Svarn PNG export before handing it over or comparing versions. Check schema-1 manifest entries, PNG structure and SHA-256 hashes; report added, removed or byte-changed PNGs across exports.

You exported sprite slices with the Svarn Aseprite extension and want an independent check before handing the folder to someone else, or you want to see exactly which PNGs changed between two exports.

Svarn Audit Pack actual application or output
Actual Svarn Audit Pack command output, displayed as a plain-text transcript in Chrome: fictional sprite exports show one added, one changed and one removed PNG; a deliberately corrupted PNG fails its CRC check. This is a CLI tool, not a graphical editor.

Before you start

Your first result

  1. Buy, download and extract

    Buy from /store/svarn-audit-pack/ and download svarn-audit-pack-0.1.0.zip from the checkout page. Extract it; you get a folder named svarn-audit-pack containing audit.py, README.txt and license files. Nothing is installed and no extra Python packages are needed.

  2. Export with the Svarn extension

    In Aseprite, export your slices with Svarn as usual. Keep the export folder as Svarn wrote it: svarn-manifest.json plus the PNG files, with no extra PNGs added by hand.

  3. Check one export

    Open a terminal in the svarn-audit-pack folder and run: python3 audit.py /path/to/svarn-export. A passing folder prints JSON with "status": "verified", the number of files and a SHA-256 value per PNG, and the command exits with code 0.

  4. Compare two exports

    Run: python3 audit.py /path/to/old-export --compare /path/to/new-export. Both folders are checked first; the output then adds a "comparison" section listing "added", "removed" and "changed" PNG names. "changed" means the file bytes differ, not that the pixels were inspected.

  5. Read a failure

    If anything is wrong the tool prints one line starting with AUDIT FAILED: and the reason (for example "PNG CRC mismatch", "PNG dimensions differ from manifest", "unlisted PNG in export folder" or "Svarn export is incomplete"), and exits with code 1. Re-export with Svarn and run the check again.

  6. Keep the result

    The tool only reads files and prints to the terminal; it never modifies your export and saves nothing by itself. To keep a record, redirect the output to a file, for example: python3 audit.py my-export > audit-result.json

Pond sprites: a clean export, a changed export and a damaged copy

Input: examples/svarn-audit-pack/ contains three small fictional folders laid out like a Svarn schema-1 export (16×16 PNG squares, not real artwork): export-v1 (frog_1, frog_2, lily_1), export-v2 (frog_2 recoloured, lily_1 removed, dragonfly_1 added) and export-damaged (a copy of export-v1 with one byte flipped inside lily_1.png).

  1. In a terminal, change into the extracted svarn-audit-pack folder.
  2. Run: python3 audit.py /path/to/examples/svarn-audit-pack/export-v1
  3. Run: python3 audit.py /path/to/examples/svarn-audit-pack/export-v1 --compare /path/to/examples/svarn-audit-pack/export-v2
  4. Run: python3 audit.py /path/to/examples/svarn-audit-pack/export-damaged

Expected: 1) "status": "verified" with "files": 3 and exit code 0. 2) Also verified, plus "comparison": added ["dragonfly_1.png"], changed ["frog_2.png"], removed ["lily_1.png"]. 3) AUDIT FAILED: PNG CRC mismatch, exit code 1.

Troubleshooting

AUDIT FAILED: [Errno 2] No such file or directory: '.../svarn-manifest.json'

The path does not point at a Svarn export folder. Point the command at the folder that directly contains svarn-manifest.json.

AUDIT FAILED: unlisted PNG in export folder

A PNG in the folder is not listed in the manifest (for example a file copied in by hand or left over from an older export). Export into an empty folder and check again.

AUDIT FAILED: not a supported Svarn manifest, or Svarn export is incomplete

Only complete schema-1 manifests written by Svarn are accepted. Re-run the export in Svarn and resolve any failures it reports first.

AUDIT FAILED: unsupported PNG geometry or format

Only 8-bit, non-interlaced RGB, indexed or RGBA PNGs are supported, which is what the Svarn extension writes.

python3: command not found

Install Python 3.10 or newer. On some systems the command is python instead of python3 (other platforms were not tested).

Compatibility and limits

Start with the free Svarn exporter

The Aseprite extension exports your slices and creates the manifest that Audit Pack checks. Download and try that exporter first. Aseprite is licensed separately; Audit Pack is optional.

Download the exporter and follow its guide

Guide and examples: 30 September 2026. Examples are fictional or synthetic. Online guide · Support