Implementing variants
Post MTG Forge Related Programming Questions Here
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: Implementing variants
by Hellfish » 12 May 2013, 16:39
BTWBTW, if anybody more familiar with AF_Dig or the like than me would like to try to script theSpatial Merging or Interplanar Tunnel phenomena, I *think* all the infrastructure should be in place. Just pass the correct card or cards to AF_Planeswalk in the Defined$ parameter.
Last edited by Hellfish on 13 May 2013, 22:07, edited 1 time in total.
So now you're
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
-
Hellfish - Programmer
- Posts: 1297
- Joined: 07 Jun 2009, 10:41
- Location: South of the Pumphouse
- Has thanked: 110 times
- Been thanked: 169 times
Re: Implementing variants
by Chris H. » 12 May 2013, 16:49
Hellfish wrote:Btw, Marc,I forgot to mention this in the svn log, but I added your Orzhova script when I converted the variant decks to zones. Works a treat, thanks!
I see that I forgot to add this new card to the changes.txt file this morning, thank you catching this one for me.

-
Chris H. - Forge Moderator
- Posts: 6320
- Joined: 04 Nov 2008, 12:11
- Location: Mac OS X Yosemite
- Has thanked: 644 times
- Been thanked: 643 times
Re: Implementing variants
by swordshine » 29 May 2013, 10:32
The new button "Planeswalk to" is great! Thanks, Mark!
Here is a bug: cards with the PlaneswalkedFrom trigger triggers when I planeswalk to them.
Here is a bug: cards with the PlaneswalkedFrom trigger triggers when I planeswalk to them.
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Implementing variants
by moomarc » 29 May 2013, 11:01
I thought Hellfish managed to fix that bug when he changed the Planar Deck to an actual zone and added my script for Orzhova. And the dev button basically adds your desired plane to the top of your planar deck then rolls Planeswalk on the planar dice, so I don't think that addition could have caused this. Hellfish? Any ideas?
-Marc
-
moomarc - Pixel Commander
- Posts: 2091
- Joined: 04 Jun 2010, 15:22
- Location: Johannesburg, South Africa
- Has thanked: 371 times
- Been thanked: 372 times
Re: Implementing variants
by swordshine » 29 May 2013, 11:29
This bug exists for several days.moomarc wrote:I thought Hellfish managed to fix that bug when he changed the Planar Deck to an actual zone and added my script for Orzhova. But the dev button basically adds your desired plane to the top of your planar deck then rolls Planeswalk on the planar dice, so I don't think that addition could have caused this. Hellfish? Any ideas?

- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Implementing variants
by Hellfish » 29 May 2013, 14:41
I'll take a look first chance I get. Orzhova worked when I added it, I'm sure of that.
So now you're
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
-
Hellfish - Programmer
- Posts: 1297
- Joined: 07 Jun 2009, 10:41
- Location: South of the Pumphouse
- Has thanked: 110 times
- Been thanked: 169 times
Re: Implementing variants
by Hellfish » 30 May 2013, 06:19
Should be good now, but I only had a few minutes before work to find,fix and test this so... *crosses fingers*
So now you're
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
-
Hellfish - Programmer
- Posts: 1297
- Joined: 07 Jun 2009, 10:41
- Location: South of the Pumphouse
- Has thanked: 110 times
- Been thanked: 169 times
Re: Implementing variants
by moomarc » 30 May 2013, 07:49
Works perfectly as far as I can tell. Thanks Hellfish!
-Marc
-
moomarc - Pixel Commander
- Posts: 2091
- Joined: 04 Jun 2010, 15:22
- Location: Johannesburg, South Africa
- Has thanked: 371 times
- Been thanked: 372 times
Re: Implementing variants
by Agetian » 09 Jul 2013, 12:22
r22522: I implemented the proper Archenemy rules for staring life and starting player, now the Archenemy will always go first and have 40 life (per rules 904.5 and 904.6). Some things about Archenemy mode I've noticed:
1)For some reason, the Archenemy's first draw phase is not skipped - I'm not sure if it should be or not though, since in normal games the player who goes first always skips his first draw... Can someone clarify if it should be skipped and, if so, how to properly implement it so it's always skipped? (can't find the relevant code :\ ) - nevermind, I figured the draw step is not skipped in multiplayer MTG.
2)The scheme card "Dance, Pathetic Marionette" is broken as it doesn't allow the player to choose which creature to put into play - instead, it always puts the revealed creature from the first AI opponent (who got to reveal it) into play. Is someone interested in fixing this one? (I tried to look around but I'm not sure why the relevant script part doesn't fire - there is indeed a choice in the script but it doesn't work for some reason). - fixed by swordshine (thanks!)
3) Conceding the Archenemy game (e.g. by quitting via Alt+F4) sometimes results in this exception:
1)
2)
3) Conceding the Archenemy game (e.g. by quitting via Alt+F4) sometimes results in this exception:
- IllegalStateException | Open
- Code: Select all
Forge Version: 1.4.3-SNAPSHOT-r22520M
Operating System: Windows 7 6.1 x86
Java Version: 1.7.0_09 Oracle Corporation
java.lang.IllegalStateException: No opponents left ingame for Ellen
at forge.game.player.Player.getOpponent(Player.java:290)
at forge.card.ability.ai.DrawAi.targetAI(DrawAi.java:145)
at forge.card.ability.ai.DrawAi.canPlayAI(DrawAi.java:92)
at forge.card.ability.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:18)
at forge.card.ability.SpellApiBased.canPlayAI(SpellApiBased.java:49)
at forge.game.ai.AiController.canPlayAndPayFor(AiController.java:477)
at forge.game.ai.AiController.chooseSpellAbilyToPlay(AiController.java:461)
at forge.game.ai.AiController.getSpellAbilityToPlay(AiController.java:820)
at forge.game.ai.AiController.playSpellAbilities(AiController.java:794)
at forge.game.ai.AiController.onPriorityRecieved(AiController.java:744)
at forge.game.player.PlayerControllerAi.takePriority(PlayerControllerAi.java:348)
at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:882)
at forge.game.GameAction.startGame(GameAction.java:1489)
at forge.game.Match$1.run(Match.java:109)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Last edited by Agetian on 09 Jul 2013, 14:23, edited 2 times in total.
- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: Implementing variants
by swordshine » 09 Jul 2013, 13:15
Fixed in r22523Agetian wrote:2) The scheme card "Dance, Pathetic Marionette" is broken as it doesn't allow the player to choose which creature to put into play...
- Agetian
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Implementing variants
by Agetian » 09 Jul 2013, 14:13
Thanks for the fix, swordshine!swordshine wrote:Fixed in r22523Agetian wrote:2) The scheme card "Dance, Pathetic Marionette" is broken as it doesn't allow the player to choose which creature to put into play...
- Agetian
- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: Implementing variants
by moomarc » 06 Sep 2013, 05:44
Firstly, huge thanks to Hellfish for implementing Commander! I'd never had the chance to play it in real life so it's a real treat for me.
Then I think it would be a good idea to collect Commander-specific bugs here until the next beta release so they don't get swallowed by the Lesser Spotted Bugatog (a monstrosity that gets +1/+1 for each bug report in our threads). So far I noticed:
- Sol's report about casting your commander not triggering spellcast triggers
- swordshine's report about the interaction of cost change abilities and commander cost
Then I think it would be a good idea to collect Commander-specific bugs here until the next beta release so they don't get swallowed by the Lesser Spotted Bugatog (a monstrosity that gets +1/+1 for each bug report in our threads). So far I noticed:
- Sol's report about casting your commander not triggering spellcast triggers
- swordshine's report about the interaction of cost change abilities and commander cost
-Marc
-
moomarc - Pixel Commander
- Posts: 2091
- Joined: 04 Jun 2010, 15:22
- Location: Johannesburg, South Africa
- Has thanked: 371 times
- Been thanked: 372 times
Re: Implementing variants
by Hellfish » 06 Sep 2013, 06:43
I looked at the SpellAbilityCastTrigger this morning, without enough time to find a fix. :-\
It seems like AF_PermanentCreature spells and abilities take a different route onto the stack than normal spells, as a breakpoint in SpellAbilityCastTrigger.performTest, which is called from TriggerHandler.run, is never hit when I cast a PermanentCreature.
Also, I thinj Swordshine withdrew that other bug report
It seems like AF_PermanentCreature spells and abilities take a different route onto the stack than normal spells, as a breakpoint in SpellAbilityCastTrigger.performTest, which is called from TriggerHandler.run, is never hit when I cast a PermanentCreature.
Also, I thinj Swordshine withdrew that other bug report

So now you're
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
-
Hellfish - Programmer
- Posts: 1297
- Joined: 07 Jun 2009, 10:41
- Location: South of the Pumphouse
- Has thanked: 110 times
- Been thanked: 169 times
Re: Implementing variants
by jmartus » 06 Sep 2013, 06:45
I tried a snapshot build and tried a commander deck it said couldnt find commander card when I went to start a game or that I had to many cards which was at 100.
Re: Implementing variants
by swordshine » 06 Sep 2013, 07:00
Commader deck editor->Change Section(Commander)->add your commanderjmartus wrote:I tried a snapshot build and tried a commander deck it said couldnt find commander card when I went to start a game or that I had to many cards which was at 100.
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Who is online
Users browsing this forum: No registered users and 48 guests