Card-Forge / forge

An unofficial rules engine for the world's greatest card game.
https://card-forge.github.io/forge/
GNU General Public License v3.0
972 stars 562 forks source link

World rule: compare by time of type presence #2188

Open tool4ever opened 1 year ago

tool4ever commented 1 year ago

704.5k. If two or more permanents have the supertype world, all except the one that has had the world supertype for the shortest amount of time are put into their owners' graveyards. In the event of a tie for the shortest amount of time, all are put into their owners' graveyards.

Currently if you have 2+ ETB together you get to keep one. That case can probably be fixed with game timestamps.

But the problem gets bigger if you animate one to cast Mirrorweave on it. Now all creatures should LTB.

Hanmac commented 1 year ago

even with game timestamps, if multiple permanents enter the battlefield at the same time, they get relative timestamps

for the Animation thing, we probably need to fetch the timestamp from the card type changes, or like CardChangedType needs to store some timestamp inside

tool4ever commented 1 year ago

Can't we do

ETB simultaneously:

?

The ETB currently only works if you do it with ChangeZoneEffect because that gives all the same already.

Hanmac commented 1 year ago

Can't we do

ETB simultaneously:

  • different layer timestamps
  • same game timestamps

?

ugh i would need to check it out while reworking my Timestamp MR

tool4ever commented 1 year ago

The Animate is only so Mirrorweave can target it

I checked and while Forge also supports "RemoveSuperTypes$" it seems unused

Imo that means we only need to check the clonedStates and can ignore CardChangedType

github-actions[bot] commented 1 year ago

This issue has not been updated in a while and has now been marked as stale. Stale messages will be auto closed.

github-actions[bot] commented 1 year ago

This issue has not been updated in a while and has now been marked as stale. Stale messages will be auto closed.