{x:black}
{x:color}
creating a snapshot of a card instance in garbage for stored cards, the issue with previous version was it was using base model value instead of what the storedcard was actually at the time it was in battlefield. example, animal boneyard test was coming up 1 toughness short becuase the creature storedcard pointed to was sent to graveyard for the sacrifice.
changed myStored TargetChooser to use storedSourceCard instead, as this is supposed to point to the actual card and not a snapshot.
this is a method to set the order in which ai decides to play cards, you can for example tell ai to look for 2 instants, before trying to find a creature.
be sure to list all main types of the deck otherwise ai will pass on stuff
this is the current
const char* types[] = {"planeswalker","creature", "enchantment", "artifact", "sorcery", "instant"};
so be sure you include them if the decks need them.
other the above example would be coded
HINT:castpriority(instant,instant,creature,planeswalker,enchantment,artifact,sorcery)
as you can see this deck will now look for and play if possible, 2 instants before any of the other types.
this will really help with decks which rely on cards like dark ritual to produce mana to cast creature, simply by listing instant before creature. if the deck had dark rituals, in the above example, and it had them in hand, it would then cast dark ritual, dark ritual, then one of the remaining types. this is actually tested not just assumed.
Call for Blood
Carrion
Corpse Lunge
Final Strike
Fling
Forge Armor
Ichor Explosion
Momentous Fall
Rite of Consumption
Surge of Strength
Worthy Cause
- Added Stunted Growth
- Fixed Specter's Shroud
AI is able now to make simple decisions like "Chosen Discard", "Chosen Sacrifice" and so on. This leads to a massive card package which contains many powerful and much beloved cards like the Eldrazi creatures:
[card]
name=Kozilek, Butcher of Truth
autostack=draw:4 controller
autograveyard=moveTo(ownerlibrary) && shuffle
auto=@combat(attacking) source(this):name(Annihilate) ability$!name(sacrifice 4 permanents) notatarget(<4>*|mybattlefield) sacrifice!$ opponent
text=When you cast Kozilek, Butcher of Truth, draw four cards. -- Annihilator 4 (Whenever this creature attacks, defending player sacrifices four permanents.) -- When Kozilek is put into a graveyard from anywhere, its owner shuffles his or her graveyard into his or her library.
mana={10}
type=Legendary Creature
subtype=Eldrazi
power=12
toughness=12
[/card]
Tests will follow.
Card list in the first comment. Have fun!
reasons behind this are as follows:
1:separation of the battlefields is already incredibly clear by the huge gap between the center...
2:a line drawn on battlefield that represents the seperation is something that should be handled outside of the engine, in the actual battlefield graphic.
3:on hires screens this line stands out like a sore thumb.
4:the line is draw on top level above the cards making it stand out even worse when you have a battle going. as well as cutting over the top of the cards in displayed hand view.
over all the battlefield looks cleaner.