Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Self-replacement effects and 616 - Interaction of Replacement effects are not fully supported (part of blood moon problem?) #13062

Open
JayDi85 opened this issue Nov 10, 2024 · 2 comments
Labels
bug Bugs and errors refactoring Developers topics about code and programming

Comments

@JayDi85
Copy link
Member

JayDi85 commented Nov 10, 2024

Found some strange and non-used code in EnterEventType:

  • EnterEventType.SELF -> EventType.ENTERS_THE_BATTLEFIELD_SELF - only Bestow ability used it
  • EnterEventType.CONTROL -> EventType.ENTERS_THE_BATTLEFIELD_CONTROL - never used
  • EnterEventType.COPY -> EventType.ENTERS_THE_BATTLEFIELD_COPY - never used
  • EnterEventType.OTHER -> EventType.ENTERS_THE_BATTLEFIELD -- all around

That's enters logic was introduced for multiple [[Metallic Mimic]] bug in #2765 to support self-replacement effects from rules 616.1a:

616.1a
If any of the replacement and/or prevention effects are self-replacement effects (see rule 614.15), one of them must be chosen. If not, proceed to rule 616.1b.
614.15
Some replacement effects are not continuous effects. Rather, they are an effect of a resolving spell or ability that replace part or all of that spell or ability’s own effect(s). Such effects are called self-replacement effects. The text creating a self-replacement effect is usually part of the ability whose effect is being replaced, but the text can be a separate ability, particularly when preceded by an ability word. When applying replacement effects to an event, self-replacement effects are applied before other replacement effects.

shot_241110_134233

If you replace self-event by EventType.ENTERS_THE_BATTLEFIELD in Bestow then no failed tests found, so it's useless?

Current problems:

  1. Looks like self-replacement effects are not fully supported in all cards -- it works as normal effects in current version (e.g. user will see choose dialog). Potential bug from Riot ability due miss self-replacement logic: Riot and Creature spells entering as non-creatures - bug #6413
  2. Control modification effects not fully supported? No code usage for EnterEventType.CONTROL or EventType.ENTERS_THE_BATTLEFIELD_CONTROL:

    616.1b
    If any of the replacement and/or prevention effects would modify under whose control an object would enter the battlefield, one of them must be chosen. If not, proceed to rule 616.1c.

  3. Copy replacement effects not fully supported? No code usage for EnterEventType.COPY or EventType.COPY:

    616.1c
    If any of the replacement and/or prevention effects would cause an object to become a copy of another object as it enters the battlefield, one of them must be chosen. If not, proceed to rule 616.1d.

  4. It's also interesting note for "616. Interaction of Replacement and/or Prevention Effects" -- if you look above to 616.1b and 616.1c then can see the diff order from continues effects (layers logic):

TODO:

  • Need research of EnterEventType and 616 rules support. Is it easy to implement in all related cards (use diff ENTERS_THE_BATTLEFIELD events due effect's logic - self, copy, control or other -- ~300 cards/abilities)? I think on good implementation it can fix many reported "blood moon" problems.
@JayDi85 JayDi85 added bug Bugs and errors refactoring Developers topics about code and programming labels Nov 10, 2024
Copy link

Metallic Mimic - (Gatherer) (Scryfall) (EDHREC)

{2}
Artifact Creature — Shapeshifter
2/1
As Metallic Mimic enters, choose a creature type.
Metallic Mimic is the chosen type in addition to its other types.
Each other creature you control of the chosen type enters with an additional +1/+1 counter on it.

Urza's Saga - (Gatherer) (Scryfall) (EDHREC)

Enchantment Land — Urza's Saga
(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)
I — Urza's Saga gains "{T}: Add {C}."
II — Urza's Saga gains "{2}, {T}: Create a 0/0 colorless Construct artifact creature token with 'This creature gets +1/+1 for each artifact you control.'"
III — Search your library for an artifact card with mana cost {0} or {1}, put it onto the battlefield, then shuffle.

Echoing Deeps - (Gatherer) (Scryfall) (EDHREC)

Land — Cave
You may have Echoing Deeps enter tapped as a copy of any land card in a graveyard, except it's a Cave in addition to its other types.
{T}: Add {C}.

@JayDi85
Copy link
Member Author

JayDi85 commented Nov 10, 2024

It's can be an alternative solution for long waiting blood moon problem fix ^

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Bugs and errors refactoring Developers topics about code and programming
Projects
None yet
Development

No branches or pull requests

1 participant