It is currently 27 Apr 2024, 18:23
   
Text Size

Theros Spoiler Season

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Re: Theros Spoiler Season

Postby friarsol » 19 Sep 2013, 12:07

Looks like Theros is up on magiccards.info. I can run my scraper for Oracle later if someone wants to merge the branch back in.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Theros Spoiler Season

Postby Sloth » 19 Sep 2013, 19:47

Ok, i will try to merge Theros into the trunk.
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Theros Spoiler Season

Postby friarsol » 20 Sep 2013, 03:36

Alright Theros is in. I fixed a few card name issues that my new script picked up on. And also added Oracle text for all of that.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Theros Spoiler Season

Postby moomarc » 20 Sep 2013, 05:28

Thanks guys. Great work on the set!
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Theros Spoiler Season

Postby friarsol » 20 Sep 2013, 20:14

It doesn't seem like there's exact information about what's in the "seeded" pack for Prerelease, but according to:
http://mtg-realm.blogspot.com/2013/09/t ... packs.html

"All the seed packs seem to follow a similar pattern - - Each has 11 commons (5 off-color, and 6 on-color, one of which was the same in both pre-release packs of each color). It has 3 uncommons. 1 on-color, 1 off-color, and 1 of either a multicolor or off-color and 1 rare/mythic, which can be multicolor. And of course the Promo card, which is playable:"

White: Celestial Archon
Blue: Shipbreaker Kraken
Black: Abhorrent Overlord
Red: Ember Swallower
Green: Anthousa, Setessan Hero

If I were to make a guess base upon the above information I'd say we can build the pack as:

5 On-Color Commons, 6 Random Commons
1 On-Color Uncommon, 2 Random Uncommons
1 On-Color Rare
1 Promo

And then as more information is revealed about the boosters we can change our Seeded booster appropriately.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Theros Spoiler Season

Postby Max mtg » 21 Sep 2013, 09:13

Source for booster covers pictures: http://www.wizards.com/Magic/Magazine/A ... rcana/1307
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Theros Spoiler Season

Postby Tygrak » 21 Sep 2013, 14:07

So I was testing theros and noticed a mistake in a card:
the card Reaper of The Wilds costs 2BG, but in the snapshot it is 2BR.
If I find anymore things like that I will let you guys know.
Tygrak
 
Posts: 18
Joined: 02 Feb 2013, 10:52
Has thanked: 0 time
Been thanked: 0 time

Re: Theros Spoiler Season

Postby Diogenes » 21 Sep 2013, 15:43

I haven't checked ability costs yet, but I've looked through the casting costs and there are two others that are also wrong: Dragon Mantle (should be R, is 1R) and Hammer of Purphoros (should be 1RR, is 2R.) All others are correct.
Diogenes
 
Posts: 201
Joined: 12 Jul 2012, 00:54
Has thanked: 39 times
Been thanked: 23 times

Re: Theros Spoiler Season

Postby friarsol » 24 Sep 2013, 15:42

Theros Rules Update recap:

http://www.wizards.com/Magic/Magazine/A ... 66b&page=3

Shanodin Dryad gains the Creature Type Nymph.

Ashiok and Xenagos join the list of Planeswalker types.

God, Nymph, and Sable join the list of creature types.

"So, we're reversing course. Under this new paradigm, laid out in rule 301.5e and 303.4j, "enchanted," "equipped," and "fortified" are really just different ways to say "attached." It doesn't matter what type or subtype the permanent with the appropriate ability is, and that ability will refer to whatever the permanent is attached to."

That might simplify a lot of our dealings with these type of things.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Theros Spoiler Season

Postby Xitax » 04 Oct 2013, 03:23

THS booster images for Forge
Attachments
THS_5.jpg
THS_4.jpg
THS_3.jpg
THS_2.jpg
THS_1.jpg
Xitax
 
Posts: 918
Joined: 16 May 2010, 17:19
Has thanked: 183 times
Been thanked: 133 times

Re: Theros Spoiler Season

Postby Max mtg » 09 Feb 2014, 08:05

Now we have mana color conversion mechanics implemented. What is missing to implement Daxos of Meletis?
Is that the link between remembered exiled card and the ability to spend mana of any color for it?
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Theros Spoiler Season

Postby friarsol » 09 Feb 2014, 14:53

Max mtg wrote:Now we have mana color conversion mechanics implemented. What is missing to implement Daxos of Meletis?
Is that the link between remembered exiled card and the ability to spend mana of any color for it?
Since this only affects a single card/spellAbility, I think we'd need to set some type of metadata on that card (at the same time we mark it with "may be played"), and change the conversion matrix inside of PlayAbility right before the costs begin to be paid. Then, we'd need to make sure things are properly reset after the PlayAbility finishes (successfully or cancelled).
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Theros Spoiler Season

Postby friarsol » 10 Feb 2014, 21:40

Looks like Huggybaby has found some free time and released a whole bunch of images for us (and everyone else):

viewtopic.php?f=15&p=145560#p145560

moomarc, can you handle putting these up for us? Is there anyone else besides marc that's done it before/knows how to do it? I'm sure our userbase will be pretty stoked to get caught up with all the last few sets. Hopefully, the wait won't be as long for BNG as the CCGGQ team works through their migration period.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Theros Spoiler Season

Postby moomarc » 11 Feb 2014, 09:01

No problem. Busy downloading at the moment.

Chris (and I think Sloth) also have the ftp details, not to mention Rob lurking around :-$ But I've got enough free time to do this, and should always be able to do it within a day or two of the images being released. Just gave them the details so someone besides me had them.
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Theros Spoiler Season

Postby swordshine » 12 Feb 2014, 13:02

Max mtg wrote:Now we have mana color conversion mechanics implemented. What is missing to implement Daxos of Meletis?
Is that the link between remembered exiled card and the ability to spend mana of any color for it?
Just tried to script Daxos of Meletis, only HumanPlaySpellAbility was updated. forge.ai.ComputerUtil.handlePlayingSpellAbility(Player, SpellAbility, Game) may be updated for AI.
Code: Select all
### Eclipse Workspace Patch 1.0
#P ForgeLocal
Index: forge-gui/src/main/java/forge/gui/player/HumanPlaySpellAbility.java
===================================================================
--- forge-gui/src/main/java/forge/gui/player/HumanPlaySpellAbility.java   (revision 24826)
+++ forge-gui/src/main/java/forge/gui/player/HumanPlaySpellAbility.java   (working copy)
@@ -18,7 +18,9 @@
 package forge.gui.player;
 
 import com.google.common.collect.Iterables;
+
 import forge.card.CardType;
+import forge.card.MagicColor;
 import forge.game.Game;
 import forge.game.GameObject;
 import forge.game.ability.AbilityUtils;
@@ -25,6 +27,7 @@
 import forge.game.card.Card;
 import forge.game.cost.CostPartMana;
 import forge.game.cost.CostPayment;
+import forge.game.mana.ManaPool;
 import forge.game.player.Player;
 import forge.game.player.PlayerController;
 import forge.game.spellability.AbilitySub;
@@ -32,6 +35,7 @@
 import forge.game.spellability.SpellAbility;
 import forge.game.spellability.TargetRestrictions;
 import forge.game.zone.Zone;
+
 import org.apache.commons.lang3.StringUtils;
 
 import java.util.ArrayList;
@@ -60,8 +64,12 @@
         // used to rollback
         Zone fromZone = null;
         int zonePosition = 0;
+        final ManaPool manapool = human.getManaPool();
 
         final Card c = this.ability.getHostCard();
+        boolean manaConvertion = ability.isSpell() && c.hasKeyword("May spend mana as though it were mana of any color to cast CARDNAME");
+
+
         if (this.ability instanceof Spell && !c.isCopiedSpell()) {
             fromZone = game.getZoneOf(c);
             if (fromZone != null) {
@@ -73,6 +81,11 @@
         // freeze Stack. No abilities should go onto the stack while I'm filling requirements.
         game.getStack().freezeStack();
 
+        if (manaConvertion) {
+            for(String s : MagicColor.Constant.COLORS_AND_COLORLESS) {
+                manapool.adjustColorReplacement(MagicColor.fromName(s), MagicColor.ALL_COLORS, true);
+            }
+        }
         // This line makes use of short-circuit evaluation of boolean values, that is each subsequent argument
         // is only executed or evaluated if the first argument does not suffice to determine the value of the expression
         boolean prerequisitesMet = this.announceValuesLikeX()
@@ -91,6 +104,9 @@
                     ability.getHostCard().unanimateBestow();
                 }
             }
+            if (manaConvertion) {
+                manapool.restoreColorReplacements();
+            }
             return;
         }
 
@@ -109,6 +125,9 @@
             if (mayChooseTargets) {
                 clearTargets(ability);
             }
+            if (manaConvertion) {
+                manapool.restoreColorReplacements();
+            }
         }
     }
 
Index: forge-gui/res/cardsfolder/d/daxos_of_meletis.txt
===================================================================
--- forge-gui/res/cardsfolder/d/daxos_of_meletis.txt   (revision 0)
+++ forge-gui/res/cardsfolder/d/daxos_of_meletis.txt   (working copy)
@@ -0,0 +1,16 @@
+Name:Daxos of Meletis
+ManaCost:1 W U
+Types:Legendary Creature Human Soldier
+PT:2/2
+K:CantBeBlockedBy Creature.powerGE3
+T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigExile | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, exile the top card of that player's library. You gain life equal to that card's converted mana cost. Until end of turn, you may cast that card and you may spend mana as though it were mana of any color to cast it.
+SVar:TrigExile:AB$ Mill | Cost$ 0 | Defined$ TriggeredTarget | NumCards$ 1 | Destination$ Exile | RememberMilled$ True | SubAbility$ DBGainLife
+SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ X | References$ X | SubAbility$ DBEffect
+SVar:X:Remembered$CardManaCost
+SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay,STPlay2 | Triggers$ TriggerCastDoM | SVars$ TrigRemoveSelf | RememberObjects$ Remembered | SubAbility$ DBCleanup
+SVar:STPlay:Mode$ Continuous | EffectZone$ Command | Affected$ Card.IsRemembered+nonLand+YouOwn | AddHiddenKeyword$ May be played & May spend mana as though it were mana of any color to cast CARDNAME | AffectedZone$ Exile | Description$ Until end of turn, you may cast that card and you may spend mana as though it were mana of any color to cast it.
+SVar:STPlay2:Mode$ Continuous | EffectZone$ Command | Affected$ Card.IsRemembered+nonLand+OppOwn | AddHiddenKeyword$ May be played by your opponent & May spend mana as though it were mana of any color to cast CARDNAME | AffectedZone$ Exile
+SVar:TriggerCastDoM:Mode$ SpellCast | ValidCard$ Card.IsRemembered | TriggerZones$ Command | Execute$ TrigRemoveSelf | Static$ True
+SVar:TrigRemoveSelf:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
+SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
+SVar:Picture:http://www.wizards.com/global/images/magic/general/daxos_of_meletis.jpg
\ No newline at end of file

I think it would be better to AddSVar to that card and read mapParams of the svar in order to script other cards like Quicksilver Elemental.
swordshine
 
Posts: 682
Joined: 11 Jul 2010, 02:37
Has thanked: 116 times
Been thanked: 87 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 109 guests


Who is online

In total there are 109 users online :: 0 registered, 0 hidden and 109 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 109 guests

Login Form