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
xenohedron
e8cd6dbdad
Fix bugs associated with Foretell ability ( #13879 )
...
* add foretell tests
* rework foretell events and watcher
* refactor: not static inner classes
* refactor: move becomes foretold code from Ethereal Valkyrie to ForetellAbility
* add watcher for edge cases
* fix Ethereal Valkyrie to not leak face down card name in log
* fix some access modifiers
* refactor: make copy-pasted code common
2025-07-27 00:26:30 -04:00
ReSech
4a74353b0c
add EOE/Emblem Tezzeret token image ( #13873 )
2025-07-27 00:25:56 -04:00
theelk801
379a3b504d
[SPM] Implement Marvel's Spider-Man
2025-07-26 08:43:20 -04:00
ssk97
100fff9c6a
improve and enable checkMissTargeted verify test ( #13647 )
...
* Add per-ability verify test
* Add check that the word target appears equally in both reference and card text
2025-07-25 23:44:28 -07:00
theelk801
106aa22fff
fix error
2025-07-25 23:25:49 -04:00
theelk801
c8a38d88ea
fix mistake in refactor
2025-07-25 23:13:07 -04:00
theelk801
be2acd79e4
[SPM] Implement Green Goblin, Revenant
2025-07-25 23:07:10 -04:00
theelk801
1bbf173058
[SPM] Implement Anti-Venom, Horrifying Healer
2025-07-25 23:04:17 -04:00
theelk801
69ca4f99e7
[SPM] Implement Iron Spider, Stark Upgrade
2025-07-25 22:55:46 -04:00
theelk801
186db5839e
[SPM] Implement Spectacular Spider-Man
2025-07-25 22:50:39 -04:00
theelk801
bab86ef1d1
[SPM] Implement Web Warriors
2025-07-25 22:45:26 -04:00
theelk801
c7f1057267
[SPM] update spoiler
2025-07-25 22:42:29 -04:00
theelk801
8f4e8645fa
refactor FilterBasicLandCard
2025-07-25 12:22:53 -04:00
theelk801
68f2d7468c
remove FilterBySubtypeCard
2025-07-25 12:22:53 -04:00
Susucre
008aa810d9
add missing watcher to [EOE] Ragost, Deft Gastronaut and Bloodsoaked Reveler
2025-07-25 18:16:05 +02:00
theelk801
22b096cd04
fix verify failure
2025-07-24 16:56:50 -04:00
theelk801
41114c667b
[SPM] Implement Spider-Man 2099
2025-07-24 16:24:44 -04:00
theelk801
788041c5b5
[SPE] Implement The Mary Janes
2025-07-24 14:15:31 -04:00
theelk801
8cd3256c65
[SPE] Implement Venom, Eddie Brock
2025-07-24 14:12:16 -04:00
theelk801
3b1a5bc8ce
[SPE] Implement Spider-Man 2099, Miguel O'Hara
2025-07-24 14:07:58 -04:00
theelk801
f3ed594715
[SPE] Implement Rampaging Classmate
2025-07-24 14:06:23 -04:00
theelk801
d50db8bca9
[SPE] Implement Lethal Protection
2025-07-24 14:04:41 -04:00
theelk801
525e3aa7b1
[SPE] Implement Ghost-Spider, Gwen Stacy
2025-07-24 14:02:30 -04:00
theelk801
8a3d125021
[SPE] Implement Amazing Alliance
2025-07-24 13:58:52 -04:00
theelk801
447a5e33dd
[SPE] Implement Double Trouble
2025-07-24 13:54:54 -04:00
theelk801
bb37e79665
[SPM] Implement Electro's Bolt
2025-07-24 13:50:59 -04:00
theelk801
3682805a80
[SPM] Implement Spider-Islanders
2025-07-24 13:50:12 -04:00
theelk801
f5902e8ee0
[SPM] Implement Stegron the Dinosaur Man
2025-07-24 13:39:34 -04:00
theelk801
8587bcc068
[SPM] Implement Spider-Man Noir
2025-07-24 13:36:38 -04:00
theelk801
24304c2880
[SPM] Implement Mechanical Mobster
2025-07-24 13:32:26 -04:00
theelk801
bd3519005f
[SPM] add missing condition to Scorpion, Seething Striker
2025-07-24 13:31:06 -04:00