Current targets[] and cc[2] values
Here's what I have for targets[] and cc[2] values as they are used currently. Any help is appreciated, thanks!
Targets[]
0-9 Targets & general storage - mostly. There are some special general uses - [2] is used for aura movement and [4] is used to store the cursed player for curse-subtyped enchantments, for example
10 track dead permanents(see card_instance_t* legacy_permanents_destroyed_this_way_accumulate() ); special damage characteristics (eg. burn from within, aurelia's fury)
11 tracks sacrificed permanents - see whenever_a_player_sacrifices_a_permanent - looks like just a count to me. I see it compared to values -1, 0, 1, 66, <10; probably the most ripe for reclamation (see functions.c line 7811)
12 something with transforming cards
13 ditto - maybe when the other side is hidden, as with Morph or Hidden Agenda - maybe 12 has to do with the front and 13 is the back, I'm not sure; used also with manlands
14 stores special flags - only used in ~5 places but special flags are used everywhere
15 added subtypes; special flags 3
16 tracks damage dealt - I think it's just a count, so maybe we can reclaim this, but it also holds special keyword abilities (see defs.h line 982 ff)
17 special flags 2; something with humiliation/ability removal; cost mod for activated abilities
18 counter storage (as in +1/+1 counters, not counterspells)
cc[2]
1 - Cards activated from hand: Hybrid Mana, Suspend, Outlast, Morph, Echo, Flash; anything with special activation from hand. Player used to have to activate Rules Engine to use these, but now they're triggered automatically on cast
2 - Triggered abilities in GY
3 - Special cards, eg. Avatars, Planes, but not Schemes
4 - Cycling
5 - GY upkeep trigger
6 - Dredge
7 - None - I would use this for "when a spell or ability you control causes..." (although I don't think there are any cards like this)
8 - None - I intend to use this for "When a spell or ability an opponent controls causes..." (Karmic Justice, Sacred Ground, maybe Ajani's Last Stand, Pure Intentions)
9 - Unearth, Flashback & Planeswalkers
10 - Retrace
11 - Madness, discard triggers
12 - track spells cast, eg. Storm, OG Transform (if no spells were cast last turn, transform ~), can't cast more than X spells per turn
13 - Traps - has X happened, or how many times has X happened this game/this turn
14 - Track permanents put into GY
15 - Miracle
16 - Forecast
17 - Scavenge
18 - Dragon enchantments
19 - Conspire
20 - Recover - from Coldsnap; (When a creature is put into your graveyard from the battlefield, you may pay [cost]. If you do, return this card from your graveyard to your hand. Otherwise, exile this card.)
21 - Embalm & Eternalize
22 - Flamewake Phoenix - At the beginning of combat on your turn, if you control a creature with power 4 or greater, you may pay
. If you do, return Flamewake Phoenix from your graveyard to the battlefield.
23 - Oketra's Attendant; Cycling + Embalm, ie. activation from GY and/or hand - several special cases in rules_engine could be rolled into this
--future--
24 - None (was saving for Eternalize, but I realized I can just use 21)
25 - Jump-Start? (Just a variant of Retrace I think)
26 - Adventure ie. activation from hand and from exile
27 - Escape
Targets[]
0-9 Targets & general storage - mostly. There are some special general uses - [2] is used for aura movement and [4] is used to store the cursed player for curse-subtyped enchantments, for example
10 track dead permanents(see card_instance_t* legacy_permanents_destroyed_this_way_accumulate() ); special damage characteristics (eg. burn from within, aurelia's fury)
11 tracks sacrificed permanents - see whenever_a_player_sacrifices_a_permanent - looks like just a count to me. I see it compared to values -1, 0, 1, 66, <10; probably the most ripe for reclamation (see functions.c line 7811)
12 something with transforming cards
13 ditto - maybe when the other side is hidden, as with Morph or Hidden Agenda - maybe 12 has to do with the front and 13 is the back, I'm not sure; used also with manlands
14 stores special flags - only used in ~5 places but special flags are used everywhere
15 added subtypes; special flags 3
16 tracks damage dealt - I think it's just a count, so maybe we can reclaim this, but it also holds special keyword abilities (see defs.h line 982 ff)
17 special flags 2; something with humiliation/ability removal; cost mod for activated abilities
18 counter storage (as in +1/+1 counters, not counterspells)
cc[2]
1 - Cards activated from hand: Hybrid Mana, Suspend, Outlast, Morph, Echo, Flash; anything with special activation from hand. Player used to have to activate Rules Engine to use these, but now they're triggered automatically on cast
2 - Triggered abilities in GY
3 - Special cards, eg. Avatars, Planes, but not Schemes
4 - Cycling
5 - GY upkeep trigger
6 - Dredge
7 - None - I would use this for "when a spell or ability you control causes..." (although I don't think there are any cards like this)
8 - None - I intend to use this for "When a spell or ability an opponent controls causes..." (Karmic Justice, Sacred Ground, maybe Ajani's Last Stand, Pure Intentions)
9 - Unearth, Flashback & Planeswalkers
10 - Retrace
11 - Madness, discard triggers
12 - track spells cast, eg. Storm, OG Transform (if no spells were cast last turn, transform ~), can't cast more than X spells per turn
13 - Traps - has X happened, or how many times has X happened this game/this turn
14 - Track permanents put into GY
15 - Miracle
16 - Forecast
17 - Scavenge
18 - Dragon enchantments
19 - Conspire
20 - Recover - from Coldsnap; (When a creature is put into your graveyard from the battlefield, you may pay [cost]. If you do, return this card from your graveyard to your hand. Otherwise, exile this card.)
21 - Embalm & Eternalize
22 - Flamewake Phoenix - At the beginning of combat on your turn, if you control a creature with power 4 or greater, you may pay
. If you do, return Flamewake Phoenix from your graveyard to the battlefield.23 - Oketra's Attendant; Cycling + Embalm, ie. activation from GY and/or hand - several special cases in rules_engine could be rolled into this
--future--
24 - None (was saving for Eternalize, but I realized I can just use 21)
25 - Jump-Start? (Just a variant of Retrace I think)
26 - Adventure ie. activation from hand and from exile
27 - Escape