It is currently 09 Sep 2025, 15:54
   
Text Size

Implementing variants

Post MTG Forge Related Programming Questions Here

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

Re: Implementing variants

Postby 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
User avatar
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

Postby 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. :)
User avatar
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

Postby 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.
swordshine
 
Posts: 682
Joined: 11 Jul 2010, 02:37
Has thanked: 116 times
Been thanked: 87 times

Re: Implementing variants

Postby 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
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: Implementing variants

Postby swordshine » 29 May 2013, 11:29

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?
This bug exists for several days. :roll:
swordshine
 
Posts: 682
Joined: 11 Jul 2010, 02:37
Has thanked: 116 times
Been thanked: 87 times

Re: Implementing variants

Postby 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
User avatar
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

Postby 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
User avatar
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

Postby moomarc » 30 May 2013, 07:49

Works perfectly as far as I can tell. Thanks Hellfish!
-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: Implementing variants

Postby 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:
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)
- Agetian
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

Postby swordshine » 09 Jul 2013, 13:15

Agetian 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
Fixed in r22523
swordshine
 
Posts: 682
Joined: 11 Jul 2010, 02:37
Has thanked: 116 times
Been thanked: 87 times

Re: Implementing variants

Postby Agetian » 09 Jul 2013, 14:13

swordshine wrote:
Agetian 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...
Fixed in r22523
Thanks for the fix, swordshine!

- Agetian
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Implementing variants

Postby 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
-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: Implementing variants

Postby 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 :-)
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
User avatar
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

Postby 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.
jmartus
 
Posts: 207
Joined: 11 Oct 2010, 09:25
Has thanked: 0 time
Been thanked: 7 times

Re: Implementing variants

Postby swordshine » 06 Sep 2013, 07:00

jmartus 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.
Commader deck editor->Change Section(Commander)->add your commander
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 39 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 39 users online :: 0 registered, 0 hidden and 39 guests (based on users active over the past 10 minutes)
Most users ever online was 7303 on 15 Jul 2025, 20:46

Users browsing this forum: No registered users and 39 guests

Login Form