I don't think a "while in play" effect works with attack typing and reactions like Moat. Also it would need a dividing line like this.
I was going for a Swamp Hag kind of thing. I guess I should have taken some wording from there.
How is, "Until your next turn, when an opponent plays an action card that produces $, it produces 1 fewer $."
How would I word this to make it not stackable?
"Until your next turn, when an opponent plays an action card that produces $, they take their -1$ token".
This is great, but the attack is significantly different than what I hoped when worded like this.
If you say "Until your next turn, when an opponent plays an action card that produces $, they
first take their -
1$ token", then it would act exactly like your original card intended; except if combined with other attacks that give the -
token.
However, it really seems like you can get the same basic thing with a lot less complexity with simply:
Action-Attack
+2 Coffers
Each other player takes their -
token.
If you want non-stackable coin penalty, the -
token is the way to do it. And if this was only a duration so that it hurts your opponents while it is in play, as opposed to because it helps you next turn, then there's no reason for it to be a Duration if you are using the -
token.
*Edit* Oh dang, missed that you want it to be stackable in terms of each time your opponent plays a card... so my idea is quite different and weaker.
But I think making it hit all cards could be way too strong. Even just playing one per turn completely destroys a lot of decks.