A Slay the Spire 2 mod that gives the relics you find a Terraria-style prefix — your Anchor becomes a Legendary Anchor with more Block, or an Anchored one that also grafts another relic's effect. Then reforge them at campfires or merchants to chase the roll you want. A little power fantasy for your run.
📊 Interactive Prefix Dashboard → — every prefix × every relic with per-stat deltas and roll odds. Auto-detects your language (English / 한국어 / 简体中文) and lets you switch.
- Prefixes on the relics you find — most relics from shops, rewards, treasure and events roll a prefix. Seed-locked, so the same run seed always forges a relic the same way, and it survives save/load.
- Eight prefix families (see the Prefix Guide for the full list):
- Numeric — scale a relic's numbers up (or, rarely, down). Legendary Anchor = more Block.
- Companion — graft a weaker version of another relic's whole effect onto yours. "Thorned" gives Thorns at combat start; works on any relic.
- Penalty — a small curse (a minority of rolls, Terraria-style): a self-debuff or a status card shoved into your deck.
- Gamble — mixed effects that also reach the battlefield: sap an enemy's stats each turn, or hit one enemy / one player with Vulnerable or Weak.
- Reactive — respond in real time to your power/energy events.
- Run-state — respond to your gold, deck and curse cards.
- Keyword — grant card keywords like Retain and Exhaust.
- Character — only roll for the character you play; 3 boons + 2 curses each.
- Reforge at campfires & shops — re-roll a relic's prefix at a rest site (free) or at a merchant (escalating gold). Unlimited re-rolls, but rolling a curse ends it — a curse can't be re-rolled away, only Cleansed. See Reforge below.
- Tier-colored names — a forged relic's name is tinted by its prefix (Legendary gold, Broken red …), like loot-rarity colors.
- Configurable — a ModConfig slider sets how often a relic gets NO prefix (default 60% vanilla, so ~40% are forged).
A single weighted pool — any relic can roll any prefix. Full names, effects and drop rates are in the Prefix Guide (한국어 · 简体中文) and the interactive prefix_dashboard.html.
- Numeric — Legendary (+60%) … Keen (+4%), the amplify prefix Volatile, and softened negatives (Damaged / Shoddy / Broken).
- Companion — themed prefixes that graft a reduced version of a donor relic's effect (Thorned, Mighty, Anchored, Vital, and more).
- Penalty — Cursed / Cumbersome / Fickle / Overloaded (self-debuffs) and Tainted / Festering / Smoldering / Hollow (curse-card generators).
- Gamble — mixed effects that also touch the battlefield: Eroding (saps an enemy's stats each turn), Exposing / Enervating (Vulnerable / Weak to one enemy + one player at combat start), and Chaotic (each turn, a coin-flip debuff on one enemy or one player).
- Reactive — Resonant (gain 1 more when you gain Strength/Dexterity), Obstinate (enemy stat-shreds become gains), Discharging (AoE damage per bonus Energy).
- Run-state — Cursefed (drawing a Curse card grants Strength/Dexterity), Gilded (Strength per 300 gold), Taxing (lose gold per card in your deck).
- Keyword — Retaining (Retain a random card at turn end), Searing (playing a card has a 25% chance to brand it with Exhaust — effective from its next play).
- Character — Silent / Defect / Necrobinder / Regent each get 3 boons + 2 curses riding their signature mechanic, e.g. Envenomed (bonus poison), Supercharged (Focus while orb slots are full), Bonebound (grow Osty each turn), Bankrupt (every 4 Stars spent, a card in hand turns Ethereal).
More prefixes are planned.
A forged relic can also roll one curse — and a stronger prefix is far more likely to carry one (a Legendary is almost always cursed; a weak prefix rarely is). The relic name gains a (Cursed) tag and the tooltip states the exact effect. There are two kinds, mutually exclusive per relic. Full list in the Curse Guide (한국어 · 简体中文).
- Enemy curses — enemies grow stronger while you own the relic: Strength/Plated Armor/Thorns (of Wrath, Malice, Spite, the Tyrant…), Regen, Frenzy, and Max HP curses (of Vigor/Girth/the Titan/Eternity). In multi-enemy fights the curses spread across the pack.
- Self-curses — you take a penalty on each unblocked hit, proportional to the hit count: Enfeebling (Weak), Cracking (Frail), Vulnerating (Vulnerable), Bewildering (a Dazed), Wretched (random). Block well and they never fire.
- Penalty prefixes are curses too — the unified downside. A penalty prefix (Cursed, Cumbersome, Tainted…) counts as a curse: it ends a reforge and is removed by Cleanse, just like an enemy-rider / self-curse.
- A curse can't be re-rolled away — rolling any curse ends the reforge (campfire and shop alike); the only way to shed one is Cleanse. See Reforge and Cleanse.
- ON by default — controlled by "Enemy forge" in ModConfig. Turn it off for a pure power fantasy (penalty prefixes still apply — they're part of the prefix pool, not the enemy-forge toggle).
- Tunable via ModConfig: "Curse chance", "Self-curse share" (enemy-vs-self split), and "Enemy balance strength".
Re-roll a relic's prefix in two places:
- Pick one of your relics and re-roll its prefix — even a relic that rolled "no prefix" or was never eligible on pickup will land one.
- It's free and repeatable (doesn't consume your rest), and stays available even after you Heal or Smith.
- The catch: if a reforge rolls a curse — a penalty prefix, or an enemy-rider / self-curse — the forge goes cold and the Reforge option ends for that campfire. A curse can't be re-rolled away; pushing your luck has a real cost.
- The shop offers a Reforge service next to the relics: pay an escalating gold cost — 30 for the first reforge and +10 for each further reforge in the same shop (it resets to 30 at the next shop) — to re-roll a relic's prefix, as often as you can afford.
- A curse ends it here too — exactly like the campfire, rolling a curse stops reforging for that shop visit. You can't buy your way out of a curse with a cheap re-roll; shed it with Cleanse, or reforge again at the next shop.
- Backing out of the relic pick is free.
- Right next to reforge, a Cleanse service removes the curse from a relic — a guaranteed upside for a fixed gold cost (default 100, adjustable in ModConfig). An enemy-rider / self-curse is stripped while the prefix is kept; a penalty prefix (which is the curse) is purged, reverting the relic to no prefix.
- Only relics that currently carry a curse can be cleansed. Since a curse now ends reforging, Cleanse is the intended way to shed one — the risk/reward pivot the reforge loop turns on.
After a run, the run-history screen shows the prefix and curse that were forged onto each relic — hover a relic to see what it rolled.
Every relic reads its effect magnitude from the same DynamicVars that also feed its tooltip, so scaling the base value updates both the effect and the displayed number in one place — no per-relic code, and modded relics with numeric values are supported automatically. Companion prefixes grant a hidden donor-relic instance whose native hooks fire; penalty and gamble effects apply via combat hooks.
- Not a balance mod — it makes runs stronger (with a dash of risk); it's a power-fantasy / casual mod.
- Disable prefixes — set the ModConfig "No-prefix chance" slider to 100% for pure vanilla relics.
- Leave Ancient relics vanilla — turn OFF the ModConfig "Forge Ancient relics" toggle to keep Ancient rarity relics untouched (skipped on pickup and hidden from the reforge picker); every other rarity still forges.
- Languages: English, 한국어, 简体中文.
- Subscribe on the Steam Workshop, or download the latest release.
- If installing manually, place the
Sts2RelicForge/folder into<Slay the Spire 2 install>/mods/(withSts2RelicForge.dll,.json, and.pck). - Launch the game.
Requirements: .NET SDK, Godot.NET.Sdk 4.5.1 (auto-resolved), a local Slay the Spire 2 install, and the sibling Sts2.ModKit project alongside this one.
dotnet build Sts2RelicForge.csproj -c Debugprefix_dashboard.html is a standalone reference that lists every relic × prefix result.
MIT — see LICENSE. Built on Slay the Spire 2 by MegaCrit.