Oleg Agafonov
88eb35ebc7
code clean
2024-04-16 23:37:22 +04:00
Oleg Agafonov
e8e2f23284
server: improved server stability ( #11285 ) and reworked triggers/playable logic ( #8426 ):
...
* game: now all playable calculations done in game simulation, outside real game (no more freeze and ruined games by wrong Nyxbloom Ancient and other cards with wrong replacement dialog);
* game: fixed multiple problems with triggers (wrong order, duplicated calls or "too many mana" bugs, see #8426 , #12087 );
* tests: added data integrity checks for game's triggers (3 enabled and 3 disabled due current game engine logic);
2024-04-16 23:10:18 +04:00
Susucre
017286ed94
fix ContinuousEffect that access affectedObjectsSet before it is initialized ( #12080 )
2024-04-13 16:50:06 +02:00
Susucre
607d55f16b
[OTC] Implement 2 cards, refactor some exile effects ("Gonti-like") ( #12118 )
...
[OTC] Implement Gonti, Canny Acquisitor
[OTC] Implement Dream Thief's Bandana
2024-04-13 12:21:05 +02:00
Susucre
c77634c843
separate 'you may play'|'you may cast' AsThoughtEffect approuvers
...
Also, reworked Gonti, Lord of Luxury and checks it now works properly with Zoetic Cavern.
2024-04-13 12:10:53 +02:00
xenohedron
31295eb645
followup fix to #12058
2024-04-12 23:24:56 -04:00
xenohedron
8853e7d875
refactor: clean up static filters for sacrifice targets ( #12120 )
...
* simplify sacrifice target filters, part 1
* minor cleanup
* adjust SacrificeXTargetCost
* adjust Arctic Merfolk
* more cleanup
* remove unused
* adjust filters not used for sacrifice
* fix Hew the Entwood
* fix Nahiri's Lithoforming
* remove unused
* remove another
* cleanup more
* fix MegatronDestructiveForce
* remove next
* next batch of replacements
* remove next
* rename filter to match text
* finish removing
* use existing static filter
2024-04-12 22:24:10 -04:00
xenohedron
5c9d1cd205
fix #12058 (check phased in for "control a commander")
2024-04-12 20:59:36 -04:00
xenohedron
1198192a13
more text adjustments
2024-04-12 20:45:53 -04:00
xenohedron
f3fccfbd8a
refactor: use setter method and private field
2024-04-12 20:11:04 -04:00
xenohedron
577a3708fc
adjust some text, cleanup some variable access
2024-04-12 20:08:26 -04:00
Alexander Novotny
8271686cb4
[PIP] Implement Shaun, Father of Synths ( #12109 )
...
* Added method to set triggered abilities to optional
* TokenCopy effect now copies permanentModifier
* Implemented Shaun, Father of Synths
* remove TODO
* Made `setOptional` chainable
2024-04-12 19:41:58 -04:00
jimga150
96939b31eb
Implement [REX] Owen Grady, Raptor Trainer ( #12094 )
2024-04-12 19:41:27 -04:00
Susucre
72a2e32d1c
fix 514.3a, give player priority on cleanup when something happened ( #12115 )
2024-04-12 15:31:53 +02:00
Oleg Agafonov
f1791a3c70
Merge fix
2024-04-11 23:02:25 +04:00
Oleg Agafonov
34dac7877d
fixed empty targets in EachOpponentPermanentTargetsAdjuster (related to #11886 )
2024-04-11 22:46:26 +04:00
Oleg Agafonov
367defd995
tests: added tests for non-stack delayed trigger and details docs about problem
2024-04-11 22:46:25 +04:00
Susucre
e741a453bf
[PIP] Implement Nuclear Fallout
2024-04-11 19:16:36 +02:00
Susucre
8a29dcc735
fix Obeka, Splitter of Seconds ( #12085 )
...
Now adding BeginningPhases with all but Upkeep skipped.
Previously upkeep steps were added during combat phase, which was incorrect.
fix #12085
2024-04-11 13:24:56 +02:00
xenohedron
8bf75ed000
text fixes
2024-04-11 00:34:19 -04:00
jimga150
51b1ab4cb6
Implement [REX] Compy Swarm ( #12101 )
2024-04-10 23:43:37 -04:00
jimga150
40b1dcc526
Fix DestroyPlaneswalkerWhenDamagedTriggeredAbility ( #12093 )
2024-04-10 23:42:44 -04:00
Susucre
113630c1ab
fix Deep Gnome Terramancer triggering out of extra lands played
2024-04-10 20:52:18 +02:00
Oleg Agafonov
c3862e7196
server: improved server stability after some memory overflow errors (card not found errors, related to #11285 );
2024-04-10 22:35:48 +04:00
Oleg Agafonov
7817a5cac6
deck improves:
...
* gui: removed public deck hash info;
* gui: improved xmage dck-file - now it correctly load a card's amount (related to files from third party services);
* server: fixed wrong cheating warning on deck construction (closes #11877 );
* refactor: removed outdated hash code and calculations;
* other: added docs, added multiple deck hash tests;
2024-04-10 22:18:07 +04:00
Oleg Agafonov
889c1125e8
refactor: improved deck import, added docs and miss tests for dek-files;
2024-04-10 21:55:43 +04:00
ssk97
124d60e2b7
refactor: improved EachOpponentPermanentTargetsAdjuster and few card fixes ( #12102 )
...
* Wreck and Rebuild: Return a land, not a creature
* Sinister Concierge should still gain suspend with 0 targets
* Fixed Tolarian Contempt
2024-04-10 06:59:21 +04:00
Susucre
db5dc89776
[OTC] Implement Smoldering Stagecoach
2024-04-09 20:57:22 +02:00
Matthew Wilson
6fffc2aeb0
Merge pull request #11723 from DominionSpy/case-of-the-pilfered-proof
...
[MKM] Implement Case of the Pilfered Proof
2024-04-09 14:48:27 +03:00
Susucre
e62d1c2124
[OTC] Implement Thunderclap Drake
2024-04-09 13:08:10 +02:00
Susucre
a69583dbfc
images: added support of meld cards, fixed #11778 ( #12083 )
2024-04-08 23:57:13 +04:00
theelk801
8b7169c2a9
[PIP] Implement Megaton's Fate
2024-04-08 12:11:59 -04:00
Matthew Wilson
e79bab6520
Merge branch 'magefree:master' into case-of-the-pilfered-proof
2024-04-08 07:02:35 +03:00
theelk801
9a3fc4e0cc
[OTC] Implement Graywater's Fixer
2024-04-07 18:18:39 -04:00
Matthew Wilson
9cf6119c7e
Merge branch 'magefree:master' into case-of-the-pilfered-proof
2024-04-07 14:31:44 +03:00
Susucre
9da91b51ea
[OTC] Implement Savvy Trader
2024-04-06 18:52:08 +02:00
Susucre
b233fcf4d8
Consolidate, cleanup & test a few MayCastTargetCardEffect cards
2024-04-06 17:37:32 +02:00
Susucre
68dfcf4eac
Fix some more inexact rule texts
2024-04-06 17:16:33 +02:00
Susucre
a86b629abe
[OTC] Implement Smirking Spelljacker
2024-04-06 16:26:16 +02:00
Susucre
b5d0943b9d
[OTC] Implement Cactus Preserve
2024-04-06 13:42:23 +02:00
Susucre
62131f2a5d
[OTC] Implement Yuma, Proud Protector
2024-04-06 01:49:21 +02:00
Susucre
5dfe480a5e
[MKM] Implement Perimeter Enforcer & Projektor Inspector ( #11719 )
2024-04-05 23:55:18 +02:00
Susucre
1ff8cf01cf
[MKM] Implement Fugitive Codebreaker
2024-04-05 20:16:28 +02:00
Susucre
821b0d069f
Return to battlefield transfromed - fixed that it was able to return non transformable cards, fixed #12066 ( #12072 )
2024-04-05 20:51:34 +04:00
Susucre
4b60e82b83
[MH3] Implement Ajani Nacatl Pariah
2024-04-05 16:05:18 +02:00
theelk801
e4cd084b1b
[OTC] Implement Elemental Eruption
2024-04-05 09:05:40 -04:00
Susucre
d317dd1307
Add test for Voja, Jaws of the Conclave
2024-04-05 12:13:01 +02:00
Susucre
d2356abe31
Fix AddCountersAllEffect
2024-04-05 12:02:56 +02:00
Susucre
2d7349a7bb
Fix faulty logic in AddCounters effects amount computation.
...
When set with DynamicValue, and that value computes to 0,
the amount of counters added was incorrectly the Counters amount.
2024-04-05 11:53:19 +02:00
Susucre
d591a89495
[OTJ][BIG] Cleanup some card implementation
2024-04-05 11:53:12 +02:00