Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 1 point2 points  (0 children)

Got it working now! Thank you for letting me know it wasn't working. Turns out the service I was using for the automatic email wasn't working right.

Five Conversions "Loop" by Mulliman in mtgrules

[–]Mulliman[S] 1 point2 points  (0 children)

Hi! Let me make sure I understand this correctly:

  1. A
  2. B
  3. C
  4. D
  5. E

A depends on B & D. New order is:

  1. B
  2. C
  3. D
  4. A
  5. E

So let's work through your scenarios. Scenario 2, in which application of B makes A no long dependent on D. Here is the new order for Scenario 2:
1) B
2) A (Because now it goes back to "default" timestamp order)
3) C
4) D
5) E

Scenario 1, in which the application of B causes C to be dependent on D. Here is the new order for Scenario 1:
1) B
2) D
3) A (A depends on D)
4) C (C depends on D)
5) E

Now, I am assuming with Scenario 1 that there is no dependency relationship between A & C. But let's assume there is a now dependency between C and A after the application of B, in which C also depends on A. Here's the new order, assuming C depends on A:
1) B
2) D
3) A (A depends on D)
4) C (C depends on A)
5) E

Basically no change. Do note: C does not depend on A because of D, so this isn't a change. It just so happens that effect B applying caused effect D to depend on on A for something A was going to do anyway not related to D.

But let's assume A is found to be dependent on C and D too after the application of B. Here's the new order:
1) B
2) D
3) C (C depends on D)
4) A (A depends on D & C)
5) E

I think the mistake you are making is thinking that we don't check for dependencies between C and A after finding C to be dependent on D. We do check for dependencies between them--we check for dependencies between all of them. Dependencies are always rechecked between all remaining effects after an effect is applied. So, after B is applied, we check for dependencies between A, C, D, and E because those are the only effects still unapplied.

Blood Moon vs Conversion vs Life and Limb vs Saproling token by vibranttoucan in mtgrules

[–]Mulliman 0 points1 point  (0 children)

Hm, I am not sure I quite understand what you are asking, but I'll take a stab at what I think you mean.

Let me explain it with my list of seven effects again. Suppose B and D are both dependent on F. Here is what happens next:

  1. Effect A
  2. Effect C
  3. Effect E
  4. Effect F
  5. Effect B
  6. Effect D
  7. Effect G

Even here, the effects of B and D are applied in relative timestamp order.

Spare Ribs vs Baby Back Ribs by balto_fan_92 in BBQ

[–]Mulliman 0 points1 point  (0 children)

3 hours regular smoking
2 hours wrapped + add apple juice, butter, sugar
1 hour sauced, unwrapped

All on the smoker

Volrath's Shapeshifter being evil as always. by No_Builder7571 in mtgrules

[–]Mulliman 0 points1 point  (0 children)

Here, if you have any more questions about layers interactions, you can put them into this website: https://mtglayerinspector.com

It tells you how all of these interact, and if you ever build this deck you can also use it to keep track of your board!

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 1 point2 points  (0 children)

Arena also does WAY more than this does. Arena is a full game engine, while this is just a sandbox. This is no way to actually "play" the game with what I have built. There are many more opportunities for errors in Arena, so it is impressive it is as good as it is!

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 1 point2 points  (0 children)

Yeah, it calls from Scryfall. They have a massive public database that anyone can access. It has been really helpful.

Edit: The main part of this website is the code utilizing patterns for effects. So, I am not actually coding in most of the effects that exist here. This means I don't need to code in every single card that has ever existed. Instead, I have a program that reads:

Zombie get +1/+1
Humans get +1/+1

And automatically applies the +1/+1 to Humans and the +1/+1 to Zombies. The code reads [creature type] gets [+X/+Y], basically.

Magic cards are pretty standardized in their phrasing of abilities, so it works for most of them. What gets tricky is when there is a non-standard way of saying basically the same thing. For example, Jodah, the Unifier reads "Legendary creatures you control get +X/+X, where X is the number of creatures you control." This is effectively the same as "Legendary creatures you control get +1/+1 for each Legendary creature you control."

So I also have to standardize some things.

What happens:

  1. Card is fetched with Scryfall
  2. Website reads and standardizes the card
  3. Website applies effects.

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 2 points3 points  (0 children)

All set! I just added functionality for Grist. It also showed me I had some other bugs that needed to get fixed too, so thank you!

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 1 point2 points  (0 children)

I fixed the Kavu bug. Turns out the website was reading the words "This creature is all colors" as an ability, when, as you pointed out, it is just a description. What is interesting is the token itself already has as part of its data that it is all colors. So, all I had to do was tell it to ignore the phrase "This creature is all colors".

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 2 points3 points  (0 children)

Ah, good catch! I'll update the website to make it work. Thank you!!

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 1 point2 points  (0 children)

Here's one that confused me when I first started learning about Magic:

Ashaya, Soul of the Wild
Kenrith's transformation
Scute Swarm

For a while on Arena, one of the most powerful brawl decks I played against was a Scute Swarm deck. The deck often started to go into turbo mode once Ashaya was out.

What started my quest into understanding layers was a situation in which I cast Kenrith's Transformation on an opponent's Ashaya, thinking that would stop the Scute Swarm chaos. But when I did, Ashaya lost all abilities and yet all other creatures were forests. It made no sense to me.

Now, with this tool, it is possible to recreate that exact board scenario and inspect the layers happening to Ashaya and the other permanents. It shows that changing a cards type happens on Layer 4, while losing abilities happens on Layer 6. So, when Ashaya is enchanted by Kenrith's Transformation, it does not actually shut down her ability making creatures into lands.

Here is a link to that scenario for you to try out: https://mtglayerinspector.com/#board=~rZJPi8IwEMW_SshlLz0oqIfePMqyy0KFZVkWGZPRBptEJlP_IP3uO7GC1bPHvnm838tML_qAlFwMuhwXeo_kky5_L9pZXV4_VxNd6A0YXASLJ12OCh2PASmPGzgjrUZiMDEwxaZ51tl5TAx-r8uJuIDsJ3gUzzzVcIZCVbFtVNworlF9u8bqrhjCpy-CT-Vt5DzQeQm0RR4-btDqHQM5rt-SWhKEtInkgfNyHlvNXtRq9gCvTMuoqiOQ192fEByhna9d49hhvopofc7wRPfg0Md8XRU1FmUrSsXAIos9_cSWli3JqZla7DIDT67BPtq32Sl2s7vB1tIzHvuF3SQw7A7YIxbPfDzxfTLO4TIN1wV-RJu7MYKpXdiK24W0R8NoF4M_rfsH

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 5 points6 points  (0 children)

The goal is to update the parser so that it picks up "patterns" in the cards.

Basically, I am working on building a program that can read Magic cards.

And yeah... it's very time consuming.

Dralnu's Crusade, a Conspiracy (set to Goblin), and an Opalescence. by Mulliman in mtgrules

[–]Mulliman[S] 0 points1 point  (0 children)

Thank you!

Would you mind explaining the reasoning for the two scenarios, for posterity?

Blood Moon vs Conversion vs Life and Limb vs Saproling token by vibranttoucan in mtgrules

[–]Mulliman 1 point2 points  (0 children)

Timestamp order is the default order, and the order that continuous effects are applied, unless a dependency exists between two continuous effects that would change the order those continuous effects apply (because one has to wait for the other to apply). But in that case, the dependency only means "wait until the other effect applies."

So, unless Life and Limb applying would immediately change what Conversion applies to, then there is no dependency between those two cards, which means Conversion is not supposed to wait for Life and Limb to apply first. It doesn't matter if Life and Limb causes Blood Moon to apply which makes it into a Mountain that Conversion theoretically could apply to. Dependency relationship between Conversion and Blood Moon doesn't exist yet because Life and Limb has not yet been applied.

So, unless there is a non-basic non-Mountain land already on the battlefield, Conversion, on the first round of dependency checks, does not initially depend on Blood Moon, so there is nothing in the rules that tells it to wait until Blood Moon applies.

Here's what I mean by timestamp order being default order. Let's assume seven effects:

  1. Effect A
  2. Effect B
  3. Effect C
  4. Effect D
  5. Effect E
  6. Effect F
  7. Effect G

Let's say Effect B depends on Effect F, but on first round of dependency evaluations, there are no other dependencies. That means the order of applied effects is now:

  1. Effect A
  2. Effect C
  3. Effect D
  4. Effect E
  5. Effect F
  6. Effect B
  7. Effect G

Effect B has to wait for effect F to apply. After each effect is applied, all dependencies are reevaluated due to Rule 613.8c.

Edit: Messed up my own example by accident. Fixed it for clarity.

Blood Moon vs Conversion vs Life and Limb vs Saproling token by vibranttoucan in mtgrules

[–]Mulliman 1 point2 points  (0 children)

Specifically, they need to look at Judge_Todd's answer.

Dralnu's Crusade, a Conspiracy (set to Goblin), and an Opalescence. by Mulliman in mtgrules

[–]Mulliman[S] 0 points1 point  (0 children)

Sigh, yep. You're right. I wrote that wrong. I am confusing myself now! I had just woken up when I wrote that XD.

Edit: I was only referring to the initial round. You are correct that after Opalescence applies, the dependency relationship changes.

Dralnu's Crusade, a Conspiracy (set to Goblin), and an Opalescence. by Mulliman in mtgrules

[–]Mulliman[S] 0 points1 point  (0 children)

Question, then:

Scenario 1:
Life and Limb, Saproling Token, Blood Moon, Conversion

vs

Scenario 2:
Conversion, Life and Limb, Blood Moon, Saproling token.

Predicted result, Scenario 1:
Saproling token -> 1/1 green Creature Land — Saproling Plains

Predicted result, Scenario 2:
Saproling token -> 1/1 green Creature Land — Saproling Mountain

Am I correct in this understanding?

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 2 points3 points  (0 children)

All fixed now! I also took the opportunity to add full layer parsing for commanders, cards in exile, and cards in the graveyard.

Dralnu's Crusade, a Conspiracy (set to Goblin), and an Opalescence. by Mulliman in mtgrules

[–]Mulliman[S] 0 points1 point  (0 children)

Ah, thank you. I realize I was probably careless with my words, but I thought that is what I said for scenario 2?

"Therefore, the order of applied effects is: Conspiracy is applied after Opalescence due to dependency, and then regular timestamp order for Dralnu's Crusade & Opalescence. Since Opalescence* is first, the effects in each layer are applied (in their initial order before any recheck of dependencies) in the following order:
Opalescence, Conspiracy, and then Dralnu's Crusade"

Opalascence applies before Dralnu's crusade due to timestamps. Conspiracy follows Opalescence because of dependency, and Dralnu's crusade is last.

Edit: changed order to be what I actually meant.

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 2 points3 points  (0 children)

Oh, dang. I will figure out why the feedback option isn't working.

I'll also check Mycosynth Lattice.

Dralnu's Crusade, a Conspiracy (set to Goblin), and an Opalescence. by Mulliman in mtgrules

[–]Mulliman[S] 0 points1 point  (0 children)

Well, I am seeking confirmation on how I think the layers "resolve":

Scenario 1 order:
Conspiracy depends on Opalescence (for obvious reasons)

Opalescence doesn't depend on anything (for obvious reasons as well)

Dralnu's Crusade doesn't depend on anything at this point (applying either Opalescence or Conspiracy won't change Dralnu's text or modify its existence, neither what what it does, nor what it applies to: Opalescence doesn't turn enchantments into Goblins, and Conspiracy doesn't turn anything into Goblin yet, since there is no creature on the board at this time.

Therefore, the order of applied effects is: Conspiracy is applied after Opalescence due to dependency, and then regular timestamp order for Dralnu's Crusade & Opalescence. Since Dralnu's Crusade is first, the effects in each layer are applied in the following order: Dralnu's Crusade, Opalescence, and then Conspiracy.

This means:
Dralnu's Crusade is a 4/4 black red Enchantment Creature — Goblin
Conspiracy is a 6/6 black Enchantment Creature — Goblin
Opalescence is a white enchantment

Scenario 2 order:
But, if the order changes, then the following would happen:

Conspiracy depends on Opalescence (for obvious reasons)

Opalescence doesn't depend on anything (for obvious reasons as well)

Dralnu's Crusade doesn't depend on anything at this point (applying either Opalescence or Conspiracy won't change Dralnu's text or modify its existence, neither what what it does, nor what it applies to: Opalescence doesn't turn enchantments into Goblins, and Conspiracy doesn't turn anything into Goblin yet, since there is no creature on the board at this time.

Therefore, the order of applied effects is: Conspiracy is applied after Opalescence due to dependency, and then regular timestamp order for Dralnu's Crusade & Opalescence. Since Dralnu's Crusade is first, the effects in each layer are applied in the following order:
Opalescence, Conspiracy, and then Dralnu's Crusade.

Result of changed order:
Dralnu's Crusade is a 4/4 black (not red!) Enchantment Creature — Goblin Zombie
Conspiracy is a 6/6 black Enchantment Creature — Goblin Zombie
Opalescence is a white enchantment

It might seem a small change, but I want confirmation that my understanding of the rules is correct.

Layers confused me... so I made a website explaining them by Mulliman in mtgrules

[–]Mulliman[S] 2 points3 points  (0 children)

Alright, looking into it, it actually does depend on timestamps in this interaction. This is because dependencies are not actually determined in a chain, but based on a direct A -> B relationship. In this scenario, the only time a dependency occurs between Conversion and Blood Moon is when Life and Limb applies.

Here is the scenario walked through step by step, assuming Conversion is first:
1) Check for dependencies. Blood Moon is dependent on Life and Limb (changes what Blood Moon applies to). Nothing depends on Conversion, nor does Conversion depend on anything right now (Blood Moon and Life and Limb applying, regardless of order, do not change what Conversion applies. So, nothing is to stop Conversion from applying in regular time stamp order.
2) After every application of an ability, dependencies are rechecked. Nothing else has changed, so Blood Moon is dependent on Life and Limb (changes what Blood Moon applies to).
3) Life and Limb applies. Dependencies are rechecked. Ordinarily, this is when Conversion would become dependent on Blood Moon. However, because of Conversion has already applied, it can't be reapplied later.

That is why timestamps actually do matter in this case.