Commit Graph

24 Commits

Author SHA1 Message Date
omegablast2002@yahoo.com
7fef90f943 added Undead Alchemist to unsupported.txt 2011-12-30 05:39:56 +00:00
omegablast2002@yahoo.com
b2a5ee774c corrected the card cycles that were using a loophole to use " may pay(", re-add Rupture Spire, corrected a couple badline errors. 2011-12-25 01:09:02 +00:00
punkeduard@gmail.com
3803d126bc Added mystical teachings, this card is so awesome 2011-12-20 06:27:39 +00:00
punkeduard@gmail.com
316d9b2c0d Added Ajani vs Nicole Bolas Dual deck series
fixed some primitives and updated unsupported.txt
2011-12-17 23:47:08 +00:00
punkeduard@gmail.com
f9016f70ab Fixed some primitives
Updated unsupported.txt
Added the following undergraded cards:

Brutal Nightstalker
Dauthi Mindripper
Disciple of Griselbrand
Disciple of Griselbrand
Dying Wail
Ghost-Lit Stalker
Ghastly Discovery
Haunted Cadaver
Helm of the Ghastlord
Mindstab Thrull
Needle Specter
Sadistic Hypnotist
Shrieking Grotesque
Shrine of Limitless Power
Silent Specter
Soldier of Fortune
Splitting Headache
Trapfinder's Trick
2011-12-14 19:54:16 +00:00
punkeduard@gmail.com
59b1c8167e Fixed some primitives, changed Baru fist of kosa in _cards.dat
Updated the unsupported.txt file to reflect the 2 card afari added some days ago

Added some undergraded cards (crappy as not chosen discard)

Augur of Skulls
Bog Down
Brain Weevil
Cao Cao, Lord of Wei
Compulsive Research
Consult the Necrosages 
Cunning Advisor
Elder Mastery
Esper Charm
Funeral Charm
Mournwhelk
Piracy Charm
Tendrils of Despair
Three Tragedies
Unburden
Unnerve
Voices from the Void
Waking Nightmare
Wit's End
2011-12-12 04:21:22 +00:00
solo81@web.de
17e506147e Added the result of the 2nd Grand Card Safari:
After months of research, card coding and testing, i proudly present you this high-end card package.

It contains 163 new cards! I never thought to find such a massive amount of codable cards on the current card-availability level Wagic has reached now.

Some cards look like they were coded in a much too complicated way, but believe me: There is no other way to make them work.

Talking about the card code, I have to thank Zethfox alot for coding the 'transforms((,newability...))" complex, which was very very useful. THANK YOU!

Added several tests to safe the code of the cards for future changes.

I think this is the last time i will be able to add such a huge number of new cards outside of the upcoming of a new set, we have reached the outer limits of what is doable with the current code. Let's hope there will be some new some time in the future, though i have my doubts there will be anything new in that section of Wagic for a long time.

Below, you will find the card list. Some really exciting cards are hitting the Wagic scene!

I need a break...
2011-12-07 00:12:25 +00:00
punkeduard@gmail.com
524c7486f5 Fixed some cards
Pith Driller
Ruthless Invasion

Added some crappy ones

Ebony dragon
Abyssal Horror
2011-12-04 06:59:26 +00:00
solo81@web.de
9a93824539 1) Fixed issue758.
2) Finished updating cards with cycle.

3) Coded some cards with "@cycled...".

Astral Slide
Fleeting Aven
Invigorating Boon
Stoic Champion
Warped Researcher.

Tests will follow!
2011-11-09 23:08:54 +00:00
solo81@web.de
d7e9ee7796 Changed the code of all cards with a trigger (@...) and ":aslongas()". Example: Bloodhall Ooze.
This is its new code:
[card]
name=Bloodhall Ooze
auto=@each my upkeep restriction{type(*[black]|myBattlefield)~morethan~0}:may counter(1/1)
auto=@each my upkeep restriction{type(*[green]|myBattlefield)~morethan~0}:may counter(1/1)
text=At the beginning of your upkeep, if you control a black permanent, you may put a +1/+1 counter on Bloodhall Ooze. -- At the beginning of your upkeep, if you control a green permanent, you may put a +1/+1 counter on Bloodhall Ooze.
mana={R}
type=Creature
subtype=Ooze
power=1
toughness=1
[/card]

This new version, using one of Zeth's latest additions ("restriction{...}"), shows to be a nice improvement concerning the ingame experience: NOW, the trigger will only show up in the interruption window if the restriction is matched. In the old version, it always showed up in the restriction window whenever the trigger potentially could trigger, even if the restriction was not matched.

"restriction{}" also gives us more options in coding new cards. This is one of them:

[card]
name=Library of Alexandria
auto={T}:add{1}
auto={T}:draw:1 restriction{type(*|myhand)~equalto~7}
text={T}: Add {1} to your mana pool. -- {T}: Draw a card. Activate this ability only if you have exactly seven cards in hand.
type=Land
[/card]

A famous and powerful classic! And you can for sure only tap it to draw a card if you have 7 cards in it.


Exchanged the Multikicker test for another one. The older one was doing trouble.
2011-09-29 21:16:24 +00:00
omegablast2002@yahoo.com
c39c94c71a commented out puresteels ability. 2011-09-13 05:06:10 +00:00
omegablast2002@yahoo.com
0e52a20b8b heres a shocker, first time ever...zeth removes a card from wagic supported....
puresteel paladin...removed from supported...added to unsupported. 
I have no idea why, but this card has cause a surge of completely different bug reports, crashes, strange interactions between cards, you name it...im surprised we didn't receive a report that it caused someone dog to die of heartworms....

anyways if i find some time, i will debug this pandora's box of a code and see why exactly it causes such strange difficult to reproduce bugs.
2011-09-12 15:41:44 +00:00
omegablast2002@yahoo.com
cabd82e736 there was a set of bad chars infront of the grade in unsupported.txt that was causing it to load the cards. 2011-09-09 17:28:39 +00:00
solo81@web.de
3b073f863f Added 3 that should have been part of my last commit. 2011-09-06 23:13:55 +00:00
wagic.the.homebrew
bc3250fadc - Added 493 missing cards in unsupported.txt, removed some duplicates from unsupported that have since then been coded
-- Most of the added cards are from recent sets and unhinged.
- removed Cinder Seer from Borderline as it seems a more accurate version is in crappy


*** Removed from unsupported.txt because they also exist in other files:
Ancient Ooze was in supported files but also in unsupported ones
Blood Moon was in supported files but also in unsupported ones
Custody Battle was in supported files but also in unsupported ones
Deglamer was in supported files but also in unsupported ones
Flourishing Defenses was in supported files but also in unsupported ones
Fylgja was in supported files but also in unsupported ones
Glowering Rogon was in supported files but also in unsupported ones
Magus of the Unseen was in supported files but also in unsupported ones
Mana Chains was in supported files but also in unsupported ones
Mana Echoes was in supported files but also in unsupported ones
Melira's Keepers was in supported files but also in unsupported ones
Nullmage Advocate was in supported files but also in unsupported ones
Orim's Thunder was in supported files but also in unsupported ones
Overwhelming Instinct was in supported files but also in unsupported ones
Preeminent Captain was in supported files but also in unsupported ones
Protean Hydra was in supported files but also in unsupported ones
Renewing Touch was in supported files but also in unsupported ones
Renounce was in supported files but also in unsupported ones
Riptide Survivor was in supported files but also in unsupported ones
Rise from the Grave was in supported files but also in unsupported ones
Sky Hussar was in supported files but also in unsupported ones
Tatterkite was in supported files but also in unsupported ones
Tidal Warrior was in supported files but also in unsupported ones
Twigwalker was in supported files but also in unsupported ones
Wu Scout was in supported files but also in unsupported ones
2011-09-03 09:23:41 +00:00
solo81@web.de
e296e0c381 Added 222 cards based on rev3869 (thanks to Zeth!) and months of play-testing.
Examples:

# COUNTER-MOVING CARDS #

[card]
name=Ghave, Guru of Spores
auto=counter(1/1,5)
auto={1}{C(1/1,-1),creature|mybattlefield}:token(Saproling,Creature Saproling,1/1,green)
auto={1}{S(creature|mybattlefield}:counter(1/1,1) target(creature)
text=Ghave, Guru of Spores enters the battlefield with five +1/+1 counters on it. -- {1}, Remove a +1/+1 counter from a creature you control: Put a 1/1 green Saproling creature token onto the battlefield. -- {1}, Sacrifice a creature: Put a +1/+1 counter on target creature.
mana={2}{B}{G}{W}
type=Legendary Creature
subtype=Fungus Shaman
power=0
toughness=0
[/card]

# IF...THEN #

[card]
name=Goblin Goon
auto=@each my attackers:if type(creature|opponentbattlefield)~morethan~type(creature|mybattlefield) then transforms((,cantattack)) ueot
auto=@each my blockers:if type(creature|opponentbattlefield)~morethan~type(creature|mybattlefield) then transforms((,cantblock)) ueot
text=Goblin Goon can't attack unless you control more creatures than defending player. -- Goblin Goon can't block unless you control more creatures than attacking player.
mana={3}{R}
type=Creature
subtype=Goblin Mutant
power=6
toughness=6
[/card]

[card]
name=Pulse of the Tangle
auto=token(Beast,Creature Beast,3/3,green)
auto=if type(creature|opponentbattlefield)~morethan~type(creature|mybattlefield) then moveto(myhand)
text=Put a 3/3 green Beast creature token onto the battlefield. Then if an opponent controls more creatures than you, return Pulse of the Tangle to its owner's hand.
mana={1}{G}{G}
type=Sorcery
[/card]

# MULTIKICKER #

[card]
name=Joraga Warcaller
auto=kicker counter(1/1,kicked)
kicker=multi{1}{G}
auto=thisforeach(counter{1/1.1}) lord(other elf|myBattlefield) 1/1
text=Multikicker {1}{G} (You may pay an additional {1}{G} any number of times as you cast this spell.) -- Joraga Warcaller enters the battlefield with a +1/+1 counter on it for each time it was kicked. -- Other Elf creatures you control get +1/+1 for each +1/+1 counter on Joraga Warcaller.
mana={G}
type=Creature
subtype=Elf Warrior
power=1
toughness=1
[/card]

# PROLIFERATE #

[card]
name=Contagion Clasp
auto=counter(-1/-1,1) target(creature)
auto={4}{T}:target(proliferation) proliferate
text=When Contagion Clasp enters the battlefield, put a -1/-1 counter on target creature. -- {4}, Tap: Proliferate. (You choose any number of permanents and/or players with counters on them, then give each another counter of a kind already there.)
mana={2}
type=Artifact
[/card]

# MULTI-TARGET #

[card]
name=Argothian Elder
auto={T}:target(<2>land) untap
text={T}: Untap two target lands.
mana={3}{G}
type=Creature
subtype=Elf Druid
power=2
toughness=2
[/card]

[card]
name=Aven Augur
abilities=flying
auto={S}:target(<upto:2>other creature) moveTo(ownerhand) myUpkeepOnly
text=Flying -- Sacrifice Aven Augur: Return up to two target creatures to their owners' hands. Activate this ability only during your upkeep.
mana={3}{U}
type=Creature
subtype=Bird Wizard
power=2
toughness=2
[/card]

[card]
name=Bone Harvest
target=<anyamount>creature|mygraveyard
auto=moveTo(mylibrary)
auto=@next upkeep:draw:1 controller
text=Put any number of target creature cards from your graveyard on top of your library. -- Draw a card at the beginning of the next turn's upkeep.
mana={2}{B}
type=Instant
[/card]

Test suite tests will follow on weekend.

Have fun!
2011-09-01 21:06:45 +00:00
solo81@web.de
706c8c8883 - Added 181 new cards.
The BIG CARD SAFARI 2011 is over: After 4 months of intensive testing, i can proudly present you this huge card package. All these cards are working 100%. 
Card list --> First comment.

- Added 20 tests to save the cards whose code is not covered by already existing tests.

- Added Magic2012 (M12) with 75 completely new cards.
2011-07-10 21:36:15 +00:00
solo81@web.de
715d498bce Added Shimmer Myr and a test for 'forcedalive'. 2011-06-03 20:16:41 +00:00
solo81@web.de
03f102693d Added 28 cards based on rev3595.
Blanket of Night
Blood Moon
Contaminated Ground
Conversion
Dream Thrush
Dreamwinder
Evil Presence
Floodchaser
Glaciers
Grixis Illusionist
Humble
Kavu Recluse
Kukemssa Serpent
Lingering Mirage
Magus of the Moon
Moonbow Illusionist
Mystic Compass
Reef Shaman
Sea Snidd
Sea's Claim
Spreading Seas
Stormtide Leviathan
Streambed Aquitects
Tainted Well
Thelonite Monk
Tideshaper Mystic
Unstable Frontier
Zombie Trailblazer
2011-05-07 21:08:15 +00:00
wagic.the.homebrew
748af5b461 - Adding a generic "ueot" effect. This will be initially confusing, but the ultimate goal is to get rid of all the particular cases we handled with "until end of turn" effects. this "ueot " works like "may " and "choice ", it has to be at the very beginning of the ability(ies) it targets. The reason is to avoid conflicts with the existing "ueot" we have all over the place. I have only tested it with transforms and loseabilities for now (see "ovinize") but hopefully this will become the new norm. This should also reduce the code inside the parser, long term.
- Adding "Ovinize" as an example of this new keyword.
- moved "parseBetween" in utils as I am using it in other files for wome work in Progress.
2011-05-05 06:18:50 +00:00
wagic.the.homebrew
d922d4fe06 - Added "loseSubtypesOf(type)" ability. For example, loseSubtypesOf(land) means "target loses all its land subtypes"
- Added Evil Presence, as an example of the new keywords loseabilities and losesubtypes. It's quite experimental but I added 3 tests that cover the basics. Please report if you find bugs.
- moved the "lands produce mana" rules outside of the primitives, and into the external rules. This was a necessary step to create cards such as Evil Presence. 
- real support for subtypes. Needs some more testing, but there are now functions in Subtypes.cpp to know if a given subtype is a creature subtype, or a land subtype, etc...
- minor refactor of MTGDeck.cpp

Notes:
- I checked that the AI can still use lands
- This change has a bad impact on primitives loading performance (thanks Wil for the loading time output). This is probably due to suboptimal algorithms and data structures for subtypes. If the impact is strong on lowend devices, I can probably optimize a bit (the map subtypesOf could be changed into a vector with some work)
- The test suite passes, added 3 tests for evil presence.
2011-05-04 04:04:03 +00:00
wagic.the.homebrew
494bcf3315 Adding a "loseAbilities" keyword per Dr.Solomat's request. The Goal was to code Evil Presence, but I think there is still some work to do to achieve this. The main concern is that (according to the Miki), neither transforms(( nor "becomes(" allow to lose some subtypes. A land enchanted with Evil Presence is supposed to lose its land subtypes. Since we don't support subtypes that good, I don't think this is possible. Additionally, Evil PResence would require to move "{T}:Add{X}" from the basic lands primitives into the rules (which sounds quite easy to do). I've nevertheless tested this on Gaea's Cradle, and it works. (Gaea's Cradle loses its abilities) 2011-05-04 01:33:34 +00:00
wagic.the.homebrew
8e4de36588 - unsupported.txt cleanup + conflicts cleanup (had to partly comment out some cards for which we don't have a clean solution yet, "multipart cards" are basically 2 cards that share the same Multiverse ID, such as "Day // night" ) 2011-04-23 04:55:00 +00:00
wagic.the.homebrew
fafa785778 - Cleaned up "borderline" primitives, split into borderline and crappy, which is closer to the way I intended the system to work initially.
- moved mtg_todo.dat into "unsupported.txt"...there are many parsing issues that I need to solve, but give it a try (set the grade level to "unsupported" in your advanced options, and restart the game) , it bumps the number of unique cards to almost 12000 :) (of course, these new cards don't work, that's the point of the "unsupported" grade)
2011-04-23 04:01:42 +00:00