원클릭으로
lookup
Look up how a card, relic, potion, event, power, or monster works by decompiling the STS2 source code live from the game PCK.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Look up how a card, relic, potion, event, power, or monster works by decompiling the STS2 source code live from the game PCK.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Run the STS2 beta patch pipeline — fetch patch notes, decompile game files, cross-reference changes, update CSVs, and prepare beta branch for deployment.
Test skill that prints hello world
Render a Spine monster sprite using Godot, convert to 512x512 webp, and save to media/enemies/. Takes a monster display name (e.g. "Ruby Raider (Axe)") or spine folder name (e.g. "axe_ruby_raider").
Render monster sprites that require shader effects or particles (e.g. Waterfall Giant, Living Fog) by recreating the game's Godot scene with VFX in our Godot project.
List git branches and switch between them
| name | lookup |
| description | Look up how a card, relic, potion, event, power, or monster works by decompiling the STS2 source code live from the game PCK. |
When the user asks about how something works in STS2, decompile the relevant source from the game PCK and explain the implementation.
C:/Users/jparr/Downloads/GDRE_tools/gdre_tools.exeD:/Steam/steamapps/common/Slay the Spire 2/SlayTheSpire2.pckC:/Users/jparr/Documents/claude/sts2/rawExtract the appropriate JSON from the PCK using GDRE --headless --recover --include:
| Type | JSON res:// path |
|---|---|
| Powers | res://localization/eng/powers.json |
| Monsters | res://localization/eng/monsters.json |
| Relics | res://localization/eng/relics.json |
| Cards | res://localization/eng/cards.json |
| Potions | res://localization/eng/potions.json |
| Events | res://localization/eng/events.json |
Each JSON is a flat key→string map. Search for the display name value to find its key:
grep -i "\"Display Name\"" "C:/Users/jparr/Documents/claude/sts2/raw/localization/eng/<type>.json"
Key formats and name fields by type:
| Type | Key format | Name field | Example |
|---|---|---|---|
| Powers | FLUTTER_POWER.title | .title | "FLUTTER_POWER.title": "Flutter" |
| Monsters | ARCHITECT.name | .name | "ARCHITECT.name": "The Architect" |
| Relics | AKABEKO.title | .title | "AKABEKO.title": "Akabeko" |
| Cards | ABRASIVE.title | .title | "ABRASIVE.title": "Abrasive" |
| Potions | ASHWATER.title | .title | "ASHWATER.title": "Ashwater" |
| Events | ABYSSAL_BATHS.pages... | .title (nested) | "ABYSSAL_BATHS.name": "Abyssal Baths" |
Strip the suffix (.title, .name) from the matched key to get the internal key, e.g. FLUTTER_POWER.
Convert the internal key to PascalCase class name:
_, capitalize each word, join: ASSASSIN_RUBY_RAIDER → AssassinRubyRaider_POWER before converting, then re-add Power suffix: FLUTTER_POWER → Flutter → FlutterPowerUse the class name and the type's known res:// path:
| Type | res:// path pattern | CS class convention |
|---|---|---|
| Powers | res://src/Core/Models/Powers/{Class}.cs | FlutterPower |
| Monsters | res://src/Core/Models/Monsters/{Class}.cs | Architect |
| Relics | res://src/Core/Models/Relics/{Class}.cs | Akabeko |
| Cards | res://src/Core/Models/Cards/{Class}.cs | Abrasive |
| Potions | res://src/Core/Models/Potions/{Class}.cs | Ashwater |
| Events | res://src/Core/Models/Events/{Class}.cs | AbyssalBaths |
Extract with GDRE:
"/c/Users/jparr/Downloads/GDRE_tools/gdre_tools.exe" --headless \
"--recover=D:/Steam/steamapps/common/Slay the Spire 2/SlayTheSpire2.pck" \
"--output=C:/Users/jparr/Documents/claude/sts2/raw" \
"--include=res://src/Core/Models/{Type}/{Class}.cs"
Read the extracted CS file. Focus on:
GetValueIfAscension)ShouldScaleInMultiplayer, ScaleHpForMultiplayer)Clear, concise breakdown. Lead with the key facts. Include specific numbers and conditions from the code. Quote important lines but don't paste entire files.