Re: StaticEffectFactory
Chris, AILogic$ Curse.
High Quality Resources for Collectible Card Games and Home of the CCGHQ Team
https://www.slightlymagic.net/forum/
https://www.slightlymagic.net/forum/viewtopic.php?f=52&t=4941
`jeffwadsworth wrote:Chris, AILogic$ Curse.
`friarsol wrote:The AI is still pretty rudimentary as I got caught up in the Women's World Cup this morning/afternoon instead of adding more AI.
It looks like there's about 10 or so cards that give Power bonuses, but Toughness reductions. That might be enough to have it's own Logic. For now I'd say just use Pump for those, and I'll try to add a check to filter out creatures that would get killed by the Aura before I goto sleep tonight.
Well, at the very least it won't kill a Creature now when playing (I tested with Twisted Experiment ) The next piece of AI is not over-Enchanting cards. enPump did this by simply Filtering out any Cards that are being Enchanted. That's probably a fine way to get something in place, since this filter would happen after Enchant Magnets. I would like to flesh out the other Logics, and I (or someone else) can beef up specifics in Pump after.Chris H. wrote:Thank you Sol. Yeah, these cards can be tricky for the computer. The aura keywords were not updated to handle this well.
It might be (?) worth the effort to have it's own logic. With creatures that are unblockable, trample, first/double strike, etc. It can get tricky.
`friarsol wrote:Well, at the very least it won't kill a Creature now when playing (I tested with Twisted Experiment ) The next piece of AI is not over-Enchanting cards. enPump did this by simply Filtering out any Cards that are being Enchanted. That's probably a fine way to get something in place, since this filter would happen after Enchant Magnets. I would like to flesh out the other Logics, and I (or someone else) can beef up specifics in Pump after.
Just like all AFs there is a base canPlayAI() that determines if the SA will actually be cast. The Logic portion of the AF is simply to determine the best candidate, if any. We can tweak the numbers in canPlayAI() to cast Auras more aggressively (Like say be much more likely to play Auras before combat, and if the card returned doesn't have any suitable defenders for the next combat.)Chris H. wrote:I tested your code change and it is working. I did notice that the computer did not cast the Twisted Experiment as soon as it had a creature with a toughness greater than 1. The computer waited a few turns and then casted the aura. Not a complaint, just an observation.
The problem with setting any kind of limitation on the number enchantments an item will get is that there are cards that get power/toughness boosts for every enchantment that gets placed on them. Rabid Wombat is an example.friarsol wrote:Well, at the very least it won't kill a Creature now when playing (I tested with Twisted Experiment ) The next piece of AI is not over-Enchanting cards. enPump did this by simply Filtering out any Cards that are being Enchanted. That's probably a fine way to get something in place, since this filter would happen after Enchant Magnets. I would like to flesh out the other Logics, and I (or someone else) can beef up specifics in Pump after.Chris H. wrote:Thank you Sol. Yeah, these cards can be tricky for the computer. The aura keywords were not updated to handle this well.
It might be (?) worth the effort to have it's own logic. With creatures that are unblockable, trample, first/double strike, etc. It can get tricky.
No doubt Sol will take that into account with the AI portion.timmermac wrote:The problem with setting any kind of limitation on the number enchantments an item will get is that there are cards that get power/toughness boosts for every enchantment that gets placed on them. Rabid Wombat is an example.friarsol wrote:Well, at the very least it won't kill a Creature now when playing (I tested with Twisted Experiment ) The next piece of AI is not over-Enchanting cards. enPump did this by simply Filtering out any Cards that are being Enchanted. That's probably a fine way to get something in place, since this filter would happen after Enchant Magnets. I would like to flesh out the other Logics, and I (or someone else) can beef up specifics in Pump after.Chris H. wrote:Thank you Sol. Yeah, these cards can be tricky for the computer. The aura keywords were not updated to handle this well.
It might be (?) worth the effort to have it's own logic. With creatures that are unblockable, trample, first/double strike, etc. It can get tricky.
"That's probably a fine way to get something in place, since this filter would happen after Enchant Magnets." Rabid Wombat is one of those "Enchant Magnets" I referenced. If an Enchant Magnet is available one is used.timmermac wrote:The problem with setting any kind of limitation on the number enchantments an item will get is that there are cards that get power/toughness boosts for every enchantment that gets placed on them. Rabid Wombat is an example.
`Sloth wrote:I'm pretty sure all stPumpEnchanted keywords can be converted to continuous static effects already.Chris H. wrote:It should be possible to replace the "K:enPump:0/0" keyword now and to replace the static keyword portion once the StaticAbility AF can handle this.
Chris, just do something likeChris H. wrote:`Sloth wrote:I'm pretty sure all stPumpEnchanted keywords can be converted to continuous static effects already.Chris H. wrote:It should be possible to replace the "K:enPump:0/0" keyword now and to replace the static keyword portion once the StaticAbility AF can handle this.
I have started on these auras. I was right about replacing the "K:enPump:0/0" keyword and the only question here is the auras with stPumpEnchanted. Many of them are simple enough to convert. Some of them may not be doable?
Man look at Jeff, all the tough love and dedication really paid offjeffwadsworth wrote:Chris, just do something like
S:Mode$ Continuous | Affected$ Creature.EnchantedBy+Blue | AddPower$ 1 | AddToughness$ 1 | AddKeyword$ Shroud
and use
Threshold$ True for the other one.
More like obsession...the good kind.friarsol wrote:Man look at Jeff, all the tough love and dedication really paid offjeffwadsworth wrote:Chris, just do something like
S:Mode$ Continuous | Affected$ Creature.EnchantedBy+Blue | AddPower$ 1 | AddToughness$ 1 | AddKeyword$ Shroud
and use
Threshold$ True for the other one.