Board index
Programs with AI or Rules Enforcement
Magic: The Gathering - Duels of the Planeswalkers
New MTG Cards and Decks (2010, 2012, 2013, 2014, 2015, Magic Duels)
2014




Formal Request Thread
Moderator: CCGHQ Admins
Re: Formal Request Thread
by Master Necro » 30 Jul 2013, 15:51
Got it, the rules are still kinda fuzzy to me since I am fairly new to Magic.thefiremind wrote:Why should it be the same? Creatures with 0 power don't deal combat damage, yet they can attack and block (if there's nothing else saying otherwise). Fog Bank is one of the best blockers ever, yet it has that ability.Master Necro wrote:As long as we are talking about the rules if the card says "Prevent all combat damage that would be dealt to and dealt by enchanted creature." is it the same as "Enchanted creature can't attack or block."?

-
Master Necro - Posts: 259
- Joined: 24 Apr 2013, 18:25
- Has thanked: 83 times
- Been thanked: 21 times
Re: Formal Request Thread
by damienx45 » 30 Jul 2013, 16:33
okay so can you create spawnsire of ulamog without the 3rd ability? maybe give it another ability to replace the 3rd ability, like, (8:eldrazi creatures you control get +3/+3 and protection from color of your choice until end of turn)
Re: Formal Request Thread
by thefiremind » 30 Jul 2013, 18:07
Then it wouldn't be Spawnsire of Ulamog anymore... if you like invented cards, invent a new Eldrazi from scratch and give it all the abilities you want. In my opinion there's enough space for new ideas even without considering the cards that are impossible to code and without inventing new cards... but this is just my point of view.damienx45 wrote:okay so can you create spawnsire of ulamog without the 3rd ability? maybe give it another ability to replace the 3rd ability, like, (8:eldrazi creatures you control get +3/+3 and protection from color of your choice until end of turn)

< Former DotP 2012/2013/2014 modder >
Currently busy with life...
Currently busy with life...
-
thefiremind - Programmer
- Posts: 3515
- Joined: 07 Nov 2011, 10:55
- Has thanked: 118 times
- Been thanked: 722 times
Re: Formal Request Thread
by damienx45 » 30 Jul 2013, 18:13
okay so just make spawnsire without the 3rd ability, there's other cards that have been coded without certain abilities b/c there were not able to be coded.
Re: Formal Request Thread
by MC Brodie » 30 Jul 2013, 19:04
Can cards like Ashen Ghoul be coded? For some reason i thought the current rule set went away from graveyard order
-----------------------------------------------------------------------
Song of the Day: 46 and 2 (cover)
Song of the Day: 46 and 2 (cover)
Re: Formal Request Thread
by RiiakShiNal » 30 Jul 2013, 19:33
It should be possible since we have Graveyard_GetNth( nIndex ). Now which way the indexes go in the graveyard I don't know at the moment, but essentially you scan the graveyard using Graveyard_GetNth() until you either see 3 creature cards (ability should be able to be activated) or you see the instance of Ashen Ghoul (in which case you prevent the ability from being activated) in an AVAILABILITY block.MC Brodie wrote:Can cards like Ashen Ghoul be coded? For some reason i thought the current rule set went away from graveyard order
Note: You would not use an INTERVENING_IF block for this ability since it is only checked to see if the ability can be activated.
Just getting started: Xander9009's DotP 2014 Community Wad
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
- RiiakShiNal
- Programmer
- Posts: 2188
- Joined: 16 May 2011, 21:37
- Has thanked: 75 times
- Been thanked: 497 times
Re: Formal Request Thread
by sumomole » 30 Jul 2013, 22:57
I need help, I can't get the value PayManaCost(X) in generic cost. Who else coded Kessig Wolf Run or have any way to do that?
- Kessig Wolf Run(fail) | Open
- Code: Select all
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{X}{R}{G}, {T}: Target creature gets +X/+0 and gains trample until end of turn.]]></LOCALISED_TEXT>
<COST type="TapSelf" />
<COST type="Generic">
<PREREQUISITE>
return EffectController():CanPayManaCost("{R}{G}")
</PREREQUISITE>
<RESOLUTION_TIME_ACTION>
EffectController():PayManaCost("{X}{R}{G}")
</RESOLUTION_TIME_ACTION>
</COST>
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_GET_X_0" definition="0" compartment="0" count="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
</TARGET_DEFINITION>
<CONTINUOUS_ACTION layer="7C">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local characteristics = target:GetCurrentCharacteristics()
characteristics:Power_Add( GetEffectX() )
characteristics:Toughness_Add( 0 )
end
</CONTINUOUS_ACTION>
<CONTINUOUS_ACTION layer="6">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local characteristics = target:GetCurrentCharacteristics()
characteristics:Bool_Set( CHARACTERISTIC_TRAMPLE, 1 )
end
</CONTINUOUS_ACTION>
<DURATION simple_duration="UntilEOT" />
<AI_AVAILABILITY window_step="declare_blockers" type="window" />
<AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED_ONLY" />
<AUTO_SKIP always="1" />
</ACTIVATED_ABILITY>
j6m6w6 wrote:whould anyone be able to code these please, Ghoulcaller's Bell Basilisk Collar
cards.zip
- (209.77 KiB) Downloaded 379 times
-
sumomole - Programmer
- Posts: 611
- Joined: 07 Jun 2011, 08:34
- Has thanked: 51 times
- Been thanked: 234 times
Re: Formal Request Thread
by Xander9009 » 30 Jul 2013, 23:22
This was how I coded Drana, Kalastria Bloodchiefsumomole wrote:I need help, I can't get the value PayManaCost(X) in generic cost. Who else coded Kessig Wolf Run or have any way to do that?
- Kessig Wolf Run(fail) | Open
- Code: Select all
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{X}{R}{G}, {T}: Target creature gets +X/+0 and gains trample until end of turn.]]></LOCALISED_TEXT>
<COST type="TapSelf" />
<COST type="Generic">
<PREREQUISITE>
return EffectController():CanPayManaCost("{R}{G}")
</PREREQUISITE>
<RESOLUTION_TIME_ACTION>
EffectController():PayManaCost("{X}{R}{G}")
</RESOLUTION_TIME_ACTION>
</COST>
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_GET_X_0" definition="0" compartment="0" count="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
</TARGET_DEFINITION>
<CONTINUOUS_ACTION layer="7C">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local characteristics = target:GetCurrentCharacteristics()
characteristics:Power_Add( GetEffectX() )
characteristics:Toughness_Add( 0 )
end
</CONTINUOUS_ACTION>
<CONTINUOUS_ACTION layer="6">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local characteristics = target:GetCurrentCharacteristics()
characteristics:Bool_Set( CHARACTERISTIC_TRAMPLE, 1 )
end
</CONTINUOUS_ACTION>
<DURATION simple_duration="UntilEOT" />
<AI_AVAILABILITY window_step="declare_blockers" type="window" />
<AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED_ONLY" />
<AUTO_SKIP always="1" />
</ACTIVATED_ABILITY>j6m6w6 wrote:whould anyone be able to code these please, Ghoulcaller's Bell Basilisk Collarcards.zip
- | Open
- Code: Select all
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{X}{B}{B}: Target creature gets -0/-X until end of turn and Drana, Kalastria Bloodchief gets +X/+0 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{X}{B}{B} : La créature ciblée gagne -0/-X jusqu’à la fin du tour et Drana, chef de sang des Kalastria gagne +X/+0 jusqu’à la fin du tour.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{X}{B}{B}: La criatura objetivo obtiene -0/-X hasta el final del turno y Drana, jefe de sangre Kalastria obtiene +X/+0 hasta el final del turno.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{X}{B}{B}: Eine Kreatur deiner Wahl erhält -0/-X bis zum Ende des Zuges, und Drana, Bluthäuptling der Kalastria, erhält +X/+0 bis zum Ende des Zuges.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{X}{B}{B}: Una creatura bersaglio prende -0/-X fino alla fine del turno e Drana, Capo Sanguinario Kalastria prende +X/+0 fino alla fine del turno.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{X}{B}{B}:クリーチャー1体を対象とする。それはターン終了時まで-0/-Xの修整を受け、カラストリアの血の長、ドラーナはターン終了時まで+X/+0の修整を受ける。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{X}{B}{B}: Target creature gets -0/-X until end of turn and Drana, Kalastria Bloodchief gets +X/+0 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{X}{B}{B}: целевое существо получает -0/-X до конца хода, а Драна, Кровавый Вождь Каластриев получает +X/+0 до конца хода.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{X}{B}{B}: A criatura alvo recebe -0/-X até o final do turno e Drana, Grão-Vampiro Kalastria, recebe +X/+0 até o final do turno.]]></LOCALISED_TEXT>
<COST mana_cost="{X}{B}{B}" type="Mana" />
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_LOSE_1_1" definition="0" compartment="0" count="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
</TARGET_DEFINITION>
<CONTINUOUS_ACTION layer="7C">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local characteristics = target:GetCurrentCharacteristics()
characteristics:Power_Add( 0 )
characteristics:Toughness_Add( -GetEffectX() )
end
</CONTINUOUS_ACTION>
<DURATION simple_duration="UntilEOT" />
<CONTINUOUS_ACTION layer="7C">
if EffectSource() ~= nil then
local characteristics = EffectSource():GetCurrentCharacteristics()
characteristics:Power_Add( GetEffectX() )
characteristics:Toughness_Add( 0 )
end
</CONTINUOUS_ACTION>
<DURATION simple_duration="UntilEOT" />
</ACTIVATED_ABILITY>
_______________________________
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
-
Xander9009 - Programmer
- Posts: 2905
- Joined: 29 Jun 2013, 07:44
- Location: Indiana, United States
- Has thanked: 121 times
- Been thanked: 445 times
Re: Formal Request Thread
by RiiakShiNal » 30 Jul 2013, 23:29
For Kessig Wolf Run wouldn't you use:
Otherwise you'll need to determine the max cost a player can afford using something like:
- Code: Select all
<COST type="Mana" mana_cost="{X}{R}{G}" />
Otherwise you'll need to determine the max cost a player can afford using something like:
- Code: Select all
local nMaxX = 0
while (EffectController():CanPayManaCost("{"..nMaxX.."}{R}{G}") do
nMaxX = nMaxX + 1
end
-- Adjust downward because we went over what can be afforded.
nMaxX = nMaxX - 1
- Code: Select all
EffectController():BeginNewNumericalChoice()
EffectController():AddNumericalChoiceAnswer( nMaxX )
EffectController():AskNumericalChoiceQuestion( "<CARD_QUERY here>" )
Just getting started: Xander9009's DotP 2014 Community Wad
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
- RiiakShiNal
- Programmer
- Posts: 2188
- Joined: 16 May 2011, 21:37
- Has thanked: 75 times
- Been thanked: 497 times
Re: Formal Request Thread
by sumomole » 30 Jul 2013, 23:36
These two cards have nothing in common, since Kessig Wolf Run can produce mana, any activated ability need tapped on a card that can produce mana will cause error, usually, such as Gavony Township, we addXander9009 wrote:This was how I coded Drana, Kalastria Bloodchief
- Code: Select all
<AVAILABILITY>
return EffectController():CanPayManaCost("{3}{G}{W}")
</AVAILABILITY>
This way is no problem in 2013, but now we have lost TapLand(), I have tried and EffectController():PayManaCost("{.. EffectController():GetTotalMana()..}") not always work fine, seem to conflict between PayManaCost and GetNumericalChoiceResult.RiiakShiNal wrote:For Kessig Wolf Run wouldn't you use:then use the GetEffectX()?
- Code: Select all
<COST type="Mana" mana_cost="{X}{R}{G}" />
Otherwise you'll need to determine the max cost a player can afford using something like:Then ask the player a numeric question using something like:
- Code: Select all
local nMaxX = 0
while (EffectController():CanPayManaCost("{"..nMaxX.."}{R}{G}") do
nMaxX = nMaxX + 1
end
-- Adjust downward because we went over what can be afforded.
nMaxX = nMaxX - 1and then make them pay it with PayManaCost. Getting the amount using EffectController():GetNumericalChoiceResult().
- Code: Select all
EffectController():BeginNewNumericalChoice()
EffectController():AddNumericalChoiceAnswer( nMaxX )
EffectController():AskNumericalChoiceQuestion( "<CARD_QUERY here>" )

I guess because TapLand only consider the current state: lands are tapped or not, but PayManaCost seem to get the state before starting ability, so even Kessig Wolf Run has been tapped by ability tap cost, it still be considered one of the mana sources.
Last edited by sumomole on 30 Jul 2013, 23:51, edited 3 times in total.
-
sumomole - Programmer
- Posts: 611
- Joined: 07 Jun 2011, 08:34
- Has thanked: 51 times
- Been thanked: 234 times
Re: Formal Request Thread
by Xander9009 » 30 Jul 2013, 23:40
Ah, sorry. I didn't know that caused issues.sumomole wrote:These two cards have nothing in common, since Kessig Wolf Run can produce mana, any activated ability need tapped on a card that can produce mana will cause error, usually, such as Gavony Township, we addXander9009 wrote:This was how I coded Drana, Kalastria Bloodchiefto solve this problem, can pay mana cost equal to ability mana cost plus 1, but it's not valid for Kessig Wolf Run, because of this X.
- Code: Select all
<AVAILABILITY>
return EffectController():CanPayManaCost("{3}{G}{W}")
</AVAILABILITY>
_______________________________
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
-
Xander9009 - Programmer
- Posts: 2905
- Joined: 29 Jun 2013, 07:44
- Location: Indiana, United States
- Has thanked: 121 times
- Been thanked: 445 times
Re: Formal Request Thread
by thefiremind » 30 Jul 2013, 23:53
What happens exactly when it doesn't work? I coded Crimson Hellkite with the same trick I used in DotP2013 and from a brief test it seemed to work fine... here it is, maybe it will help you (or maybe you'll discover that it has a problemsumomole wrote:This way is no problem in 2013, but now we have lost TapLand(), I have tried and EffectController():PayManaCost("{.. EffectController():GetTotalMana()..}") not always work fine, seem to conflict between PayManaCost and GetNumericalChoiceResult.

< Former DotP 2012/2013/2014 modder >
Currently busy with life...
Currently busy with life...
-
thefiremind - Programmer
- Posts: 3515
- Joined: 07 Nov 2011, 10:55
- Has thanked: 118 times
- Been thanked: 722 times
Re: Formal Request Thread
by RiiakShiNal » 30 Jul 2013, 23:54
Instead of GetTotalMana() wouldn't it be:sumomole wrote:This way is no problem in 2013, but now we have lost TapLand(), I have tried and EffectController():PayManaCost("{.. EffectController():GetTotalMana()..}") not always work fine, seem to conflict between PayManaCost and GetNumericalChoiceResult.
- Code: Select all
EffectController():PayManaCost("{"..EffectController():GetNumericalChoiceResult().."}{R}{G}")
- Code: Select all
local nChosenX = EffectController():GetNumericalChoiceResult()
EffectDC():Int_Set( 1, nChosenX )
Just getting started: Xander9009's DotP 2014 Community Wad
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
- RiiakShiNal
- Programmer
- Posts: 2188
- Joined: 16 May 2011, 21:37
- Has thanked: 75 times
- Been thanked: 497 times
Who is online
Users browsing this forum: No registered users and 18 guests