How exactly does Hapatra work with Blowfly infestation

Asked by otters 5 years ago

At first glance, Blowfly Infestation seems to go infinite with Hapatra, vizier of Poisons (with some setup), but I think the stack does not work that way. what I think happens is, you put a -1/-1 counter on a snake somehow, and Hapatra triggers. Then state based actions apply and the snake dies, triggering blowfly infestation before you get another snake. You put the new counter on another snake, trigger hapatra, and then the snake dies and you have to do it all again before any hapatra triggers resolve, and you run out of snakes without an infinite loop. I have found nothing on the internet that can support my position but nobody has given a detailed explanation of how it works if it does. Can somebody clear my confusion?

PlutoniumWedding says... Accepted answer #1

I'll give it a shot, based on my best interpretation of the rules. Please bear in mind that I'm no judge.

The relevant rule here appears to be this:


704.3. Whenever a player would get priority (see rule 116, “Timing and Priority”), the game checks for any of the listed conditions for state-based actions, then performs all applicable state-based actions simultaneously as a single event. If any state-based actions are performed as a result of a check, the check is repeated; otherwise all triggered abilities that are waiting to be put on the stack are put on the stack, then the check is repeated. Once no more state-based actions have been performed as the result of a check and no triggered abilities are waiting to be put on the stack, the appropriate player gets priority. This process also occurs during the cleanup step (see rule 514), except that if no state-based actions are performed as the result of the step’s first check and no triggered abilities are waiting to be put on the stack, then no player gets priority and the step ends.


Let's assume you have Hapatra, Vizier of Poisons, Blowfly Infestation and two Snake tokens. Then some other creature with a -1/-1 counter on it dies. Here's what happens:

Blowfly Infestation triggers. It goes on the stack and you pick one of your snakes (Snake 1) as the target.

Blowfly Infestation's ability resolves, putting a -1/-1 counter on Snake 1.

The game checks for state-based actions. Snake 1 dies (RIP). We also want to put Hapatra's trigger on the stack, but crucially, we can't do so until we're done with checking for SBAs. Since a state-based action was carried out during the first cycle of checks, we need to do so again.

On the second round of SBA checks, we find that a creature with a -1/-1 counter on it (poor Snake 1) has died, so we make a mental note that we want to put Blowfly Infestation's ability on the stack as well.

No state-based actions were carried out during the last check, so we're done with those. We now have both Hapatra's and Blowfly Infestation's abilities to put on the stack. Since you control both, you get to choose the order in which they do. Since you want to go infinite, you choose to put Hapatra's ability on top so that it resolves first, and choose your sole remaining snake (Snake 2) as the target for Blowfly Infestation's ability.

Hapatra's ability resolves. You now have one fresh snake (Snake 3) and one old snake (Snake 2) with a Blowfly Infestation trigger aimed at it.

The process is repeated, killing Snake 2, targeting Snake 3 and creating Snake 4. Infinite loop established.


To end the loop, either target a creature that won't die (e.g. Hapatra), get rid of one of your enablers or win the game (say with Zulaport Cutthroat).

You can also choose to reverse the resolution order for the triggered abilities. This allows you to end the loop even if Hapatra is wearing Lightning Greaves and your opponents have no creatures by creating a situation where you have no legal targets for Blowfly Infestation. You end up with fewer snakes than you started with, though, so it's a lot of trickery for little payoff in that case. Might be useful to prevent a draw if your opponent responded with Angel's Grace or something.


TL;DR: I think you can go infinite because you don't put abilities on the stack until after you are done resolving all state-based actions, so you can create the next snake before killing all the ones you have.

Please correct me if I'm wrong!

December 18, 2018 2:11 a.m.

Boza says... #2

Unfortunately, the penny on the railroad tracks is that targets for abilities are chosen when they are put on the stack.

So, when the affectionately named Snake 1 dies, both hapatra and infestation trigger. You have to choose a target for Blowfly Infestation at that point, way before the ability of hapatra has a chance to resolve and create a snake token. So, there is no loop possible with just those two cards.

The loop could be infinite if you did not have to specify targets for infestation.

December 18, 2018 2:41 a.m.

Gidgetimer says... #3

otters, please link all cards in your question by putting double brackets around the card name.

PlutoniumWedding, please don't use qualifiers in your answer. If you are wrong, someone will let you know. Unfortunately in this case you are right and a wrong answer looks more credible than yours because they didn't use qualifiers.

The Hapatra, Vizier of Poisons and Blowfly Infestation interaction does nothing on its own. You must have a third card to generate advantage from the loop. PlutoniumWedding has the explanation right and takes into account Boza's consideration. The important parts are that SBAs are checked and performed before triggers go on the stack and that if multiple things have triggered under one player's control they get to choose the order they go on the stack and therefore resolve.

If you have 2 1/1s and can place a -1/-1 counter you place it on the first. Hapatra triggers and waits to go on the stack. Token dies and infestation triggers and waits to go on the stack. You put infestation on the stack targeting the remaining 1/1 and Hapatra above it. Hapatra resolves giving you a snake. Infestation resolves triggering Hapatra and killing the token. This leaves us at the same place we were after the first 1/1 died (a 1/1 on the board and both triggers to put on the stack).

December 18, 2018 6:28 a.m.

otters says... #4

Thank you everybody, for responding! The part I was confused about is whether the active player gets to order the triggers from blowfly infestation and Hapatra any way they choose if one happens when a counter is placed and the other happens after an SBA check. If plutoniumwelding is correct, you would be able to have the hapatra trigger (and blood artist trigger, if applicable) resolve before the blowfly infestation trigger, even though it triggers before.

December 18, 2018 10:46 p.m.

Gidgetimer says... #5

PlutoniumWedding is indeed correct. As per 603.3b players get to choose the order of multiple things that have triggered since the last time a player recieved priority. Please select their answer to remove this from the unanswered queue if you require no further clarification.

603.3b If multiple abilities have triggered since the last time a player received priority, each player, in APNAP order, puts triggered abilities they control on the stack in any order they choose. (See rule 101.4.) Then the game once again checks for and resolves state-based actions until none are performed, then abilities that triggered during this process go on the stack. This process repeats until no new state-based actions are performed and no abilities trigger. Then the appropriate player gets priority.

December 19, 2018 1:22 a.m.

Gidgetimer says... #6

If your question has been fully answered, please select an answer to remove the question from the unanswered queue. If you require further clarification on anything, please ask so that we can fully resolve your question.

December 23, 2018 5:06 p.m.

Rhadamanthus says... #7

otters: Correct answers to this question have been up for a while. I chose one to mark as the "Accepted Answer" so that the thread can move out of the Unanswered queue. Please remember to take care of this yourself in the future.

December 24, 2018 9:03 a.m.

Please login to comment