magefree / magefree/mage

Multiple copies of Linked Abilities incorrectly see each other

Open
#12,752 18 comments 0 reactions 0 assignees View on GitHub
Developers Discussion engine
Dominant language
Java
Stars
2.4k
Forks
940
Avg merge
2d 12h
Merged PRs (30d)
160

Description

Right now, Linked Abilities are implemented by storing information on the card/permanent in a manner accessible to all other abilities. This mostly works, but has problems when linked abilities are granted to other cards, which can cause separate abilities to look up their information using the same string. (This information is stored in many different locations: costs tags, exile zone names, `game.getState().setValue`, etc.)

For Costs Tags, one example of this is [[Zinnia, Valley's Voice]], where if casting a spell that already has Offspring should make separate triggers and offspring for each cost paid. This also applies to Kicker and Squad (though those currently have no cards where that matters except for the un-set [[Wicker Picker]]) and potentially others.

I think we need some sort of more general way to attach linked abilities to each other, not sure exactly how. This linkage must remain across deep copy effects, but must also create a new link when copying the card it's on (such as by making a non-legendary copy of Zinnia). I don't currently have any solution here, I just wanted to bring the issue up and discuss. For more information on the correct rules, see [rule 607 Linked Abilities](https://yawgatog.com/resources/magic-rules/#R607).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.