forge icon indicating copy to clipboard operation
forge copied to clipboard

Kamigawa tap lands don't work correctly when changing control.

Open Grim-the-Reaper opened this issue 3 years ago • 2 comments

When you activate a Kamigawa tap land's second ability, and then an opponent takes control of it, it should untap during their untap step. If you later steal it back, it should not untap during yours. The 'your' refers to the controller of the mana ability, not the controller of the land, so the effect needs to keep track of who activated the ability that generates this effect (and the land could have multiple such effects active for different players, since they could tap it for that ability too, which would only affect their untap step).

This should probably be looked at for all 'doesn't untap' effects, they should all refer to a specific player. (who could be, but not necessarily still is, that permanent's controller in the untap step.) (So this a major issue which affects a lot of cards.)

In other words, this should become 'This permanent doesn't untap during [Player X]'s next untap step.' with [PlayerX] being a variable.

Another thing that should be taken into account is that this effect should end when that player's next untap step happens, even if they don't control the land.

(I also saw in the code that the current text used for this is using 'this card' instead of 'this permanent', which is technically incorrect, since that doesn't cover tokens. I know this isn't that important code-wise, but I think using the correct wording can only be beneficial, for clarity's sake.)

Grim-the-Reaper avatar Jun 23 '22 17:06 Grim-the-Reaper

the reason is that the hidden keyword "doesn't untap" should be changed into a static effect created by the Activator of the Ability

i just don't like it that we would need Effects that are clogging up the CommandZone

Hanmac avatar Jun 24 '22 07:06 Hanmac

If you go down that road, couldn't you just make the effect invisible to the UI, so nothing gets clogged up?

Note that the one who controlled the activated / triggered / spell ability that generated such an effect is not always the one affected by it, though, so knowing who created the effect is not enough, you need to actually track the affected player instead.

Abilities that read 'That permanent doesn't untap during its controller's next untap step.' are an exception. In that case, it will stop untapping of that permanent at the time of untap if they control it, and does not predetermine the player at the time of effect creation, like these Kamigawa lands do.

According to the comp rules, this kind of effect is what they call a continuous effect that changes game rules. In this case, it changes the rules of the untap step.

So the effect should track:

  • The affected permanent.
  • The affected player.
  • Whether the affected player needs to be the controller of the affected permanent. (If so, the effect must linger for that permanent if they aren't.)

So for the Kamigawa lands this would be

  • The permanent that generated the mana ability
  • The player who activated the mana ability
  • No (so the effect disappears after that step, even if they don't control the permanent)

For Abominable Treefolk it would be

  • The targeted object
  • Any player (this is basically a special case that doesn't care about whose untap step it is)
  • Yes (so the effect lingers if they don't control the permanent, and disappears after that step if they do control the permanent)

For Sleep it would be an effect per creature the targeted player controlled at resolution:

  • One of the creatures controlled by the targeted player at resolution.
  • The targeted player
  • No (so the effect disappears after that step, even if they don't control the permanent)

(similarly, if multiple specific players are affected, it would make an effect per player)

I think this tracked information likely covers all combinations, but there might be special cases I'm forgetting about.

Grim-the-Reaper avatar Jun 24 '22 18:06 Grim-the-Reaper

Old branch in case someone wants to pick it up: https://github.com/Card-Forge/forge/tree/untapRework

tool4ever avatar Feb 04 '23 12:02 tool4ever