Star on GitHubStar2.4k stars

Case study

OpenShao: statically recompiling Mortal Kombat: Shaolin Monks

OpenShao statically recompiles the original Xbox game Mortal Kombat: Shaolin Monks with XboxXBERecomp. The launcher accepts an ISO, XISO, ZIP, extracted folder, or default.xbe and reads it in place. Windows 10 version 1903 or Linux with glibc 2.38 is required, plus an x64 CPU with SSE4.2 and POPCNT, and Direct3D 12 or Vulkan 1.2. A source build checks out XboxXBERecomp at 40e9c35451305f09ca9d86f677e4b9c2c37ff26b and runs python tools/build_recomp.py --xbe with that XBE and --test.

Targets
Game
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Sources reviewed
Evidence class
C2 code & docs, no demo or download
Stars
346
Last commit
2026-11-10
Language
C++
License (GitHub)
GPL-2.0

GitHub data as of 2026-11-10

Copy as MarkdownView JSONCite

Evidence

Observed
Code, documentation and a download method observed; no demo found.
Checked
2026-11-09

How evidence classes are assigned

Requirements & limits

  • The original default.xbe or a disc image. Python 3.11, Git, and Visual Studio 2022 with LLVM 21 on Windows, or Clang 18 on Linux.
  • License: GPL-2.0-or-later.

Cite

BibTeX

@misc{openshao,
  title = {{OpenShao: statically recompiling Mortal Kombat: Shaolin Monks}},
  howpublished = {\url{https://github.com/OAleex/OpenShao}},
  url = {https://github.com/OAleex/OpenShao},
  urldate = {2026-11-07},
  note = {Awesome REA entry: \url{https://awesomerea.org/resources/openshao/}}
}

Plain text

OpenShao: statically recompiling Mortal Kombat: Shaolin Monks. https://github.com/OAleex/OpenShao (accessed 2026-11-07). Awesome REA entry: https://awesomerea.org/resources/openshao/

Useful? Star Awesome REA on GitHub2.4k

About this entry

The description was reviewed against primary sources.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · OAleex/OpenShao · Revision 0bd55e4

More in Games

All 2976 entries in GamesGames case studies (2832)

↑↓ move↵ open⌘↵ new tab