PurpleCrowbar
aa5c2279e7
Decayed ability - improved rules text ( #13296 )
2025-02-07 21:52:48 +04:00
Grath
145bda842b
[DSK] Implement Hauntwoods Shrieker, added support to reveal face down permanents ( #13277 )
...
* [DSK] Implement Hauntwoods Shrieker.
* Change RevealedView and PlayerImpl.revealCards to reveal face-down permanents.
* Fix #13273 using the new RevealCards capability.
2025-02-07 19:18:31 +04:00
Oleg Agafonov
9f2cfc9e09
tests: added runtime check for OrTriggeredAbility (related to #12826 , 13309)
2025-02-07 14:34:45 +04:00
Oleg Agafonov
4a3429b792
Shadow Kin - fixed game error on usage with MDF cards (related to #13308 )
2025-02-07 08:12:43 +04:00
Oleg Agafonov
25e4930bd5
Number of card types in graveyards - added card hint for cards like Tarmogoyf
2025-02-07 07:37:27 +04:00
Oleg Agafonov
bf0b957948
[DFT] added image support for designations, added Speed image (visible on triggered abilities)
2025-02-07 00:45:06 +04:00
Oleg Agafonov
d018566324
Dredge - fixed game error in some use cases
2025-02-06 22:23:27 +04:00
Oleg Agafonov
f17cbbe72b
AI: improved performance and fixed crashes on use cases with too much target options like "deals 5 damage divided as you choose" (related to #11285 ):
...
* added DebugUtil.AI_ENABLE_DEBUG_MODE for better IDE's debugging AI code;
* it's a target amount optimizations;
* it's use a grouping of possible targets due same static and dynamic stats (name, abilities, rules, damage, etc);
* instead of going through all possible combinations, AI uses only meaningful targets from particular groups;
2025-02-06 17:40:22 +04:00
Oleg Agafonov
b4fa6ace66
AI: reworked blockers selections:
...
* now computer will use simplified 1 vs 1 combat damage simulations to choose better blockers (due better game score after combat);
* it's not a full combat simulation, but support many things like non-stack abilities, damage replacement effects and SBA -- much better than older PT compare (related to #13290 );
* now AI correctly use a blockers with deathtouth, indestructible, first/double strike and other abilities;
* chump blocks also supported (chump logic implemented before in 92b7ed8efc , related to #4485 );
2025-02-06 07:03:16 +04:00
theelk801
194ff4b073
[DFT] Implement Thunderhead Gunner
2025-02-04 13:51:06 -05:00
theelk801
d098ca5346
[DFT] Implement Redshift, Rocketeer Chief
2025-02-04 10:50:42 -05:00
Oleg Agafonov
3405b51aaf
tests: improved load tests (improved progress bar, added effects stats)
2025-02-04 11:41:42 +04:00
Oleg Agafonov
7035736a6c
AI: improved game stability on blocking (related to #13290 )
2025-02-04 10:21:13 +04:00
Oleg Agafonov
92b7ed8efc
AI: reworked blockers selections:
...
* fixed game freezes for no-possible block configurations like Menace (#13290 );
* fixed computer cheating to ignore block requirements like Menace (now AI will choose all required blockers instead 1);
* improved computer logic for blockers selection (try to sacrifice a creature instead game loose, simple use cases only);
* added freeze protection for bad or unsupported attacker-block configuration;
* refactor: deleted outdated AI code;
2025-02-04 01:14:59 +04:00
theelk801
c082edd663
[DFT] Implement Adrenaline Jockey
2025-02-03 14:56:46 -05:00
theelk801
c0ccbe2a2b
[DFT] Implement Chandra, Spark Hunter
2025-02-03 14:19:17 -05:00
theelk801
cf6ba1895a
[DFT] Implement Cryptcaller Chariot
2025-02-03 11:35:07 -05:00
Oleg Agafonov
58fbfdd529
refactor: improved usage of getOpponents to ignore leaved players in one short effects
2025-02-03 17:46:57 +04:00
theelk801
b56f071414
[DFT] Implement Perilous Snare
2025-02-02 19:02:50 -05:00
theelk801
175ca742b0
[DFT] Implement Lightwheel Enhancements
2025-02-02 10:00:44 -05:00
Cameron Merkel
ec5e982d7e
Choose card name - added support to choose names from adventure spells (example: Anointed Peacekeeper) ( #13286 )
2025-02-02 17:02:26 +04:00
theelk801
3776a39683
[DFT] Implement Spikeshell Harrier
2025-02-01 19:21:46 -05:00
Evan Kranzler
ef213b1bef
Implementing "Start your engines!" mechanic ( #13259 )
...
* add initial speed handling
* finish speed implementation
* remove skip list
* add initial test
* add some more tests
* change speed initialization to state-based action
* add opponent speed check
* add control change test
* add check for speed 5
2025-02-01 13:49:47 -05:00
Oleg Agafonov
d75792312e
tests: added runtime check for wrong usage of inform messages inside layer effects (disabled by default, related to #13259 , #11285 )
2025-02-01 12:53:09 +04:00
theelk801
6670ceb2ae
[DFT] Implement Rangers' Aetherhive
2025-01-31 14:04:19 -05:00
theelk801
293ddd7016
[DFT] rework max speed ability
2025-01-31 13:56:08 -05:00
theelk801
436a0fd2ed
[DFT] Implement Gastal Thrillroller
2025-01-31 10:27:46 -05:00
theelk801
660bc0d6b4
[DFT] Implement Howler's Heavy
2025-01-31 10:27:46 -05:00
theelk801
3f3dfa83f1
[DFT] Implement Deathless Pilot
2025-01-31 10:27:46 -05:00
Oleg Agafonov
9d8f87b139
deck: added boosters for Commander Masters (CMM) (related to #13160 ):
2025-01-31 17:32:41 +04:00
Grath
4dbce1132c
Fix typo in method name.
2025-01-30 13:33:06 -05:00
Oleg Agafonov
36309206a2
Create copy effects - fixed that it can't copy second side of the modal double-faced card ( close #11307 , close #13269 );
2025-01-29 00:51:34 +04:00
Oleg Agafonov
13adabd169
deck: added boosters for some sets and other (related to #13160 ):
...
* added boosters to Innistrad: Double Feature (DBL);
* added boosters to 30th Anniversary Edition (30A);
* added Chaos Orb reprint to 30A;
* fixed wrong card art styles in ZNE;
2025-01-28 01:18:58 +04:00
Oleg Agafonov
c61a206b56
deck: added booster and reprints from Fallout (PIP), disabled booster from Summer Magic (related to #13160 )
2025-01-27 10:46:19 +04:00
theelk801
86c4b85973
[DFT] Implement Draconautics Engineer
2025-01-26 20:05:47 -05:00
Oleg Agafonov
d9cb196e2c
refactor: added helper methods for default booster settings (see enableDraftBooster, enablePlayOrArenaBooster)
2025-01-27 00:15:44 +04:00
Oleg Agafonov
49b0568143
refactor: added shared code to hide mutate cards
2025-01-25 20:16:27 +04:00
Oleg Agafonov
de54bd0e1a
refactor: improved card graphic settings in set files
2025-01-25 20:16:26 +04:00
Oleg Agafonov
de19bd56cb
refactor: fixed copy constructor in some dynamic values
2025-01-25 01:11:35 +04:00
Grath
7bfb0d2dec
[DRC] Implement Prophet of the Scarab
...
Also adds a DynamicValue that finds the largest of multiple DynamicValues.
2025-01-24 15:47:17 -05:00
Grath
9172a9eba8
[DRC] Implement On Wings of Gold.
2025-01-24 14:23:10 -05:00
theelk801
334655014d
[DFT] Implement Country Roads
2025-01-24 12:38:08 -05:00
theelk801
4b5bf3e1de
[DFT] Implement Cloudspire Captain
2025-01-24 12:25:50 -05:00
theelk801
59c1a32697
[DFT] Implement Streaking Oilgorger
2025-01-23 23:07:34 -05:00
theelk801
5738f582ca
[DFT] Implement Prowcatcher Specialist
2025-01-23 11:51:53 -05:00
Oleg Agafonov
e6ae7e9114
refactor: fixed wrong copy code of some fields
2025-01-22 19:35:43 +04:00
Oleg Agafonov
3f79ffa21a
refactor: improved cards hints support for combined triggers like OrTriggeredAbility
2025-01-22 19:06:05 +04:00
Marco Romano
0bcf5f9e03
[DSK] Implement Unable to Scream ( #13234 )
...
* Introduced LoseAllAbilitiesAttachedEffect
* Added unit tests for Unable to Scream
2025-01-19 16:09:57 -05:00
PurpleCrowbar
e399e233d7
[DSC] Implement Rendmaw, Creaking Nest
2025-01-18 01:30:37 +00:00
PurpleCrowbar
1e9c171441
[BLC] Implement Fisher's Talent
2025-01-17 18:58:00 +00:00