forge icon indicating copy to clipboard operation
forge copied to clipboard

Exiling until something leaves the battlefield broken in GameState / Puzzle Mode

Open Agetian opened this issue 2 years ago • 2 comments

Describe the bug As of the current upstream master, the game uses a new method of storing cards that are exiled until a certain card leaves the battlefield (getExiledUntilThisLeavesBattlefield / setExiledUntilThisLeavesBattlefield), however, this is not stored or restored correctly in the GameState, breaking dev mode dump/load game state for states that use this feature, as well as breaking all the puzzles that use cards which exile things until they leave the battlefield.

To Reproduce Cast Mysterious Limousine and exile something with it, then save the game state and reload it with the dev features. The information about exiling until the card LTBs is lost.

Expected behavior The game should correctly store and restore these cards in the game state, not breaking the Puzzle Mode or dev mode dump/load feature.

Can this somehow be hooked up to the current ExiledWith property in GameState (possibly by detecting the "until this leaves the battlefield" somehow)? If not, then it can be added as its own parameter, e.g. ExiledUntilLTB, but then all the puzzles currently implemented would need to be retroactively looked through and fixed to properly utilize this new parameter.

Agetian avatar Jun 11 '22 06:06 Agetian

@Hanmac @tool4ever If you have a minute, can you please take a look at how to best fix this? :/ I feel that this may require a lot of manual work if we were to just add a new parameter to the GameState (since every single puzzle would need to be inspected for having a card or cards like that and manually tweaked to properly use the new feature)

Agetian avatar Jun 11 '22 06:06 Agetian

Ok, so I rewrote PS_SNC2 to use the precast mechanism to set up Mysterious Limousine - this works, but the dev feature (dump/load), as well as any puzzles not using the precast mechanism, are still broken. Not sure how many there are tbh, I remember I had to use precast for Oblivion Ring in the past as well.

Agetian avatar Jun 11 '22 09:06 Agetian

Found this outdated one: https://github.com/Card-Forge/forge/commit/d12527ff21b6379f542947ba83333038d77b6336

tool4ever avatar Feb 04 '23 12:02 tool4ever

This issue has not been updated in a while and has now been marked as stale. Stale messages will be auto closed.

github-actions[bot] avatar Jun 29 '23 09:06 github-actions[bot]