Gold Cost Formula
MicroProse's Shandalar Campaign Game, now with new cards & a new look!
Moderators: BAgate, drool66, Aswan jaguar, gmzombie, stassy, CCGHQ Admins
21 posts
• Page 1 of 2 • 1, 2
Gold Cost Formula
by Rawky » 18 Apr 2016, 04:32
I'll put as much of my pseudo code in here as I can. It's not even close to being complete, so expect some holes. It's an on-going process. Let me know if something seems really out of place. Also, post any cards you'd like to see in the sample list.
NB: So far I am working strictly with creatures, since I think non-creature spells will be simpler to do afterward. I'm probably wrong, but I'm okay with that.
Gold Cost = crev * 10 (round up to the nearest 1g)
crev (Creature Value) = [cmcv * (ltv + htv + lpv + hpv + cav)]
cmcv (converted mana cost value) = [[100 - ((cmc+1) * 5)] / 100]
ltv (Low Toughness value) = each point of toughness less than the cmc is worth 1 point
htv (High Toughness value) = each point of toughness equal to or greater than the cmc is worth 2 points
lpv (Low Power value) = each point of power less than the cmc is worth 3 points
hpv (High Power value) = each point of power equal to or greater than the cmc is worth 4 points
cav (Cumulative Ability value) = this is where we get stupidly complicated
(see below)
So far I am breaking down each ability relative to the cmc and power of the creature.
Category 1: extremely minor abilities (desertwalk)
static = 1/[(cmc+1)/(power+1)], activated = 1/[(cmc+1+actcost)/(power+1)]
Category 2: trample, lifelink, banding, lesser evasion (Cannot be blocked by walls), Sengir trigger
activated +0/+1 : 4/(actcost+1) this might need to be bumped up
Flash: 2 points flat rate
all others: static = 2/[(cmc+1)/(power+1)], activated = 2/[(cmc+1+actcost)/(power+1)]
Category 3: Flanking, First Strike, Infect, Reach, Vigilance, Wither, any basiclandwalk
Flanking: static = 3 points, activated = 3/(actcost+1)
Persist: 3 points flat rate
Tap for Mana: 3 points per color of mana (ie most get 3, some get 9, Birds gets 15)
all others: static = 3/[(cmc+1)/(power+1)], activated = 3/[(cmc+1+actcost)/(power+1)]
Category 4: Evasion (flying, shadow, horsemanship, others such as Elven Riders), Protection*
activated +1/+0: 8/(actcost+1) this might need to be bumped up
Regeneration: activated = (4/actcost) (Drudge Skeleton)
Undying, Deathtouch: 4 points flat rate
all others: static = 4/[(cmc+1)/(power+1)], activated = 4/[(cmc+1+actcost)/(power+1)]
* Protection provides a color-based evasion type and a color-based immunity type, so it might get bumped up a level if need be
Category 5: Hexproof, Shroud, Double Strike, tap for damage
Tap for damage: per point dealt (not yet worked out for further costs)
all others: static = 5/[(cmc+1)/(power+1)], activated = 5/[(cmc+1+actcost)/(power+1)]
Category 6: Major Evasion (Fear, Intimidation)
pending...
Category 7: Indestructible, Annihilator
Annihilator: 14/(cmc+1) per point
pending...
Here's a couple examples.
Here's a short list of example gold prices.
When sold to a vendor, my suggested sale price is 10% of it's buy price for a common, 20% for uncommon, 40% for rare, and 80% for mythic.
I think Royal Assassin should be at least as high as Earth Elemental, but maybe not as high as Paladin en-Vec, which is a pretty narrow range. This might help me determine a realistic value for his tap ability, which at present is rather low. I could use some input on things like this. His ability seems comparable to annihilator, but perhaps a severely-nerfed version of it since it can only destroy one type of permanent (1 of the original 4 permanent types) and only in a tapped state (1 out of 2 common states) and if you use it you don't get to attack (trading off the common use of a creature as a damage delivery system). So it sounds a bit like (x * 1/4 * 1/2 * 1/2), which is really small if I use the current value of annihilator. I'll keep thinking on it, since whichever way I go with this will likely influence how I go with direct damage abilities.
Here's an extreme example of this for "destroy target permanent" abilities, in terms of ability point value (I picked 100 arbitrarily as a starting point). 100 * (# of types of permanents out of 4) * (# of states out of 2) * (tap = 1/2, activation=something weighted by activation cost) Thus, Royal Assassin would be 100 * 1/4 * 1/2 * 1/2 = 6.25, which only bumps him up to 82g from his current 80g. If I force him all the way up to 128g, that would take a starting value around 192. Thus, 192 * 1/4 * 1/2 * 1/2 = 12, putting him at 128 gold. But if I use this same logic to define annihilator, then Annihilator 1 would be worth the full 192 since it can destroy any permanent type, regardless of its state, requires no activation cost since the creature still gets to perform its primary function of attacking. It boggles the mind.
NB: So far I am working strictly with creatures, since I think non-creature spells will be simpler to do afterward. I'm probably wrong, but I'm okay with that.

Gold Cost = crev * 10 (round up to the nearest 1g)
crev (Creature Value) = [cmcv * (ltv + htv + lpv + hpv + cav)]
cmcv (converted mana cost value) = [[100 - ((cmc+1) * 5)] / 100]
ltv (Low Toughness value) = each point of toughness less than the cmc is worth 1 point
htv (High Toughness value) = each point of toughness equal to or greater than the cmc is worth 2 points
lpv (Low Power value) = each point of power less than the cmc is worth 3 points
hpv (High Power value) = each point of power equal to or greater than the cmc is worth 4 points
cav (Cumulative Ability value) = this is where we get stupidly complicated

So far I am breaking down each ability relative to the cmc and power of the creature.
Category 1: extremely minor abilities (desertwalk)
static = 1/[(cmc+1)/(power+1)], activated = 1/[(cmc+1+actcost)/(power+1)]
Category 2: trample, lifelink, banding, lesser evasion (Cannot be blocked by walls), Sengir trigger
activated +0/+1 : 4/(actcost+1) this might need to be bumped up
Flash: 2 points flat rate
all others: static = 2/[(cmc+1)/(power+1)], activated = 2/[(cmc+1+actcost)/(power+1)]
Category 3: Flanking, First Strike, Infect, Reach, Vigilance, Wither, any basiclandwalk
Flanking: static = 3 points, activated = 3/(actcost+1)
Persist: 3 points flat rate
Tap for Mana: 3 points per color of mana (ie most get 3, some get 9, Birds gets 15)
all others: static = 3/[(cmc+1)/(power+1)], activated = 3/[(cmc+1+actcost)/(power+1)]
Category 4: Evasion (flying, shadow, horsemanship, others such as Elven Riders), Protection*
activated +1/+0: 8/(actcost+1) this might need to be bumped up
Regeneration: activated = (4/actcost) (Drudge Skeleton)
Undying, Deathtouch: 4 points flat rate
all others: static = 4/[(cmc+1)/(power+1)], activated = 4/[(cmc+1+actcost)/(power+1)]
* Protection provides a color-based evasion type and a color-based immunity type, so it might get bumped up a level if need be
Category 5: Hexproof, Shroud, Double Strike, tap for damage
Tap for damage: per point dealt (not yet worked out for further costs)
all others: static = 5/[(cmc+1)/(power+1)], activated = 5/[(cmc+1+actcost)/(power+1)]
Category 6: Major Evasion (Fear, Intimidation)
pending...
Category 7: Indestructible, Annihilator
Annihilator: 14/(cmc+1) per point
pending...
Here's a couple examples.
- Lionheart Maverick | Open
- Converted Mana Cost value
cmcv = [[100 - ((cmc+1) * 5)] / 100]
cmcv = [[100 - ((1+1) * 5)] / 100]
cmcv = [[100 - (2 * 5)] / 100]
cmcv = [[100 - 10] / 100]
cmcv = [90 / 100]
cmcv = 0.9
High Toughness value
htv = each point of toughness equal to or greater than the cmc is worth 2 points
htv = 2
High Power value
hpv = each point of power equal to or greater than the cmc is worth 4 points
hpv = 4
Static Vigilance
Vigilance = 3/[(cmc+1)/(power+1)]
Vigilance = 3/[(1+1)/(1+1)]
Vigilance = 3/[2/2]
Vigilance = 3/1
Vigilance = 3
Activated +1/+2
+1/+2: 16/(actcost+1)
+1/+2: 16/(5+1)
+1/+2: 16/6
+1/+2: 2.666666666666667
Creature Value
crev = [cmcv * (ltv + htv + lpv + hpv + cav)]
crev = [0.9 * (0 + 2 + 0 + 4 + (3+2.666666666666667))]
crev = [0.9 * 11.666666666666667]
crev = 10.49999999999999
Gold Cost = crev * 10 (round up to the nearest 1g)
Gold Cost = 10.49999999999999 * 10 (round up to the nearest 1g)
Gold Cost = 105g
- Shivan Dragon | Open
- Converted Mana Cost value
cmcv = [[100 - ((cmc+1) * 5)] / 100]
cmcv = [[100 - ((6+1) * 5)] / 100]
cmcv = [[100 - (7 * 5)] / 100]
cmcv = [[100 - (35)] / 100]
cmcv = [[65] / 100]
cmcv = 0.65
Low Toughness value
ltv = each point of toughness less than the cmc is worth 1 point
ltv = 5
Low Power value
lpv = each point of power less than the cmc is worth 3 points
lpv = 15
Static Evasion (Flying)
flying = 4/[(cmc+1)/(power+1)]
flying = 4/[(6+1)/(5+1)]
flying = 4/[7/6]
flying = 4/1.166666666666667
flying = 3.428571428571428
Activated +1/+0
+1/+0: 8/(actcost+1)
+1/+0: 8/(1+1)
+1/+0: 8/2
+1/+0: 4
Creature Value
crev = [cmcv * (ltv + htv + lpv + hpv + cav)]
crev = [0.65 * (5 + 0 + 15 + 0 + (4 + 3.428571428571428))]
crev = 0.65 * 27.428571428571428
crev = 17.82857142857143
Gold Cost = crev * 10 (round up to the nearest 1g)
Gold Cost = 17.82857142857143 * 10 (round up to the nearest 1g)
Gold Cost = 179g
Here's a short list of example gold prices.
- Price List | Open
- 19 Kobolds of Kher Keep
51 Squire
54 Merfolk of the Pearl Trident, Metallic Sliver
56 Bird Maiden, Frozen Shade
57 Phyrexian Walker, Royal Falcon
63 Manor Skeleton
64 Gray Ogre, Sengir Bats
66 Asphodel Wanderer
68 Drudge Skeletons
72 Benalish Hero, Bog Rats, Odious Trow, Prodigal Sorcerer**, Vampire Bats*, Will-o'-the-Wisp
74 Armored Pegasus, Coiled Tinviper, Capashen Knight, Zephyr Falcon
76 Desert Nomads, Ornithopter
78 Bellows Lizard, Dragon Engine, Stream Hopper
80 Freewind Falcon, Hurloon Minotaur, Royal Assassin**
81 Anaba Bodyguard, Llanowar Elves, Roterothopter, Soul Warden, Tree Monkey, Tundra Wolves
85 Grizzly Bears
86 Kjeldoran Phalanx
90 Clay Statue, Flying Men, Hill Giant, Lim-Dûl's High Guard, Savannah Lions
94 Ambush Party
96 Giant Spider
98 Benalish Knight, Sanguine Guard
100 Zhalfirin Knight
102 Gurmag Swiftwing, War Mammoth
105 Ironroot Treefolk, Lionheart Maverick
106 Sky Spirit
110 Sabertooth Wyvern
111 Cuombajj Witches*
112 Durkwood Boars
114 Phantom Monster, Ranger en-Vec
116 Dragon Whelp
119 Ambush Viper, Nantuko Shade
124 Craw Wurm
126 Earth Elemental
128 Basking Rootwalla
130 Paladin en-Vec
134 Mirri, Cat Warrior
136 Air Elemental, Brushstrider, Longbow Archer, Watchwolf
140 Fire Elemental, Water Elemental, Pirate Ship*
144 Knight of Stromgald
145 Black Knight
147 Sengir Vampire
150 Erhnam Djinn*, Eron the Relentless
151 Stromgald Crusader
152 Serra Angel, Wilt-Leaf Cavaliers
153 Ihsan's Shade
159 Stillmoon Cavalier, Lightning Angel
160 Serendib Efreet*
168 Juggernaut*
171 Birds of Paradise
179 Shivan Dragon
180 Juzam Djinn*
185 Akroma, Angel of Wrath
204 Ulamog's Crusher*
216 Lord of the Pit*
218 Sphinx of the Steel Wind
234 Wurmcoil Engine
240 Ball Lightning*
* Not yet adjusted for drawback
** Tap abilities still being weighted.
When sold to a vendor, my suggested sale price is 10% of it's buy price for a common, 20% for uncommon, 40% for rare, and 80% for mythic.
I think Royal Assassin should be at least as high as Earth Elemental, but maybe not as high as Paladin en-Vec, which is a pretty narrow range. This might help me determine a realistic value for his tap ability, which at present is rather low. I could use some input on things like this. His ability seems comparable to annihilator, but perhaps a severely-nerfed version of it since it can only destroy one type of permanent (1 of the original 4 permanent types) and only in a tapped state (1 out of 2 common states) and if you use it you don't get to attack (trading off the common use of a creature as a damage delivery system). So it sounds a bit like (x * 1/4 * 1/2 * 1/2), which is really small if I use the current value of annihilator. I'll keep thinking on it, since whichever way I go with this will likely influence how I go with direct damage abilities.
Here's an extreme example of this for "destroy target permanent" abilities, in terms of ability point value (I picked 100 arbitrarily as a starting point). 100 * (# of types of permanents out of 4) * (# of states out of 2) * (tap = 1/2, activation=something weighted by activation cost) Thus, Royal Assassin would be 100 * 1/4 * 1/2 * 1/2 = 6.25, which only bumps him up to 82g from his current 80g. If I force him all the way up to 128g, that would take a starting value around 192. Thus, 192 * 1/4 * 1/2 * 1/2 = 12, putting him at 128 gold. But if I use this same logic to define annihilator, then Annihilator 1 would be worth the full 192 since it can destroy any permanent type, regardless of its state, requires no activation cost since the creature still gets to perform its primary function of attacking. It boggles the mind.
Last edited by Rawky on 21 Apr 2016, 02:32, edited 56 times in total.
Re: Gold Cost Formula
by Rawky » 18 Apr 2016, 07:58
Hey Korath, what do you use for viewing csv files? I'm going to see what I have available to me for this formula.
Re: Gold Cost Formula
by Korath » 18 Apr 2016, 08:08
The xml.pl and xct.pl scripts in magic_updater. If you just want to know what's available instead of the values for a specific card, though, looking at the first line of each of the csvs should be enough.
Shandalar also hardcodes more keyworded abilities beyond what's specified in the csvs, and those can be examined for pricing as well; they're listed at the very start of src/shandalar/shandalar.h in keyword2_t and static_keyword2_t.
Shandalar also hardcodes more keyworded abilities beyond what's specified in the csvs, and those can be examined for pricing as well; they're listed at the very start of src/shandalar/shandalar.h in keyword2_t and static_keyword2_t.
-
Korath - DEVELOPER
- Posts: 3708
- Joined: 02 Jun 2013, 05:57
- Has thanked: 496 times
- Been thanked: 1108 times
Re: Gold Cost Formula
by Rawky » 18 Apr 2016, 08:35
How do I use them? Sorry, no clue.Korath wrote:The xml.pl and xct.pl scripts in magic_updater.
For some characteristics, specific values will be needed.Korath wrote:If you just want to know what's available instead of the values for a specific card, though, looking at the first line of each of the csvs should be enough.
I love a good puzzle!Korath wrote:Shandalar also hardcodes more keyworded abilities beyond what's specified in the csvs, and those can be examined for pricing as well; they're listed at the very start of src/shandalar/shandalar.h in keyword2_t and static_keyword2_t.
Re: Gold Cost Formula
by Rawky » 21 Apr 2016, 02:17
My current dilemma is how to weight abilities like that of Royal Assassin and Ulamog's Crusher.
See top post for details. Your input is welcome!
See top post for details. Your input is welcome!

Re: Gold Cost Formula
by timmermac » 21 Apr 2016, 03:41
Actually, there is a way to attack with the Assassin and still use his ability. You just need to give it vigilance by some method, attack with it, then nuke an opponent's creature.Rawky wrote:I'll put as much of my pseudo code in here as I can. It's not even close to being complete, so expect some holes. It's an on-going process. Let me know if something seems really out of place. Also, post any cards you'd like to see in the sample list.
NB: So far I am working strictly with creatures, since I think non-creature spells will be simpler to do afterward. I'm probably wrong, but I'm okay with that.
Gold Cost = crev * 10 (round up to the nearest 1g)
crev (Creature Value) = [cmcv * (ltv + htv + lpv + hpv + cav)]
cmcv (converted mana cost value) = [[100 - ((cmc+1) * 5)] / 100]
ltv (Low Toughness value) = each point of toughness less than the cmc is worth 1 point
htv (High Toughness value) = each point of toughness equal to or greater than the cmc is worth 2 points
lpv (Low Power value) = each point of power less than the cmc is worth 3 points
hpv (High Power value) = each point of power equal to or greater than the cmc is worth 4 points
cav (Cumulative Ability value) = this is where we get stupidly complicated(see below)
So far I am breaking down each ability relative to the cmc and power of the creature.
Category 1: extremely minor abilities (desertwalk)
static = 1/[(cmc+1)/(power+1)], activated = 1/[(cmc+1+actcost)/(power+1)]
Category 2: trample, lifelink, banding, lesser evasion (Cannot be blocked by walls), Sengir trigger
activated +0/+1 : 4/(actcost+1) this might need to be bumped up
Flash: 2 points flat rate
all others: static = 2/[(cmc+1)/(power+1)], activated = 2/[(cmc+1+actcost)/(power+1)]
Category 3: Flanking, First Strike, Infect, Reach, Vigilance, Wither, any basiclandwalk
Flanking: static = 3 points, activated = 3/(actcost+1)
Persist: 3 points flat rate
Tap for Mana: 3 points per color of mana (ie most get 3, some get 9, Birds gets 15)
all others: static = 3/[(cmc+1)/(power+1)], activated = 3/[(cmc+1+actcost)/(power+1)]
Category 4: Evasion (flying, shadow, horsemanship, others such as Elven Riders), Protection*
activated +1/+0: 8/(actcost+1) this might need to be bumped up
Regeneration: activated = (4/actcost) (Drudge Skeleton)
Undying, Deathtouch: 4 points flat rate
all others: static = 4/[(cmc+1)/(power+1)], activated = 4/[(cmc+1+actcost)/(power+1)]
* Protection provides a color-based evasion type and a color-based immunity type, so it might get bumped up a level if need be
Category 5: Hexproof, Shroud, Double Strike, tap for damage
Tap for damage: per point dealt (not yet worked out for further costs)
all others: static = 5/[(cmc+1)/(power+1)], activated = 5/[(cmc+1+actcost)/(power+1)]
Category 6: Major Evasion (Fear, Intimidation)
pending...
Category 7: Indestructible, Annihilator
Annihilator: 14/(cmc+1) per point
pending...
Here's a couple examples.
- Lionheart Maverick | Open
- Converted Mana Cost value
cmcv = [[100 - ((cmc+1) * 5)] / 100]
cmcv = [[100 - ((1+1) * 5)] / 100]
cmcv = [[100 - (2 * 5)] / 100]
cmcv = [[100 - 10] / 100]
cmcv = [90 / 100]
cmcv = 0.9
High Toughness value
htv = each point of toughness equal to or greater than the cmc is worth 2 points
htv = 2
High Power value
hpv = each point of power equal to or greater than the cmc is worth 4 points
hpv = 4
Static Vigilance
Vigilance = 3/[(cmc+1)/(power+1)]
Vigilance = 3/[(1+1)/(1+1)]
Vigilance = 3/[2/2]
Vigilance = 3/1
Vigilance = 3
Activated +1/+2
+1/+2: 16/(actcost+1)
+1/+2: 16/(5+1)
+1/+2: 16/6
+1/+2: 2.666666666666667
Creature Value
crev = [cmcv * (ltv + htv + lpv + hpv + cav)]
crev = [0.9 * (0 + 2 + 0 + 4 + (3+2.666666666666667))]
crev = [0.9 * 11.666666666666667]
crev = 10.49999999999999
Gold Cost = crev * 10 (round up to the nearest 1g)
Gold Cost = 10.49999999999999 * 10 (round up to the nearest 1g)
Gold Cost = 105g
- Shivan Dragon | Open
- Converted Mana Cost value
cmcv = [[100 - ((cmc+1) * 5)] / 100]
cmcv = [[100 - ((6+1) * 5)] / 100]
cmcv = [[100 - (7 * 5)] / 100]
cmcv = [[100 - (35)] / 100]
cmcv = [[65] / 100]
cmcv = 0.65
Low Toughness value
ltv = each point of toughness less than the cmc is worth 1 point
ltv = 5
Low Power value
lpv = each point of power less than the cmc is worth 3 points
lpv = 15
Static Evasion (Flying)
flying = 4/[(cmc+1)/(power+1)]
flying = 4/[(6+1)/(5+1)]
flying = 4/[7/6]
flying = 4/1.166666666666667
flying = 3.428571428571428
Activated +1/+0
+1/+0: 8/(actcost+1)
+1/+0: 8/(1+1)
+1/+0: 8/2
+1/+0: 4
Creature Value
crev = [cmcv * (ltv + htv + lpv + hpv + cav)]
crev = [0.65 * (5 + 0 + 15 + 0 + (4 + 3.428571428571428))]
crev = 0.65 * 27.428571428571428
crev = 17.82857142857143
Gold Cost = crev * 10 (round up to the nearest 1g)
Gold Cost = 17.82857142857143 * 10 (round up to the nearest 1g)
Gold Cost = 179g
Here's a short list of example gold prices.
- Price List | Open
- 19 Kobolds of Kher Keep
51 Squire
54 Merfolk of the Pearl Trident, Metallic Sliver
56 Bird Maiden, Frozen Shade
57 Phyrexian Walker, Royal Falcon
63 Manor Skeleton
64 Gray Ogre, Sengir Bats
66 Asphodel Wanderer
68 Drudge Skeletons
72 Benalish Hero, Bog Rats, Odious Trow, Prodigal Sorcerer**, Vampire Bats*, Will-o'-the-Wisp
74 Armored Pegasus, Coiled Tinviper, Capashen Knight, Zephyr Falcon
76 Desert Nomads, Ornithopter
78 Bellows Lizard, Dragon Engine, Stream Hopper
80 Freewind Falcon, Hurloon Minotaur, Royal Assassin**
81 Anaba Bodyguard, Llanowar Elves, Roterothopter, Soul Warden, Tree Monkey, Tundra Wolves
85 Grizzly Bears
86 Kjeldoran Phalanx
90 Clay Statue, Flying Men, Hill Giant, Lim-Dûl's High Guard, Savannah Lions
94 Ambush Party
96 Giant Spider
98 Benalish Knight, Sanguine Guard
100 Zhalfirin Knight
102 Gurmag Swiftwing, War Mammoth
105 Ironroot Treefolk, Lionheart Maverick
106 Sky Spirit
110 Sabertooth Wyvern
111 Cuombajj Witches*
112 Durkwood Boars
114 Phantom Monster, Ranger en-Vec
116 Dragon Whelp
119 Ambush Viper, Nantuko Shade
124 Craw Wurm
126 Earth Elemental
128 Basking Rootwalla
130 Paladin en-Vec
134 Mirri, Cat Warrior
136 Air Elemental, Brushstrider, Longbow Archer, Watchwolf
140 Fire Elemental, Water Elemental, Pirate Ship*
144 Knight of Stromgald
145 Black Knight
147 Sengir Vampire
150 Erhnam Djinn*, Eron the Relentless
151 Stromgald Crusader
152 Serra Angel, Wilt-Leaf Cavaliers
153 Ihsan's Shade
159 Stillmoon Cavalier, Lightning Angel
160 Serendib Efreet*
168 Juggernaut*
171 Birds of Paradise
179 Shivan Dragon
180 Juzam Djinn*
185 Akroma, Angel of Wrath
204 Ulamog's Crusher*
216 Lord of the Pit*
218 Sphinx of the Steel Wind
234 Wurmcoil Engine
240 Ball Lightning*
* Not yet adjusted for drawback
** Tap abilities still being weighted.
When sold to a vendor, my suggested sale price is 10% of it's buy price for a common, 20% for uncommon, 40% for rare, and 80% for mythic.
I think Royal Assassin should be at least as high as Earth Elemental, but maybe not as high as Paladin en-Vec, which is a pretty narrow range. This might help me determine a realistic value for his tap ability, which at present is rather low. I could use some input on things like this. His ability seems comparable to annihilator, but perhaps a severely-nerfed version of it since it can only destroy one type of permanent (1 of the original 4 permanent types) and only in a tapped state (1 out of 2 common states) and if you use it you don't get to attack (trading off the common use of a creature as a damage delivery system). So it sounds a bit like (x * 1/4 * 1/2 * 1/2), which is really small if I use the current value of annihilator. I'll keep thinking on it, since whichever way I go with this will likely influence how I go with direct damage abilities.
Here's an extreme example of this for "destroy target permanent" abilities, in terms of ability point value (I picked 100 arbitrarily as a starting point). 100 * (# of types of permanents out of 4) * (# of states out of 2) * (tap = 1/2, activation=something weighted by activation cost) Thus, Royal Assassin would be 100 * 1/4 * 1/2 * 1/2 = 6.25, which only bumps him up to 82g from his current 80g. If I force him all the way up to 128g, that would take a starting value around 192. Thus, 192 * 1/4 * 1/2 * 1/2 = 12, putting him at 128 gold. But if I use this same logic to define annihilator, then Annihilator 1 would be worth the full 192 since it can destroy any permanent type, regardless of its state, requires no activation cost since the creature still gets to perform its primary function of attacking. It boggles the mind.
"I just woke up, haven't had coffee, let alone a pee in 7 days, and I find out you stole my ass and made a ...mini-me! Carter, I should be irked currently, yes?" - Jack O'Neill
Re: Gold Cost Formula
by Rawky » 21 Apr 2016, 04:09
For these purposes, we're not using card combos. That would lead us down an endless path.timmermac wrote:Actually, there is a way to attack with the Assassin and still use his ability. You just need to give it vigilance by some method, attack with it, then nuke an opponent's creature.
Re: Gold Cost Formula
by Korath » 21 Apr 2016, 04:54
None of these are detectable programmatically. (Other than maybe by doing a text match on the rules text. That's not maintainable in the long term, since WOTC likes to retemplate things somewhat frequently.) Abilities that grant abilities, whether activated like Bladed Sentinel's or continuous like Sentinel Sliver's, can't be detected either, just ones that read like a plain "vigilance" line on a creature.Rawky wrote:Category 1: extremely minor abilities (desertwalk)
Category 2: ..., lesser evasion (Cannot be blocked by walls), Sengir trigger
Category 3: ... Tap for Mana...
Category 4: Evasion (..., others such as Elven Riders), ...
activated +1/+0: ...
Category 5: ..., tap for damage
Tap for damage: per point dealt (not yet worked out for further costs)
Category 7: ..., Annihilator
Annihilator: 14/(cmc+1) per point
"Can activate to produce mana" can be found (Flags: Mana Source), though not specifically "can activate to produce mana with

Similarly, "can activate to pump its own power" can usually be found (Flags: Inflatable Power and Flags: Inflatable Toughness), but not "can activate to pump target creature's power", or "all creatures' power", or similar; it can't detect how ''much'' power it'll boost; and it'll have false positives for bushido, dethrone, monstrosity, and cards templated like Cave People or Nav Squad Commandos or Lotleth Troll.
I could put something in to make annihilator detectable, but it would only be for exactly annihilator, and wouldn't see e.g. Bane of Bala Ged, let alone something like Grimgrin, Corpse-Born.
And, no, Royal Assassin's ability is indistinguishable from Anurid Brushhopper's, Griselbrand's, or any other activated ability.
-
Korath - DEVELOPER
- Posts: 3708
- Joined: 02 Jun 2013, 05:57
- Has thanked: 496 times
- Been thanked: 1108 times
Re: Gold Cost Formula
by Rawky » 21 Apr 2016, 06:51
Well that's a bit of a setback.
Can the simple things (that you didn't quote) still be done then?
Perhaps a generic cost for an "activated ability", perhaps scaled by casting cost and card rarity.
Can the simple things (that you didn't quote) still be done then?
Perhaps a generic cost for an "activated ability", perhaps scaled by casting cost and card rarity.
Re: Gold Cost Formula
by Korath » 21 Apr 2016, 08:31
Yes, everything else as of when I posted is fine. I'd have spoken up sooner, but I hadn't realized you were updating it in-place - last time I read your post before timmermac quoted it all was when it was just some example results, with no mention of how you got them.
-
Korath - DEVELOPER
- Posts: 3708
- Joined: 02 Jun 2013, 05:57
- Has thanked: 496 times
- Been thanked: 1108 times
Re: Gold Cost Formula
by Rawky » 21 Apr 2016, 17:45
I'll start scraping together the correct formatting, as best I can. Though it'll probably look a bit like Frankenstein.
Re: Gold Cost Formula
by Rawky » 21 Apr 2016, 22:22
Regarding this piece of code from replace_functions.cpp
- Code: Select all
#define MAKELONG_FROM_4(b0, b1, b2, b3) MAKELONG(MAKEWORD(b0, b1), MAKEWORD(b2, b3))
int reserved4 = MAKELONG_FROM_4(cd->reserved4[0], cd->reserved4[1], cd->reserved4[2], cd->reserved4[3]);
// card_data_t::reserved4 gets the Creature Rating Mod column from ct_all.csv; I'm not sure what gets put in card_data_t::creature_rating.
Re: Gold Cost Formula
by Korath » 21 Apr 2016, 22:29
It's referring to the last column in ct_all.csv, which is labelled "Creature Rating Mod" there.
Probably not a good thing to incorporate into this formula; it's mostly left unset. The AI Base Value column in Manalink.csv is set fairly consistently, and would be more useful here. (Though it isn't currently used for anything in Shandalar and used for very little in Manalink.)
Probably not a good thing to incorporate into this formula; it's mostly left unset. The AI Base Value column in Manalink.csv is set fairly consistently, and would be more useful here. (Though it isn't currently used for anything in Shandalar and used for very little in Manalink.)
-
Korath - DEVELOPER
- Posts: 3708
- Joined: 02 Jun 2013, 05:57
- Has thanked: 496 times
- Been thanked: 1108 times
Re: Gold Cost Formula
by Rawky » 21 Apr 2016, 22:42
So I dug up a trick on the web. I made a copy of ct_all.csv in a different location, opened it in notepad, created an empty line at the top and entered "sep=;" as the top line. It now opens in excel, perfectly delineated. I am tickled with joy!Rawky wrote:Hey Korath, what do you use for viewing csv files? I'm going to see what I have available to me for this formula.
Edit: I thought that being able to see all the Creature Rating Mod values would help me to understand its purpose. I am now even more confused by its existence.
Edit: The column named "Rarity (copied)" is largely unset. Should I be looking elsewhere for this piece of data?
Edit: Where is the best place to report questionable value settings for individual cards? Such as Voice of Truth and "Play before Combat"
I am too easily side-tracked with all this data. I could spend hours in here. Gotta stick to my project! >_<
Re: Gold Cost Formula
by Rawky » 22 Apr 2016, 00:19
So the following fields in ct_all.csv seem to be the most pertinent for calculating the worth of a creature.
Also, I am guessing that the "ct" in the file name refers to Card Triggers.
Edit: Junk columns removed.
- Code: Select all
Type: Creature
Type: Artifact
Type: Enchantment
Type: Instant
Type: Interrupt
Type: Land
Family (14 = legendary)
Required Colorless Mana (total)
Required COLOR Mana (total)
Power (16385 = variable)
Toughness (16385 = variable)
Ability: Plainswalk
Ability: Islandwalk
Ability: Swampwalk
Ability: Mountainswalk
Ability: Forestwalk
Ability: Banding
Ability: Double Strike
Ability: First Strike
Ability: Flying
Ability: Infect
Ability: Reach
Ability: Regeneration
Ability: Shroud
Ability: Trample
Ability: Prot from Artifacts
Ability: Prot from White
Ability: Prot from Blue
Ability: Prot from Black
Ability: Prot from Red
Ability: Prot from Green
Flags: Inflatable Power
Flags: Inflatable Toughness
Flags: Activate
Flags: Mana Source
Flags: Paid Mana Source
Ability: Defender
Also, I am guessing that the "ct" in the file name refers to Card Triggers.
Edit: Junk columns removed.
Last edited by Rawky on 22 Apr 2016, 01:34, edited 3 times in total.
21 posts
• Page 1 of 2 • 1, 2
Who is online
Users browsing this forum: No registered users and 22 guests