Many things in MTG Forge are added by “hacks.” Planeswalkers generally work correctly but if two are in play you cannot choose which one to attack. Planeswalkers are a colossal hack. Reach of Branches is another hack. It should return to your hand when you play a Forest but it doesn’t always work. I can’t really fix Reach of Branches because it was hacked already. MTG Forge does well with activated abilities but many other cards effects are “hacked” on.
MTG Forge uses many hacks and this means that it is time for version 2. Version 2 will hopefully implement cards like Planeswalkers and Reach of Branches without having to hack the code. Version 2 will have a dedicated rules engine just like Magic Online.
I’ll close by showing you some Java source code just in case you have never seen any. This is the code for Ancestral Recall (draw three cards). This card was in the first set of Magic cards ever printed and very few people own an original copy.
The computer will play this spell if he has 5 or less cards in his hand, otherwise the computer would play this it on turn one, effectively wasting it. If the computer has 5 cards in his hand, after Ancestral Recall resolves, he will have 7 cards in hand because 5 – 1 + 3 = 7. Minus one for Ancestral Recall itself. I love cards like Ancestral Recall because it is a great card that is simple to program.
//taken from CardFactory
SpellAbility spell = new Spell(card)
public void resolve()
public boolean canPlayAI()
return AllZone.Computer_Hand.getCards().length <= 5;