Releases: EchoTools/evrFileTools
Releases · EchoTools/evrFileTools
v2.1.0
v2.1.0
New Texture Format Support
Based on work by @heisthecat31 (PR #5), cleaned up and tested:
- R8_UNORM — Grayscale textures
- R8G8B8A8 — Uncompressed RGBA (sRGB and linear)
- B8G8R8A8 — Uncompressed BGRA (sRGB and Typeless)
- R11G11B10_FLOAT — Packed HDR float format
Fixes
- RGB565 bit expansion — Fixed rounding errors in BC1/BC3 color decoding (bit-replication instead of lossy multiply-divide)
- sRGB interpolation — BC1/BC3 now interpolate in linear space for sRGB variants, producing correct colors
- NRGBA output — Decoded textures now use non-premultiplied alpha (
image.NRGBA), which is correct for texture data
Install
go install github.com/EchoTools/evrFileTools/cmd/texconv@v2.1.0v2.0.0
v2.0.0
Breaking Changes
- Extract output format changed: Extracted files now include format extensions (
.dds,.ogg,.bin, etc.) based on magic-byte detection - Sidecar extension changed: Sidecar metadata files now use
.evrmetainstead of.metato avoid collision with TextureMetadata assets - Scanner parsing fixed: File/type symbols are now parsed as hexadecimal (was incorrectly base-10), which changes how the scanner interprets directory names
New Features
- Lossless codec pipeline: DDS headers are automatically added/stripped during extract/pack for seamless round-trips
- Patch mode (
-mode patch): Replace individual files in EVR packages without full rebuild - Search mode (
-mode search): Find assets by symbol hash, type, or filename pattern - Audio detection (
pkg/audio): Format detection and metadata parsing for OGG, WAV, MP3, FLAC - Sidecar metadata:
.evrmetaJSON files preserve symbol IDs through friendly-named extraction for deterministic repackaging - Named extraction:
-wordlistflag maps hex symbols to human-readable filenames - Batch extraction (
batchextract): Parallel extraction of all packages with worker pool - Wordlist builder (
buildwordlist): Harvest 52K+ symbol names from evr-reconstruction data
Bug Fixes
- Fix scanner base-10 parsing of hex symbol filenames
- Fix scanner failing on filenames with extensions
- Fix
.metasidecar extension collision with TypeTextureMetadata - Fix
TypeNameformatting negative int64 values with wrong hex output - Fix
PatchFilenot shifting FrameIndex for other entries after frame insertion (data corruption) - Fix duplicate WAV/RIFF magic signatures in analyze mode
- Remove dead test assertion in SNSMessageHash test
- Remove unused
magicReadSizeconstant,bytesToFloat32function, custommaxhelper - Add missing error check for
f.Seekin texconv DDS decode - Validate
-algoflag in symhash (was silently falling through on typos) - Remove unused
-filterflag from batchextract - Validate
-workersflag in batchextract
Install
go install github.com/EchoTools/evrFileTools/cmd/evrtools@v2.0.0
go install github.com/EchoTools/evrFileTools/cmd/texconv@v2.0.0
go install github.com/EchoTools/evrFileTools/cmd/symhash@v2.0.0
go install github.com/EchoTools/evrFileTools/cmd/batchextract@v2.0.0
go install github.com/EchoTools/evrFileTools/cmd/buildwordlist@v2.0.0
go install github.com/EchoTools/evrFileTools/cmd/showtints@v2.0.0v1.0.0
v1.0.0 - First stable release
CLI Tools
- evrtools - Extract, build, analyze, diff, and inventory EVR packages
- texconv - DDS <-> PNG texture conversion with BC1/BC3 compression
- showtints - Tint color display and CSS export
- symhash - EVR symbol hash computation and reverse-lookup
Packages
pkg/manifest- Manifest parsing, package extraction, buildingpkg/archive- ZSTD archive formatpkg/hash- CSymbol64Hash and SNSMessageHash algorithmspkg/naming- Type symbol mappings and asset name resolutionpkg/texture- Texture metadata and DDS conversionpkg/audio- Audio format detectionpkg/tint- Tint color parsing and CSS exportpkg/asset- Asset reference structures
Project
- Semver versioning and conventional commits (see CONTRIBUTING.md)
- MIT License
- Go 1.26.1
- Comprehensive test suite
Install
go install github.com/EchoTools/evrFileTools/cmd/evrtools@v1.0.0
go install github.com/EchoTools/evrFileTools/cmd/texconv@v1.0.0
go install github.com/EchoTools/evrFileTools/cmd/showtints@v1.0.0
go install github.com/EchoTools/evrFileTools/cmd/symhash@v1.0.0v0.2.0
What's New
New: Symbol hash tool (symhash)
CSymbol64HashandSNSMessageHashimplementations inpkg/hash- CLI tool for computing hashes and reverse-looking-up symbol names against wordlists
New: Analysis modes for evrtools
inventorymode — scan extracted packages, summarize file counts and sizes by typeanalyzemode — magic-byte format detection and Shannon entropy analysis for unknown file typesdiffmode — compare two manifests and report added/removed/modified files
Improvements
- New
pkg/namingpackage with type symbol mappings, categories, and file extensions -verboseflag for detailed output in analysis modes