A byte-exact reimplementation of Inazuma Eleven: Victory Road in pure Rust —
and a forge that rebuilds the original nie.exe, byte for byte, to prove it.
nie.aphrody.com · nie.exe & CLI Guide · Documentation · Roadmap · Contributing
Two halves of one goal, and each keeps the other honest.
- The engine (
crates/engine/*): The game rewritten natively in pure Rust. File formats parsed without external dependencies, game data loaded bit for bit, match simulation, Lua 5.2 VM, and 3D rendering pipeline. - The forge (
crates/forge/*): Generatesnie.exedirectly from this repository, verified byte-for-byte against the original binary. If output hash differs from reference, the gate fails.
Reverse engineering is the means, not the end. The repository is named after its target,
nie.exe. The unified CLI binary is namednie(cratecrates/tools/nie-cli).
Every number is measured by automated gates — never estimated.
| Metric | Measured Value | Verification Command |
|---|---|---|
Bytes of nie.exe produced by this repo |
74.06 % of file · 92.45 % of .text |
nie-forge report |
| Files indexed in real VFS | 255 342 across 936 CPKs | nie vfs stats |
| VFS format recognition rate | > 82.16 % parsed structured (97.8% reachable) | nie vfs formats |
| Functions classified in binary | 117 068 (.pdata unwinds) | nie coverage |
| Functions proven byte-exact | 43 (Unicorn oracle & forge) | uv run scripts/validate_re.py |
To explore and inspect game assets directly from your Steam / Proton installation without copying files:
# Build the unified CLI
cargo build --release -p nie-cli
# Point to your game installation (Linux/Steam or Windows)
export NIE_GAME_DIR="/home/ubuntu/.local/share/Steam/iecode/inazuma"
# VFS exploration: stats, locate files, inspect structured data
./target/release/nie vfs stats
./target/release/nie vfs find "menu_text"
./target/release/nie vfs cat data/common/text/fr/menu_text.cfg.bin
# Decode textures to PNG or inspect 3D models directly
./target/release/nie vfs cat data/dx11/menu/200_icon/10_icon_chr/face/c01001900_l.g4tx --png-out /tmp/aphrody.png
./target/release/nie vfs chara Byron
# Complete manual and command reference:
# See docs/NIE-ET-CLI.mdEach surface is built, tested, and deployed independently:
| Surface | Artifact | Target & Role |
|---|---|---|
cli |
nie |
Unified Rust CLI: VFS exploration, formats decoder, RE atlas. |
mcp |
nie-mcp |
Native Model Context Protocol server for AI coding agents (rmcp). |
site |
nie-site |
nie.aphrody.com server + client WebAssembly runtime (nie-wasm). |
model |
nie-model-serve |
3D asset conversion and streaming server. |
Commands for surface validation:
bun run surfaces plan # Detect affected surfaces for your git diff
bun run gate # Scoped Rust clippy and TypeScript typecheck
bun run surfaces build site # Build specific surfacenie/
├── crates/
│ ├── engine/ (25) Pure Rust engine: formats (CPK/cfg.bin/G4*), data, Lua 5.2 VM, core simulation, wgpu
│ ├── forge/ (9) Binary reconstruction, PE64 assembler, RTTI extractor, forge pipeline
│ ├── tools/ (12) Unified CLI (nie), MCP server, web site, model serving, editor
│ └── archive/ (2) Reference read-only decompilation archives (outside the workspace)
├── apps/ (1) WebAssembly web shell (nie-web); the desktop is aphrody-ui `aphrody-app`
├── packages/ (8) Shared contracts, design system (inacord-ui), asset pipeline, Bun preload, tsconfig base
└── docs/ Exhaustive documentation indexed and verified by `bun run docs:check`
Counts measured 2026-09-25 with ls -d crates/*/*/ apps/*/ packages/*/: 46 workspace crates make
the members of the root Cargo.toml (apps/inacord/src-tauri was removed on 2026-09-26); crates/archive/nie-engine
is excluded and crates/archive/nie-rs was never a member.
All documentation is indexed and verified in docs/README.md.
docs/NIE-ET-CLI.md: Comprehensive architecture guide fornie.exeand user manual fornieCLI.docs/RE-MIGRATION-MAP.md: 117,068 functions classified across subsystems and Rust migration roadmap.docs/FORMATS.md: Specifications for Level-5 (G4*, cfg.bin) and CriWare (CPK, USM, AWB) formats.docs/VFS.md: Virtual File System layout (255k+ files, 936 CPKs).PLAN.md: The single source of truth for repository roadmap, active tasks, and quality gates.
Before committing, ensure all quality gates pass:
cargo clippy -p <crate> --lib --tests -- -D warnings
cargo check --workspace --tests
bun run typecheck
bun run docs:checkSee CONTRIBUTING.md for full instructions, branching model, and multi-agent coordination rules (AGENTS.md).
This is not a redistributable open-source game. Read LICENSE: Official Commercial Exploitation Agreement No. RG-L5-VR-2026-001 between Rose Griffon and LEVEL-5 Inc.
- No copyrighted game asset is tracked or committed.
data/andvar/are gitignored. Assets remain on the user's licensed Steam installation. - Attribution details:
NOTICE· Provenance ledger:PROVENANCE.md.
bun run docs:check-overlaps délègue l’analyse des intersections documentaires à aphrody-ops docs-overlaps.
bun run audit:gitignored délègue l’inventaire des fichiers ignorés à aphrody-ops gitignored-audit.
bun run verify:monorepo délègue la gate Rust/Bun/documentation à aphrody-ops monorepo-gate.