# libd2: Diablo II 1.14d engine-core libraries

> Zig libraries reconstructing Diablo II 1.14d seeded maps, item generation, saves, simulation rules and network formats. Selected components expose native and WebAssembly interfaces; verification notes distinguish retail map comparisons from weaker subsystem evidence.

- Type: Case study
- Targets: Binary · Game · Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-10-19
- Added to the catalog: 2026-10-20
- Original resource: <https://github.com/jaenster/libd2>
- Primary source: <https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/README.md>
- Catalog page: <https://awesomerea.org/resources/libd2-engine-core-reconstruction-case/>
- Record JSON: <https://awesomerea.org/resources/libd2-engine-core-reconstruction-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/libd2-engine-core-reconstruction-case/index.md)

## Requirements & limits

- Builds require Zig 0.16.0. These are modular engine libraries, not a complete playable client; basic generation uses embedded data and fixtures.
- MIT covers the Zig source. Included Blizzard-derived binary blobs and map fixtures are expressly excluded from that grant; the repository is not asset-free.
- The authors report cell-level comparisons for five Nightmare seeds and two holdouts, plus per-level CRC checks for 200 seeds at three difficulties.
- The game and net packages are checked against recovered rules and packet layouts, not a live server; save, item and pathfinding checks have different depth.

## Primary sources

1. <https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/README.md>
2. <https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/LICENSE>
3. <https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/docs/VERIFICATION.md>
4. <https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/docs/BUILDING.md>
5. <https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/build.zig.zon>
6. <https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/packages/drlg/src/oracle.zig>
7. <https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/packages/drlg/src/verify_tests.zig>

## More in Games

- [librw: a re-implementation of the RenderWare Graphics engine](https://awesomerea.org/resources/librw-renderware-reimplementation-case/index.md) · Case study
- [MechRewired: rebuilding MechWarrior 2 from original game data](https://awesomerea.org/resources/mechrewired-mechwarrior-2-case/index.md) · Case study
- [Nanolathe: a documented Total Annihilation engine reimplementation](https://awesomerea.org/resources/nanolathe-case/index.md) · Case study
- [nfs-mw: a Rust reconstruction of Need for Speed: Most Wanted](https://awesomerea.org/resources/nfs-mw-case/index.md) · Case study
- [NuVelocity Engine: reimplementing Reflexive's Velocity Engine](https://awesomerea.org/resources/nuvelocity-engine-case/index.md) · Case study
- [OpenAWE: an open reimplementation of Remedy’s Alan Wake engine](https://awesomerea.org/resources/openawe-alan-wake-engine-case/index.md) · Case study

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
