Commit graph

48730 commits

Author SHA1 Message Date
theelk801
85031c32ca prevent verify failure 2025-08-12 18:03:48 -04:00
theelk801
2f88c051bf rename EarthbendEffect class 2025-08-12 18:03:35 -04:00
theelk801
5841d63c60 [TLA] Implement Appa, Steadfast Guardian 2025-08-12 18:03:15 -04:00
theelk801
66b96cc232 [TLA] Implement Redirect Lightning 2025-08-12 17:56:50 -04:00
theelk801
5478dcc34e [TLA] Implement Sokka, Bold Boomeranger 2025-08-12 17:54:10 -04:00
theelk801
c149f591bd [TLA] update spoiler and reprints 2025-08-12 17:52:19 -04:00
theelk801
e93d95d7a0 [TLA] Implement Fire Nation Attacks 2025-08-12 17:50:23 -04:00
theelk801
b552c850f4 [TLA] Implement Earthbending Lessons 2025-08-12 17:34:32 -04:00
theelk801
43191dcf54 [TLA] Implement Southern Air Temple 2025-08-12 17:23:59 -04:00
theelk801
ce1c7c1afa [TLA] Implement Avatar Enthusiasts 2025-08-12 17:19:59 -04:00
theelk801
02d3d78609 [TLA] Implement Sokka's Haiku 2025-08-12 17:18:15 -04:00
theelk801
4b22e9755c [TLA] Implement Katara, the Fearless 2025-08-12 17:14:30 -04:00
theelk801
6a59b703a9 [TLA] update spoiler 2025-08-12 17:10:52 -04:00
Oleg Agafonov
b06682797c deck: fixed that clipboard import can choose wrong promo card (close #7666) 2025-08-10 23:59:19 +04:00
Oleg Agafonov
2e6f26e589 deck: better moxfield support for clipboard import (related to #13838) 2025-08-10 22:31:01 +04:00
Oleg Agafonov
f9fd049ece deck: improved deck import from clipboard (added support of moxfield and archidekt decks format, related to #13838) 2025-08-10 22:11:58 +04:00
Oleg Agafonov
8a6a3b521f merge fix 2025-08-10 18:48:21 +04:00
ReSech
ff491f7e08
images: added dozen promo sets and miss promo cards (#13834)
* Remove incorrect mechtitan core (it's a token)

* Fix Kor Skyfisher and add Counterspell to PURL

* Fix Yoshimaru and add missing cards

* Fix Kongming "Sleeping Dragon" name

* Fix Pang Tong "Young Phoenix" name

* Fix Henzie "Toolbox" Torre Name

* Add missing Pro Tour Promo Cards

* Fix rarity

* Add Spotlight Series set

* Add missing PW25 Cards

* Add Store Championships

* Add PLG25

* Fix verify failures

* Add FIN Standard Showdown set

* Add Cowboy Bebop set

* Update author and Scryfall link in StoreChampionships set

* Update StoreChampionships.java

Fix card name for Virtue of Persistence

* Update WizardsPlayNetwork2025.java

Fix Zidane Rarity and add Spectacular Spider-Man

* Add new cards to Media and Collaboration Promos set

* Added Ravager Of the Fells (Huntmaster back)
2025-08-10 18:33:49 +04:00
ReSech
b14ff962bc
images: fixed card numbers from EOS set (#13895) 2025-08-10 18:31:15 +04:00
Oleg Agafonov
16df60894a images: added H2R set to download, added new SLD/Mechtitan token images (related to #13808); 2025-08-10 13:09:44 +04:00
Oleg Agafonov
192d8f36dd images: fixed cards download of some promo cards like SLD (★ and † in url problem, related to #13808); 2025-08-10 13:03:53 +04:00
xenohedron
6dd4f33db2 fix Rikku, Resourceful Guardian 2025-08-09 19:35:07 -04:00
xenohedron
6f398ca2fc rework triggered ability class for putting counters on permanents
fix #13870 (Kate Stewart; All Will Be One)
2025-08-09 19:25:39 -04:00
Oleg Agafonov
8994c8e7aa merge fix 2025-08-10 03:07:30 +04:00
Jmlundeen
574d7f91a5
fix Yasharn, Implacable Earth and Angel of Jubilation (#13753)
* Fix Angel of Jubilation and Yasharn, Implacable Earth

* canPaySacrificeCost filter was not checking if the source ability was a spell or activated ability

* Create common CantPayLifeOrSacrificeEffect

* add some docs for CantPayLifeOrSacrificeEffect

* change player pay life restrictions and remove player sacrifice cost filter

* pay life cost restriction is now an enum set so multiple effects apply together

* sacrifice cost filter was removed and replaced with PAY_SACRIFICE_COST event

* convert CantPayLifeEffect to CantPayLifeOrSacrificeAbility

* Changed to combine life restriction and sacrifice cost restriction

* update bargain ability cost adjustors using canPay

* fix Thran Portal

* Effect was incorrectly adjusting the cost of mana abilities on itself.

* Fixed ability adding type to itself during ETB

* Add additional tests

* update PayLifeCostRestrictions to be mutually exclusive
2025-08-09 18:53:43 -04:00
Oleg Agafonov
2833460e59 AI: improved performance on too many possible targets (fix game freezes and server crashes - see #9539, #9438, #9518, related to #11285, #5023); 2025-08-10 02:16:18 +04:00
Oleg Agafonov
384ce67cc3 refactor: improved search in stack 2025-08-10 02:07:15 +04:00
Steven Knipe
26adccdfd5 Fix Shuriken giving control to wrong player 2025-08-08 18:57:27 -07:00
Correl Roush
925a820f09
Fix Nahiri, Forged in Fury trigger (#13893)
Fixes the trigger firing for all attacking creatures, not just equipped
ones.

Restores the equipped predicate removed in commit db193bd4 (#13707) and
adds tests to prevent future regressions.
2025-08-07 00:38:32 -04:00
xenohedron
25f4a5c6e7 fix #13894 (filter in Tromell, Seymour's Butler) 2025-08-07 00:37:36 -04:00
Oleg Agafonov
f5004746e0
Merge pull request #13892 from magefree/rework-targeting-and-possible-targets
Reworked targeting, possible targets and AI

Test framework improves:
- now game logs will show stack ability on push and on resolve (before any choices);
- now game logs will show used choices made by cast/activate, setChoice, setMode and addTarget commands (not work for AI tests, part of #13832);
- improved choice logic for modes and yes/not dialogs (now it's use a more strictly checks, use TestPlayer.MODE_SKIP to stop mode selection);
- improved error logs and testable dialogs menu in cheat mode;

Reworked AI, targeting and targets logic:
- refactor: simplified target implementation from a dozen canTarget, canChoose and possibleTargets methods to canTarget/possibleTargets only (part of #13638, #13766);
- refactor: fixed wrong target implementations in many cards (example: TargetCardInHand for opponent's hand, close #6210);
- AI: now human, AI and test players -- all use possibleTargets logic in most use cases instead filters or custom validation;
- AI: improved AI sims support for multiple targets abilities;
- AI: improved AI stability, freezes and targets errors in some use cases;

Additional fixes:
- close #13840
- close #13865
- close #13857
- close #13650
2025-08-05 01:44:20 +04:00
Oleg Agafonov
ea7e966c22 Remove time counter - fixed that it can't be selected for permanents with protection (example: Rift Elemental, close #13857); 2025-08-05 01:24:26 +04:00
Oleg Agafonov
c7a485b728 reworked AI, targeting and targets logic:
- refactor: simplified target implementation from a dozen canTarget, canChoose and possibleTargets methods to canTarget/possibleTargets only (part of #13638, #13766);
- refactor: fixed wrong target implementations in many cards (example: TargetCardInHand for opponent's hand, close #6210);
- AI: now human, AI and test players -- all use possibleTargets logic in most use cases instead filters or custom validation;
- AI: improved AI sims support for multiple targets abilities;
- AI: improved AI stability, freezes and targets errors in some use cases;
2025-08-04 23:56:23 +04:00
Oleg Agafonov
e866707912 test framework improves:
- now game logs will show stack ability on push and on resolve (before any choices);
- now game logs will show used choices made by cast/activate, setChoice, setMode and addTarget commands (not work for AI tests, part of #13832);
- improved choice logic for modes and yes/not dialogs (now it's use a more strictly checks, use TestPlayer.MODE_SKIP to stop mode selection);
- improved error logs and testable dialogs menu in cheat mode;
2025-08-04 23:53:16 +04:00
theelk801
a7a6ffd6f3 [ULG] fix Defense of the Heart triggering improperly 2025-08-03 19:53:28 -04:00
theelk801
32e2af685f [EOE] fix Surge Conductor triggering off of tokens and not off of nontokens 2025-08-02 09:11:27 -04:00
theelk801
4f374f8f4c fix verify failure 2025-07-31 09:08:03 -04:00
theelk801
2188fd48fb [SPM] Implement Kraven's Last Hunt 2025-07-31 08:50:20 -04:00
theelk801
2657ebf92c [SPM] update spoiler and reprints 2025-07-31 08:40:30 -04:00
theelk801
3d1400905b rework DrawNthCardTriggeredAbility, add test (closes #13885) 2025-07-30 10:52:43 -04:00
theelk801
6b2317839b [MID] [VOW] refactor some TDFCs 2025-07-29 13:42:52 -04:00
theelk801
18a852047f [RIX] refactor some TDFCs 2025-07-29 10:17:25 -04:00
theelk801
b70362416b [XLN] refactor some TDFCs 2025-07-29 09:54:50 -04:00
theelk801
f024e3b092 [EMN] refactor some TDFCs 2025-07-29 09:25:43 -04:00
theelk801
668e2bfe22 [SOI] refactor some TDFCs 2025-07-29 09:03:34 -04:00
theelk801
94b71e4c67 update duel commander ban list 2025-07-28 14:35:11 -04:00
theelk801
d29daa2f85 [ORI] refactor some TDFCs 2025-07-28 14:00:19 -04:00
theelk801
69b82f4068 [ISD] [DKA] refactor some TDFCs 2025-07-28 13:50:09 -04:00
theelk801
2ef506ea7f [SLD] add latest drops 2025-07-28 12:26:03 -04:00
Evan Kranzler
1700180455
Implement Mayhem mechanic (#13877) 2025-07-27 07:12:11 -04:00