Page 126 of 141

Re: Card Development Questions

PostPosted: 22 Nov 2013, 08:30
by Marek14
Marc: It's this article:

https://www.wizards.com/magic/magazine/ ... arcana/612

When I was implementing these things in BotArena, I encountered another problem, and that is Zombie tokens in Innistrad (there are 3 pictures). Unlike Eldrazi Spawns, there's no simple way to assign them to cards. In the end I resolved it by making the cards create the three types randomly, which seems to fit Innistrad well. Is there a better way?

Re: Card Development Questions

PostPosted: 23 Nov 2013, 01:18
by Xitax
Sure, I will make the tokens all set specific as they can be as well as make sure the Eldrazi tokens are associated with the right cards. I will upload a set of edited scripts and also the complete tokens picture directory for LQ size when I finish. I think this makes it as easy as possible for somebody to put it in.

I never asked to join the devs group because I don't have an ongoing contribution plan. Once I get the tokens sorted out I don't think there's any more for me to do.

Re: Card Development Questions

PostPosted: 23 Nov 2013, 08:03
by Marek14
If you could upload a HQ compilation of tokens somewhere, it would be good as well - getting HQ tokens would otherwise involve large amount of renaming.

Re: Card Development Questions

PostPosted: 23 Nov 2013, 13:16
by friarsol
drdev,

I'm curious why you decided to just create CostDesc's for all of the cards that didn't parse properly with your regex instead of just having the Mana be wrapepd in {} when coming out of Cost.java as I originally suggested. The way you did it means that people will need to do this in the future, instead of just creating the cards they had been, and letting the underlying framework generate the cost formatting like it was doing before.

Re: Card Development Questions

PostPosted: 23 Nov 2013, 15:52
by drdev
friarsol wrote:drdev,

I'm curious why you decided to just create CostDesc's for all of the cards that didn't parse properly with your regex instead of just having the Mana be wrapepd in {} when coming out of Cost.java as I originally suggested. The way you did it means that people will need to do this in the future, instead of just creating the cards they had been, and letting the underlying framework generate the cost formatting like it was doing before.
CostDesc$ often includes more than just mana costs, so it seemed the best way to do it efficiently. This way, the syntax for mana costs is consistent for all description pieces in the script, whether it be SpellDescription, TriggerDescription, or CostDesc.

Re: Card Development Questions

PostPosted: 23 Nov 2013, 17:42
by friarsol
drdev wrote:CostDesc$ often includes more than just mana costs, so it seemed the best way to do it efficiently. This way, the syntax for mana costs is consistent for all description pieces in the script, whether it be SpellDescription, TriggerDescription, or CostDesc.
But this is exactly what's generated by Cost. It spits out a full Cost in words, ordered in specific way. Updating 100s of scripts definitely seems less efficient to me than just fixing it one spot (for many of these cases). We can't do anything about SpellDescriptions or TriggerDescriptions because it's just text. But the Cost for abilities is parsed, so we should be able to handle that.

Re: Card Development Questions

PostPosted: 23 Nov 2013, 18:20
by drdev
friarsol wrote:
drdev wrote:CostDesc$ often includes more than just mana costs, so it seemed the best way to do it efficiently. This way, the syntax for mana costs is consistent for all description pieces in the script, whether it be SpellDescription, TriggerDescription, or CostDesc.
But this is exactly what's generated by Cost. It spits out a full Cost in words, ordered in specific way. Updating 100s of scripts definitely seems less efficient to me than just fixing it one spot (for many of these cases). We can't do anything about SpellDescriptions or TriggerDescriptions because it's just text. But the Cost for abilities is parsed, so we should be able to handle that.
What you're missing is I already did update the Cost logic to format it, however, for cards where it's specified, CostDesc$ is used in place of the parsed cost, meaning the only way to have it display right was to update the scripts.

Re: Card Development Questions

PostPosted: 23 Nov 2013, 18:30
by friarsol
drdev wrote:What you're missing is I already did update the Cost logic to format it, however, for cards where it's specified, CostDesc$ is used in place of the parsed cost, meaning the only way to have it display right was to update the scripts.
Ah. That makes more sense. Sorry about that. I don't know why so many of those cards have CostDesc. I just saw a ton of card script changes and it had me worried.

Re: Card Development Questions

PostPosted: 23 Nov 2013, 18:38
by drdev
friarsol wrote:
drdev wrote:What you're missing is I already did update the Cost logic to format it, however, for cards where it's specified, CostDesc$ is used in place of the parsed cost, meaning the only way to have it display right was to update the scripts.
Ah. That makes more sense. Sorry about that. I don't know why so many of those cards have CostDesc. I just saw a ton of card script changes and it had me worried.
No worries.

Re: Card Development Questions

PostPosted: 23 Nov 2013, 20:32
by Xitax
Marek14 wrote:If you could upload a HQ compilation of tokens somewhere, it would be good as well - getting HQ tokens would otherwise involve large amount of renaming.
I'll try, but the problem is going to be finding HQ versions of the card art I need for tokens that have no official art. I've spent a lot of time finding versions of the art that I personally prefer for those but since I use 282x400 pics for Forge I don't have them in HQ. I mean, has anyone ever seen a black 3/3 kavu token pic in HQ that doesn't look like total crap?

Re: Card Development Questions

PostPosted: 24 Nov 2013, 08:51
by Marek14
There was a compilation here at one time. I put my current version up...

http://uloz.to/xstCTNeW/tokens-compilation-zip

Re: Card Development Questions

PostPosted: 07 Jan 2014, 14:16
by swordshine
I'm trying to implement the last card which affects cards during the untap step, Storage Matrix. AI logic is quite complicated (forge.ai.ComputerUtil.chooseSomeType(Player, String, String, List<String>)). Any suggestions?

Re: Card Development Questions

PostPosted: 07 Jan 2014, 17:23
by Sloth
swordshine wrote:I'm trying to implement the last card which affects cards during the untap step, Storage Matrix. AI logic is quite complicated (forge.ai.ComputerUtil.chooseSomeType(Player, String, String, List<String>)). Any suggestions?
Maybe just choose the type with the most tapped permanents. Maybe value creatures with factor 1,5.

Re: Card Development Questions

PostPosted: 11 Jan 2014, 04:28
by torridus
I've been coding a number of unofficial cards and I'm not entirely sure how to proceed for one. I want it to be a creature which gets +1/+1 for each card in the exile zone (through suspend or other abilities), but I haven't found a way to make that work yet.

I figure it should look similar to Omnath:
Code: Select all
S:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | AddToughness$ X | References$ X | Description$ CARDNAME gets +1/+1 for each green mana in your mana pool.
SVar:X:Count$ManaPool:green
There are existing cards buffed by all sorts of things - lands, cards in graveyards, auras, etc - but nothing similar enough to this. Trench Gorger is the closest card, probably, but I want to have something without remembered cards.

Re: Card Development Questions

PostPosted: 11 Jan 2014, 05:12
by friarsol
I didn't test it, but I believe this should do the trick:

Code: Select all
S:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | AddToughness$ X | References$ X | Description$ CARDNAME gets +1/+1 for each exiled card.
SVar:X:Count$Valid Card.inZoneExile