rahmatnazali / spireslayer

Programmable save editor for Slay the Spire
https://pypi.org/project/spireslayer
Apache License 2.0
7 stars 2 forks source link

Watcher’s “Rushdown” Card Detected as “Madness” #13

Open gabrekt opened 3 months ago

gabrekt commented 3 months ago

While creating the card database for the Watcher character, I encountered an issue where the “Rushdown” card is incorrectly detected as “Madness” during gameplay.

Steps to Reproduce:

  1. Create a deck including the Watcher’s “Rushdown” card, which is defined in the code as RUSHDOWN. (The db of the cards its on my PR #12)
  2. Load the deck in the game.
  3. Observe that the game recognizes the “Rushdown” card as the “Madness” colorless card instead.

This issue may be related to the process used to encrypt or save game files. The card database setup for the Watcher character seems correct, so the issue might stem from how the game distinguishes between cards in the encrypted savefile. /

rahmatnazali commented 3 months ago

This issue may be related to the process used to encrypt or save game files.

For now, I don't think this is the case, as 1) game can be loaded after new save is applied - means it's not broken and 2) the editor worked file with other cards.

so the issue might stem from how the game distinguishes between cards in the encrypted savefile

Yes, I lean towards this. My guess is that the game mismatch on treating the string Rushdown for Madness (and probably with Madness too, which in this case when we inject Madness card the game probably will show other card too).

The best way to solve this issue, I think, is to start a fresh run and play until we get a Rushdown card (and preferably also a Madness card). Save the game and print the whole plain save game structure. We will then know what string represent what card.

gabrekt commented 3 months ago

Hi @rahmatnazali, thanks for the reply. I tried also adding Madness to the deck (the mainly reason colorless cards were added hah), but its still showing madness in the deck after the changes in the savefile.