Commit Graph

1413 Commits

Author SHA1 Message Date
Hanmac
0c327f2f39 CardFactoryUtil: "Prevent all (combat) Damage" + Cardname is now done as Replacement Effect 2017-05-07 10:23:57 +00:00
Blacksmith
23c1f08d7e [maven-release-plugin] prepare for next development iteration 2017-05-06 16:34:15 +00:00
Blacksmith
e271742b11 [maven-release-plugin] prepare release forge-1.5.62 2017-05-06 16:34:06 +00:00
Agetian
3967267e9d - isAnyMana is better for determining the nature of the ability for Cavern of Souls. 2017-05-03 04:24:57 +00:00
Agetian
992540a17b - Added an exception for Cavern of Souls to chooseManaAbility to make the AI use it in a smarter way when paying generic mana shards (e.g. Blight Herder). Also helps with the smarter use of this card when using Auto mana payment. 2017-05-03 04:23:06 +00:00
Sol
8ccee98f5e Add Approach of the Second Sun
Add BranchEffect
2017-04-30 20:27:15 +00:00
Agetian
182b2db80b - A little clarification. 2017-04-30 13:51:28 +00:00
Agetian
64eaf3de80 - Adding AI Logic ExileAndPlayUntilEOT to Oracle's Vault and a couple other similar cards. 2017-04-30 13:47:14 +00:00
Agetian
c5d36b3086 - Oracle Update: place -> put (part 2 + code support) 2017-04-30 05:29:57 +00:00
Agetian
e6420cee68 - Ensure that AI resets targets prior to starting targeting with AF Untap, otherwise the AI gets confused about what to untap (e.g. with Filigree Sages). 2017-04-28 14:37:01 +00:00
Hanmac
9827d090d6 RepeatEachAi: add Logic AllPlayerLoseLife for Different LoseLife abilities like Stern Judge 2017-04-23 19:24:42 +00:00
Hanmac
b8fc526a88 CloneEffect now has own Choices Params and doesn't need ChooseCard anymore 2017-04-22 15:42:05 +00:00
Krazy
f1bfe69960 [maven-release-plugin] prepare for next development iteration 2017-04-22 06:10:37 +00:00
Krazy
8ef8197c92 [maven-release-plugin] prepare release forge-1.5.61 2017-04-22 06:10:22 +00:00
Agetian
d235a8d136 - Removed a debug line. 2017-04-21 05:56:57 +00:00
Agetian
6a0e16e4cb - Fixed the AI failing to target with Chandra's Ignition (needs generalization for other similar SAs that do not target directly, but it's a bit tricky) 2017-04-21 05:56:31 +00:00
Hanmac
58d013e5be GameEntity#AddCounter now has a Source parameter
update all Effects using them
2017-04-20 12:34:31 +00:00
Sol
2f9319c420 Initial pass of Exert (lots of things to be improved, but should be good enough to start scripting) 2017-04-16 20:00:42 +00:00
Hanmac
8606459cef fixed GameState for dumping and reloading 2017-04-16 13:28:06 +00:00
Sol
d1b3cc6311 GameState shouldn't crash for nontokens without paper cards 2017-04-09 03:14:00 +00:00
Sol
54de9f1009 Fix GameState counters for Permanents 2017-04-09 02:36:22 +00:00
Sol
836ebdc5e6 Initial checkin for Puzzle Mode 2017-04-08 15:17:07 +00:00
Hanmac
e91ad84761 UntapAi: fixed chooseSingleCard, getAllies does not return player itself 2017-04-01 16:56:11 +00:00
Hanmac
fb482d4b61 ComputerUtil: add logic for Council's dilemma votings
add helper lifegainPositive & lifegainNegative for looking at lifegain replacement effects
2017-04-01 15:01:40 +00:00
Hanmac
a2579834cd FlipACoinAi: format and remove getOpponent 2017-04-01 14:57:50 +00:00
Hanmac
f132885b70 PlayerControllerAi & AiController: move chooseSingleReplacementEffect into the brain part
also add logic for Lifegain replacement effects
2017-03-19 20:25:56 +00:00
Hanmac
044f60b4d1 SpellAbility & CardTraitBase: move hasParam and getParam into CardTraitBase
add CardTraitPredicates as base for SpellAbilityPredicates
2017-03-19 13:05:06 +00:00
Agetian
711f741f6a - Fixed a logic in DrawAi making the AI incorrectly target itself when it can't (e.g. Thought-Knot Seer "target opponent" ability). 2017-03-07 06:41:57 +00:00
Sol
144156c497 Add Ballot Broker, Borderland Explorer, Custodi Soulcaller, Illusion of Choice (CN2) 2017-03-05 02:53:42 +00:00
Myrd
8311daada4 [Simulated AI] Don't de-dupe creatures involved in combat when evaluating potential targets.
Makes an exception if two identical creatures are attacking the same entity and haven't been blocked yet.
2017-02-27 00:05:31 +00:00
Myrd
0527f4cb44 [Simulated AI] Smart decisions about whether to play spells before or after blocks.
For example, using a doom blade before blocks to attack for lethal is preferred vs using a pump spell after blocks to pump an unblocked creature for lethal damage. Adds relevant tests.
2017-02-26 21:22:10 +00:00
Hanmac
35ad14aba4 LoseLifeAi: refactored to work better with DrawAi 2017-02-25 10:09:34 +00:00
Hanmac
421ceeb776 DrawAi: some fixes with Drawing and Lose Life 2017-02-25 10:08:50 +00:00
Agetian
4f3272bc6f - Moved a comment line. 2017-02-21 07:07:52 +00:00
Agetian
dbe010b245 - A little precautionary measure for the possible future cards / custom cards utilizing AF Clash. 2017-02-21 07:02:55 +00:00
Agetian
9464645906 - Fixed Springjack Knight not triggering for the AI (proper creature targeting wasn't implemented). 2017-02-21 07:00:20 +00:00
Sol
7f82e78b92 [maven-release-plugin] prepare for next development iteration 2017-02-21 04:12:49 +00:00
Sol
c19c8a62e0 [maven-release-plugin] prepare release forge-1.5.60 2017-02-21 04:12:35 +00:00
Myrd
ab8fd9e314 [Simulated AI] Fix simulation of playing spells exiled with Abbot of Keral Keep. 2017-02-20 18:46:28 +00:00
Myrd
e6c8c15cab [Simulated AI] Fix propagation of remembered card states across game copies.
This makes simulations involving e.g. Abbot of Keral Keep not forget that they can play the card that was exiled.
2017-02-20 18:24:27 +00:00
Hanmac
c0e3820158 DrawAi: refactor AI to consider LoseLife and Poison sub abilities and try to kill opponents with it 2017-02-20 06:01:30 +00:00
Hanmac
4309f9c272 FightAi: use getOpponents instead of just getOpponent 2017-02-19 16:23:31 +00:00
Agetian
423599eaa3 - For cards like Restore Balance, Balance, etc., and for other cases where the AI uses getWorstLand/getWorstLandToAnimate, ensure that lands with negative initial score are still considered and picked by the AI (otherwise they're never picked even if the pick is mandatory). 2017-02-19 04:27:45 +00:00
Agetian
a4b3cbe78d - One more inverted logic fix. 2017-02-17 15:29:12 +00:00
Agetian
c8b4295da2 - Fixed the implementation of mandatory AB Phases AI a bit (and simplified it). 2017-02-17 15:25:34 +00:00
Agetian
61e16034c6 - Fixed mandatory AB Phases not triggering for the AI (e.g. Shimmering Efreet) 2017-02-17 15:24:05 +00:00
Agetian
fa0b726dbd - Better AI logic name for Evolutionary Escalation. 2017-02-12 06:46:49 +00:00
Hanmac
32981c7577 Card: remove StaticAbilityStrings, copy the static abilities directly 2017-02-12 02:55:38 +00:00
Agetian
bf23b8ade4 - Fixed Evolutionary Escalation not working for the AI.
- Some cleanup in CountersPutAi.
2017-02-11 16:13:25 +00:00
Hanmac
9e13603122 ClashAi: rewrite it to use new SpellAbilityAi format 2017-02-11 09:17:59 +00:00