EnginesGuidesFAQPatreonDiscordDownload
Sign in
RuneTranslate · translate games from Japanese and 30+ languages
EnginesGuidesCompareImage textSave editorCheat ModeFAQDownloadChangelogTrustpilotPatreonDiscordYouTubePrivacyTermsContact
All engines

Supported engine · RPG Maker XP / VX / VX Ace

Full — rebuilt & played

RPG Maker XP, VX and VX Ace translator — the Ruby / RGSS generation

RPG Maker XP, VX and VX Ace are the Ruby generation of RPG Maker — RGSS1, RGSS2 and RGSS3 — and they store their game data in a completely different format from the JavaScript-based MV and MZ. Instead of readable JSON, everything lives in Ruby Marshal binaries under Data/: Map001.rxdata on XP, .rvdata on VX, .rvdata2 on VX Ace, alongside the database files and System. A released game usually ships those files inside an encrypted RGSSAD archive — Game.rgssad (XP), Game.rgss2a (VX) or Game.rgss3a (VX Ace) — sitting next to the executable. RuneTranslate handles both layers itself, in pure TypeScript. It reads the archive directly, with no Ruby install, no RPG Maker editor and no separate unpacking tool, and it parses the Marshal 4.8 data inside with an in-house reader and writer that rewrites only string leaves — floats, tables and every other object body are re-emitted byte-for-byte, so the file the game loads is structurally the one it shipped with. From there it pulls map event dialogue (packed in event code 101 on XP, 401 and 405 on VX and VX Ace), Show Choices lists, event and map names, the database — actor, item, skill, weapon, armor, enemy and state names, nicknames, descriptions and notes — and the System vocabulary plus element names. Control codes such as \C[1], \N[2] and \V[3] are masked before text reaches a provider, and dialogue is word-wrapped on export so it fits the message window. One caveat stated plainly: VX Ace runs Ruby 1.9 and tags every string with its encoding, so it is Unicode end to end. XP and VX run Ruby 1.8 and store text as untagged Shift-JIS byte strings, which makes them more prone to encoding edge cases — English and romaji targets are the safest choice there. The newer MV and MZ generation is covered on the RPG Maker MV / MZ page.

Glossary tip for this engine

Ruby-era RPG Maker games are long and repeat the same nouns everywhere — a skill name written in one event appears again in the database, the battle log and a shop menu. Add the party's names, town names, key items and signature skills to the glossary once and every provider renders them identically across all of Data/. This matters more on XP and VX than on VX Ace, because their Shift-JIS text leaves less room to notice a name that drifted halfway through a 40-hour game. Glossary 101 →

Download RuneTranslate for Windows

How to translate RPG Maker XP / VX / VX Ace

  1. STEP 1

    Work out which generation you have

    Open the game folder and look at Data/. Files ending .rxdata mean RPG Maker XP, .rvdata mean VX, and .rvdata2 mean VX Ace. If Data/ is missing, look next to the executable for Game.rgssad (XP), Game.rgss2a (VX) or Game.rgss3a (VX Ace) — the data is inside that archive. If instead you see www/data/*.json or data/*.json, you have MV or MZ; use the RPG Maker MV / MZ page for those.

  2. STEP 2

    Create a project on the game folder

    Launch RuneTranslate, click New project and point it at the folder containing the game executable. Detection is automatic and reports which of the three versions it found and whether the data is loose or archived. An encrypted RGSSAD is read directly and its Data files are decrypted into a per-project workspace — no Ruby runtime and no external unpacker are involved.

  3. STEP 3

    Pick a target language and a provider

    Choose your target language, then a provider: Google and the free DeepL options need no API key at all, the DeepL API gives balanced quality, and OpenAI, Anthropic Claude, DeepSeek, any OpenAI-compatible endpoint or a local model through Ollama or LM Studio handle long dialogue with context. Japanese is the default source language; any supported source can be set per project.

  4. STEP 4

    Translate and review in the editor

    RuneTranslate batches the strings out to the provider and writes them back into the project. Map dialogue, choices, database entries and System terms are grouped so you can review a map or a database table at a time, edit any line by hand, and retry failed batches. Control codes are masked throughout, so \C[1], \N[2] and \V[3] survive the round trip intact.

  5. STEP 5

    Export a playable translated build

    Export writes a full runnable copy of the game with the translated Marshal data in place. For an archived game the archive is decrypted to loose files in Data/ and the archive itself is dropped, which is how RGSS loads a game with no archive present. Dialogue is word-wrapped on the way out. The result is a playable translated build you keep, with the original untouched.

Supports

  • RPG Maker XP (Data/*.rxdata), VX (.rvdata) and VX Ace (.rvdata2)
  • Encrypted RGSSAD archives — .rgssad, .rgss2a and .rgss3a — read directly in pure TypeScript, with no Ruby install and no separate unpacker
  • In-house Ruby Marshal 4.8 reader and writer: only string leaves change, every other object body is re-emitted verbatim
  • Map event dialogue (event code 101 on XP; 401 and 405 on VX and VX Ace) and Show Choices lists (code 102)
  • Database text: actor, item, skill, weapon, armor, enemy and state names, nicknames, descriptions and notes, plus state messages
  • Common events, troop battle event text, event names and map names from MapInfos
  • System terms and vocabulary (@terms on VX and VX Ace, @words on XP) and element names
  • Control codes \C[n], \N[n], \V[n] masked during translation; dialogue word-wrapped on export

Limitations

  • XP and VX store text as untagged Shift-JIS byte strings (Ruby 1.8) rather than tagged UTF-8, so they are more prone to encoding edge cases than VX Ace, which is Unicode end to end. English and romaji targets are the safest choice on XP and VX.
  • Ruby scripts (Scripts.rxdata / .rvdata / .rvdata2) are not extracted — UI text hard-coded in a game's own scripts stays in the source language. Map events, the database and System terms are covered.
  • RGSSAD archives are decrypted, not rebuilt: the export is a full loose runnable copy with the archive removed, not a repacked archive.
  • The in-game cheat menu and the .rpgsave / .rmmzsave save editor are MV and MZ features and do not apply to XP, VX or VX Ace.
  • MV and MZ use a different format entirely (JSON under www/data or data) and are covered on the RPG Maker MV / MZ page.

Related reading

The full RPG Maker XP / VX / VX Ace translation walkthrough
Read the guide →

Related reading

RuneTranslate vs MTool
Read the guide →

Other supported engines

GettextRPG MakerRen'PyKirikiriWolf RPGTyranoBuilderElectron VNUnityBakinSRPG StudioNScripterGodotArtemisYU-RISAliceSoftUnrealLiveMaker