- Adding cycling. Check Akroma's vengeance in ONS for an example. Note that this uses autohand instead of auto, this is important! You can also use autograveyard.
- All "auto" activated abilities should work with autohand, so this is not only for cycling, but could be used for other abilities as well. For example autohand={3}:cycling can also be written autohand={3}{S}:Draw:1
- Adding equipments. They work like auras, except you have to add an "auto={cost}:equip" line. See Behemoth sledge in ARB for an example. Please test a lot before committing, thanks :)
Additions:
- Added Avarice Totem. Code works, but uses a trick to circumvent a parser limitation. Feedback welcome.
- Added Fangren Pathcutter. Code works, but will fail if Fangren Pathcutter gets removed during the combatattackers phase (currently unlikely though). Feedback welcome.
- Added Goblin Cannon (spectacularly useless card, but codeable)
- Added Silent Arbiter (code works pretty well imho)
- Added Skullcage (doesn't work correctly yet due to bug; issue will be opened shortly)
- Added Thought Courier (has wrong sequence of actions, but is acceptable imho)
Bugfixes:
- Arachnoid didn't have Reach
- Battered Golem was missing a "may"
- softcoded Beacon of Creation
- Beacon of Destruction was missing an alias
- Beacon of Immortality was missing an alias
- Cackling Imp couldn't use its ability
- removed Crucible of Worlds (didn't work on several accounts)
- Krark-Clan Ironworks had an incorrect {T} cost
- Krark-Clan Ogre had an incorrect cost
- Screaming Fury was missing a target
- Skyhunter Skirmisher had double strike spelled wrong
Other:
- experimented with several more cards but couldn't implement them correctly, check the comments in todo.dat for details.
Question: I also tried to code Root Sliver (LGN) with the line "auto=lord(sliver|stack) nofizzle", but this didn't work, Slivers could still be countered. Did I choose a wrong approach, or is there a limitation of the lord ability with regard to spells on thee stack?
-added WParsedInt (X, p, t, manacost) for "Draw" effects. See prosperity
- Fixed denizen of the deep (P02), it had broken the test suite, sorry for that!
- Code cleanup
- fix issue 142 . This will lead to other issues for some cards. These issues can be fixed by using targetcontroller/controller...etc
- Added a few cards
- removed some unused code. Please review!
- Added protection from() auto keyword. It is still possible to use protection from [color] in abilities, but when it is not possible, please use protection from([target]) in auto=
-fixed a memory leak
- Added P02 and PTK
- New way to create tokens in the parser, much more flexible, see the Hive in RV. Tokens can now be written as other cards, with a rarity of "T". I suggest their id to be the negative value of the card that generates them when possible. Naming convention for images is the same as before: a negative id such as -1138 will need a [id]t.jpg image (1138t.jpg). Positive ids work as "normal" pictures
There were a couple of scripts in _tests.txt which were commented out for this reason, I moved them to the new wontfix folder too. I think it's cleaner and easier mto maintain to only have tests in the "tests" folder which actually work and are meant to succeed.
- Added "PreventAllCombatDamage" [from(...)] [to(...)] keyword. Please test it on a few cards before we "mass" use it. As a side effect, fixed issue 155 (ebony horse target).
(I actually spent half an hour fiddling with my first interruption script, because the tutorial on the blog doesn't mention the any command to end interrupt sequences. Then I checked the "Counterspell" script, was happy to find the "endinterrupt" keyword, and fiddled for another 30 minutes with it before I found out that this keyword is actually wrong and the parser doesn't understand it at all, it just so happens that the Counterspell script (and two others) work nevertheless because in these scripts the interruption doesn't need to end. I wholeheartedly agree with the passage in wololo's mail in which he says that we could use a "real" test suite tutorial / reference.
Also added two scripts that don't demonstrate bugs (apparently the bug reports that I used to write the scripts were either false or outdated). nevertheless it doesn't hurt to have these scripts in the test suite, it prevents us from breaking something for the respective cards in the future and not noticing it.
The script fear_i147.txt has been moved into the "generic" folder and added to the regular test sequence for the same reason.
Also fixed the script generic/tokens.txt. It was referencing The Hive once via name and once via ID. This caused problems when (unofficial) Beta edition _cards.dat was installed.