EnginesGuidesFAQPatreonDiscordDownload
Sign in
RuneTranslate · translate Japanese games end-to-end
EnginesGuidesCompareImage textSave editorCheat ModeFAQDownloadPatreonDiscordYouTubePrivacyTermsContact
All engines

Supported engine · AliceSoft System

Full — rebuilt & played

AliceSoft System translator — translate Rance, Evenicle & the System 3.x / 4 catalog

AliceSoft's in-house System engine powers one of the largest catalogs in Japanese PC gaming — the entire Rance series, Evenicle, Daiakuji, the Toushin Toshi games and decades of releases. It's really two engines under one brand: classic titles run on System 3.x (an alice.exe / System39.exe interpreter with a System39.ain index and .ald archives), while modern titles run on System 4 (a System40.exe interpreter with a per-game .ain program image and .ald / .afa archives). RuneTranslate now reads both. It opens the .ald (Alice Linked Data) and .afa (Alice File Archive) containers in pure TypeScript — no GARbro, no external tools, no sidecar — and then goes after the text where it actually lives. On System 3.x, the player-facing dialogue isn't in the compiled .SCO scenarios at all: those only reference each message by number, and the strings themselves sit in the MSGI section of System39.ain, lightly obfuscated. RuneTranslate de-obfuscates that section, lists every message, and on export rewrites it in place — byte-for-byte identical when you haven't changed anything. On System 4, the .ain is a whole compiled-program image wrapped in one of two containers — a zlib-compressed AI2 file or a fully MT19937-encrypted one — and RuneTranslate unwraps both, walks the program's sections, and pulls the message and string pools out for translation. Because the game's bytecode points at each line by index rather than by byte offset, your translation can be any length and the references still line up. On export it re-packs the original container and writes the translated .ain loose next to the game, so the interpreter loads your version. This engine is still being verified across real games, so test the exported build before you redistribute.

Glossary tip for this engine

The Rance series and AliceSoft's wider catalog run on a huge recurring cast and a dense web of place names, skills, and faction terms across tens of thousands of lines. Machine translation will romanize the same name three different ways. Glossary your characters, locations, and recurring terms up front so every line renders them identically from the first scene to the last. Glossary 101 →

Download RuneTranslate for Windows

How to translate AliceSoft System

  1. STEP 1

    Open the AliceSoft game folder

    Point RuneTranslate at the game directory — the folder with the game's interpreter (alice.exe / System39.exe for System 3.x, or System40.exe for System 4), its System39.ain or per-game .ain, and the .ald / .afa archives. Engine detection recognises the AliceSoft layout automatically and tells you which System version it is; your original folder is never modified.

  2. STEP 2

    Read the archives and the message data

    RuneTranslate opens the .ald / .afa archives in pure TypeScript. For a System 3.x game it de-obfuscates the MSGI message section of System39.ain and lists every line. For a System 4 game it unwraps the .ain container (zlib-compressed AI2 or MT19937-encrypted), walks the program image, and pulls out the message pool (player-facing dialogue) plus the string pool. Code strings — format specifiers, debug text, identifiers — are surfaced but excluded by default so you only translate what the player sees.

  3. STEP 3

    Translate via your preferred provider

    These are dialogue-heavy, tone-sensitive games, so an LLM (OpenAI GPT-4o / Anthropic Claude) or DeepL usually reads best; free Google Translate or a local model (Ollama / LM Studio) covers short menu strings and item names, and you can point the OpenAI-compatible provider at OpenRouter or NanoGPT. An optional AI-refiner second pass tightens the literal phrasing.

  4. STEP 4

    Keep the text font-safe

    AliceSoft text is Shift-JIS (cp932). RuneTranslate normalizes each translation before it writes it back — folding smart quotes, em-dashes, ellipses and accented Latin to plain ASCII — so a glyph the game font is missing can never silently turn into a “?”. English and other cp932-representable targets export cleanly.

  5. STEP 5

    Export with loose-file override (no repack of the archives)

    On export, RuneTranslate copies the game and writes the translated .ain back: for System 3.x it rewrites the MSGI section in place; for System 4 it rebuilds the edited message / string pools and re-packs the original container (zlib or encrypted). The translated .ain is dropped loose next to the game, so the interpreter loads your version. Run the exported copy and it plays in your language.

Supports

  • Pure-TS .ald (Alice Linked Data) + .alk archive readers — no GARbro, no external tools or sidecars
  • .afa (Alice File Archive) v1 / v2 read; v3 (encrypted index) support is provisional
  • System 3.x: message text read + rewritten in the System39.ain MSGI section (byte-identical when unchanged)
  • System 4: the per-game .ain unwrapped from both the zlib-compressed AI2 and the MT19937-encrypted container
  • System 4: message (dialogue) + string pools extracted; code strings / identifiers excluded by default
  • Index-stable write-back — the bytecode references text by index, so any-length translation fits
  • Font-safe cp932 normalization on export; loose-file-override export so the interpreter loads your .ain
  • Translate into 30+ languages via DeepL, Google, OpenAI, Anthropic, OpenAI-compatible, or local models

Limitations

  • Extraction and byte-exact write-back are verified on real games (Rance 5D, Sengoku Rance, Rance VI), but the in-game load of a fully translated build is still being confirmed — test the exported copy before redistributing
  • AliceSoft text is Shift-JIS (cp932): English and other cp932-representable targets work; non-cp932 targets (extended Cyrillic, Korean, Traditional Chinese) need a game-font/encoding hack that is not yet automated
  • System 4 reader is verified on .ain versions 4 and 5; the newer v8+ / v11 / v14 program formats are supported provisionally and not yet game-verified
  • Encrypted .afa v3 archive indexes are decoded provisionally and may need a real sample to confirm
  • Text baked into images (title screens, CG, buttons) is handled by the separate image-text OCR flow, not the script extractor

Related reading

The full AliceSoft System translation walkthrough
Read the guide →

Other supported engines

GettextRPG MakerRen'PyKirikiriWolf RPGTyranoBuilderElectron VNUnityBakinSRPG StudioNScripterGodotArtemisYU-RISUnrealLiveMaker