Star on GitHubStar2.4k stars

Case study

BaK GL: rebuilding Betrayal at Krondor mechanics

BaKGL reimplements Betrayal at Krondor in a C++ and OpenGL engine built around original game data. It reconstructs exploration, quests, shops, inventory and other mechanics, includes resource explorers and an image extractor, and allows replacement textures. Combat remains in progress.

Targets
Game
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Sources reviewed
Evidence class
C1 partial scope or analysis entry
Stars
76
Last commit
2026-09-16
Language
C++
License (GitHub)
GPL-3.0

GitHub data as of 2026-11-10

Copy as MarkdownView JSONCite

Evidence

Demo screenshot from the project's public documentation
Observed
Code, documentation, download and demo observed; a full-reconstruction candidate for manual Class 0 review.
Scope
Partial
Checked
2026-11-09

How evidence classes are assigned

Requirements & limits

  • Prerequisites: A copy of Betrayal at Krondor is needed for its data files.
  • Prerequisites: Building requires CMake, SDL2, OpenGL, GLEW, freeglut and a C++23-capable compiler.
  • Limits: Combat is in progress, and macOS is not currently supported.
  • License: GPL-3.0 license.

Cite

BibTeX

@misc{bakgl-case,
  title = {{BaK GL: rebuilding Betrayal at Krondor mechanics}},
  howpublished = {\url{https://github.com/xavieran/BaKGL}},
  url = {https://github.com/xavieran/BaKGL},
  urldate = {2026-11-06},
  note = {Awesome REA entry: \url{https://awesomerea.org/resources/bakgl-case/}}
}

Plain text

BaK GL: rebuilding Betrayal at Krondor mechanics. https://github.com/xavieran/BaKGL (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/bakgl-case/

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 · xavieran/BaKGL · Revision 5f31492

More in Games

All 2976 entries in GamesGames case studies (2832)

↑↓ move↵ open⌘↵ new tab