drdrv,
I get that you come from MTGO, but not everything needs to work exactly like MTGO does. In fact, many people I know who play MTGO complain about a lot of the ways their interface works. Personally, the card not being removed as you've changed it is jarring to me, and I imagine others that have been using Forge for some time will feel the same.. While I understand the whole "just because that's the way things are, doesn't mean I shouldn't change it" but it also feels like you are just changing things the way it suits you and not taking the existing coders and userbase into consideration at all. This is very frustating. Especially when we are following the rules more accurately than MTGO is.
drdev wrote:It's not like the other players in the game should get to know about cards you cancel casting
If you start casting a spell in a tournament, and then realize that you can't afford it (or something else illegal happened), that's exactly what happens. The game rewinds to just before you started casting your spell, you potentially get a
Warning from the Judge, and you inadvertently give information to your opponent. I honestly don't see where you are drawing this distinction of "Computer form Magic" with "Real life Magic" for casting spells. One example of how one developer choosing to do a certain set of actions is not a "clear illustration", it's a design decision. I disagree with your notion that this makes things "simpler" as you've had to add hacky code into costs to handle corner cases, where none were needed for these cases previously.
drdev wrote:And onto that issues like Hellbent cards activating when casting the last card in hand before targets were even chosen, and it was a definite issue that needed fixing.
Do you have an example of this? Was this in reference to the previous method, or your method?
It seems your real problem is that the card disappears, but your solution of leaving it in your hand doesn't make sense to me. If you want it to be visible somewhere for Spell Casting, I can totally understand that. But the way it is it just kinda sits there, in a zone it's not in feels wrong. Nothing even changes on the UI where I clicked!
I've pasted the comprehensive rules below, so you can see that it is indeed on the Stack at this point. In addition, spells can never target themselves, which is why it's not a legal target, not because it's not on the stack. (This is why when you
Redirect a
Counterspell, you can't redirect the
Counterspell to itself, but you can target the
Redirect itself, since it's still in the middle of resolving.)
- Comprehensive Rules | Open
- 601.2. To cast a spell is to take it from where it is (usually the hand), put it on the stack, and pay its costs, so that it will eventually resolve and have its effect. Casting a spell follows the steps listed below, in order. If, at any point during the casting of a spell, a player is unable to comply with any of the steps listed below, the casting of the spell is illegal; the game returns to the moment before that spell started to be cast (see rule 717, "Handling Illegal Actions"). Announcements and payments can't be altered after they've been made.
601.2a The player announces that he or she is casting the spell. That card (or that copy of a card) moves from where it is to the stack. It becomes the topmost object on the stack. It has all the characteristics of the card (or the copy of a card) associated with it, and that player becomes its controller. The spell remains on the stack until it's countered, it resolves, or an effect moves it elsewhere.
601.2b If the spell is modal the player announces the mode choice (see rule 700.2). If the player wishes to splice any cards onto the spell (see rule 702.46), he or she reveals those cards in his or her hand. If the spell has alternative or additional costs that will be paid as it's being cast such as buyback or kicker costs (see rules 117.8 and 117.9), the player announces his or her intentions to pay any or all of those costs (see rule 601.2e). A player can't apply two alternative methods of casting or two alternative costs to a single spell. If the spell has a variable cost that will be paid as it's being cast (such as an
in its mana cost; see rule 107.3), the player announces the value of that variable. If a cost that will be paid as the spell is being cast includes hybrid mana symbols, the player announces the nonhybrid equivalent cost he or she intends to pay. If a cost that will be paid as the spell is being cast includes Phyrexian mana symbols, the player announces whether he or she intends to pay 2 life or the corresponding colored mana cost for each of those symbols. Previously made choices (such as choosing to cast a spell with flashback from a graveyard or choosing to cast a creature with morph face down) may restrict the player's options when making these choices.
601.2c The player announces his or her choice of an appropriate player, object, or zone for each target the spell requires. A spell may require some targets only if an alternative or additional cost (such as a buyback or kicker cost), or a particular mode, was chosen for it; otherwise, the spell is cast as though it did not require those targets. If the spell has a variable number of targets, the player announces how many targets he or she will choose before he or she announces those targets. The same target can't be chosen multiple times for any one instance of the word "target" on the spell. However, if the spell uses the word "target" in multiple places, the same object, player, or zone can be chosen once for each instance of the word "target" (as long as it fits the targeting criteria). If any effects say that an object or player must be chosen as a target, the player chooses targets so that he or she obeys the maximum possible number of such effects without violating any rules or effects that say that an object or player can't be chosen as a target. The chosen players, objects, and/or zones each become a target of that spell. (Any abilities that trigger when those players, objects, and/or zones become the target of a spell trigger at this point; they'll wait to be put on the stack until the spell has finished being cast.)
Example: If a spell says "Tap two target creatures," then the same creature can't be chosen twice; the spell requires two different legal targets. A spell that says "Destroy target artifact and target land," however, can target the same artifact land twice because it uses the word "target" in multiple places.
601.2d If the spell requires the player to divide or distribute an effect (such as damage or counters) among one or more targets, the player announces the division. Each of these targets must receive at least one of whatever is being divided.
601.2e The player determines the total cost of the spell. Usually this is just the mana cost. Some spells have additional or alternative costs. Some effects may increase or reduce the cost to pay, or may provide other alternative costs. Costs may include paying mana, tapping permanents, sacrificing permanents, discarding cards, and so on. The total cost is the mana cost or alternative cost (as determined in rule 601.2b), plus all additional costs and cost increases, and minus all cost reductions. If the mana component of the total cost is reduced to nothing by cost reduction effects, it is considered to be
. It can't be reduced to less than
. Once the total cost is determined, any effects that directly affect the total cost are applied. Then the resulting total cost becomes "locked in." If effects would change the total cost after this time, they have no effect.
601.2f If the total cost includes a mana payment, the player then has a chance to activate mana abilities (see rule 605, "Mana Abilities"). Mana abilities must be activated before costs are paid.
601.2g The player pays the total cost in any order. Partial payments are not allowed. Unpayable costs can't be paid.
Example: You cast Altar's Reap, which costs
{B} and has an additional cost of sacrificing a creature. You sacrifice Thunderscape Familiar, whose effect makes your black spells cost
less to cast. Because a spell's total cost is "locked in" before payments are actually made, you pay
, not
{B}, even though you're sacrificing the Familiar.
601.2h Once the steps described in 601.2a-g are completed, the spell becomes cast. Any abilities that trigger when a spell is cast or put onto the stack trigger at this time. If the spell's controller had priority before casting it, he or she gets priority.
601.3. Some spells specify that one of their controller's opponents does something the controller would normally do while it's being cast, such as choose a mode or choose targets. In these cases, the opponent does so when the spell's controller normally would do so.