Skip to content

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

GrimEdit

Native C# Grim Dawn Save & Stash Editor with Fangs of Asterkarn (FoA) Support

.NET 10 Platform License


Overview

GrimEdit is a high-performance, native C# save and stash editor for Grim Dawn. Designed from the ground up to support the latest Fangs of Asterkarn (FoA) expansion, Forgotten Gods (FG), Ashes of Malmouth (AoM), and the Base Game.

Unlike older editors, GrimEdit handles modern save block format changes (such as Block 8 Version 8 extra skill bytes, Block 16 Version 12 expansion data, the 10th mastery/Berserker class combos, and new expansion factions) with 100% byte-accurate fidelity and checksum validation.


Features

Character Editor

  • Bio & Identity: Rename characters, toggle Hardcore/Softcore mode, change gender.
  • Level & Progression: Edit level (1–100) with automatic exact EXP curve calculation.
  • Points & Currencies: Adjust Iron Bits, Crucible Tributes, Attribute Points, Skill Points, and Devotion Points.
  • Base Attributes: Modify base Physique, Cunning, and Spirit points.

Masteries & Devotions

  • Class Combo Resolution: Automatically resolves internal game class tags (e.g. Warlord, Spellbinder, Blademaster, Berserker, etc.).
  • Skills & Devotions: View and tweak skill levels, devotion levels, and devotion experience.

Equipment & Inventory

  • Gear Inspection: View equipped items across all slots with base record names, prefixes, suffixes, and components.
  • Inventory Sacks: Inspect items stored in bags and character inventory.

Stashes, Formulas & Reagents

  • Personal & Shared Stashes: Read and edit personal stash tabs and shared stash files (transfer.gst / transfer.gsh).
  • 1-Click Formula Unlocker: Unlock all crafting blueprints in formulas.gst / formulas.cst with a single click.
  • 1-Click Reagents Maxer: Set all rare crafting components (Aether Crystals, Ugdenbloom, Blood of Ch'thon, Ancient Hearts, Tainted Brains, etc.) to 5,000x in reagents.gst.

Factions & Reputation

  • 100% In-Game Accuracy: Mapped against all 24 active factions in the Grim Dawn engine (including FoA factions: Kurn, Noktukari, and Asterkarn Hostiles).
  • Batch Modifiers: Quick-action buttons to Max All Friendly Factions (Revered 25,000) or Max All Hostile Factions (Nemesis -20,000).

World & Difficulty

  • Difficulty Unlocks: Instantly unlock Normal, Elite, and Ultimate difficulties, plus Crucible tiers.
  • Waypoints & Portals: View and unlock world waypoints.

Built-in Safety & Automated Backups

  • Zero Data Loss: Creates timestamped, rolling .bak backups in a dedicated GrimEdit_Backups directory before every write operation.
  • 1-Click Rollback: Restore any previous backup directly from the UI or CLI.

UI & CLI Interfaces

GrimEdit comes with two ready-to-use frontends:

  1. GrimEdit.App: A modern, dark fantasy RPG-themed WPF desktop application with real-time character browsing and instant editing.
  2. GrimEdit.Cli: An interactive, fast terminal REPL suited for quick command-line edits and automated workflows.

Project Architecture

GrimEdit/
├── src/
│   ├── GrimEdit.Core/         # Reusable save/stash parser, serializer, encryption & math engine
│   ├── GrimEdit.App/          # WPF Desktop UI (Dark RPG Theme)
│   └── GrimEdit.Cli/          # Interactive CLI REPL tool
└── tests/
    └── GrimEdit.Core.Tests/   # Automated round-trip binary tests across all save blocks

Getting Started

Prerequisites

  • .NET 10.0 SDK (or .NET 8.0+ / .NET 9.0+)
  • Windows 10/11 (for WPF App)

Build from Source

# Clone the repository
git clone https://github.com/TheMapperJS/GrimEdit.git
cd GrimEdit

# Restore dependencies & build
dotnet build

# Run automated tests
dotnet test

Launch the Desktop App

dotnet run --project src/GrimEdit.App

Launch the CLI REPL

# Run CLI (auto-locates your Grim Dawn saves or pass a save path directly)
dotnet run --project src/GrimEdit.Cli

# Or load a specific save file directly:
dotnet run --project src/GrimEdit.Cli -- "C:\Path\To\player.gdc"

Publishing Self-Contained Binary

To produce a single, standalone executable that runs without requiring .NET to be pre-installed:

# Publish Desktop GUI as single .exe
dotnet publish src/GrimEdit.App -c Release -r win-x64 --self-contained -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o ./dist/GrimEdit-GUI

# Publish CLI as single .exe
dotnet publish src/GrimEdit.Cli -c Release -r win-x64 --self-contained -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o ./dist/GrimEdit-CLI

Acknowledgements & Attribution

  • gd-edit by Odie – A heartfelt thanks for pioneering work and historical reference in reverse-engineering early Grim Dawn file formats.
  • Crate Entertainment – For creating Grim Dawn.

Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.


Disclaimer

GrimEdit is an unofficial, community-made tool and is not affiliated with or endorsed by Crate Entertainment. Always backup your save files before modifying them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages