magefree / mage

Magic Another Game Engine
http://xmage.today
MIT License
1.91k stars 778 forks source link

Problem with Aetherworks Marvel and Emrakul #2363

Open emerald000 opened 8 years ago

emerald000 commented 8 years ago

"Well, it happens when you cast emrakul off of Aetherworks Marvel. A bunch of wonky things can happen. One thing is sometimes it won't give the player who got their turn stolen an extra turn: it'll just cut right back to the emrakul caster's turn.

Another weird thing happens when aetherworks marvel is cast during your opponent's turn. It will steal the turn immediately. Emrakul says "their next turn", so i dont believe it should activate immediately, but i could be wrong. There are times when Emrakul turn stealing DOESN'T activate immediately, but then the Emrakul caster gets my stolen turn RIGHT after i get to finish my turn."

Source

stravant commented 8 years ago

Sounds like a similar problem to #2008

In general there are considerable issues with cards that grant extra turns and want something done on "that turn". The current implementation for such abilities is a kludge that doesn't actually handle them correctly in the case where "interesting" circumstances (such as you using the ability at instant speed) apply.

It all arises from the fact that the current engine implementation has no way to track what turn exactly "that turn" in such abilities is since turns aren't first class objects or even identified in any way.