It is currently 05 Aug 2025, 09:32
   
Text Size

Cards the AI can't use

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Cards the AI can't use

Postby Sloth » 31 Jul 2010, 21:13

Random constructed decks are no longer so important since the quest mode improved so much and became more and more popular recently, but I think the list of Cards the AI can't use should be updated. I'm willing to do this, if you help me point out cards you know, that the AI does not use, uses very ineffectively, uses against the rules, or causes a crash when being used.

Here are the cards already in the file GenerateConstructedDeck.java:
Code: Select all
private CardList filterBadCards(CardList list)
  {
    //remove "bad" and multi-colored cards
    final ArrayList<String> remove = new ArrayList<String>();
    remove.add("Sarcomite Myr");
    remove.add("Force of Savagery");
    remove.add("Darksteel Colossus");
    remove.add("Jokulhaups");
    remove.add("Steel Wall");
    remove.add("Ornithopter");
    remove.add("Amnesia");
    remove.add("Battle of Wits");
    remove.add("Ashes to Ashes");
    remove.add("Haunted Angel");
    remove.add("Sky Swallower");
    remove.add("Magus of the Library");
    remove.add("The Unspeakable");
    remove.add("Wall of Kelp");

    remove.add("Incendiary Command");
    remove.add("Memnarch");
    remove.add("Plague Wind");
    remove.add("Klaas, Elf Friend");
    remove.add("Delirium Skeins");

    remove.add("Undying Beast");
    remove.add("Wit's End");

    remove.add("Blinding Light");
    remove.add("Hymn to Tourach");
   
    //cards that slow the computer down
   
    // remove.add("Anger");
    // remove.add("Brawn");
    // remove.add("Valor");
    // remove.add("Wonder");
   
    //not fully implemented:
   
    // remove.add("Aether Membrane");
    remove.add("Arashi, the Sky Asunder");
    // remove.add("Hand of Cruelty");
    // remove.add("Hand of Honor");
   
    //useless, or combo cards:
   
    remove.add("Aluren");
    remove.add("Conspiracy");
    remove.add("Crucible of Fire");
    remove.add("Verduran Enchantress");
    remove.add("Enchantress's Presence");
    remove.add("Mesa Enchantress");
    remove.add("Moat");
    remove.add("Magus of the Moat");
    remove.add("Relentless Rats");
    remove.add("Vedalken Archmage");
    remove.add("Hatching Plans");
    remove.add("Sensation Gorger");
    remove.add("Time Elemental");
   
    //semi useless
   
    remove.add("Wren's Run Packmaster");
    remove.add("Nova Chaser");
    remove.add("Supreme Exemplar");
    remove.add("Goblin Ringleader");
    remove.add("Sylvan Messenger");
    remove.add("Tromp the Domains");
    remove.add("Legacy Weapon");
     
    //cards the AI cannot play (effectively):
   
    remove.add("Necropotence");
    remove.add("Yawgmoth's Bargain");
    remove.add("Sensei's Divining Top");
    remove.add("Standstill");
    //remove.add("Counterspell");
    //remove.add("Exclude");
    //remove.add("False Summoning");
    //remove.add("Essence Scatter");
    //remove.add("Preemptive Strike");
    //remove.add("Punish Ignorance");
    //remove.add("Remand");
    //remove.add("Mystic Snake");
    //remove.add("Absorb");
    //remove.add("Undermine");
    //remove.add("Overwhelming Intellect");
    remove.add("AEther Vial");
    remove.add("Covetous Dragon");
    remove.add("Terramorphic Expanse");
    remove.add("Earthcraft");
    remove.add("Burst of Speed");
    remove.add("Magnify");
    remove.add("Nature's Cloak");
    remove.add("Resuscitate");
    remove.add("Shield Wall");
    remove.add("Solidarity");
    remove.add("Steadfastness");
    remove.add("Tortoise Formation");
    remove.add("Icy Manipulator");

   
    remove.add("Fog");
    remove.add("Holy Day");
    remove.add("Respite");
    remove.add("Moment's Peace");
    remove.add("Lull");
    remove.add("Angelsong");
    remove.add("Darkness");
   
    //manapool stuff:
    remove.add("Dark Ritual");
    remove.add("Seething Song");
    remove.add("Sol Ring");
    remove.add("Gaea's Cradle");
    remove.add("Priest of Titania");
    remove.add("Tolarian Academy");
    remove.add("Serra's Sanctum");
    remove.add("Basalt Monolith");
    remove.add("Grim Monolith");
    remove.add("Black Lotus");
    remove.add("Composite Golem");
    remove.add("Thran Dynamo");
    remove.add("Elvish Archdruid");
    remove.add("Sunglasses of Urza");
    remove.add("Ceta Discple");
    remove.add("Agent of Stromgald");
    remove.add("Apprentice Wizard");
    remove.add("Azorius Signet");
    remove.add("Bog Initiate");
    remove.add("Boros Signet");
    remove.add("Celestial Prism");
    remove.add("Dimir Signet");
    remove.add("Fire Sprites");
    remove.add("Fyndhorn Elder");
    remove.add("Gilded Lotus");
    remove.add("Golgari Signet");
    remove.add("Greenweaver Druid");
    remove.add("Gruul Signet");
    remove.add("Helionaut");
    remove.add("Izzet Signet");
    remove.add("Knotvine Mystic");
    remove.add("Mana Cylix");
    remove.add("Mana Prism");
    remove.add("Nantuko Elder");
    remove.add("Nomadic Elf");
    remove.add("Orochi Leafcaller");
    remove.add("Orzhov Signet");
    remove.add("Prismatic Lens");
    remove.add("Rakdos Signet");
    remove.add("Sea Scryer");
    remove.add("Selesnya Signet");
    remove.add("Simic Signet");
    remove.add("Sisay's Ring");
    remove.add("Skyshroud Elf");
    remove.add("Ur-Golem's Eye");
    remove.add("Viridian Acolyte");
    remove.add("Worn Powerstone");
    remove.add("Mana Vault");
    remove.add("Tooth of Ramos");
    remove.add("Skull of Ramos");
    remove.add("Horn of Ramos");
    remove.add("Heart of Ramos");
    remove.add("Eye of Ramos");
    remove.add("Forbidden Orchard");
    remove.add("Everflowing Chalice");
    remove.add("Pyretic Ritual");
   
   
    final ArrayList<Card> goodLand = new ArrayList<Card>();
    //goodLand.add("Faerie Conclave");
    //goodLand.add("Forbidding Watchtower");
    //goodLand.add("Treetop Village");
and here are a few cards I found:

Bugs:
Code: Select all
    remove.add("Admonition Angel");
    remove.add("AEther Flash");
    remove.add("Battle Strain");
    remove.add("Ancestral Vision");
High chance of immediate death:
Code: Select all
    remove.add("Thran Quarry");
    remove.add("Glimmervoid");
Fetchlands:
Code: Select all
    remove.add("Tectonic Edge");
    remove.add("Wooded Foothills");
    remove.add("Windswept Heath");
    remove.add("Polluted Delta");
    remove.add("Flooded Strand");
    remove.add("Bloodstained Mire");
    remove.add("Verdant Catacombs");
    remove.add("Scalding Tarn");
    remove.add("Misty Rainforest");
    remove.add("Marsh Flats");
    remove.add("Arid Mesa");
Painlands:
Code: Select all
    remove.add("Adarkar Wastes");
    remove.add("Brushland");
    remove.add("Karplusan Forest");
    remove.add("Sulfurous Springs");
    remove.add("Underground River");
    remove.add("Battlefield Forge");
    remove.add("Caves of Koilos");
    remove.add("Llanowar Wastes");
    remove.add("Shivan Reef");
    remove.add("Yavimaya Coast");
    remove.add("Salt Flats");
    remove.add("Pine Barrens");
    remove.add("Skyshroud Forest");
    remove.add("Caldera Lake");
    remove.add("Scabland");
Manapool:
Code: Select all
    remove.add("Lotus Bloom");
    remove.add("Implements of Sacrifice");
    remove.add("Kaleidostone");
    remove.add("Chromatic Star");
    remove.add("Irrigation Ditch");
    remove.add("Geothermal Crevice");
    remove.add("Havenwood Battleground");
    remove.add("Ebon Stronghold");
    remove.add("Dwarven Ruins");
    remove.add("Basal Thrull");
    remove.add("Ancient Spring");
    remove.add("Tinder Farm");
    remove.add("Svyelunite Temple");
    remove.add("Sulfur Vent");
    remove.add("Ruins of Trokair");
    remove.add("Morgue Toad");
    remove.add("Crystal Vein");
    remove.add("Coal Golem");
    remove.add("Treva's Attendant");
    remove.add("Rith's Attendant");
    remove.add("Dromar's Attendant");
    remove.add("Darigaaz's Attendant");
    remove.add("Crosis's Attendant");
    remove.add("Blood Vassal");
    remove.add("Dreamstone Hedron");
    remove.add("Azorius Chancery");
    remove.add("Boros Garrison");
    remove.add("Dimir Aqueduct");
    remove.add("Golgari Rot Farm");
    remove.add("Gruul Turf");
    remove.add("Izzet Boilerworks");
    remove.add("Orzhov Basilica");
    remove.add("Rakdos Carnarium");
    remove.add("Selesnya Sanctuary");
    remove.add("Simic Growth Chamber");
    remove.add("Ancient Tomb");
I'm sure there are much more...
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Cards the AI can't use

Postby Chris H. » 31 Jul 2010, 22:04

Random constructed decks are no longer so important since the quest mode improved so much and became more and more popular recently, but I think the list of Cards the AI can't use should be updated.
`
There has been some discussion about using a mod of the random deck construction code to provide some random semi-theme decks that we would face while traveling the quest map. Updating this list is a good thing. 8)

Here are the cards already in the file GenerateConstructedDeck.java:
`
This listing is found in two different java files:

    GenerateConstructedDeck.java
    GenerateConstructedMultiColorDeck.java

We should try to keep the lists the same.

I'm sure there are much more...
`
I was meaning to add Chalice of the Void. :mrgreen:

Political Trickery
Vedalken Plotter
User avatar
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: Cards the AI can't use

Postby Sloth » 01 Aug 2010, 08:59

Correct me if I'm wrong, but I think these entries can be removed:

Code: Select all
remove.add("Klaas, Elf Friend");
remove.add("Incendiary Command");
remove.add("Forbidden Orchard");
and these should also be added:

Filter Lands:
Code: Select all
    remove.add("An-Havva Township");
    remove.add("Aysen Abbey");
    remove.add("Cascade Bluffs");
    remove.add("Castle Sengir");
    remove.add("Crystal Quarry");
    remove.add("Darkwater Catacombs");
    remove.add("Fetid Heath");
    remove.add("Fire-Lit Thicket");
    remove.add("Flooded Grove");
    remove.add("Graven Cairns");
    remove.add("Henge of Ramos");
    remove.add("Koskun Keep");
    remove.add("Mossfire Valley");
    remove.add("Mystic Gate");
    remove.add("Rugged Prairie");
    remove.add("School of the Unseen");
    remove.add("Shadowblood Ridge");
    remove.add("Shimmering Grotto");
    remove.add("Skycloud Expanse");
    remove.add("Sungrass Prairie");
    remove.add("Sunken Ruins");
    remove.add("Twilight Mire");
    remove.add("Wizards' School");
    remove.add("Wooded Bastion");
More mana pool:
Code: Select all
    remove.add("Cabal Coffers");
    remove.add("Magus of the Coffers");
    remove.add("Rofellos, Llanowar Emissary");
    remove.add("Harabaz Druid");
    remove.add("Lotus Cobra");
Win condition cards:
Code: Select all
    remove.add("Barren Glory");
    remove.add("Near-Death Experience");
    remove.add("Epic Struggle");
Symmetrical effects:
Code: Select all
    remove.add("Terra Eternal");
    remove.add("Aysen Highway");
    remove.add("Hidden Path");
    remove.add("Day of Destiny");
    remove.add("Hanna's Custody");
Harmful effects:
Code: Select all
    remove.add("Flowstone Surge");
    remove.add("Urborg Shambler");
    remove.add("Stronghold Taskmaster");
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Cards the AI can't use

Postby Chris H. » 01 Aug 2010, 19:16

I have updated the list of cards removed from random constructed decks. I will merge this list into both of the GenerateConstructedDeck java files. I will provide the list below incase you or anyone is interested in taking a peek at our work.

Code: Select all
    /**
     *  remove "bad" and multi-colored cards
     */
    final ArrayList<String> remove = new ArrayList<String>();
    remove.add("Sarcomite Myr");
    remove.add("Force of Savagery");
    remove.add("Darksteel Colossus");
    remove.add("Jokulhaups");
    remove.add("Steel Wall");
    remove.add("Ornithopter");
    remove.add("Amnesia");
    remove.add("Battle of Wits");
    remove.add("Ashes to Ashes");
    remove.add("Haunted Angel");
    remove.add("Sky Swallower");
    remove.add("Magus of the Library");
    remove.add("The Unspeakable");
    remove.add("Wall of Kelp");

    remove.add("Incendiary Command");
    remove.add("Memnarch");
    remove.add("Plague Wind");
    // remove.add("Klaas, Elf Friend");
    remove.add("Delirium Skeins");

    remove.add("Undying Beast");
    remove.add("Wit's End");

    remove.add("Blinding Light");
    remove.add("Hymn to Tourach");
   
    /**
     *  cards that slow the computer down:
     */
    // remove.add("Anger");
    // remove.add("Brawn");
    // remove.add("Valor");
    // remove.add("Wonder");
   
    /**
     *  cards that have bugs"
     */
    remove.add("Admonition Angel");
    remove.add("AEther Flash");
    remove.add("Battle Strain");
    remove.add("Ancestral Vision");
   
    /**
     *  not fully implemented:
     */
    remove.add("Arashi, the Sky Asunder");
    // remove.add("Aether Membrane");
    // remove.add("Hand of Cruelty");
    // remove.add("Hand of Honor");
   
    /**
     *  useless, or combo cards:
     */
    remove.add("Aluren");
    remove.add("Conspiracy");
    remove.add("Crucible of Fire");
    remove.add("Verduran Enchantress");
    remove.add("Enchantress's Presence");
    remove.add("Mesa Enchantress");
    remove.add("Moat");
    remove.add("Magus of the Moat");
    remove.add("Relentless Rats");
    remove.add("Vedalken Archmage");
    remove.add("Hatching Plans");
    remove.add("Sensation Gorger");
    remove.add("Time Elemental");
    remove.add("Thran Quarry");
    remove.add("Glimmervoid");
    remove.add("Parallel Evolution");
   
    /**
     *  semi useless:
     */
    remove.add("Wren's Run Packmaster");
    remove.add("Nova Chaser");
    remove.add("Supreme Exemplar");
    remove.add("Goblin Ringleader");
    remove.add("Sylvan Messenger");
    remove.add("Tromp the Domains");
    remove.add("Legacy Weapon");
   
    /**
     *  cards the AI cannot play (effectively):
     */
    remove.add("Necropotence");
    remove.add("Yawgmoth's Bargain");
    remove.add("Sensei's Divining Top");
    remove.add("Standstill");
    // remove.add("Counterspell");
    // remove.add("Exclude");
    // remove.add("False Summoning");
    // remove.add("Essence Scatter");
    // remove.add("Preemptive Strike");
    // remove.add("Punish Ignorance");
    // remove.add("Remand");
    // remove.add("Mystic Snake");
    // remove.add("Absorb");
    // remove.add("Undermine");
    // remove.add("Overwhelming Intellect");
    remove.add("AEther Vial");
    remove.add("Covetous Dragon");
    remove.add("Terramorphic Expanse");
    remove.add("Earthcraft");
    remove.add("Burst of Speed");
    remove.add("Magnify");
    remove.add("Nature's Cloak");
    remove.add("Resuscitate");
    remove.add("Shield Wall");
    remove.add("Solidarity");
    remove.add("Steadfastness");
    remove.add("Tortoise Formation");
    remove.add("Icy Manipulator");
    remove.add("Chalice of the Void");
    remove.add("Political Trickery");
    remove.add("Vedalken Plotter");
   
    remove.add("Fog");
    remove.add("Holy Day");
    remove.add("Respite");
    remove.add("Moment's Peace");
    remove.add("Lull");
    remove.add("Angelsong");
    remove.add("Darkness");
   
    /**
     *  Win condition cards:
     */
    remove.add("Barren Glory");
    remove.add("Near-Death Experience");
    remove.add("Epic Struggle");
   
    /**
     *  Symmetrical effects:
     */
    remove.add("Terra Eternal");
    remove.add("Aysen Highway");
    remove.add("Hidden Path");
    remove.add("Day of Destiny");
    remove.add("Hanna's Custody");
   
    /**
     *  Harmful effects:
     */
    remove.add("Flowstone Surge");
    remove.add("Urborg Shambler");
    remove.add("Stronghold Taskmaster");
   
    /**
     *  Fetchlands:
     */
    remove.add("Tectonic Edge");
    remove.add("Wooded Foothills");
    remove.add("Windswept Heath");
    remove.add("Polluted Delta");
    remove.add("Flooded Strand");
    remove.add("Bloodstained Mire");
    remove.add("Verdant Catacombs");
    remove.add("Scalding Tarn");
    remove.add("Misty Rainforest");
    remove.add("Marsh Flats");
    remove.add("Arid Mesa");
   
    /**
     *  Painlands:
     */
    remove.add("Adarkar Wastes");
    remove.add("Brushland");
    remove.add("Karplusan Forest");
    remove.add("Sulfurous Springs");
    remove.add("Underground River");
    remove.add("Battlefield Forge");
    remove.add("Caves of Koilos");
    remove.add("Llanowar Wastes");
    remove.add("Shivan Reef");
    remove.add("Yavimaya Coast");
    remove.add("Salt Flats");
    remove.add("Pine Barrens");
    remove.add("Skyshroud Forest");
    remove.add("Caldera Lake");
    remove.add("Scabland");
   
    /**
     *  Filter Lands:
     */
    remove.add("An-Havva Township");
    remove.add("Aysen Abbey");
    remove.add("Cascade Bluffs");
    remove.add("Castle Sengir");
    remove.add("Crystal Quarry");
    remove.add("Darkwater Catacombs");
    remove.add("Fetid Heath");
    remove.add("Fire-Lit Thicket");
    remove.add("Flooded Grove");
    remove.add("Graven Cairns");
    remove.add("Henge of Ramos");
    remove.add("Koskun Keep");
    remove.add("Mossfire Valley");
    remove.add("Mystic Gate");
    remove.add("Rugged Prairie");
    remove.add("School of the Unseen");
    remove.add("Shadowblood Ridge");
    remove.add("Shimmering Grotto");
    remove.add("Skycloud Expanse");
    remove.add("Sungrass Prairie");
    remove.add("Sunken Ruins");
    remove.add("Twilight Mire");
    remove.add("Wizards' School");
    remove.add("Wooded Bastion");
   
    /**
     *  manapool stuff:
     */
    remove.add("Agent of Stromgald");
    remove.add("Ancient Spring");
    remove.add("Ancient Tomb");
    remove.add("Apprentice Wizard");
    remove.add("Azorius Chancery");
    remove.add("Azorius Signet");
    remove.add("Basal Thrull");
    remove.add("Basalt Monolith");
    remove.add("Black Lotus");
    remove.add("Blood Vassal");
    remove.add("Bog Initiate");
    remove.add("Boros Garrison");
    remove.add("Boros Signet");
    remove.add("Cabal Coffers");
    remove.add("Celestial Prism");
    remove.add("Ceta Discple");
    remove.add("Chromatic Star");
    remove.add("Coal Golem");
    remove.add("Composite Golem");
    remove.add("Crosis's Attendant");
    remove.add("Crystal Vein");
    remove.add("Darigaaz's Attendant");
    remove.add("Dark Ritual");
    remove.add("Dimir Aqueduct");
    remove.add("Dimir Signet");
    remove.add("Dreamstone Hedron");
    remove.add("Dromar's Attendant");
    remove.add("Dwarven Ruins");
    remove.add("Ebon Stronghold");
    remove.add("Elvish Archdruid");
    remove.add("Everflowing Chalice");
    remove.add("Eye of Ramos");
    remove.add("Fire Sprites");
    // remove.add("Forbidden Orchard");
    remove.add("Fyndhorn Elder");
    remove.add("Gaea's Cradle");
    remove.add("Geothermal Crevice");
    remove.add("Gilded Lotus");
    remove.add("Golgari Rot Farm");
    remove.add("Golgari Signet");
    remove.add("Greenweaver Druid");
    remove.add("Grim Monolith");
    remove.add("Gruul Signet");
    remove.add("Gruul Turf");
    remove.add("Harabaz Druid");
    remove.add("Havenwood Battleground");
    remove.add("Heart of Ramos");
    remove.add("Helionaut");
    remove.add("Horn of Ramos");
    remove.add("Implements of Sacrifice");
    remove.add("Irrigation Ditch");
    remove.add("Izzet Boilerworks");
    remove.add("Izzet Signet");
    remove.add("Kaleidostone");
    remove.add("Knotvine Mystic");
    remove.add("Lotus Bloom");
    remove.add("Lotus Cobra");
    remove.add("Magus of the Coffers");
    remove.add("Mana Cylix");
    remove.add("Mana Prism");
    remove.add("Mana Vault");
    remove.add("Morgue Toad");
    remove.add("Nantuko Elder");
    remove.add("Nomadic Elf");
    remove.add("Orochi Leafcaller");
    remove.add("Orzhov Basilica");
    remove.add("Orzhov Signet");
    remove.add("Priest of Titania");
    remove.add("Prismatic Lens");
    remove.add("Pyretic Ritual");
    remove.add("Rakdos Carnarium");
    remove.add("Rakdos Signet");
    remove.add("Rith's Attendant");
    remove.add("Rofellos, Llanowar Emissary");
    remove.add("Ruins of Trokair");
    remove.add("Sea Scryer");
    remove.add("Seething Song");
    remove.add("Selesnya Sanctuary");
    remove.add("Selesnya Signet");
    remove.add("Serra's Sanctum");
    remove.add("Simic Growth Chamber");
    remove.add("Simic Signet");
    remove.add("Sisay's Ring");
    remove.add("Skull of Ramos");
    remove.add("Skyshroud Elf");
    remove.add("Sol Ring");
    remove.add("Sulfur Vent");
    remove.add("Sunglasses of Urza");
    remove.add("Svyelunite Temple");
    remove.add("Thran Dynamo");
    remove.add("Tinder Farm");
    remove.add("Tolarian Academy");
    remove.add("Tooth of Ramos");
    remove.add("Treva's Attendant");
    remove.add("Ur-Golem's Eye");
    remove.add("Viridian Acolyte");
    remove.add("Worn Powerstone");
User avatar
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: Cards the AI can't use

Postby Sloth » 01 Aug 2010, 19:56

Thanks Chris!

I will add some more cards in the coming week, when I find some.
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Cards the AI can't use

Postby Rob Cashwalker » 03 Aug 2010, 16:41

I've been looking at this code, and I think I can replace the remove list with an SVar in the cards.txt.
The remove list is only used in this manner:
Code: Select all

        return CardUtil.getColors(c).size() <= 2 && //only dual colored gold cards
               !c.isLand()                       && //no land
               !remove.contains(c.getName())     || //OR very important
               goodLand.contains(c.getName());
This could be changed to:
Code: Select all

        return CardUtil.getColors(c).size() <= 2 && //only dual colored gold cards
               !c.isLand()                       && //no land
               !c.getSVar("RmAIDeck").equals("True")     || //OR very important
               goodLand.contains(c.getName());
The Force will be with you, Always.
User avatar
Rob Cashwalker
Programmer
 
Posts: 2167
Joined: 09 Sep 2008, 15:09
Location: New York
Has thanked: 5 times
Been thanked: 40 times

Re: Cards the AI can't use

Postby Sloth » 03 Aug 2010, 16:49

Rob Cashwalker wrote:I've been looking at this code, and I think I can replace the remove list with an SVar in the cards.txt.
That's actually a splendid idea!
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Cards the AI can't use

Postby Rob Cashwalker » 03 Aug 2010, 17:19

Once I make the change though, it's just going to require someone to add the SVar to all the cards on this list.

Edit - This is how I changed it:
Code: Select all
!(remove.contains(c.getName()) || c.getSVar("RemAIDeck").equals("True"))     || //OR very important
This way the cards can be removed from the remove list at our leisure.
Example:
Code: Select all
Fog
G
Instant
Prevent all combat damage that would be dealt this turn.
SVar:RemAIDeck:True
The Force will be with you, Always.
User avatar
Rob Cashwalker
Programmer
 
Posts: 2167
Joined: 09 Sep 2008, 15:09
Location: New York
Has thanked: 5 times
Been thanked: 40 times

Re: Cards the AI can't use

Postby Chris H. » 03 Aug 2010, 22:12

Rob Cashwalker wrote:Once I make the change though, it's just going to require someone to add the SVar to all the cards on this list.
`
I added the SVar to a number of cards, but it is going to take some time. The SVar check also needs to be added to GenerateConstructedMultiColorDeck as this class has the same filtering taking place and uses the same list of cards.
User avatar
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: Cards the AI can't use

Postby DennisBergkamp » 04 Aug 2010, 04:48

Good stuff guys, much better than the other way =D>
User avatar
DennisBergkamp
AI Programmer
 
Posts: 2602
Joined: 09 Sep 2008, 15:46
Has thanked: 0 time
Been thanked: 0 time

Re: Cards the AI can't use

Postby Chris H. » 04 Aug 2010, 13:19

I have managed to add the new SVar to all of the cards that are listed in GenerateConstructedDeck as of rev 1650. Than you for the help Sloth and Rob. :D
User avatar
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: Cards the AI can't use

Postby Rob Cashwalker » 22 Sep 2010, 14:45

I finally removed the remove list.
The Force will be with you, Always.
User avatar
Rob Cashwalker
Programmer
 
Posts: 2167
Joined: 09 Sep 2008, 15:09
Location: New York
Has thanked: 5 times
Been thanked: 40 times


Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 22 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 22 users online :: 0 registered, 0 hidden and 22 guests (based on users active over the past 10 minutes)
Most users ever online was 7303 on 15 Jul 2025, 20:46

Users browsing this forum: No registered users and 22 guests

Login Form