Commit Graph

1654 Commits

Author SHA1 Message Date
Psyyringe
3c11ab01ac Psyringe - fixed the 4 Tainted lands in TOR. The previous code made the ability available even when it shouldn't be there, and also worked only for one activation (due to an engine bug, see issue 282). The new code is closer to what the card is supposed to do, and works more than once. 2010-01-01 17:12:11 +00:00
Psyyringe
6956074877 Psyringe - fixed Mirri the Cursed (PLC). Temporarily fixed Reiver Demon (MRD). Thanks to Raphael_Carlo for the bug report.
Important: I just realized that the fix to Reiver Demon will probably lead to problems later on. The problem is this: Reiver Demon has an ability "When yu play this from your hand ...". This was coded as @moveto(this|mybattlefield) from(mayhand). Which doesn't work, because the card doesn't actually enter the battlefield from the hand, it enters from the stack. So, "@moveto(this|mybattlefield) from(maystack)" has the desired effect. However, IIUC, spells played from anywhere else (e.g. from the graveyard, if they allow that) should be placed on the stack to. Hence, the "fixed" trigger will also fire in this case, which is wrong.

This means that we can't actually code "played from ..." entirely correct at the moment. Is there a solution for this?

According to the rules, only a copy of a spell enters the stack (never the spell itself), so could the "from()" part access where the card actually came from?

Do we need an @played trigger to differentiate between moving a card and actually playing it?
2010-01-01 13:33:22 +00:00
Psyyringe
62065e4602 Psyringe - fixed Vengeful Dead (SCG). Thanks to mickey_brown for the bug report. 2010-01-01 12:44:39 +00:00
Psyyringe
53d8960b5d Psyringe - fixed Golgari Germination (RAV), thanks to mickey_brown for the bug report. 2009-12-31 23:36:04 +00:00
Psyyringe
b8a2051f95 Psyringe - removed Cabal Ritual, it's a TOR card (and already present there). Thanks to baldersmashed for the bug report. 2009-12-31 20:03:17 +00:00
solo81@web.de
ef9a90ba68 Added several successfully tested cards. 2009-12-31 17:01:05 +00:00
wagic.jeck
2dcf55c45d Jeck - Quick fix to issue 279. Requires testing, see issue for details. 2009-12-31 05:12:35 +00:00
Psyyringe
ea31a5cf1c Psyringe - fixed Seismic Shudder (ZEN), thanks to mickey_brown for the bug report. Fixed Dragon Roost (ONS) - a character was missed during copy/paste and broke the card. 2009-12-30 21:11:54 +00:00
solo81@web.de
245661d52e Added Mangara of Corondor (TSP) Tested and Working. 2009-12-30 20:14:55 +00:00
solo81@web.de
12c2eaf073 Added RECURRING NIGHTMARE (EXO) Tested and working!
Added Serrated Biskelion (STH) Tested and working.
2009-12-30 19:38:42 +00:00
solo81@web.de
d9462ecfc1 Several bug fixes, removed some cards, added 1 card (P02) 2009-12-30 17:42:18 +00:00
solo81@web.de
9900b2ec76 Removed Morselhoarder (SHM)
Fixed Consumptive Goo (SCG), code tested successfully ingame.
2009-12-30 13:25:42 +00:00
solo81@web.de
2e3d1041e3 Fixed Miraculous recovery (VIS)
Fixed Purge (DST)

Added ...tatatataaaa: Shauku Endbringer (MIR)! I tested this Vampiric Lady Gaga of Doom successfully ingame.
2009-12-30 13:07:40 +00:00
Psyyringe
1125a2aeaf Psyringe - fixed a typo in "mountainhome" that prevented it from working. This is probably the bugfix of the century considering that the number of cards with Mountainhome in Wagic (and actually in the whole Magic universe) is exactly zero. ;) 2009-12-30 01:11:23 +00:00
solo81@web.de
74d74d7c35 Small fix from last revision 2009-12-29 18:20:28 +00:00
solo81@web.de
79b248a152 Added many cards with "cantbeblockedby". 2009-12-29 18:17:06 +00:00
solo81@web.de
830b2a12c7 Added some cards with activation restriction "asSorcery". 2009-12-29 13:22:45 +00:00
Psyyringe
c5e5e6a8c2 Psyringe - removed Tower o Coireall, a remnant of my testing which slipped through in r1639. Thanks to Dr. Solomat for noticing that! 2009-12-29 12:36:01 +00:00
solo81@web.de
e361eecdd2 Fixed Fog Bank (USG).
Fixed Vampiric Spirit (P02).
2009-12-29 12:26:23 +00:00
Psyyringe
1f2a5bd4bd Psyringe - softcoded Great Defender (LEG), provided test script. 2009-12-29 00:39:16 +00:00
Psyyringe
219c69914a Psyringe - fixed Angel of Mercy (P02), it couldn't fly. Thanks to garlen for the bug report. 2009-12-28 20:02:09 +00:00
Psyyringe
49536fce44 Psyringe - introducing new ability: cantBeBlockedBy(T). T can be any targez specification, like "wall", "creature[flying]", etc. See added cards for examples. Note: This ability currently has the same restrictions as "protection from(T)", i.e. it can't be used in activated abilities or instants/sorceries. It *can* be used for creatures,auras, and other continuous abilities (e.g. an enchantment which grants "unblockable by walls" to all rats should be possible, although I didn't test that). There are 47 cards which use the phrase "can't be blocked by", so we should be able to get another fair mount of cards out of that.
Notes to programmers:
1. This feature uses an awful lot of copy-pasta, using "protetcion from()" as a base. While I'm learning the architecture, it's easier for me to have a dedicated single-purpose piece of code to work with, than trying to create multi-purpose code. I'm aware that this isn't a very elegant approach though, and I hope to be able to refactor additions like this into multi-purpose code once I have a better understanding of the architecture as a whole.

2. Please check the questions I'll add in my next code comments, specifically about AI integration and activated abilities / instants / sorceries.

3. I did have a crash (with the debugger complaining about stack corruption around the cd variable) during testing. I wasn't able to reproduce it though. I did have to clean the solution in-between when I updated to the primitives system, so perhaps there was this cleaning solved whatever corruption was in my files. I'm mentioning the issue in case someone has an idea on where my code might be risky (I'm still probne to making beginners mistakes).
2009-12-28 18:19:17 +00:00
Psyyringe
365c854e90 Psyringe - fixed toughness of Mountain Yeti, thanks to garlen for the bug report 2009-12-28 17:09:26 +00:00
wagic.the.homebrew@gmail.com
3ba9d84889 Erwan
- Italian update by icarus
- Portuguese update by vesgo
2009-12-28 13:15:34 +00:00
wagic.the.homebrew@gmail.com
b366994397 Erwan
-manual test for issue 140
2009-12-28 13:04:24 +00:00
Psyyringe
d7bcc41ccc Psyringe - fixed Myr Servitor (5DN), it returned cards to the hand, not to the battlefield. Thanks to mickey_brown for the bug report. 2009-12-27 22:21:42 +00:00
Psyyringe
dbd8df5070 Psyringe - fixed Penumbra creatures from APC: Missing colon in the trigger specification caused the effect to be executed when the trigger was set, not when it was fired. Also, from() information was missing, so the trigger would have fired on discarding the card as well. Also, Penumbra Wurm had the rules text of the Kavu. Thanks to mickey-brown for the bug report. 2009-12-27 21:08:56 +00:00
Psyyringe
667a7f6a8e Psyringe - reverted Urza's lands to abrasax' original way of coding them, plus minor adjustments. The previously used code made themwork only once. Added a test script for that condition. Also removed test script for Thought Courier (which would fail now, since the card was removed in a recent revision).
Thanks to TheDark for the bug report on Urza's lands.

Note that the lands still don't work entirely correct, they give you the option to tap them for one mana even when they shouldn't anymore. This can be fixed when aslongas(cards) <1 is working.
2009-12-27 19:43:36 +00:00
Psyyringe
48a7ca6d37 Psyringe - fixed non-working abilities of Mind over Matter (EXO) and Firemane Angel (RAV). "may" does not work foraczivated abilities (see issue 267). 2009-12-27 16:56:22 +00:00
wagic.the.homebrew@gmail.com
05a72de5bc Erwan
- Card Primitives system. Check Royal Assassin in RV, 10E, M10
- Please review, is sets/primitives a good directory? Should we rename MTGCard into "CardPrint"? 
- Unfortunately for now it is not possible to "override" a Primitive. A card that links to a primitive but also defines new "values" will create its own data and ignore the data in the "linked" primitive for the time being. I hope to solve that at some point...
2009-12-27 12:14:36 +00:00
Psyyringe
6135774016 Psyringe - added two test scripts for cycling, and a bug demonstartion script for a conflict between cycling and casting instants/sorceries. 2009-12-27 00:20:42 +00:00
solo81@web.de
6e13ac53d7 Added huge amount of cards with mana cost restrictions.
Some new main categories are:

- Cards with Soulshift
- Cards with Transmute
- Rebels and Mercenaries
2009-12-26 23:37:35 +00:00
Psyyringe
26d49a292c Psyringe - fixed Dandan (ARN), it was using a non-standard character in its name. Thanks to wins22 for the bug report. 2009-12-26 22:34:12 +00:00
Psyyringe
cca741439b Psyringe - fixed color of Mountain Bandit (PTK), thanks to wins22 for the bug report. 2009-12-26 22:30:08 +00:00
solo81@web.de
9af240fb90 Added more cards with toughness restrictions. 2009-12-26 20:39:28 +00:00
solo81@web.de
7689c3bbdc Added more cards with power restrictions. 2009-12-26 20:27:34 +00:00
Psyyringe
0856fcc931 Psyringe - fixed Stun (10E). Thanks to Rob for the bug report. 2009-12-26 19:19:21 +00:00
Psyyringe
dd2c815780 Psyringe - Fixed Urza's Tower and its associated test. Thanks to TheDark for the bug report. 2009-12-26 18:55:01 +00:00
Psyyringe
f57aacd020 Psyringe - fixed Enchantress's Presence (ONS). Triggers which fire upon "playing a card" need to be coded with "from(mystack), not "from(myhand)" - the latter would only trigger if you put the card into play without casting it.
Thanks to TheDark for the bug report.
2009-12-26 18:43:16 +00:00
Psyyringe
086dab7a7a Psyringe - adding test script for Enchantress's Presence, following a non-reproducible bug report. 2009-12-26 18:09:14 +00:00
solo81@web.de
0655f5da95 Added some cards with power/toughness restriction 2009-12-26 12:44:18 +00:00
wagic.the.homebrew@gmail.com
98b6f914df Erwan
- splash screen issue fix
2009-12-26 06:41:58 +00:00
Psyyringe
5c3b3f1d03 Psyringe - added quantifiable target restrictions. Whenever you use square brackets [] to specify attributes of a target, you can use the operators <=, >= and = to specify quantities for power, toughness, and/or converted manacost. See added cards for examples.
Limitations:
- Operators for "greater than", "less than", "unequal" have not been implemented, but if a card actually needs them, you can use a preceding minus sign to negate a comparison. Example: -power=3 means "power not equal to 3", -toughness<=3 means "toughness>3".
- You can't use spaces when specifying such restrictions. Write "power<=3" instead of "power <= 3"
- You now need to use a space before the "<" and ">" commands that count the matches for lord(), foreach(), all() and aslongas(). So far we always did use spaces in front of them without actually needing to, now we need to.
- manacost restrictions don't take "X" costs into account. Example: Mistmeadow Skulkin (FUT) has protection from manacost>=3. Blaze has a converted manacost of 1, but when you cast it with an X of 2, then it actually has a converted manacost of 3 while on the stack, and Mistmeadow Skulkin would be protected from it, but currently it isn't.

Please review the code, I'll add a few remarks/questions of my own.
2009-12-26 01:50:33 +00:00
Psyyringe
ddb9ce251b Psyringe - Fixed Delusions of Mediocrity (ULG). Solution is inelegant. How useful would a trigger @movedfrom be, or (alternatively) the option to specify zones as "|*" ("anywhere") or as "|-battlefield" ("any zone but the battlefield")? Here's how this card could be coded then:
Now: auto=@movedTo(this|graveyard,library,hand,exile) from(battlefield) ...

Alternatives:
auto=@movedFrom(this|battlefield) ...
auto=@movedTo(this|*) from(battlefield) ...
auto=@movedTo(this|-battlefield) from(battlefield) ...

Suggestions? How many cards would benefit from such an addition?
2009-12-25 22:44:05 +00:00
Psyyringe
331f57cb41 Psyringe - fixed power of Yellow Scarves General (PTK), thanks to wins22 for the bug report. 2009-12-25 18:17:27 +00:00
Psyyringe
43dd27065d Psyringe - fixed Water Wurm (DRK). Parantheses have to follow the respective command immediately, without a space. The parser is looking for "aslongas(", "from(" etc., so it will not recognize the command if a space is introduced there. 2009-12-25 10:05:27 +00:00
Psyyringe
c626ddafa7 Psyringe - fixed non-working protection in 3 DST cards. 2009-12-25 09:58:04 +00:00
leungclj
e0a13e78c0 JON4TH4N - Fixed forest!! 2009-12-23 15:26:16 +00:00
wagic.the.homebrew@gmail.com
a821f67cbf Erwan
- Adding Christmas theme by Lakeesha
2009-12-23 14:46:16 +00:00
wagic.laurent
f4cf5b5532 Laurent - Small Cards bug correction - Yavimaya Druid (TSP) was missing Forestwalk. Removed Coral Helm from ATQ (need discard random as a cost). 2009-12-23 09:36:31 +00:00