Ragnarok Online reconstruction through Clank Together https://clank.rodecomp.online/
  • C++ 97.6%
  • C 1.9%
  • Python 0.3%
  • POV-Ray SDL 0.2%
Find a file
ragnarok-clanker e8113e586f Decompile fn_23363 (CSession::GetEnemyHitWaveName)
Batch #17136 by eAthena: 0 byte-identical, 1 confirmed by peer review.

- fn_23363 CSession::GetEnemyHitWaveName: logic confirmed by peer review

Peer-reviewed-by: alisonrag, cremane, br4yan
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-11-11 14:36:43 +00:00
data Maintenance: Source reorganisation, parts 2+3: Source/UI, Client, Render, Resource, Utility, Network, Archive, Interface and loose So 2026-11-11 01:05:24 +00:00
docs README: banner and shorter intro 2026-11-04 14:32:01 +00:00
Recovered Maintenance: Recovered/ includes and build_exe.py paths follow the source reorganisation 2026-11-11 02:08:56 +01:00
scripts exe build: post-link patch stage for edits made to the shipped exe 2026-11-11 14:01:22 +01:00
Source Decompile fn_23363 (CSession::GetEnemyHitWaveName) 2026-11-11 14:36:43 +00:00
ThirdParty Generate Visual Studio and clangd project files from data/compile.json; remove stale CMake build 2026-11-09 14:18:30 +01:00
.clang-format Reconstruct readable C++ and organize cohesive source subsystems 2026-10-25 07:42:41 +00:00
.clangd Generate Visual Studio and clangd project files from data/compile.json; remove stale CMake build 2026-11-09 14:18:30 +01:00
.gitattributes Enforce LF text checkouts across platforms 2026-10-25 21:09:55 +01:00
.gitignore exe build: post-link patch stage for edits made to the shipped exe 2026-11-11 14:01:22 +01:00
AGENTS.md Generate Visual Studio and clangd project files from data/compile.json; remove stale CMake build 2026-11-09 14:18:30 +01:00
CODING_RULES.md Generate Visual Studio and clangd project files from data/compile.json; remove stale CMake build 2026-11-09 14:18:30 +01:00
README.md exe build: post-link patch stage for edits made to the shipped exe 2026-11-11 14:01:22 +01:00

rodecomp

A matching decompilation of the Ragnarok Online client.

How to Build

python scripts/exe/gen_ide.py     # generate build/Ragexe.sln
python scripts/exe/build_exe.py    # or build the .sln -> build/exe/Ragexe.exe

build_exe.py runs three stages in order: compile, link (Ragexe.exe, .pdb, .map), then patch. The patch stage (scripts/exe/postprocess.py) re-applies byte edits that the shipped executable received after it was compiled and that no C++ source can express (e.g. a jmp written over a switch head). The source keeps the code as it was compiled; each edit is one documented module in scripts/exe/patches/NNNN_name.py, applied in NNNN order, located by symbol and checked against the exact expected bytes. A patch that does not fit fails the build. --no-postprocess gives the exe exactly as the source compiles. Clank checks never see these patches.