Quickly decode or encode assets for RPG Maker MV, even if you don't have the key
Project description
This is a set of python scripts for decoding and encoding RPGMaker MV/MZ game assets.
Decoding has a handy feature, it will figure out (if possible) the key automatically. It will also can use the file data for creating the extension. If you know the key, you can pass it in.
If you want you can use the API instead
Features
GUI for those who need that
Fast
No key needed if there’s any encoded png images
Can put proper file extensions on the decoded files
Example usage
./decoder.py "<source path>" "<destination path>" ["<optional key>"]
./encoder.py "<source path>" "<destination path>" "<key>"
./gui.py
The GUI has a fairly simple main window:
Progress will be shown while finding the key, decoding the files or encoding the files:
Hitting the question mark will bring up the about box, which gives some handy links:
Help
You can use the standard --help option for full documentation:
Decoding
Usage: decode.py [OPTIONS] <Source> <Destination> [<Key>]
Decodes RPGMaker files under <Source> directory to <Destination> directory.
Arguments:
<Source> The source directory. For best results this should be the
parent of the 'www' or 'img' directory.
<Destination> The parent destination directory. This script will create a
project directory under this path if it doesn't already
exist.
<Key> The decoding key to use. This argument is optional. If the
key is omitted it will be inferred (if possible) based on the
file contents.
Options:
--detect_type Detect the file type and use the associated file extension.
By default .rpgmvp becomes .png and .rpgmvo becomes .ogg
regardless of the file contents.
--help Show this message and exit.
Encoding
Usage: encode.py [OPTIONS] <Source> <Destination> <Key>
Encodes image and audio files under <Source> directory.
Arguments:
<Source> The source directory. For best results this should be the
parent of the 'www' or 'img' directory.
<Destination> The parent destination directory. This script will create a
project directory under this path if it doesn't already
exist.
<Key> The encoding key to use.
Options:
--help Show this message and exit.
History
1.3.0 (2022-05-04)
Added project class
Updated messages for skipped files
Fixed same key calculation
Code cleanup
Refactored CLI - Removed duplicated code
1.2.1 (2022-04-26)
Fixed history
Callback class to make life easier internally
1.2.0 (2022-04-21)
Added overwrite handling in the GUI
1.1.1 (2022-04-18)
Fixing tag issue
Fixing release build
1.1.0 (2022-04-18)
Documentation changes
GUI changes
1.0.3 (2022-04-18)
Bumping version to fix out of order upload to pypi
1.0.2 (2022-04-15)
Fixed history file
Fixed documentation link
1.0.0 (2022-04-15)
Added about dialog
Production ready
0.3.4 (2022-04-14)
Updating actions to publish properly
Documentation updates
0.3.3 (2022-04-14)
Fix to GitHub actions
0.3.2 (2022-04-14)
Automate the release process
0.3.1 (2022-04-13)
Fixes to documentation
0.3.0 (2022-04-13)
Added icons
Added encoding
Changed exe name
UPX packing on Windows
Documentation updates
0.2.4 (2022-04-06)
More testing
Bump2Version configuration fixes
Fixing up tox.ini
0.2.3 (2022-04-01)
Added tests
0.2.2 (2022-04-01)
Fixed documentation
Fixed exceptions
0.2.1 (2022-03-31)
Bug fixes
0.2.0 (2022-03-30)
Added GUI
0.1.1 (2022-03-23)
Faster key detection
Python typing
Added documentation
Keeping files compatible with RPGMaker MV/MZ * Using .png or .ogg instead of real extension
0.1.0 (2021-04-18)
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for rpgmaker_mv_decoder-1.3.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b251c54d28092ad7465bf6a7f217ea659e199e181571db081d431b8cdda24c7 |
|
MD5 | 51161050bccbe55e1c43885cb44a5fd5 |
|
BLAKE2b-256 | 560f9c0bf58ce76258395ba344e98a8b4f33fa8f5f44be2f16340dd0a2eccb47 |
Hashes for rpgmaker_mv_decoder-1.3.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24557f53e12d6f939e930af693a0cc6f37f417314350e006da229364c567ea2f |
|
MD5 | 2cdab7d9bd7c7e798b34a764cc546cbf |
|
BLAKE2b-256 | dda7c6fefb04e8b4291c3726b70b5d2bc81bd3a1d1dfd1e54ca1b2b65185c01b |