Page 1 of 1

When foo enters the battlefield, return bar to your hand

PostPosted: 27 Mar 2012, 08:58
by mark
Some time ago I saw a problem where the AI played a land that enforces to return a land to AI's hand. As this land was the only available land, the AI produced an endless loop. I cannot recall which land this was and I think that this was fixed (not sure about this, though).

Now I see the same problem with Whitemane Lion: when it enters the battlefield, return a creature (which is Whitemane Lion as it is the only creature)...

Re: When foo enters the battlefield, return bar to your hand

PostPosted: 27 Mar 2012, 12:15
by friarsol
mark wrote:Some time ago I saw a problem where the AI played a land that enforces to return a land to AI's hand. As this land was the only available land, the AI produced an endless loop. I cannot recall which land this was and I think that this was fixed (not sure about this, though).

Now I see the same problem with Whitemane Lion: when it enters the battlefield, return a creature (which is Whitemane Lion as it is the only creature)...
This seems to be the same situation I was just talking about in the other thread. ETB effects are "tested" by the AI if they have start with DB in the script and not AB. It looks like the Lion has a DB, and thus isn't tested. We should probably make sure any ETB triggers have a DB on their trigger line so these loops won't happen.

Re: When foo enters the battlefield, return bar to your hand

PostPosted: 27 Mar 2012, 12:22
by moomarc
friarsol wrote:This seems to be the same situation I was just talking about in the other thread. ETB effects are "tested" by the AI if they have start with DB in the script and not AB. It looks like the Lion has a DB, and thus isn't tested. We should probably make sure any ETB triggers have a DB on their trigger line so these loops won't happen.
Wrong Marc, but I see what you were referring to now. Thanks

EDIT: I've tried changing it in my local copy and it works great (unless the ai ends up with two in hand). But I find you have better control over situations like these using something like
Code: Select all
SVar:NeedsToPlayVar:X GE1
SVar:X:Count$Valid Creature.YouCtrl
We might even be able to add restrictions based on specific trigger configurations to avoid it still looping if there's more than one creature of this type. [Edit] Nevermind. IT will then wait to have more than one creature but targets itself with the bounce anyway.

EDIT2: Regardless of all this, the AI shouldn't have had the Whitemane Lion because it has RemAIDeck.

Re: When foo enters the battlefield, return bar to your hand

PostPosted: 27 Mar 2012, 13:53
by friarsol
moomarc wrote:
friarsol wrote:This seems to be the same situation I was just talking about in the other thread. ETB effects are "tested" by the AI if they have start with DB in the script and not AB. It looks like the Lion has a DB, and thus isn't tested. We should probably make sure any ETB triggers have a DB on their trigger line so these loops won't happen.
Wrong Marc, but I see what you were referring to now. Thanks
Yea I know, but it seemed appropriate to mention it, since it was just discussed on the forum. The AI testing was more designed for cards like Foul Imp so the AI wouldn't kill themselves with it (as a replacement for etbLoseLife), but works in these situations as well.

Re: When foo enters the battlefield, return bar to your hand

PostPosted: 28 Mar 2012, 21:16
by Chris H.
friarsol wrote:The AI testing was more designed for cards like Foul Imp so the AI wouldn't kill themselves with it (as a replacement for etbLoseLife), but works in these situations as well.
`
It looks like there are over 600 ETB cards that need to be converted from AB to DB. Do you want all of them handled this way?

Re: When foo enters the battlefield, return bar to your hand

PostPosted: 29 Mar 2012, 06:09
by Sloth
Chris H. wrote:
friarsol wrote:The AI testing was more designed for cards like Foul Imp so the AI wouldn't kill themselves with it (as a replacement for etbLoseLife), but works in these situations as well.
`
It looks like there are over 600 ETB cards that need to be converted from AB to DB. Do you want all of them handled this way?
I've converted most of the important ones already and i don't think a general conversion is needed. I left some cards with AB on purpose, because the AI won't play them otherwise (or hold them back needlessly).

These are reasons to not convert them to DB:
- The new permanent makes the ability useful, when it wasn't before (for example Inner-Flame Acolyte).
- There are Conditions in the ability (the AI does not check conditions).
- The ability is so minor (and the body of the creature so big) that it's not worth waiting for targets.
- The ability is too complex for the AI anyway (with AB you can force the AI to use it if it's not optional).

For some cards it doesn't really matter:
- Triggers with "OptionalDecider$ You" (these will always be played even when they have a DB ability).
- Token makers
- etc.

Re: When foo enters the battlefield, return bar to your hand

PostPosted: 29 Mar 2012, 14:46
by Chris H.
Sloth wrote:I've converted most of the important ones already and i don't think a general conversion is needed. I left some cards with AB on purpose, because the AI won't play them otherwise (or hold them back needlessly).
`
Yeah, I felt that the cards that could best use a AB to DB conversion had for the most part already been changed. I seem to remember some discussion on this taking pace a number of months ago and we decided that it would be best to convert some of them but not all of them.