Skip to content
refaimPublic

About

A set of modules for the Observer plugin, adding support for browsing and extracting files from various game archive formats directly in FAR Manager.

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Repository files navigation

unpackrat

License: MIT CI

unpackrat brings support for exotic game archives to FAR Manager. It ships as a set of Observer plugin modules, one per archive format, that present an archive as an ordinary folder you can browse and extract from. Each module is a single self-contained DLL with its dependencies built in and no external runtime DLLs to install.

Download

Install FAR Manager and the Observer plugin host first; unpackrat adds archive support on top of them. Take the module ZIP whose architecture matches your FAR Manager and Observer build (x86 or x64), not the architecture of your operating system. Choose the newest published release from the module's release listing below.

Module Formats Release ChangeLog
Ren'Py .rpa (RPA-2.0, RPA-3.0) renpy releases RU EN
RPG Maker .rgssad (XP, RGSS1), .rgss2a (VX, RGSS2), .rgss3a (VX Ace, RGSS3) rpgmaker releases RU EN
Zanzarah .pak (original, Steam) zanzarah releases RU EN
Godot .pck, embedded PCK and same-stem EXE sidecars godot releases RU EN

Godot restores imported assets to their original folders. In [Godot], DecodeResources=1 shows a converted file in place of its compiled original, such as art/hero.png in place of art/hero.ctex; unsupported resources keep their originals. The shipped INI enables this mode. DecodeResources=0, or a missing setting, shows originals and skips resource conversion. Import metadata remains visible in both modes; renamed paths are recorded in name-map.tsv.

Media decoding and encoding run during extraction. Converted entries display the packed source size; converted extraction progress uses that same packed size. Texture containers are recognised by content and can hold PNG, WebP or raw/GPU image data. FontFile payloads retain their original font format. Conversion has no aggregate work quota or default image pixel/byte ceiling.

Encrypted packs use keys recovered by static inspection of neighbouring EXEs, with complete plaintext MD5 verification. Games are never launched. If recovery cannot find a valid key, enter its 64 hexadecimal digits in Observer's password dialog. An EXE without an embedded pack can open its same-stem sibling .pck. Encrypted resources are decrypted in either presentation mode.

Each module ZIP carries the module DLL for one architecture, its observer_user.ini, both human-written change logs and a generated LICENSES.txt at the archive root.

Install

Unpack the ZIP for the architecture that matches your FAR Manager and Observer build into %FARHOME%\Plugins\Observer\modules\, where %FARHOME% is your FAR Manager installation folder. If you already have modules there, merge the archive's observer_user.ini with the existing file so every module stays registered, then restart FAR Manager. After that, open a supported archive in FAR and press Enter or Ctrl+PgDn: Observer shows its contents as a regular folder you can browse and extract from with the usual FAR commands.

License

unpackrat's own source is released under the MIT License.

One upstream file is an explicit exception: the Observer API header src/api.h stays under LGPL-3.0-only. Its notice is reproduced as licenses/Observer.txt, and because LGPLv3 incorporates the GNU GPLv3, the corresponding full GPLv3 text travels beside it as licenses/GPL-3.0.txt. Those two texts are always retained in every packaged module.

Third-party components

Project License Modules
nlohmann/json MIT Tests only
catchorg/Catch2 BSL-1.0 Tests only
lazyhamster/Observer LGPL-3.0 plus GPL-3.0 Ren'Py, RPG Maker, Zanzarah, Godot
Cyan4973/xxHash BSD-2-Clause Tests only
zlib-ng Zlib Ren'Py, Godot
godotengine/godot MIT Godot
iOrange/bcdec MIT Godot
mackron/dr_libs Unlicense OR MIT-0 Godot
phoboslab/qoa MIT Godot
randy408/libspng BSD-2-Clause Godot
xiph/ogg BSD-3-Clause Godot
ariya/FastLZ MIT Godot
facebook/zstd BSD-3-Clause Godot
google/brotli MIT Godot
Zydis MIT Godot
Zycore MIT Godot
Mbed TLS (mbedcrypto only) Apache-2.0 Godot

Sources of inspiration

Project License Modules
luxrck/rgssad MIT RPG Maker
birkenfeld/serde-pickle MIT Ren'Py
Shizmob/rpatool WTFPL Ren'Py
pg83/ix MIT Historical build tooling

Building

The build produces self-contained /MT MSVC modules for x86 and x64 with no external runtime DLLs to ship. The full command contract, prerequisites and quality gates live in docs/build-system.md; the common entry points are:

.\build.ps1 build -Arch x86,x64 -Config Release
.\build.ps1 test -Arch x86,x64 -Config Debug
.\build.ps1 ci-source
.\build.ps1 ci-arch -Arch x64
.\build.ps1 package

Each module also publishes an optional -pdb.zip symbol bundle beside its module archives.

Links

Support Forum (in Russian)

About

A set of modules for the Observer plugin, adding support for browsing and extracting files from various game archive formats directly in FAR Manager.

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages