Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

D2R Hero Editor

A command-line character editor for Diablo II: Resurrected .d2s save files.

Pure C11, no external dependencies. Features a flicker-free TUI (text user interface) with a TurboVision-inspired look — cell-buffered rendering, drop shadows, and a classic blue desktop.

Supports save file versions from v1.09 (71) through D2R Reign of the Warlock (105).

Features

  • Edit character name, class, level, and flags (hardcore, expansion, ladder)
  • Modify attributes: strength, dexterity, vitality, energy, HP, mana, stamina
  • Set experience, gold, stash gold, stat/skill points
  • Edit all 30 skill point allocations per class
  • Toggle individual quests and waypoints for each difficulty
  • Set active difficulty and current act
  • Saves with correct checksum so the game accepts the file

Screenshot

 D2R Hero Editor
 Diablo II: Resurrected - Save File Editor

 ┌ TestHero.d2s ──────────────────────────────────────────┐
 │ Name:  MyPaladin       Class: Paladin    Level: 85     │
 │ STR: 200   DEX: 150   VIT: 300   ENE: 100             │
 │ HP:  1200  Mana: 500  Exp: 800000000                   │
 │ Gold: 2500000   Stash: 2500000                         │
 │ Flags: [EXP] [LAD]    Version: 99                      │
 └────────────────────────────────────────────────────────-┘

   > Character & Attributes
     Skills
     Quests (Normal)
     ...

Building

Requires GCC (MinGW-w64 on Windows, gcc on Linux/macOS).

make            # Dev build -> d2hero.exe
make debug      # Debug build -> d2hero_debug.exe
make prod       # Production build -> d2hero_prod.exe (optimized, stripped, static)
make clean      # Remove all build artifacts

Usage

# Open save file in interactive editor
./d2hero.exe path/to/character.d2s

# Print character summary and exit
./d2hero.exe --info path/to/character.d2s

Save files are typically located at:

%USERPROFILE%\Saved Games\Diablo II Resurrected\<character>.d2s

Controls

Key Action
Up/Down Navigate menu / fields
Enter Select / edit field
Space Toggle checkbox or bool field
Left/Right Increment/decrement value
PgUp/PgDn Scroll through long lists
F5 Quick save
Esc / F10 Back / exit
A Toggle all (in checklists)

Tests

# Generate a synthetic test save file
gcc -Wall -std=c11 -O2 -o test/gen_test test/gen_test_d2s.c && ./test/gen_test

# Roundtrip test: load -> modify -> save -> reload -> verify checksum
gcc -Wall -std=c11 -O2 -o test/test_roundtrip test/test_roundtrip.c src/d2s.c && ./test/test_roundtrip

License

MIT License. See LICENSE for details.

Copyright (c) 2026 Marek Draskaba info@brokenbone.eu

About

Diablo 2 resurrected save editor

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages