RPGPacker

RPGPacker is a tool which makes it easy to port RPG Maker XP, VX and VX Ace games to Android. RPGPacker generates a project using information inputted by user and files in the working directory, then builds the project with Gradle.

Getting Started

RPGPacker requires at least JDK 11 to work properly, so please install a JDK distribution before installing RPGPacker. OpenJDK 11 can be downloaded from https://adoptium.net.

RPGPacker is published as an EXE setup file and installation is pretty straigthforward. You can use default installation path or choose a different path.

Users will see a welcome screen on first launch. RPGPacker will try to locate required softwares and will list them on this scree. Please locate missing software by clicking "Add" button if they are already installed or download and install them by clicking "Install" button. "JAVA_HOME" environment variable required by sdkmanager so please be sure to add it on JDK installation or manually. After installing missing softwares, please reboot your computer.

Usage

When required softwares are installed, RPGPacker will show project selection screen. Users can open a recently opened project by clicking game title on recents list or open a new project by clicking "Choose" button and choosing project files. Accepted file extensions are; rxproj, rvproj and rvproj2.

Configuring Project

Project configuration screen shows required information and input fields on categorized tabs; Package, Config, Gamepad, Updates.

Package

Package tab contains input fields related to Android app project and any mistake will cause build process or app installation to fail.

Title

Title will be used as app name and will be displayed in device menu and other screens. Game title shouldn't contain any special character and should contain maximum 12 characters.

Version Code

Version code must be an integer lower than 2100000000 and increase on each update. Installation will fail if the device has the same package with higher version code.

Example: 100

Version String

Version string will be displayed to users on Google Play and can contain any alphanumerical or special characters.

Example: 1.0.0

Package Name

Package name will be used as a unique identifier for your game and installation will fail if there is another app with same package name and different signature. Also, you can't change package name after uploading your game to Google Play.

Package name must contain at least two segments separated with dots, start with a letter and contain only alphanumerical characters and underscores.

Example: cyou.joiplay.game

Signing Key Password

Signing key password is used to create a keystore and to use the created keystore to sign generated files. Users must keep key password and keystore somewhere safe to publish updates.

Icon and Background Images

RPGPacker looks for "icon.png" and "background.png" files on game folder and uses default images if they don't exist. "icon.png" file will be used as game icon and should be at least 192x192 pixels and in 1:1 aspect ratio for best results. "background.png" file will be displayed on the loading screen and should be at least 1280x720 pixels and in 16:9 aspect ratio for best results.

Config

Config tab contains input fields related to mkxp's config parameters. Users should change these parameters to suit their games requirements.

Smooth Scaling

Smooth scaling enables linear interpolation for upscaling game screen.

VSYNC

VSYNC syncs screen redraws to display refresh rate to prevent screen tearing.

Path Cache

Path cache indexes game files to speed up emulation of case-insensitive file access. This option increases loading time.

Screen Width and Screen Height

Screen width and height must be equal or higher than game resolution. Default value is 640x480.

Gamepad

Gamepad tab contains input fields related to virtual gamepad's layout. Users can change keycodes and opacity.

Keycodes

Key codes can be changed using dropdown lists below the key names. Dropdown lists contain string values for KeyEvent constants and real values for specific keys can be found on https://developer.android.com/reference/android/view/KeyEvent#constants.

Gamepad Opacity

This option configures opacity of gamepad buttons. Opacity value must be between 0 and 100.

Updates

Updates tab contains input fields related to online update support.

Allow Online Updates

This option enables/disables online updates. Online updates require users to host assets folder on a http server.

Use Only Online Assets

This option makes RPGPacker to exclude game file on project build. Game files will be downloaded on first launch.

Server Address

Server adress will be used to access game files when online updates are enabled. It must specify location of assets folder.

Building Project

After the configuration, Users can click "Build" button to build the project. The build process might take a few minutes or longer, depending on the host machine.

Generated Files

A new folder will be created in Documents\RPGPacker folder. This folder contains two files and a folder.

"dist" folder contains assets folder, app-release.apk and app-release.aab files. "assets" folder contains processed game files and can be hosted on a http server to allow online updates. "app-release.aab" and "app-release.apk" are application packages which might be uploaded to Google Play or served directly.

Please back up "key.jks" file to a safe place because you won't be able to update your game without it.

System Requirements

Recommended system requirements are:

Processor: IntelĀ® or AMD processor with 64-bit support

Operating System: Windows 7 (64-bit) or later

RAM: 4 GB or more

Hard Disk Space: 2 GB of available hard-disk space, additional space is required for configuring and building projects