A lightweight QoL mod for Slay the Spire 2 that marks relics you've never picked up with a "NEW" badge. Helps completionists track what's still unexplored.
- 🏷️ "NEW" badges on relics you haven't picked up before
- 🎁 Reward screen — relic rewards after combat
- 👑 Boss/treasure relics — boss relic selection and treasure rooms
- 🛒 Shop relics — merchant relic slots
- 🔮 Neow's blessings — ancient event relic options
- ⚡ Zero persistence — syncs with the game's own Compendium tracking
- 🔒 No gameplay impact — purely visual, won't affect saves or achievements
- Download the latest release from GitHub Releases or Nexus Mods
- Extract the zip into your game's
mods/folder:- Windows:
<Steam>\steamapps\common\Slay the Spire 2\mods\SpireTracker\ - macOS:
~/Library/Application Support/Steam/steamapps/common/Slay the Spire 2/mods/SpireTracker/ - Linux:
~/.local/share/Steam/steamapps/common/Slay the Spire 2/mods/SpireTracker/
- Windows:
- The folder should contain
SpireTracker.dllandmod_manifest.json - Launch the game — mods are enabled automatically
⚠️ Note: Enabling mods switches to a separate save system. Copy yourprofile1/folder tomodded/to preserve your Compendium progress.
The game's Compendium tracks which relics you've picked up via ProgressState.DiscoveredRelics. SpireTracker uses Harmony to patch the UI methods that display relics, checking each relic against the Compendium's discovered set. If a relic hasn't been picked up yet, we attach a gold "NEW" label to its icon — matching the Compendium's "Unknown" state.
| Class | Method | Screen |
|---|---|---|
NRewardButton |
Reload() |
Relic rewards (combat, events) |
NChooseARelicSelection |
_Ready() |
Boss relic picks |
NTreasureRoomRelicCollection |
InitializeRelics() |
Treasure room relics |
NMerchantRelic |
UpdateVisual() |
Shop relic slots |
NEventOptionButton |
_Ready() |
Neow's blessings & ancient events |
Most users should just download the pre-built release. Only follow these steps if you want to modify the mod.
- .NET 9.0 SDK
- Slay the Spire 2 installed via Steam (the build references game DLLs)
dotnet build -c ReleaseIf Steam is installed in a non-default location, pass your game directory:
dotnet build -c Release -p:Sts2Dir="D:\SteamLibrary\steamapps\common\Slay the Spire 2"Output: bin/Release/net9.0/SpireTracker.dll — copy it along with mod_manifest.json to your mods/SpireTracker/ folder.
SpireTracker/
├── SpireTracker.cs # Mod entry point ([ModInitializer])
├── RelicTracker.cs # Compendium progress query helper
├── Patches/
│ ├── RelicRewardPatch.cs # Relic reward screen
│ ├── ChooseRelicPatch.cs # Boss relic selection
│ ├── TreasureRoomRelicPatch.cs# Treasure room relics
│ ├── MerchantRelicPatch.cs # Shop relics
│ └── EventOptionPatch.cs # Neow & ancient events
├── UI/
│ └── NewBadge.cs # Gold "NEW" badge label
├── SpireTracker.csproj # .NET 9.0 project
└── mod_manifest.json # STS2 mod manifest
v0.1.0 — Working in-game!
- Project scaffold & build
- Game API decompilation & recon
- Harmony patches for all 5 relic screens
- "NEW" badge UI with proper depth layering
- In-game testing (Neow, rewards, shop, treasure room)
- Phase 2: Card tracking (same pattern, different reward type)
- Phase 3: Potion tracking
- Future: Mod settings toggle, badge style customization
- MegaCrit for Slay the Spire 2
- Harmony for runtime patching
- BetterSpire2 for mod pattern reference
MIT