Skip to content

Fix Outpost Siege interaction and update Card lethal logic (Issue #4745)#9717

Open
calaespi wants to merge 10 commits intoCard-Forge:masterfrom
calaespi:pr-2-harness-outpost-siege
Open

Fix Outpost Siege interaction and update Card lethal logic (Issue #4745)#9717
calaespi wants to merge 10 commits intoCard-Forge:masterfrom
calaespi:pr-2-harness-outpost-siege

Conversation

@calaespi
Copy link
Contributor

This PR fixes an issue with Outpost Siege where the exiled card interaction was using 'ExileOnMoved' instead of 'ForgetOnMoved', causing incorrect behavior when the card left the battlefield. It also updates Card.java to correctly check for 'LethalDamageByPower' static abilities in the getLethal() method.

…ngesZone excludes Stack/Exile + Exiled). Initialize Localizer/Lang to prevent NPE during GameType init.
…tions to aid Outpost Siege simulations. Keep Issue4745Test disabled until full phase-driven harness is ready.
@tehdiplomat
Copy link
Contributor

Why are three different "issues" being lumped together in a single PR?

@tool4ever
Copy link
Contributor

tool4ever commented Feb 11, 2026

thanks for contributing
I'd recommend focusing on #9703 before doing more statics so you can better understand how they're supposed to work first

@calaespi
Copy link
Contributor Author

@tehdiplomat I apologize for lumping the changes. They were discovered while working on the Outpost Siege interaction and felt related enough to include together. I will make sure to separate unrelated changes in future PRs.

@tool4ever Thanks for the recommendation on #9703, I will definitely check it out to better understand the static abilities. I have also pushed a fix for the hardcoded path you noticed.

@calaespi calaespi marked this pull request as ready for review February 13, 2026 17:02
@calaespi
Copy link
Contributor Author

Summary of this push: The branch no longer compiled because StaticAbilityCountersRemain had been removed but was still used in GameAction.java. I restored StaticAbilityCountersRemain.java and the CountersRemain value in StaticAbilityMode so that “counters remain” (e.g. Skullbriar) still works and the project compiles. I also removed the duplicate LethalDamageByPower entry in StaticAbilityMode (it was declared twice, which is invalid in Java) and removed unused imports in AbilityActivated.java (StaticAbility and StaticAbilityMode). Compilation and the relevant tests (ForgetOnMovedTest, HiddenKeywordsMetaTest, LureTest, LureMechanicTest, Issue4745Test) pass locally. Ready for review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants