A RPGMaker MV / VX Ace "emulator" made in RenPy

A place for Ren'Py tutorials and reusable Ren'Py code.
Forum rules
Do not post questions here!

This forum is for example code you want to show other people. Ren'Py questions should be asked in the Ren'Py Questions and Announcements forum.
Post Reply
Message
Author
User avatar
Andredron
Miko-Class Veteran
Posts: 689
Joined: Thu Dec 28, 2017 2:37 pm
Location: Russia
Contact:

A RPGMaker MV / VX Ace "emulator" made in RenPy

#1 Post by Andredron »

Github:
https://github.com/selectivepaperclip/rpgm2renpy

Forum:
https://f95zone.to/threads/rpgm2renpy-a ... npy.19426/

A RPGMaker MV / VX Ace "emulator" made in RenPy

Designed for games that are mostly 'visual novels' so they don't need all that RPGM runaround.

rpgm2renpy parses and (mostly) understands the .json data files that an RPGMaker MV game is composed of, and tries to (somewhat) faithfully reproduce the RPGMaker gameplay, but less annoying.

No combat, ever
Map screens are 'clickable' rather than 'walkable'
Real-time event loop becomes synchronous, while fast-forwarding most animations that occur on the RPGM map.
Configurable rpgm_game_data.json file allows certain events to be skipped, for getting rid of minigames and such.

Get the code from this repo, move it into a folder called 'my-game' for example
In the root folder, make a file called 'rpgm_game_data.json'. The minimum data it needs for the game to run is the short_name for determining the savegame folder, like this:

Code: Select all

{ "short_name": "my-cool-rpgm-game"}
Create a folder called 'rpgmdata' as a sibling of the 'game' folder
Copy the full contents of an RPGMaker MV game into that folder (the rpgmdata folder should contain the game .exe, package.json etc)
For an MV game, technically only the following files and folders are needed, if you want to save space by removing audio and such:
package.json
/www/data
/www/img
/www/js
/www/movies
The MV assets must be decrypted for the game to work. ".png" and ".jpg" files instead of .rpgmvp, etc.
Load the 'my-game' folder in the RenPy tools, start the game, hope it doesn't crash too much.
VX Ace Support
RPGMaker VX Ace games need to be converted into MV format first.

The process is something like this:

Ensure the VX Ace files are decrypted before starting.
Use the rvpacker gem (gem install rvpacker) to convert the raw VX Ace data files into .yaml
e.g. rvpacker -a unpack -t ace -d /some/vx/ace/game
Use the generate_game_json script to convert the .yaml files into .json files
e.g. bin/generate_game_json.rb /some/vx/ace/game
(sometimes) Use the enumerate_needed_tilesets script to copy base files from the VX Ace SDK
e.g. bin/enumerate_needed_tilesets.rb /some/vx/ace/game C:\Program Files (x86)\Common Files\Enterbrain\RGSS3\RPGVXAce
Afterward, the jsonified RPGM game can be used with the rpgm2renpy code by putting it alongside the /game/ folder in an /rpgmdata/ folder like described above.

Post Reply

Who is online

Users browsing this forum: No registered users