Commit Graph

28210 Commits

Author SHA1 Message Date
excessum
da74a6f70a - Fixed bug with the AI treating spells with DamageDeal SubAbility that can target players as free pings 2015-02-14 11:51:44 +00:00
Agetian
c256b29ce6 - Fix the triggered abilities still visually appearing when suppressed (e.g. with Humility). 2015-02-14 11:21:04 +00:00
Hellfish
25da751464 *Added a few provisions for Tiny Leaders 2015-02-14 09:54:14 +00:00
Agetian
17e768e85c - Fixed compilation of mobile version of Forge. 2015-02-14 09:52:54 +00:00
Hellfish
8e62e17f65 *Made Delved cards not exile until cost is fully paid 2015-02-14 09:09:04 +00:00
elcnesh
e0e38b6cc4 Add cleanup do Kheru Dreadmaw. 2015-02-14 08:38:37 +00:00
elcnesh
a6bcd59819 Fix static abilities not removing triggers. 2015-02-14 08:26:27 +00:00
excessum
8688494718 - Fixed AI for Polukranos, World Eater 2015-02-14 08:08:48 +00:00
Myrd
35881d5cf0 Switch ConcurrentSkipListMap to TreeMap, as ConcurrentSkipListMap.isEmpty() showed up in profiles and these collections aren't meant to be manipulated concurrently. 2015-02-14 07:34:22 +00:00
Myrd
b9d9678e56 Avoid double look up in map. 2015-02-14 07:18:03 +00:00
Myrd
9f03746360 Optimize static effect checks even more based on profiling. 2015-02-14 07:09:05 +00:00
Myrd
5d6f5912e3 Cache trigger constructor instead of looking it up each time createTrigger is called. This was showing up in profiles of simulation code. 2015-02-14 06:57:15 +00:00
Myrd
8aae10fedd Fix Simulation AI not being able to target some permanent types. 2015-02-14 05:59:26 +00:00
excessum
dd28144134 - Fixed AI for Chained to the Rocks 2015-02-14 03:11:12 +00:00
Myrd
b131f59976 Fix NPE with empty stack. 2015-02-13 05:41:40 +00:00
Myrd
cad21523ff Fix index out of bounds with multiple targets. 2015-02-13 05:24:25 +00:00
Myrd
edbbc582c7 Fix game copy error with monstrous with a test. 2015-02-13 05:17:22 +00:00
Myrd
0d748ed593 Don't recurse if the game is already over. 2015-02-13 04:58:13 +00:00
Myrd
2f161224b2 Simulation AI: Implement looking ahead more than one move. This allows, for example, choosing the SpellAbility to use a fetchland to get the right type of mana in order to play another spell in hand, just from simulation.
This is an initial implementation with a max recursion depth of 5.

There are many improvements that can be made - for example to speed it up, by caching the planned SA chain - so that (if things are going to plan), the chain doesn't have to be recomputed each time.

Also, the AI doesn't currently simulated both types of decisions for a fetchland (i.e. evaluate difference between fetching a Plains vs. a Forest) - it picks one arbitrarily, which sometimes causes it to miss better plays. This needs to be fixed.
2015-02-13 04:52:08 +00:00
Myrd
43005bc1e4 Copy cards in command zone too. 2015-02-13 04:15:01 +00:00
Sol
73f0377778 - Fix type of Write into Being 2015-02-13 03:17:19 +00:00
Hellfish
0c45c6ce09 *AFAICT fixed Delve-ing other players' cards. 2015-02-12 23:00:18 +00:00
Hellfish
3127b380a4 *Fixed The Fourth Sphere token amount 2015-02-12 18:15:24 +00:00
Myrd
b138ec3e1d Make CreatureEvaluator implement Function, so that a separate class isn't needed for that. 2015-02-12 05:11:55 +00:00
Myrd
5617b87c28 Re-enable test now that it's fixed. 2015-02-12 04:44:08 +00:00
drdev
15e0d372fb Update Pro Tour link 2015-02-10 15:30:06 +00:00
drdev
9e03f047a9 Update Net decks urls 2015-02-10 15:16:26 +00:00
drdev
b6f69b0762 Fix issue blocking compile of mobile app 2015-02-10 14:54:00 +00:00
Sloth
aa4ffd5551 - Added the quest decks Dracula 3 (by tojammot) and Sidisi 2. 2015-02-09 20:05:33 +00:00
Sloth
042a49aef6 - Fixed Layer of static abilities granting hidden keywords (part 3). 2015-02-09 18:46:22 +00:00
Sloth
286d065913 - Fixed Layer of static abilities granting hidden keywords (part 2). 2015-02-09 08:17:44 +00:00
Myrd
e89324537c Tweak eval scoring for cards in hand and life for Simulated AI. 2015-02-08 20:38:41 +00:00
Myrd
1963cc94ad Fix simulated AI finding wrong card in hand when simulating and add a test. 2015-02-08 20:21:23 +00:00
Myrd
2dc5d6da09 Consider planeswalkers with more loyalty counters better, so that AI will activate Liliana's discard ability even if opponent has no cards in hand. 2015-02-08 20:03:12 +00:00
Myrd
2afff9c9c0 Make game state save/restore also affect command zone. 2015-02-08 19:58:05 +00:00
Myrd
457636f2e3 Make simulated AI ignore temp power/toughness boosts in certain cases when evaluating. (Initial version - can be made quite a bit smarter based on this later.) 2015-02-08 19:43:40 +00:00
Sloth
34e4c5bdf9 - Updated some quest decks. 2015-02-08 19:33:54 +00:00
Myrd
2766caec2c Fix simulation of unmorph abilities that don't use the stack, with a test.
Also, disables a test that started to fail for some reason. Will investigate why it's failing after this commit.
2015-02-08 18:08:51 +00:00
Myrd
188ff29384 Remove println. 2015-02-08 17:50:15 +00:00
Myrd
ff18cb74c8 Fix dumping and restoring game state with morphed creatures. 2015-02-08 17:43:09 +00:00
Sloth
019a241184 - Fixed Layer of static abilities granting hidden keywords. 2015-02-08 14:37:34 +00:00
Sloth
fde826e2d9 - The trigger of Sepulchral Primordial is now optional. 2015-02-08 14:34:09 +00:00
Sloth
85f33fd336 - Fixed Ruthless Instincts. 2015-02-08 14:27:10 +00:00
Sloth
0ea7e765a0 - Improved DigAI. 2015-02-08 14:02:47 +00:00
Sloth
b5dd19867a - Cleanup and NPE protection. 2015-02-08 13:36:17 +00:00
Sol
2c2139e3d6 - Fix Sudden Reclamation 2015-02-08 13:35:54 +00:00
Sloth
74d25c7ce1 - Fixed two typos. 2015-02-08 12:59:08 +00:00
Myrd
20bd3e3ea9 Fix formatting. 2015-02-07 19:40:20 +00:00
Myrd
8e1feb1dc6 Make a helper class for evaluating a creature, so that it can be more easily customized through subclassing. 2015-02-07 19:39:40 +00:00
Myrd
8a96a479bb - Fix build that I broke.
- Commit some in-progress stack copying code that doesn't work yet (disabled).
- Throw exception when a GameObject couldn't be mapped from the orig game.
2015-02-07 19:18:37 +00:00