Keywords recognized by Forge
Post MTG Forge Related Programming Questions Here
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: Keywords recognized by Forge
by Chris H. » 16 Jun 2010, 13:14
OK, we have now merged Hellfish's HandSize keyword and the two fixes (rev 1239) into the SVN. I also updated the keyword listing.
-
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: Keywords recognized by Forge
by Beached As » 19 Jun 2010, 08:33
I'll see if i can finish my Cost Modifying keyword. Almost done, just gotta get multikicker working. After that i've probably start fixing some bugs. I've introduced quite a few, its only fair that i get rid of some
- Beached As
- Programmer
- Posts: 110
- Joined: 23 Feb 2010, 07:48
- Has thanked: 0 time
- Been thanked: 0 time
Re: Keywords recognized by Forge
by Chris H. » 19 Jun 2010, 10:18
`Beached As wrote:I'll see if i can finish my Cost Modifying keyword. Almost done, just gotta get multikicker working. After that i've probably start fixing some bugs. I've introduced quite a few, its only fair that i get rid of some
Sometimes a bug will be fairly easy to fix and even I will pull out that can of raid at times.
-
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: Keywords recognized by Forge
by Chris H. » 20 Jun 2010, 11:38
I added the new keyword CostChange:{params} to the listing. Thank you, nice work.
-
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: Keywords recognized by Forge
by Beached As » 20 Jun 2010, 22:52
I'll just give you guys a summary of the CostChange at this point in time. Other special conditions may be added later.
Condition: Available Parameters:
String CostChange - Triggers the keyword.
String Player [ Player , Opponent , All ] - Who the cost change effects
string Effect [ More , Less ]- Does it increase or decrease cost
String Cost [ Number(1,24) , Color(WURGB) ]- How much does it change mana costs by
String Target [ Spell , Ability , Self, All] - What kind of action does it effect
String Color [ white, black, blue, red, green , colorless, All]- What colors does it effect
String Type [ Any String: Creature, Artifact, Goblin, etc , All]- Which types does it effect
String Special[ Card Specific: See list below ] - Does the mana change require a special condition
The Special Conditions which have been programmed so far:
NoSpecial: Looks good but actually does nothing (like Anna Kournikova )
OnlyOneBonus: Sets the Cost Effect in motion if the card being played suits one of the color/type conditions
All Conditions: Checks to see if the card being played matches all conditions in color/type
CardisTapped: Checks if the Card reducing the mana cost is tapped
TargetInPlay: Checks if the Card being activated is in play
NonType: Reverses the Type condition
OpponentTurn: Checks if the controller of the card being played is the opponent
Affinity/{Insert Type}: Changes the cost by the amount of the inserted type which is in play
Note that Affinity changes the number present under the "Cost" string. Having 1,2 or "Yeh Boi" there shouldn't do anything
Condition: Available Parameters:
String CostChange - Triggers the keyword.
String Player [ Player , Opponent , All ] - Who the cost change effects
string Effect [ More , Less ]- Does it increase or decrease cost
String Cost [ Number(1,24) , Color(WURGB) ]- How much does it change mana costs by
String Target [ Spell , Ability , Self, All] - What kind of action does it effect
String Color [ white, black, blue, red, green , colorless, All]- What colors does it effect
String Type [ Any String: Creature, Artifact, Goblin, etc , All]- Which types does it effect
String Special[ Card Specific: See list below ] - Does the mana change require a special condition
The Special Conditions which have been programmed so far:
NoSpecial: Looks good but actually does nothing (like Anna Kournikova )
OnlyOneBonus: Sets the Cost Effect in motion if the card being played suits one of the color/type conditions
All Conditions: Checks to see if the card being played matches all conditions in color/type
CardisTapped: Checks if the Card reducing the mana cost is tapped
TargetInPlay: Checks if the Card being activated is in play
NonType: Reverses the Type condition
OpponentTurn: Checks if the controller of the card being played is the opponent
Affinity/{Insert Type}: Changes the cost by the amount of the inserted type which is in play
Note that Affinity changes the number present under the "Cost" string. Having 1,2 or "Yeh Boi" there shouldn't do anything
- Beached As
- Programmer
- Posts: 110
- Joined: 23 Feb 2010, 07:48
- Has thanked: 0 time
- Been thanked: 0 time
Re: Keywords recognized by Forge
by Chris H. » 20 Jun 2010, 23:00
`Beached As wrote:I'll just give you guys a summary of the CostChange at this point in time. Other special conditions may be added later.
Thank you. I just linked the CostChange keyword in the listing to your message.
-
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: Keywords recognized by Forge
by Chris H. » 29 Jun 2010, 18:26
Added paintap:{damage number}:{mana} keyword.
-
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
-
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: Keywords recognized by Forge
by friarsol » 28 Jul 2010, 17:03
Oh I've added these to the SVN recently as well.
Suspend:{turns}:{cost}
Madness:{cost}
Suspend:{turns}:{cost}
Madness:{cost}
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: Keywords recognized by Forge
by Chris H. » 28 Jul 2010, 17:34
`friarisol wrote:Oh I've added these to the SVN recently as well.
Suspend:{turns}:{cost}
Madness:{cost}
Thank you, the listing is now up to date, I hope.
-
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: Keywords recognized by Forge
by frwololo » 02 Aug 2010, 07:38
Now that you have slightly dynamic keywords (keywords that accept parameters), you should consider the idea of having the AI use them as well (if card has ability a which is of class A, then...). This would make the AI more generic and easier to maintain.
We do this in Wagic with ok results (not as great as minmax, of course, but still alright).
Disregard if you already do this. I haven't checked the code for forge in a while.
We do this in Wagic with ok results (not as great as minmax, of course, but still alright).
Disregard if you already do this. I haven't checked the code for forge in a while.
Re: Keywords recognized by Forge
by Chris H. » 04 Aug 2010, 20:41
Added SVar:RemAIDeck:True to the keyword list.
-
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: Keywords recognized by Forge
by Rob Cashwalker » 04 Aug 2010, 22:23
Technically "SVar" is the keyword.... The middle parameter ("RemAIDeck") becomes a String property of the Card object, with the last parameter ("True") as its value.
The Force will be with you, Always.
-
Rob Cashwalker - Programmer
- Posts: 2167
- Joined: 09 Sep 2008, 15:09
- Location: New York
- Has thanked: 5 times
- Been thanked: 40 times
Re: Keywords recognized by Forge
by Chris H. » 05 Aug 2010, 00:35
`Rob Cashwalker wrote:Technically "SVar" is the keyword.... The middle parameter ("RemAIDeck") becomes a String property of the Card object, with the last parameter ("True") as its value.
Good point. That portion of the keyword listing looks like this:
`SVar:{Variable Key}:{Variable Value}
SVar:RemAIDeck:True
I do not plan to add in every one of the possible forms that the SVar could take. This one is a visible note to anyone now and in the future to use this to prevent these cards from appearing in random decks.
-
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: Keywords recognized by Forge
by Chris H. » 06 Aug 2010, 11:56
Added abAllPump to the keyword list.
-
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
Who is online
Users browsing this forum: No registered users and 107 guests