diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java b/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java index 8362963995a..4ebe78b127a 100644 --- a/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java @@ -2074,14 +2074,14 @@ public class ComputerPlayer extends PlayerImpl implements Player { int maxScore = RateCard.rateCard(bestCard, chosenColors); int pickedCardRate = RateCard.getCardRating(bestCard); - if (pickedCardRate <= 3) { + if (pickedCardRate <= 30) { // if card is bad // try to counter pick without any color restriction Card counterPick = pickBestCard(cards, null); int counterPickScore = RateCard.getCardRating(counterPick); // card is really good // take it! - if (counterPickScore >= 8) { + if (counterPickScore >= 80) { bestCard = counterPick; maxScore = RateCard.rateCard(bestCard, chosenColors); } diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/utils/RateCard.java b/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/utils/RateCard.java index 35d7c3bbebd..4d488be4c98 100644 --- a/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/utils/RateCard.java +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/utils/RateCard.java @@ -36,14 +36,19 @@ import mage.target.common.TargetPlayerOrPlaneswalker; public final class RateCard { private static Map ratings; + private static List setsWithRatingsToBeLoaded; private static final Map rated = new HashMap<>(); - private static Integer min = Integer.MAX_VALUE, max = 0; /** * Rating that is given for new cards. * Ratings are in [1,10] range, so setting it high will make new cards appear more often. + * nowadays, cards that are more rare are more powerful, lets trust that and play the shiny cards. + * */ - private static final int DEFAULT_NOT_RATED_CARD_RATING = 4; + private static final int DEFAULT_NOT_RATED_CARD_RATING = 40; + private static final int DEFAULT_NOT_RATED_UNCOMMON_RATING = 60; + private static final int DEFAULT_NOT_RATED_RARE_RATING = 75; + private static final int DEFAULT_NOT_RATED_MYTHIC_RATING = 90; private static final Logger log = Logger.getLogger(RateCard.class); @@ -81,8 +86,8 @@ public final class RateCard { } else { type = 6; } - int score = 10 * getCardRating(card) + 2 * type + getManaCostScore(card, allowedColors) - + 40 * isRemoval(card) + getRarityScore(card); + int score = getCardRating(card) + 2 * type + getManaCostScore(card, allowedColors) + + 40 * isRemoval(card); if (allowedColors == null) rated.put(card.getName(), score); return score; @@ -148,7 +153,6 @@ public final class RateCard { } } } - return 0; } @@ -156,17 +160,36 @@ public final class RateCard { * Return rating of the card. * * @param card Card to rate. - * @return Rating number from [1;10]. + * @return Rating number from [1:100]. */ public static int getCardRating(Card card) { - if (ratings == null) { - readRatings(); + if (setsWithRatingsToBeLoaded == null){ + setsWithRatingsToBeLoaded = new LinkedList<>(); + InputStream is = RateCard.class.getResourceAsStream("/setsWithRatings.csv"); + Scanner scanner = new Scanner(is); + while (scanner.hasNextLine()) { + String line = scanner.nextLine(); + if (line.substring(0,1) != "#"){ + setsWithRatingsToBeLoaded.add(line); + } + } } - if (ratings.containsKey(card.getName())) { - int r = ratings.get(card.getName()); - // normalize to [1..10] - float f = 10.0f * (r - min) / (max - min); - return (int) Math.round(f); + String exp = card.getExpansionSetCode().toLowerCase(); + readRatings(exp); + + if (ratings != null && ratings.containsKey(card.getName())) { + return ratings.get(card.getName()); + } + + Rarity r = card.getRarity(); + if (Rarity.COMMON == r){ + return DEFAULT_NOT_RATED_CARD_RATING; + }else if (Rarity.UNCOMMON == r){ + return DEFAULT_NOT_RATED_UNCOMMON_RATING; + }else if (Rarity.RARE == r){ + return DEFAULT_NOT_RATED_RARE_RATING; + }else if (Rarity.MYTHIC == r){ + return DEFAULT_NOT_RATED_MYTHIC_RATING; } return DEFAULT_NOT_RATED_CARD_RATING; } @@ -174,14 +197,20 @@ public final class RateCard { /** * Reads ratings from resources. */ - private synchronized static void readRatings() { + private synchronized static void readRatings(String expCode) { if (ratings == null) { ratings = new HashMap<>(); - readFromFile("/m13.csv"); + } + if (setsWithRatingsToBeLoaded.contains(expCode)){ + System.out.println("reading draftbot ratings for the set" + expCode); + readFromFile("/" + expCode + ".csv"); + setsWithRatingsToBeLoaded.remove(expCode); } } - + private static void readFromFile(String path) { + Integer min = Integer.MAX_VALUE, max = 0; + Map thisFileRatings = new HashMap<>(); try { InputStream is = RateCard.class.getResourceAsStream(path); Scanner scanner = new Scanner(is); @@ -197,12 +226,17 @@ public final class RateCard { if (rating < min) { min = rating; } - ratings.put(name, rating); + thisFileRatings.put(name, rating); } } + // normalize for the file to [1..100] + for (String name: thisFileRatings.keySet()){ + int r = thisFileRatings.get(name); + int newrating = (int)(100.0f * (r - min) / (max - min)); + ratings.put(name, newrating); + } } catch (Exception e) { e.printStackTrace(); - ratings.clear(); // no rating available on exception } } @@ -263,27 +297,7 @@ public final class RateCard { } return rate; } - - /** - * Get rarity score. - * nowadays, cards that are more rare are more powerful, lets - * trust that and play the shiny cards. - * - * @param card - * @return integer rating value - */ - private static int getRarityScore(Card card) { - Rarity r = card.getRarity(); - if (Rarity.MYTHIC == r){ - return 60; - }else if (Rarity.RARE == r){ - return 40; - }else if (Rarity.UNCOMMON == r){ - return 20; - }else{ - return 0; - } - } + /** * Determines whether mana symbol is color. * diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/aer.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/aer.csv new file mode 100644 index 00000000000..d586ce8d8cb --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/aer.csv @@ -0,0 +1,184 @@ +Ajani Unyielding:40114 +Herald of Anguish:39905 +Rishkar, Peema Renegade:39137 +Aethersphere Harvester:38827 +Heart of Kiran:37403 +Yahenni’s Expertise:37199 +Tezzeret the Schemer:34694 +Solemn Recruit:34338 +Untethered Express:33419 +Battle at the Bridge:33072 +Yahenni, Undying Partisan:32377 +Fatal Push:32126 +Sram’s Expertise:32076 +Walking Ballista:31052 +Baral’s Expertise:30879 +Freejam Regent:30870 +Glint-Sleeve Siphoner:30022 +Ridgescale Tusker:30018 +Quicksmith Spy:29214 +Scrapper Champion:29176 +Aethertide Whale:28976 +Daring Demolition:28538 +Gifted Aetherborn:28163 +Quicksmith Rebel:27792 +Hungry Flames:27737 +Thopter Arrest:27574 +Exquisite Archangel:27415 +Kari Zev, Skyship Raider:27188 +Aetherwind Basker:26371 +Treasure Keeper:26283 +Greenbelt Rampager:26185 +Vengeful Rebel:25902 +Aethergeode Miner:25711 +Rishkar’s Expertise:25327 +Lightning Runner:25297 +Shock:25129 +Caught in the Brights:24815 +Lifecrafter’s Bestiary:24466 +Midnight Entourage:23732 +Sram, Senior Edificer:23386 +Metallic Mimic:23383 +Maulfist Revolutionary:23093 +Greenwheel Liberator:21817 +Chandra’s Revolution:21713 +Maverick Thopterist:21685 +Airdrop Aeronauts:21061 +Narnam Renegade:20406 +Winding Constrictor:20174 +Scrap Trawler:20001 +Monstrous Onslaught:19528 +Wind-Kin Raiders:19507 +Deadeye Harpooner:19305 +Skyship Plunderer:18967 +Aether Poisoner:18617 +Cruel Finality:18352 +Release the Gremlins:18286 +Aether Chaser:17813 +Rogue Refiner:17646 +Reckless Racer:17299 +Dawnfeather Eagle:17238 +Felidar Guardian:17122 +Prey Upon:16986 +Spire Patrol:16942 +Druid of the Cowl:16941 +Aetherstream Leopard:16826 +Reverse Engineer:15858 +Daredevil Dragster:15795 +Shielded Aether Thief:15596 +Scrounging Bandar:14827 +Lifecraft Cavalry:14821 +Pacification Array:14672 +Renegade Rallier:14442 +Trophy Mage:14084 +Enraged Giant:13989 +Foundry Hornet:13907 +Call for Unity:13832 +Renegade Wheelsmith:13717 +Peacewalker Colossus:13604 +Sweatworks Brawler:13229 +Aether Swooper:13171 +Outland Boar:13074 +Restoration Specialist:12713 +Perilous Predicament:12702 +Aeronaut Admiral:12409 +Tezzeret’s Touch:12281 +Oath of Ajani:11663 +Bastion Inventor:11485 +Weldfast Engineer:11309 +Countless Gears Renegade:11144 +Mechanized Production:10887 +Hinterland Drake:10667 +Consulate Crackdown:10549 +Renegade Map:10115 +Peema Aether-Seer:9906 +Unbridled Growth:9661 +Lifecraft Awakening:9620 +Baral, Chief of Compliance:9382 +Merchant’s Dockhand:9033 +Barricade Breaker:8635 +Lifecrafter’s Gift:8248 +Hidden Herbalists:8012 +Mobile Garrison:7976 +Aether Herder:7964 +Disallow:7550 +Kari Zev’s Expertise:7472 +Cogwork Assembler:7463 +Heroic Intervention:6922 +Hidden Stockpile:6732 +Illusionist’s Stratagem:6678 +Leave in the Dust:6675 +Ghirapur Osprey:6597 +Decommission:6354 +Ice Over:6297 +Night Market Aeronaut:6198 +Gremlin Infestation:6195 +Spire of Industry:6181 +Audacious Infiltrator:6084 +Sly Requisitioner:5718 +Alley Strangler:5595 +Silkweaver Elite:5574 +Aid from the Cowl:5463 +Highspire Infusion:5402 +Frontline Rebel:5350 +Invigorated Rampage:5268 +Defiant Salvager:5211 +Watchful Automaton:5147 +Siege Modification:5142 +Inspiring Statuary:4932 +Embraal Gear-Smasher:4847 +Deft Dismissal:4727 +Shipwreck Moray:4645 +Metallic Rebuke:4618 +Dispersal Technician:4389 +Resourceful Return:4325 +Efficient Construction:4108 +Welder Automaton:4076 +Aether Inspector:3989 +Ravenous Intruder:3963 +Ironclad Revolutionary:3930 +Implement of Ferocity:3720 +Alley Evasion:3712 +Hope of Ghirapur:3699 +Aerial Modification:3671 +Gonti’s Aether Heart:3295 +Foundry Assembler:3292 +Fen Hauler:3265 +Natural Obsolescence:3262 +Destructive Tampering:3239 +Implement of Examination:3217 +Irontread Crusher:3097 +Filigree Crawler:3020 +Servo Schematic:3006 +Verdant Automaton:2979 +Reservoir Walker:2918 +Whir of Invention:2916 +Paradox Engine:2714 +Salvage Scuttler:2677 +Augmenting Automaton:2636 +Fourth Bridge Prowler:2448 +Conviction:2411 +Lathnu Sailback:2352 +Planar Bridge:2348 +Night Market Guard:2244 +Bastion Enforcer:2236 +Precise Strike:2179 +Universal Solvent:2128 +Implement of Malice:2089 +Crackdown Construct:1926 +Dark Intimations:1876 +Pia’s Revolution:1850 +Renegade’s Getaway:1472 +Aegis Automaton:1355 +Consulate Dreadnought:1255 +Indomitable Creativity:1206 +Negate:1016 +Consulate Turret:1014 +Implement of Combustion:806 +Take into Custody:678 +Implement of Improvement:624 +Wrangle:543 +Ornithopter:177 +Gonti’s Machinations:167 +Prizefighter Construct:123 +184 Secret Salvage 77 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/akh.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/akh.csv new file mode 100644 index 00000000000..aa35d0b68e0 --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/akh.csv @@ -0,0 +1,249 @@ +Angel of Sanctions:1638 +Glorybringer:1590 +Oketra the True:1512 +Rhonas the Indomitable:1456 +Gideon of the Trials:1445 +Hazoret the Fervent:1404 +Liliana, Death’s Majesty:1370 +Archfiend of Ifnir:1346 +Cast Out:1331 +Curator of Mysteries:1329 +Regal Caracal:1324 +Glyph Keeper:1312 +Cut /// Ribbons:1310 +Dusk /// Dawn:1266 +Vizier of Many Faces:1252 +Never /// Return:1251 +Vizier of the Menagerie:1243 +Heart-Piercer Manticore:1220 +Liliana’s Mastery:1216 +Trial of Zeal:1195 +Samut, Voice of Dissent:1190 +Nissa, Steward of Elements:1174 +Magma Spray:1157 +Honored Hydra:1132 +Sweltering Suns:1126 +Glory-Bound Initiate:1125 +Lord of the Accursed:1119 +Ahn-Crop Crasher:1115 +Insult /// Injury:1113 +Champion of Rhonas:1096 +Plague Belcher:1095 +Angler Drake:1091 +Cartouche of Strength:1089 +Electrify:1083 +Combat Celebrant:1079 +Compulsory Rest:1073 +Crocodile of the Crossing:1061 +Gust Walker:1058 +Scaled Behemoth:1055 +Decimator Beetle:1050 +Bone Picker:1048 +Drake Haven:1042 +Mouth /// Feed:1039 +Channeler Initiate:1038 +Deem Worthy:1031 +Bontu the Glorified:1022 +Trial of Solidarity:1018 +Final Reward:1013 +Stir the Sands:1010 +Hapatra, Vizier of Poisons:1009 +Start /// Finish:1005 +Trial of Strength:1002 +Emberhorn Minotaur:999 +Prepare /// Fight:998 +Baleful Ammit:997 +Cartouche of Knowledge:989 +Cruel Reality:989 +Sandwurm Convergence:973 +Prowling Serpopard:965 +Trial of Ambition:962 +Devoted Crop-Mate:959 +Oketra’s Attendant:955 +Commit /// Memory:952 +Neheb, the Worthy:952 +Aven Wind Guide:944 +Bloodrage Brawler:944 +Fan Bearer:936 +Dread Wanderer:930 +Temmet, Vizier of Naktamun:924 +Oketra’s Monument:921 +Edifice of Authority:919 +Cartouche of Ambition:918 +Wayward Servant:905 +Lay Claim:903 +Splendid Agony:896 +Tah-Crop Elite:894 +Kefnet the Mindful:884 +Gravedigger:871 +Harsh Mentor:864 +Soulstinger:863 +Exemplar of Strength:862 +Cartouche of Zeal:861 +Defiant Greatmaw:846 +Enigma Drake:846 +Cartouche of Solidarity:840 +Labyrinth Guardian:836 +Vizier of Deferment:835 +Naga Vitalist:834 +Pull from Tomorrow:832 +Rags /// Riches:832 +Khenra Charioteer:829 +Hooded Brawler:828 +Horror of the Broken Lands:815 +Trueheart Duelist:815 +Honored Crop-Captain:813 +Bitterblade Warrior:812 +Shefet Monitor:808 +Heaven /// Earth:807 +Seraph of the Suns:805 +Nef-Crop Entangler:803 +Greater Sandwurm:802 +Ruthless Sniper:799 +Cursed Minotaur:798 +Rhet-Crop Spearmaster:796 +Soul-Scar Mage:796 +Trial of Knowledge:787 +Trueheart Twins:785 +Battlefield Scavenger:784 +Aven Initiate:782 +Wasteland Scorpion:778 +Impeccable Timing:774 +Essence Scatter:773 +Open into Wonder:769 +Unwavering Initiate:767 +Warfire Javelineer:765 +Manticore of the Gauntlet:762 +Binding Mummy:760 +Approach of the Second Sun:758 +Ahn-Crop Champion:757 +Synchronized Strike:756 +Winged Shepherd:747 +Ornery Kudu:742 +Cryptic Serpent:741 +Shimmerscale Drake:739 +Hieroglyphic Illumination:737 +Censor:733 +Illusory Wrappings:731 +Watchful Naga:731 +Vizier of Tumbling Sands:724 +Minotaur Sureshot:720 +Rhonas’s Monument:719 +Galestrike:718 +Merciless Javelineer:718 +Bounty of the Luxa:712 +Aven Mindcensor:708 +Naga Oracle:705 +Thresher Lizard:692 +Quarry Hauler:689 +Irrigated Farmland:688 +Pathmaker Initiate:681 +Shadowstorm Vizier:678 +Grim Strider:676 +Flameblade Adept:674 +Sheltered Thicket:672 +Destined /// Lead:668 +Wander in Death:668 +Weaver of Currents:663 +Blighted Bat:651 +Nest of Scarabs:648 +Oracle’s Vault:646 +Canyon Slough:643 +Evolving Wilds:640 +Colossapede:638 +Sacred Cat:637 +Doomed Dissenter:635 +Fetid Pools:628 +Festering Mummy:616 +Onward /// Victory:615 +Throne of the God-Pharaoh:613 +Anointed Procession:608 +Gift of Paradise:602 +Anointer Priest:599 +Consuming Fervor:595 +Limits of Solidarity:594 +Spring /// Mind:593 +Desert Cerodon:592 +Sparring Mummy:592 +River Serpent:584 +Seeker of Insight:582 +Shed Weakness:582 +Gideon’s Intervention:580 +Slither Blade:580 +Tah-Crop Skirmisher:580 +Initiate’s Companion:570 +Pitiless Vizier:567 +Scattered Groves:563 +Supernatural Stamina:563 +Vizier of Remedies:563 +Hekma Sentinels:562 +Bloodlust Inciter:559 +Pouncing Cheetah:559 +Winds of Rebuke:550 +Cancel:540 +Painful Lesson:536 +Mighty Leap:535 +Pyramid of the Pantheon:535 +Reduce /// Rubble:533 +Brute Strength:530 +Floodwaters:530 +Faith of the Devoted:529 +Manglehorn:529 +Miasmic Mummy:522 +Fling:519 +Oashra Cultivator:512 +In Oketra’s Name:510 +Forsake the Worldly:506 +Supply Caravan:505 +Time to Reflect:505 +Decision Paralysis:504 +Giant Spider:504 +Hapatra’s Mark:500 +Nimble-Blade Khenra:499 +Harvest Season:497 +Failure /// Comply:496 +Zenith Seeker:494 +Those Who Serve:491 +Bontu’s Monument:488 +As Foretold:487 +Tormenting Voice:487 +Hazoret’s Monument:485 +New Perspectives:484 +Pursue Glory:478 +Unburden:476 +Djeru’s Resolve:469 +Spidery Grasp:468 +Kefnet’s Monument:466 +Lay Bare the Heart:464 +Scribe of the Mindful:463 +Honed Khopesh:450 +Stinging Shot:443 +Trespasser’s Curse:431 +Blazing Volley:430 +Watchers of the Dead:415 +Sixth Sense:413 +Dune Beetle:386 +Cradle of the Accursed:382 +Glorious End:380 +Sacred Excavation:379 +Grasping Dunes:372 +Shadow of the Grave:370 +Cascading Cataracts:357 +Hyena Pack:356 +Benefaction of Rhonas:354 +Dissenter’s Deliverance:353 +Painted Bluffs:348 +Renewed Faith:337 +Hazoret’s Favor:305 +Violent Impact:284 +Haze of Pollen:277 +Scarab Feast:268 +Compelling Argument:265 +Embalmer’s Tools:260 +Luxa River Shrine:213 +By Force:201 +Ancient Crab:198 +Sunscorched Desert:186 +Dispossess:109 +Protection of the Hekma:108 +249 Gate to the Afterlife 95 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/dom.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/dom.csv new file mode 100644 index 00000000000..b14997dc930 --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/dom.csv @@ -0,0 +1,249 @@ +Lyra Dawnbringer:2375 +Karn, Scion of Urza:2372 +Shalai, Voice of Plenty:2234 +Teferi, Hero of Dominaria:2215 +Verix Bladewing:2207 +Aryel, Knight of Windgrace:2166 +Multani, Yavimaya’s Avatar:2150 +History of Benalia:2123 +Siege-Gang Commander:2091 +In Bolas’s Clutches:2047 +Josu Vess, Lich Knight:2044 +Cast Down:2025 +Demonlord Belzenlok:2016 +Eviscerate:2010 +Serra Angel:2000 +Slimefoot, the Stowaway:1995 +Seal Away:1985 +Tatyova, Benthic Druid:1981 +Zahid, Djinn of the Lamp:1971 +Darigaaz Reincarnated:1959 +Weatherlight:1952 +Phyrexian Scriptures:1951 +Forebear’s Blade:1928 +Adeliz, the Cinder Wind:1919 +The Eldest Reborn:1919 +Teshar, Ancestor’s Apostle:1913 +Territorial Allosaurus:1896 +Danitha Capashen, Paragon:1895 +Muldrotha, the Gravetide:1881 +Fight with Fire:1879 +Shivan Fire:1879 +Helm of the Host:1876 +Knight of Grace:1863 +Vicious Offering:1859 +Pegasus Courser:1856 +Icy Manipulator:1849 +Benalish Marshal:1837 +Untamed Kavu:1836 +Goblin Chainwhirler:1834 +Raff Capashen, Ship’s Mage:1834 +Blessed Light:1833 +Rite of Belzenlok:1827 +Naru Meha, Master Wizard:1824 +Grand Warlord Radha:1817 +Two-Headed Giant:1817 +Llanowar Elves:1815 +Shanna, Sisay’s Legacy:1814 +Steel Leaf Champion:1811 +Song of Freyalise:1807 +Settle the Score:1804 +Time of Ice:1804 +Grunn, the Lonely King:1793 +Knight of Malice:1786 +Arvad the Cursed:1783 +Jhoira, Weatherlight Captain:1780 +Saproling Migration:1780 +Wizard’s Lightning:1779 +Tempest Djinn:1777 +Urgoros, the Empty One:1773 +Cloudreader Sphinx:1769 +Baloth Gorger:1768 +Skittering Surveyor:1765 +Baird, Steward of Argive:1762 +Blackblade Reforged:1760 +Hallar, the Firefletcher:1760 +On Serra’s Wings:1753 +Evra, Halcyon Witness:1748 +Traxos, Scourge of Kroog:1746 +Blink of an Eye:1742 +Triumph of Gerrard:1725 +Deep Freeze:1723 +Kazarov, Sengir Pureblood:1718 +Tiana, Ship’s Caretaker:1712 +Merfolk Trickster:1709 +Squee, the Immortal:1708 +Valduk, Keeper of the Flame:1708 +Kwende, Pride of Femeref:1707 +Whisper, Blood Liturgist:1707 +Academy Drake:1705 +Jaya Ballard:1704 +Gideon’s Reproach:1703 +Warcry Phoenix:1703 +Sporecrown Thallid:1698 +Yavimaya Sapherd:1692 +Rona, Disciple of Gix:1686 +Wizard’s Retort:1684 +Elfhame Druid:1683 +Fiery Intervention:1682 +Torgaar, Famine Incarnate:1682 +Yawgmoth’s Vile Offering:1677 +Deathbloom Thallid:1665 +Fungal Infection:1662 +Daring Archaeologist:1658 +Cold-Water Snapper:1656 +Thorn Elemental:1656 +Call the Cavalry:1649 +Sylvan Awakening:1648 +Jaya’s Immolating Inferno:1646 +Verdant Force:1642 +Fungal Plots:1636 +Spore Swarm:1635 +Divination:1629 +Syncopate:1626 +Marwyn, the Nurturer:1625 +Sergeant-at-Arms:1625 +Garna, the Bloodflame:1624 +Ghitu Chronicler:1622 +Tetsuko Umezawa, Fugitive:1612 +Dread Shade:1602 +Stronghold Confessor:1601 +Academy Journeymage:1599 +Chainer’s Torment:1593 +Thallid Omnivore:1592 +Thallid Soothsayer:1592 +Jousting Lance:1587 +Firefist Adept:1581 +Goblin Barrage:1580 +Naban, Dean of Iteration:1579 +Caligo Skin-Witch:1577 +Karn’s Temporal Sundering:1577 +Keldon Overseer:1574 +Dauntless Bodyguard:1572 +Opt:1572 +Ghitu Journeymage:1570 +The Mending of Dominaria:1568 +The Mirari Conjecture:1568 +Wild Onslaught:1567 +Haphazard Bombardment:1566 +Skizzik:1565 +Mammoth Spider:1558 +Serra Disciple:1558 +Clifftop Retreat:1557 +Aven Sentry:1556 +Mishra’s Self-Replicator:1552 +Ancient Animus:1550 +D’Avenant Trapper:1550 +Gilded Lotus:1549 +Jhoira’s Familiar:1548 +Champion of the Flame:1547 +Ghitu Lavarunner:1547 +Woodland Cemetery:1543 +Keldon Raider:1541 +Grow from the Ashes:1536 +Radiating Lightning:1536 +Sanctum Spirit:1533 +Windgrace Acolyte:1532 +Urza’s Ruinous Blast:1531 +Sulfur Falls:1527 +The Antiquities War:1522 +Adamant Will:1519 +Goblin Warchief:1518 +Adventurous Impulse:1516 +Mesa Unicorn:1512 +Bloodtallow Candle:1510 +Hinterland Harbor:1509 +Lingering Phantom:1506 +Short Sword:1499 +Llanowar Scout:1495 +Juggernaut:1493 +Frenzied Rage:1490 +Slinn Voda, the Rising Deep:1489 +Dub:1484 +Cabal Paladin:1482 +Gift of Growth:1482 +Dark Bargain:1481 +Benalish Honor Guard:1480 +Isolated Chapel:1473 +Kamahl’s Druidic Vow:1472 +Memorial to Glory:1469 +Sentinel of the Pearl Trident:1466 +Krosan Druid:1465 +Guardians of Koilos:1457 +Llanowar Envoy:1455 +Pardic Wanderer:1450 +Soul Salvage:1449 +The Flame of Keld:1448 +Arcane Flight:1445 +Divest:1444 +Feral Abomination:1441 +Artificer’s Assistant:1439 +Memorial to Unity:1439 +Yargle, Glutton of Urborg:1436 +Sparring Construct:1431 +Mox Amber:1429 +Weight of Memory:1426 +Precognition Field:1424 +The First Eruption:1420 +Invoke the Divine:1414 +Unwind:1413 +Primordial Wurm:1409 +Bloodstone Goblin:1408 +Vodalian Arcanist:1401 +Cabal Stronghold:1400 +Urza’s Tome:1393 +Lich’s Mastery:1390 +Primevals’ Glorious Rebirth:1390 +Run Amok:1390 +Gaea’s Protector:1382 +Pierce the Sky:1382 +Relic Runner:1381 +Jodah, Archmage Eternal:1378 +Excavation Elephant:1377 +Knight of New Benalia:1377 +Aesthir Glider:1376 +Befuddle:1375 +Homarid Explorer:1372 +Memorial to Folly:1371 +Howling Golem:1369 +Voltaic Servant:1369 +Nature’s Spiral:1368 +Sorcerer’s Wand:1366 +Corrosive Ooze:1360 +Broken Bond:1357 +Curator’s Ward:1355 +Tolarian Scholar:1354 +Memorial to Genius:1349 +Rampaging Cyclops:1347 +Warlord’s Fury:1328 +Fervent Strike:1321 +Demonic Vigor:1320 +Keldon Warcaller:1319 +Arbor Armament:1314 +Final Parting:1313 +Diligent Excavator:1312 +Navigator’s Compass:1308 +Charge:1307 +Amaranthine Wall:1305 +Cabal Evangel:1305 +Fire Elemental:1304 +Shield of the Realm:1304 +Oath of Teferi:1300 +Tragic Poet:1283 +Blessing of Belzenlok:1272 +Board the Weatherlight:1258 +Thran Temporal Gateway:1256 +Drudge Sentinel:1248 +Orcish Vandal:1247 +Skirk Prospector:1246 +Zhalfirin Void:1239 +Sage of Lat-Nam:1232 +Rescue:1225 +Gaea’s Blessing:1218 +Healing Grace:1200 +Rat Colony:1191 +Powerstone Shard:1162 +Seismic Shift:1152 +Damping Sphere:1133 +Fall of the Thran:1104 +Memorial to War:1089 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/grn.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/grn.csv new file mode 100644 index 00000000000..b8ec1234861 --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/grn.csv @@ -0,0 +1,259 @@ +Doom Whisperer:2332 +Aurelia, Exemplar of Justice:2258 +Vraska, Golgari Queen:2211 +Ral, Izzet Viceroy:2196 +Dream Eater:2180 +Thief of Sanity:2164 +Assassin's Trophy:2153 +Trostani Discordant:2141 +Beast Whisperer:2102 +Nullhide Ferox:2102 +Legion Warboss:2100 +March of the Multitudes:2094 +Conclave Tribunal:2092 +Niv-Mizzet, Parun:2088 +Light of the Legion:2073 +Price of Fame:2036 +Etrata, the Silencer:2019 +Venerated Loxodon:2017 +Justice Strike:2016 +Tajic, Legion's Edge:2005 +Underrealm Lich:1985 +Pelt Collector:1984 +Izoni, Thousand-Eyed:1977 +Find // Finality:1976 +Lazav, the Multifarious:1973 +Nightveil Sprite:1968 +Midnight Reaper:1964 +Lava Coil:1963 +Watcher in the Mist:1961 +Response // Resurgence:1958 +Knight of Autumn:1950 +Dimir Spybug:1948 +Integrity // Intervention:1945 +Nightveil Predator:1943 +Emmara, Soul of the Accord:1942 +Luminous Bonds:1932 +Artful Takedown:1923 +Ritual of Soot:1914 +Blood Operative:1903 +Conclave Cavalier:1902 +Truefire Captain:1902 +Runaway Steam-Kin:1901 +Murmuring Mystic:1899 +Arclight Phoenix:1894 +Risk Factor:1893 +Boros Challenger:1887 +Dead Weight:1887 +Bounty of Might:1886 +Connive // Concoct:1886 +Status // Statue:1885 +Deadly Visit:1878 +Deafening Clarion:1878 +Roc Charger:1864 +Kraul Harpooner:1839 +Citywatch Sphinx:1837 +Assure // Assemble:1836 +Expansion // Explosion:1836 +Capture Sphere:1834 +Thoughtbound Phantasm:1832 +Crackling Drake:1830 +Dawn of Hope:1827 +Disinformation Campaign:1826 +House Guildmage:1824 +Quasiduplicate:1816 +Sunhome Stalwart:1815 +Skyknight Legionnaire:1805 +Darkblade Agent:1788 +Plaguecrafter:1786 +Goblin Cratermaker:1773 +Affectionate Indrik:1772 +Whisper Agent:1771 +Notion Rain:1761 +Ledev Champion:1757 +Charnel Troll:1751 +Thought Erasure:1750 +Golgari Findbroker:1749 +Chemister's Insight:1743 +Goblin Banneret:1737 +Swiftblade Vindicator:1736 +Command the Storm:1728 +Camaraderie:1726 +Wee Dragonauts:1723 +District Guide:1722 +Hypothesizzle:1715 +League Guildmage:1712 +Direct Current:1711 +Experimental Frenzy:1711 +Discovery // Dispersal:1708 +Rampaging Monument:1705 +Rosemane Centaur:1698 +Inescapable Blaze:1693 +Watery Grave:1687 +Legion Guildmage:1680 +Chamber Sentry:1674 +Inspiring Unicorn:1671 +Ionize:1669 +Flower // Flourish:1663 +Divine Visitation:1656 +Dimir Informant:1653 +Healer's Hawk:1651 +Conclave Guildmage:1648 +Sinister Sabotage:1647 +Parhelion Patrol:1640 +Ochran Assassin:1639 +Goblin Electromancer:1634 +Glowspore Shaman:1631 +Siege Wurm:1629 +Wojek Bodyguard:1629 +Hellkite Whelp:1626 +Hired Poisoner:1625 +Unexplained Disappearance:1625 +Overgrown Tomb:1624 +Prey Upon:1624 +Pitiless Gorgon:1622 +Flight of Equenauts:1621 +Hatchery Spider:1621 +Temple Garden:1621 +Beacon Bolt:1620 +Citywide Bust:1615 +Bounty Agent:1613 +Piston-Fist Cyclops:1605 +Steam Vents:1600 +Erratic Cyclops:1582 +Swarm Guildmage:1582 +Sacred Foundry:1581 +Mission Briefing:1580 +Muse Drake:1574 +Arboretum Elemental:1572 +Worldsoul Colossus:1572 +Skyline Scout:1569 +Smelt-Ward Minotaur:1568 +Burglar Rat:1561 +Whispering Snitch:1560 +Fresh-Faced Recruit:1555 +Necrotic Wound:1554 +Electrostatic Field:1541 +Disdainful Stroke:1534 +Gruesome Menagerie:1534 +Sprouting Renewal:1534 +Sonic Assault:1533 +Sure Strike:1527 +Severed Strands:1522 +Beamsplitter Mage:1521 +Chromatic Lantern:1516 +Ledev Guardian:1510 +Radical Idea:1502 +Pilfering Imp:1500 +Vernadi Shieldmate:1497 +Ornery Goblin:1495 +Gatekeeper Gargoyle:1489 +Barging Sergeant:1484 +Blade Instructor:1483 +Rhizome Lurcher:1481 +Invert // Invent:1477 +Ironshell Beetle:1477 +Generous Stray:1474 +Demotion:1469 +Might of the Masses:1468 +Molderhulk:1467 +Selective Snare:1466 +Hammer Dropper:1463 +Swathcutter Giant:1462 +Firemind's Research:1460 +Devkarin Dissident:1459 +Mnemonic Betrayal:1459 +Vigorspore Wurm:1459 +Haazda Marshal:1457 +Lotleth Giant:1455 +Righteous Blow:1451 +Fire Urchin:1446 +Gird for Battle:1441 +Kraul Swarm:1437 +Veiled Shade:1437 +Centaur Peacemaker:1434 +Golgari Raiders:1434 +Passwall Adept:1434 +Sworn Companions:1434 +Erstwhile Trooper:1432 +Hunted Witness:1431 +Kraul Foragers:1431 +Collar the Culprit:1427 +Mausoleum Secrets:1424 +Take Heart:1424 +Dazzling Lights:1419 +Rubblebelt Boar:1418 +Sumala Woodshaper:1418 +Intrusive Packbeast:1416 +Loxodon Restorer:1415 +Omnispell Adept:1415 +Spinal Centipede:1415 +Glaive of the Guildpact:1414 +Vivid Revival:1410 +Douser of Lights:1409 +Devious Cover-Up:1404 +Chance for Glory:1402 +Child of Night:1402 +Enhanced Surveillance:1399 +Hitchclaw Recluse:1398 +Mephitic Vapors:1395 +Circuitous Route:1389 +Cosmotronic Wave:1389 +Leapfrog:1379 +Goblin Locksmith:1377 +Guildmages' Forum:1370 +Guild Summit:1368 +Bartizan Bats:1367 +Undercity Uprising:1363 +Thousand-Year Storm:1355 +Drowned Secrets:1349 +Boros Guildgate :1345 +Grappling Sundew:1344 +Boros Guildgate :1343 +Tenth District Guard:1342 +Izzet Guildgate :1338 +Crushing Canopy:1335 +Portcullis Vine:1333 +Undercity Necrolisk:1332 +Dimir Guildgate :1331 +Barrier of Bones:1327 +Wild Ceratok:1327 +Izzet Guildgate :1326 +Gravitic Punch:1320 +Silent Dart:1310 +Wary Okapi:1309 +Pack's Favor:1307 +Garrison Sergeant:1303 +Vedalken Mesmerist:1303 +Golgari Guildgate :1295 +Golgari Guildgate :1286 +Dimir Guildgate :1280 +Maniacal Rage:1280 +Selesnya Guildgate :1280 +Urban Utopia:1278 +Wall of Mist:1273 +Maximize Altitude:1268 +Join Shields:1267 +Selesnya Guildgate :1266 +Book Devourer:1263 +Wishcoin Crab:1262 +Narcomoeba:1257 +Crush Contraband:1248 +Gateway Plaza:1248 +Fearless Halberdier:1246 +Torch Courier:1242 +Candlelight Vigil:1241 +Moodmark Painter:1230 +Creeping Chill:1218 +Izzet Locket:1217 +Dimir Locket:1202 +Maximize Velocity:1200 +Unmoored Ego:1184 +Never Happened:1175 +Golgari Locket:1173 +Selesnya Locket:1154 +Boros Locket:1128 +Street Riot:1110 +Vicious Rumors:1101 +Pause for Reflection:1089 +Wand of Vertebrae:1073 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/hou.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/hou.csv new file mode 100644 index 00000000000..5687f1f849e --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/hou.csv @@ -0,0 +1,184 @@ +The Scarab God:2272 +Angel of Condemnation:2079 +The Locust God:2077 +The Scorpion God:2048 +Pride Sovereign:2046 +Crested Sunmare:1996 +Nicol Bolas, God-Pharaoh:1965 +Majestic Myriarch:1915 +Neheb, the Eternal:1906 +Hour of Devastation:1901 +Adorned Pouncer:1889 +Ammit Eternal:1881 +Samut, the Tested:1874 +Razaketh, the Foulblooded:1856 +Grind // Dust:1855 +Resilient Khenra:1832 +Sand Strangler:1822 +Ramunap Hydra:1818 +Abrade:1816 +Desert’s Hold:1813 +Champion of Wits:1810 +Bontu’s Last Reckoning:1807 +Nimble Obstructionist:1796 +Chaos Maw:1788 +Sifter Wurm:1783 +Unesh, Criosphinx Sovereign:1776 +Hour of Glory:1771 +River Hoopoe:1769 +Ominous Sphinx:1754 +Torment of Hailfire:1754 +Open Fire:1751 +Torment of Venom:1743 +Dreamstealer:1740 +Struggle // Survive:1737 +Burning-Fist Minotaur:1734 +Ambuscade:1732 +God-Pharaoh’s Gift:1731 +Accursed Horde:1729 +Doomfall:1727 +Earthshaker Khenra:1716 +Aerial Guide:1711 +Khenra Scrapper:1709 +Oketra’s Avenger:1691 +Bloodwater Entity:1689 +Rhonas’s Last Stand:1686 +Angel of the God-Pharaoh:1685 +Tenacious Hunter:1685 +Hour of Promise:1684 +Eternal of Harsh Truths:1680 +Fervent Paincaster:1677 +Lethal Sting:1673 +Vizier of the Anointed:1673 +Wildfire Eternal:1671 +Puncturing Blow:1668 +Sandblast:1668 +Sunscourge Champion:1661 +Spellweaver Eternal:1656 +Vizier of the True:1656 +Banewhip Punisher:1652 +Kefnet’s Last Word:1652 +Merciless Eternal:1648 +Vile Manifestation:1647 +Bitterbow Sharpshooters:1646 +Driven // Despair:1643 +Supreme Will:1638 +Hour of Revelation:1637 +Torment of Scarabs:1637 +Oasis Ritualist:1636 +Farm // Market:1628 +Unraveling Mummy:1628 +Obelisk Spider:1617 +Mirage Mirror:1615 +Manticore Eternal:1613 +Resolute Survivors:1610 +Ruin Rat:1610 +Overwhelming Splendor:1608 +Unconventional Tactics:1608 +Hour of Eternity:1606 +Devotee of Strength:1605 +Sinuous Striker:1604 +Sunset Pyramid:1602 +Riddleform:1600 +Solitary Camel:1600 +Harrier Naga:1598 +Steward of Solidarity:1597 +Sidewinder Naga:1595 +Dauntless Aven:1591 +Feral Prowler:1591 +Thorned Moloch:1586 +Striped Riverwinder:1584 +Frontline Devastator:1580 +Appeal // Authority:1578 +Aven of Enduring Hope:1577 +Mummy Paramount:1571 +Uncage the Menagerie:1570 +Consign // Oblivion:1564 +Hollow One:1561 +Aven Reedstalker:1560 +Rhonas’s Stalwart:1559 +Unsummon:1557 +Desert of the Glorified:1556 +Manalith:1555 +Hope Tender:1551 +Granitic Titan:1550 +Ifnir Deadlands:1550 +Blur of Blades:1547 +Marauding Boneslasher:1547 +Shefet Dunes:1547 +Claim // Fame:1545 +Magmaroth:1545 +Beneath the Sands:1543 +Ramunap Excavator:1542 +Desert of the Mindful:1541 +Khenra Eternal:1541 +Reason // Believe:1541 +Rampaging Hippo:1540 +Unquenchable Thirst:1539 +Razaketh’s Rite:1537 +Saving Grace:1532 +Steadfast Sentinel:1531 +Wall of Forgotten Pharaohs:1531 +Imminent Doom:1530 +Defiant Khenra:1526 +Cunning Survivor:1525 +Ramunap Ruins:1525 +Hashep Oasis:1524 +Overcome:1523 +Abandoned Sarcophagus:1514 +Carrion Screecher:1514 +Firebrand Archer:1510 +Frilled Sandwalla:1507 +Hazoret’s Undying Fury:1505 +Inferno Jet:1499 +Crypt of the Eternals:1496 +Gift of Strength:1495 +Kindled Fury:1493 +Ipnu Rivulet:1492 +Act of Heroism:1491 +Without Weakness:1489 +Desert of the Indomitable:1487 +Fraying Sanity:1485 +Hostile Desert:1484 +Traveler’s Amulet:1482 +God-Pharaoh’s Faithful:1477 +Desert of the Fervent:1476 +Apocalypse Demon:1474 +Wretched Camel:1472 +Dagger of the Worthy:1468 +Refuse // Cooperate:1468 +Quarry Beetle:1464 +Countervailing Winds:1460 +Gilded Cerodon:1455 +Djeru, With Eyes Open:1450 +Strategic Planning:1450 +Tragic Lesson:1449 +Scrounger of Souls:1447 +Dune Diviner:1438 +Desert of the True:1436 +Chandra’s Defeat:1433 +Proven Combatant:1430 +Survivors’ Encampment:1427 +Djeru’s Renunciation:1425 +Disposal Mummy:1422 +Imaginary Threats:1418 +Moaning Wall:1416 +Dutiful Servants:1403 +Oketra’s Last Mercy:1403 +Crash Through:1400 +Lurching Rotbeast:1397 +Swarm Intelligence:1397 +Life Goes On:1395 +Grisly Survivor:1388 +Dunes of the Dead:1381 +Jace’s Defeat:1369 +Endless Sands:1367 +Seer of the Last Tomorrow:1360 +Graven Abomination:1352 +Gideon’s Defeat:1346 +Liliana’s Defeat:1345 +Leave // Chance:1324 +Solemnity:1265 +Scavenger Grounds:1256 +Crook of Condemnation:1228 +Nissa’s Defeat:1185 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/ima.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/ima.csv new file mode 100644 index 00000000000..d9afedab23a --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/ima.csv @@ -0,0 +1,249 @@ +Consecrated Sphinx:2182 +Ancestral Vision:2144 +Archangel of Thune:2141 +Elesh Norn, Grand Cenobite:2135 +Mana Drain:2124 +Urabrask the Hidden:2107 +Sheoldred, Whispering One:2106 +Swords to Plowshares:2106 +Primeval Titan:2103 +Ob Nixilis, the Fallen:2081 +Doom Blade:2064 +Rampaging Baloths:2056 +Thundermaw Hellkite:2053 +Restoration Angel:2044 +Keiga, the Tide Star:2042 +Avacyn, Angel of Hope:2029 +Kiki-Jiki, Mirror Breaker:2024 +Kokusho, the Evening Star:2020 +Cryptic Command:2012 +Supreme Verdict:2002 +Genesis Hydra:2001 +Fireball:2000 +Emeria Angel:1992 +Austere Command:1969 +Blood Baron of Vizkopa:1968 +Lotus Cobra:1955 +Sphinx of Uthuun:1927 +Yosei, the Morning Star:1924 +Rift Bolt:1912 +Scourge of Valkas:1909 +Bogardan Hellkite:1907 +Ryusei, the Falling Star:1907 +Spiritmonger:1900 +Vorinclex, Voice of Hunger:1897 +Indulgent Tormentor:1888 +Heroes’ Bane:1885 +Jugan, the Rising Star:1877 +Simic Sky Swallower:1874 +Serra Angel:1873 +Grisly Spectacle:1865 +Rune-Scarred Demon:1864 +Channel:1861 +Hypersonic Dragon:1856 +Lightning Helix:1856 +Teferi, Mage of Zhalfir:1854 +Knight of the Reliquary:1848 +Thran Dynamo:1848 +Thoughtseize:1839 +Anger of the Gods:1836 +Savageborn Hydra:1829 +Charmbreaker Devils:1828 +Staggershock:1824 +Malfegor:1812 +Palladium Myr:1808 +Draconic Roar:1796 +Ulcerate:1795 +Heat Ray:1794 +Mahamoti Djinn:1793 +Hoarding Dragon:1786 +Corpsejack Menace:1783 +Abyssal Persecutor:1774 +Firemane Angel:1771 +Curse of Predation:1766 +Electrolyze:1754 +Reave Soul:1754 +Oblivion Stone:1744 +Overgrown Battlement:1738 +Claustrophobia:1736 +Obstinate Baloth:1732 +Blizzard Specter:1724 +Pillar of Flame:1724 +Wall of Roots:1723 +Undercity Troll:1721 +Cephalid Broker:1717 +Abzan Battle Priest:1716 +Abzan Falconer:1698 +Mind Stone:1697 +Illusory Ambusher:1691 +Fog Bank:1690 +Mana Leak:1689 +Genesis Wave:1686 +Condescend:1685 +Rosheen Meanderer:1682 +Aether Vial:1681 +Wing Shards:1680 +Bladewing the Risen:1677 +Vizkopa Guildmage:1671 +Aetherize:1669 +Bloodghast:1667 +Horizon Canopy:1662 +Noxious Dragon:1661 +Seeker of the Way:1657 +Azorius Charm:1650 +Topan Freeblade:1650 +Ajani’s Pridemate:1649 +Guttersnipe:1648 +Orzhov Basilica:1648 +Necropotence:1645 +Prodigal Pyromancer:1641 +Monastery Swiftspear:1639 +Phantom Monster:1637 +Search for Tomorrow:1637 +Phyrexian Rager:1630 +Frost Lynx:1624 +Carven Caryatid:1621 +Hunt the Weak:1621 +Izzet Boilerworks:1620 +Blinding Mage:1616 +Amass the Components:1610 +Iona’s Judgment:1605 +Repeal:1602 +Serra Ascendant:1601 +Star Compass:1600 +Kiln Fiend:1597 +Simic Growth Chamber:1596 +Auriok Champion:1592 +Illusory Angel:1588 +Day of the Dragons:1587 +Jungle Barrier:1586 +Rakdos Carnarium:1586 +Dimir Aqueduct:1575 +Golgari Rot Farm:1572 +Jin-Gitaxias, Core Augur:1570 +Bladewing’s Thrall:1562 +Mnemonic Wall:1562 +Ainok Bond-Kin:1561 +Crowned Ceratok:1556 +Jhessian Thief:1555 +Boros Garrison:1551 +Selesnya Sanctuary:1551 +Grove of the Burnwillows:1547 +Chronicler of Heroes:1546 +Glimpse the Unthinkable:1543 +Manakin:1537 +Riverwheel Aerialists:1531 +Guardian Idol:1525 +Assault Formation:1520 +Graven Cairns:1520 +Mer-Ek Nightblade:1519 +Stalwart Aven:1518 +Netcaster Spider:1516 +Angelic Accord:1514 +Doomed Traveler:1514 +Thrill-Kill Assassin:1514 +Distortion Strike:1511 +Azorius Chancery:1509 +Skywise Teachings:1503 +Borderland Marauder:1497 +Sustainer of the Realm:1495 +Furnace Whelp:1494 +Sultai Flayer:1493 +Ivy Elemental:1490 +Darksteel Axe:1487 +Gruul Turf:1486 +Path of Bravery:1485 +Wight of Precinct Six:1480 +Dissolve:1477 +Doorkeeper:1476 +Evolving Wilds:1472 +Keldon Halberdier:1468 +Foul-Tongue Invocation:1465 +Durkwood Baloth:1462 +Nantuko Shaman:1462 +Vent Sentinel:1461 +Scion of Ugin:1460 +Splatter Thug:1459 +Mishra’s Bauble:1458 +Child of Night:1454 +Ojutai’s Breath:1454 +Night of Souls’ Betrayal:1449 +Greater Basilisk:1448 +Butcher’s Glee:1446 +Surreal Memoir:1443 +Magus of the Moon:1438 +Battle-Rattle Shaman:1435 +Guard Duty:1429 +Sandstone Oracle:1426 +Enlarge:1425 +Jace’s Phantasm:1425 +Pristine Talisman:1424 +Duskdale Wurm:1423 +Elusive Spellfist:1423 +Dragon Egg:1421 +Flusterstorm:1421 +Kolaghan Monument:1415 +Balustrade Spy:1410 +Dragon Bell Monk:1407 +Student of Ojutai:1407 +Dragon Tempest:1406 +Angel of Mercy:1405 +Dragonloft Idol:1395 +Sanguine Bond:1394 +Dead Reveler:1393 +Wrench Mind:1393 +Diminish:1392 +Wildsize:1392 +Windfall:1392 +Guided Strike:1391 +Survival Cache:1391 +Lord of the Pit:1390 +Nimbus Maze:1390 +Rakdos Drake:1384 +Phantom Tiger:1381 +River of Tears:1381 +Moonglove Extract:1380 +Timberland Guide:1378 +Trepanation Blade:1378 +Burrenton Forge-Tender:1376 +Virulent Swipe:1376 +Hunting Pack:1367 +Fury Charm:1364 +Infantry Veteran:1360 +Coordinated Assault:1356 +Jaddi Offshoot:1353 +Inspiring Call:1350 +Shriekgeist:1349 +Thought Scour:1345 +Pentarch Ward:1344 +Bogbrew Witch:1343 +Tavern Swindler:1342 +Prey’s Vengeance:1341 +Serum Powder:1340 +Rotfeaster Maggot:1338 +Emerge Unscathed:1322 +Lead the Stampede:1322 +Bala Ged Scorpion:1321 +Dragonlord’s Servant:1321 +Great Teacher’s Decree:1313 +Eternal Thirst:1312 +Hammerhand:1302 +Haunting Hymn:1301 +Festering Newt:1287 +Tormenting Voice:1286 +Earth Elemental:1278 +Benevolent Ancestor:1264 +Trumpet Blast:1253 +Bewilder:1252 +Mark of Mutiny:1245 +Crucible of Fire:1242 +Bubbling Cauldron:1241 +Duress:1236 +Lure:1228 +Mindcrank:1225 +Radiant Fountain:1224 +Disenchant:1215 +Runed Servitor:1213 +Aerial Predation:1196 +Shimmering Grotto:1163 +Nature’s Claim:1137 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/kld.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/kld.csv new file mode 100644 index 00000000000..d586ce8d8cb --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/kld.csv @@ -0,0 +1,184 @@ +Ajani Unyielding:40114 +Herald of Anguish:39905 +Rishkar, Peema Renegade:39137 +Aethersphere Harvester:38827 +Heart of Kiran:37403 +Yahenni’s Expertise:37199 +Tezzeret the Schemer:34694 +Solemn Recruit:34338 +Untethered Express:33419 +Battle at the Bridge:33072 +Yahenni, Undying Partisan:32377 +Fatal Push:32126 +Sram’s Expertise:32076 +Walking Ballista:31052 +Baral’s Expertise:30879 +Freejam Regent:30870 +Glint-Sleeve Siphoner:30022 +Ridgescale Tusker:30018 +Quicksmith Spy:29214 +Scrapper Champion:29176 +Aethertide Whale:28976 +Daring Demolition:28538 +Gifted Aetherborn:28163 +Quicksmith Rebel:27792 +Hungry Flames:27737 +Thopter Arrest:27574 +Exquisite Archangel:27415 +Kari Zev, Skyship Raider:27188 +Aetherwind Basker:26371 +Treasure Keeper:26283 +Greenbelt Rampager:26185 +Vengeful Rebel:25902 +Aethergeode Miner:25711 +Rishkar’s Expertise:25327 +Lightning Runner:25297 +Shock:25129 +Caught in the Brights:24815 +Lifecrafter’s Bestiary:24466 +Midnight Entourage:23732 +Sram, Senior Edificer:23386 +Metallic Mimic:23383 +Maulfist Revolutionary:23093 +Greenwheel Liberator:21817 +Chandra’s Revolution:21713 +Maverick Thopterist:21685 +Airdrop Aeronauts:21061 +Narnam Renegade:20406 +Winding Constrictor:20174 +Scrap Trawler:20001 +Monstrous Onslaught:19528 +Wind-Kin Raiders:19507 +Deadeye Harpooner:19305 +Skyship Plunderer:18967 +Aether Poisoner:18617 +Cruel Finality:18352 +Release the Gremlins:18286 +Aether Chaser:17813 +Rogue Refiner:17646 +Reckless Racer:17299 +Dawnfeather Eagle:17238 +Felidar Guardian:17122 +Prey Upon:16986 +Spire Patrol:16942 +Druid of the Cowl:16941 +Aetherstream Leopard:16826 +Reverse Engineer:15858 +Daredevil Dragster:15795 +Shielded Aether Thief:15596 +Scrounging Bandar:14827 +Lifecraft Cavalry:14821 +Pacification Array:14672 +Renegade Rallier:14442 +Trophy Mage:14084 +Enraged Giant:13989 +Foundry Hornet:13907 +Call for Unity:13832 +Renegade Wheelsmith:13717 +Peacewalker Colossus:13604 +Sweatworks Brawler:13229 +Aether Swooper:13171 +Outland Boar:13074 +Restoration Specialist:12713 +Perilous Predicament:12702 +Aeronaut Admiral:12409 +Tezzeret’s Touch:12281 +Oath of Ajani:11663 +Bastion Inventor:11485 +Weldfast Engineer:11309 +Countless Gears Renegade:11144 +Mechanized Production:10887 +Hinterland Drake:10667 +Consulate Crackdown:10549 +Renegade Map:10115 +Peema Aether-Seer:9906 +Unbridled Growth:9661 +Lifecraft Awakening:9620 +Baral, Chief of Compliance:9382 +Merchant’s Dockhand:9033 +Barricade Breaker:8635 +Lifecrafter’s Gift:8248 +Hidden Herbalists:8012 +Mobile Garrison:7976 +Aether Herder:7964 +Disallow:7550 +Kari Zev’s Expertise:7472 +Cogwork Assembler:7463 +Heroic Intervention:6922 +Hidden Stockpile:6732 +Illusionist’s Stratagem:6678 +Leave in the Dust:6675 +Ghirapur Osprey:6597 +Decommission:6354 +Ice Over:6297 +Night Market Aeronaut:6198 +Gremlin Infestation:6195 +Spire of Industry:6181 +Audacious Infiltrator:6084 +Sly Requisitioner:5718 +Alley Strangler:5595 +Silkweaver Elite:5574 +Aid from the Cowl:5463 +Highspire Infusion:5402 +Frontline Rebel:5350 +Invigorated Rampage:5268 +Defiant Salvager:5211 +Watchful Automaton:5147 +Siege Modification:5142 +Inspiring Statuary:4932 +Embraal Gear-Smasher:4847 +Deft Dismissal:4727 +Shipwreck Moray:4645 +Metallic Rebuke:4618 +Dispersal Technician:4389 +Resourceful Return:4325 +Efficient Construction:4108 +Welder Automaton:4076 +Aether Inspector:3989 +Ravenous Intruder:3963 +Ironclad Revolutionary:3930 +Implement of Ferocity:3720 +Alley Evasion:3712 +Hope of Ghirapur:3699 +Aerial Modification:3671 +Gonti’s Aether Heart:3295 +Foundry Assembler:3292 +Fen Hauler:3265 +Natural Obsolescence:3262 +Destructive Tampering:3239 +Implement of Examination:3217 +Irontread Crusher:3097 +Filigree Crawler:3020 +Servo Schematic:3006 +Verdant Automaton:2979 +Reservoir Walker:2918 +Whir of Invention:2916 +Paradox Engine:2714 +Salvage Scuttler:2677 +Augmenting Automaton:2636 +Fourth Bridge Prowler:2448 +Conviction:2411 +Lathnu Sailback:2352 +Planar Bridge:2348 +Night Market Guard:2244 +Bastion Enforcer:2236 +Precise Strike:2179 +Universal Solvent:2128 +Implement of Malice:2089 +Crackdown Construct:1926 +Dark Intimations:1876 +Pia’s Revolution:1850 +Renegade’s Getaway:1472 +Aegis Automaton:1355 +Consulate Dreadnought:1255 +Indomitable Creativity:1206 +Negate:1016 +Consulate Turret:1014 +Implement of Combustion:806 +Take into Custody:678 +Implement of Improvement:624 +Wrangle:543 +Ornithopter:177 +Gonti’s Machinations:167 +Prizefighter Construct:123 +184 Secret Salvage 77 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/m19.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/m19.csv new file mode 100644 index 00000000000..82164b0866a --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/m19.csv @@ -0,0 +1,260 @@ +Resplendent Angel:2323 +Tezzeret, Artifice Master:2297 +Ajani, Adversary of Tyrants:2268 +Vivien Reid:2257 +Nicol Bolas, the Ravager:2210 +Bone Dragon:2163 +Demanding Dragon:2122 +Murder:2118 +Banefire:2116 +Lathliss, Dragon Queen:2111 +Djinn of Wishes:2092 +Isareth the Awakener:2083 +Demon of Catastrophes:2078 +Leonin Warleader:2036 +Hieromancer's Cage:2031 +Lightning Strike:2030 +Goreclaw, Terror of Qal Sisma:1990 +Angel of the Dawn:1965 +Vine Mare:1962 +Cleansing Nova:1957 +Luminous Bonds:1957 +Hungering Hydra:1956 +Pelakka Wurm:1948 +Palladia-Mors, the Ruiner:1940 +Thorn Lieutenant:1931 +Rabid Bite:1929 +Dismissive Pyromancer:1919 +Lena, Selfless Champion:1914 +Herald of Faith:1911 +Sigiled Sword of Valeron:1906 +Vaevictis Asmadi, the Dire:1898 +Lich's Caress:1895 +Graveyard Marshal:1885 +Pegasus Courser:1878 +Chromium, the Mutable:1875 +Volcanic Dragon:1869 +Mentor of the Meek:1866 +Vampire Sovereign:1860 +Valiant Knight:1855 +Poison-Tip Archer:1851 +Spit Flame:1851 +Windreader Sphinx:1846 +Death Baron:1844 +Skyrider Patrol:1844 +Shock:1841 +Regal Bloodlord:1840 +Ajani's Pridemate:1836 +Psychic Symbiont:1833 +Liliana, Untouched by Death:1825 +Exclusion Mage:1824 +Star-Crowned Stag:1823 +Sleep:1817 +Heroic Reinforcements:1805 +Patient Rebuilding:1804 +Druid of the Cowl:1790 +Horizon Scholar:1784 +Skymarch Bloodletter:1777 +Sarkhan, Fireblood:1776 +Runic Armasaur:1774 +Prodigious Growth:1773 +Take Vengeance:1772 +Aven Wind Mage:1770 +Dryad Greenseeker:1761 +Electrify:1751 +Sarkhan's Unsealing:1743 +Plague Mare:1739 +Gallant Cavalry:1736 +Mystic Archaeologist:1724 +Draconic Disciple:1723 +Essence Scatter:1723 +Vigilant Baloth:1719 +Skeleton Archer:1717 +Arcades, the Strategist:1715 +Militia Bugler:1715 +Departed Deckhand:1713 +Fell Specter:1708 +Strangling Spores:1703 +Bristling Boar:1699 +Snapping Drake:1693 +Enigma Drake:1692 +Knightly Valor:1692 +Gravedigger:1690 +Sai, Master Thopterist:1688 +Aviation Pioneer:1685 +Skyscanner:1683 +Shield Mare:1680 +Meteor Golem:1674 +Sparktongue Dragon:1673 +Brawl-Bash Ogre:1667 +Remorseful Cleric:1666 +Sift:1663 +Fiery Finish:1654 +Transmogrifying Wand:1653 +Aerial Engineer:1649 +Cavalry Drillmaster:1648 +Ghastbark Twins:1645 +Reclamation Sage:1640 +Ajani's Last Stand:1637 +Metamorphic Alteration:1634 +Mirror Image:1633 +Omenspeaker:1633 +Vivien's Invocation:1633 +Dark-Dweller Oracle:1630 +Boggart Brute:1628 +Dwindle:1625 +Goblin Trashmaster:1625 +Make a Stand:1624 +Liliana's Contract:1623 +Giant Spider:1622 +Open the Graves:1621 +Colossal Dreadmaw:1616 +Divination:1615 +Goblin Instigator:1614 +Supreme Phantom:1613 +Chaos Wand:1605 +Rhox Oracle:1603 +Elvish Rejuvenator:1602 +Skilled Animator:1600 +Leonin Vanguard:1597 +Declare Dominance:1596 +Reassembling Skeleton:1595 +Daggerback Basilisk:1591 +Bone to Ash:1585 +Rise from the Grave:1585 +Gift of Paradise:1582 +Titanic Growth:1582 +Arcane Encyclopedia:1581 +Switcheroo:1581 +Doomed Dissenter:1579 +Gigantosaurus:1579 +Siegebreaker Giant:1577 +Child of Night:1575 +Surge Mare:1575 +Cancel:1561 +Volley Veteran:1560 +Epicure of Blood:1559 +Vampire Neonate:1555 +Guttersnipe:1554 +Aethershield Artificer:1553 +Rogue's Gloves:1553 +Macabre Waltz:1550 +Hired Blade:1548 +Salvager of Secrets:1545 +Diamond Mare:1543 +Blood Divination:1542 +Nightmare's Thirst:1542 +Gargoyle Sentinel:1539 +Act of Treason:1538 +Lightning Mare:1534 +Abnormal Endurance:1531 +Inspired Charge:1531 +Gearsmith Guardian:1527 +Dragon Egg:1521 +Anticipate:1519 +Viashino Pyromancer:1519 +Rustwing Falcon:1514 +Two-Headed Zombie:1513 +Blanchwood Armor:1511 +Hostile Minotaur:1510 +Druid of Horns:1508 +Marauder's Axe:1508 +Diregraf Ghoul:1507 +Havoc Devils:1506 +Satyr Enchanter:1505 +Centaur Courser:1502 +Plummet:1497 +Disperse:1494 +Sure Strike:1494 +Inferno Hellion:1491 +Novice Knight:1491 +Oakenform:1483 +Knight of the Tusk:1482 +Fountain of Renewal:1477 +Ravenous Harpy:1474 +Knight's Pledge:1469 +Thornhide Wolves:1463 +Dragon's Hoard:1461 +Daybreak Chaplain:1459 +Ghirapur Guide:1457 +Greenwood Sentinel:1456 +Recollect:1455 +Goblin Motivator:1452 +Talons of Wildwood:1449 +Colossal Majesty:1447 +Gearsmith Prodigy:1441 +Scholar of Stars:1439 +Ajani's Welcome:1433 +Mighty Leap:1432 +Naturalize:1431 +Trusty Packbeast:1431 +Dwarven Priest:1426 +Uncomfortable Chill:1423 +Oreskos Swiftclaw:1422 +Psychic Corrosion:1421 +Loxodon Line Breaker:1419 +Aether Tunnel:1404 +Frilled Sea Serpent:1403 +Infernal Scarring:1403 +Phylactery Lich:1398 +Mind Rot:1396 +Explosive Apparatus:1395 +Amulet of Safekeeping:1390 +Duress:1390 +Magistrate's Scepter:1388 +Suspicious Bookcase:1388 +Invoke the Divine:1385 +Manalith:1384 +Onakke Ogre:1384 +Tormenting Voice:1384 +One with the Machine:1378 +Meandering River:1374 +Lava Axe:1369 +Stone Quarry:1369 +Thud:1368 +Field Creeper:1367 +Rupture Spire:1366 +Elvish Clancaller:1365 +Wall of Mist:1363 +Suncleanser:1357 +Highland Game:1352 +Walking Corpse:1352 +Fire Elemental:1351 +Tectonic Rift:1348 +Totally Lost:1348 +Woodland Stream:1346 +Trumpet Blast:1339 +Millstone:1329 +Crash Through:1327 +Bogstomper:1326 +Aegis of the Heavens:1323 +Forsaken Sanctuary:1323 +Apex of Power:1307 +Tranquil Expanse:1304 +Cinder Barrens:1296 +Infernal Reckoning:1294 +Revitalize:1293 +Wall of Vines:1292 +Detection Tower:1283 +Timber Gorge:1282 +Submerged Boneyard:1277 +Mistcaller:1273 +Ghostform:1272 +Catalyst Elemental:1268 +Omniscience:1267 +Tolarian Scholar:1267 +Stitcher's Supplier:1263 +Desecrated Tomb:1258 +Scapeshift:1251 +Sovereign's Bite:1250 +Highland Lake:1245 +Infectious Horror:1241 +Doublecast:1240 +Fraying Omnipotence:1220 +Crucible of Worlds:1209 +Root Snare:1201 +Smelt:1199 +Reliquary Tower:1197 +Foul Orchard:1190 +Isolate:1139 +Alpine Moon:1068 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/mm3.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/mm3.csv new file mode 100644 index 00000000000..d088c3d513c --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/mm3.csv @@ -0,0 +1,249 @@ +Jace, the Mind Sculptor:2196 +Master of the Wild Hunt:2148 +Lightning Bolt:2107 +Swords to Plowshares:2060 +Vendilion Clique:2058 +Ravenous Chupacabra:2057 +Courser of Kruphix:1981 +Reef Worm:1962 +Vindicate:1961 +Pillory of the Sleepless:1926 +Akroma, Angel of Fury:1923 +Gisela, Blade of Goldnight:1918 +Akroma, Angel of Wrath:1913 +Animar, Soul of Elements:1902 +Murder:1900 +Ruric Thar, the Unbowed:1896 +Protean Hulk:1894 +Pacifism:1888 +Akroma’s Vengeance:1885 +Murder of Crows:1885 +Phyrexian Obliterator:1882 +Rancor:1864 +Vesuvan Shapeshifter:1858 +Niv-Mizzet, the Firemind:1854 +Shadowmage Infiltrator:1854 +Fiend Hunter:1844 +Pernicious Deed:1841 +Thalia, Guardian of Thraben:1829 +Living Death:1827 +Man-o’-War:1827 +Elvish Piper:1825 +Imperial Recruiter:1810 +Sundering Titan:1806 +Decree of Justice:1803 +Prossh, Skyraider of Kher:1803 +Cloudblazer:1798 +Laquatus’s Champion:1795 +Darien, King of Kjeldor:1787 +Grenzo, Dungeon Warden:1787 +Pyroclasm:1787 +Brion Stoutarm:1786 +Utopia Sprawl:1785 +Counterspell:1772 +Coalition Relic:1765 +Disfigure:1755 +Kongming, “Sleeping Dragon”:1752 +Spikeshot Goblin:1752 +Blightning:1750 +Arbor Elf:1748 +Bident of Thassa:1743 +Hell’s Caretaker:1739 +Cultivate:1728 +Kindle:1726 +Luminarch Ascension:1719 +Fallen Angel:1718 +Krosan Tusker:1718 +Promise of Bunrei:1713 +Squadron Hawk:1712 +Mystic Snake:1711 +Horseshoe Crab:1707 +Ensnaring Bridge:1706 +Lorescale Coatl:1702 +Nicol Bolas:1702 +Boros Charm:1701 +Treasure Keeper:1701 +Undead Gladiator:1699 +Baloth Null:1698 +Chandra’s Outrage:1691 +Notion Thief:1691 +Merfolk Looter:1689 +Willbender:1689 +Azusa, Lost but Seeking:1686 +Quicksilver Dagger:1686 +Armageddon:1683 +Dusk Legion Zealot:1678 +Zombify:1678 +Urbis Protector:1676 +Rishadan Port:1673 +Blue Sun’s Zenith:1672 +Mesmeric Fiend:1669 +Chalice of the Void:1668 +Zulaport Cutthroat:1662 +Epic Confrontation:1658 +Exclude:1658 +Eidolon of the Great Revel:1655 +Nyx-Fleece Ram:1653 +Diabolic Edict:1651 +Brainstorm:1648 +Magus of the Wheel:1648 +Zada, Hedron Grinder:1645 +Court Hussar:1638 +Sift:1638 +Iwamori of the Open Fist:1637 +Twisted Abomination:1633 +Izzet Chemister:1632 +Ire Shaman:1629 +Kavu Predator:1628 +Street Wraith:1628 +Dauntless Cathar:1625 +Cloudshift:1622 +Mystic of the Hidden Way:1622 +Summoner’s Pact:1622 +Ball Lightning:1621 +Skeletonize:1620 +Ruthless Ripper:1614 +Hordeling Outburst:1609 +Path of Peace:1609 +Loyal Sentry:1607 +Eladamri’s Call:1606 +Mishra’s Factory:1604 +Ash Barrens:1602 +Griffin Protector:1591 +Myriad Landscape:1588 +Hanna, Ship’s Navigator:1586 +Flash:1585 +Prophetic Prism:1585 +Unearth:1584 +Enthralling Victor:1583 +Freed from the Real:1581 +Fathom Seer:1578 +Sai of the Shinobi:1578 +Ancient Craving:1577 +Bloodhunter Bat:1577 +Invigorate:1576 +Watchwolf:1575 +Mogg Flunkies:1571 +Vessel of Nascency:1571 +Whitemane Lion:1571 +Swiftfoot Boots:1570 +Plague Wind:1569 +Perilous Myr:1568 +Karona’s Zealot:1567 +Geist of the Moors:1563 +Jalira, Master Polymorphist:1563 +Cascade Bluffs:1560 +Elvish Aberration:1560 +Kavu Climber:1555 +Thresher Lizard:1555 +Horror of the Broken Lands:1551 +Ainok Survivalist:1549 +Genju of the Falls:1549 +Frenzied Goblin:1547 +Pyre Hound:1545 +Stangg:1544 +Twilight Mire:1544 +Broodhatch Nantuko:1542 +Kor Firewalker:1542 +Ratcatcher:1542 +Presence of Gond:1541 +Noble Templar:1539 +Brine Elemental:1537 +Death’s-Head Buzzard:1537 +Fierce Empath:1537 +Timberpack Wolf:1537 +Skirk Commando:1536 +Ghost Ship:1535 +Ember Weaver:1533 +Pact of Negation:1531 +Shoreline Ranger:1531 +Woolly Loxodon:1526 +Curiosity:1525 +Gods Willing:1523 +Deadly Designs:1521 +Phyrexian Ghoul:1519 +Giant Growth:1518 +Fortune Thief:1517 +Genju of the Spires:1517 +Angelic Page:1516 +Nettle Sentinel:1516 +Wildheart Invoker:1514 +Ambassador Oak:1513 +Nezumi Cutthroat:1511 +Knight of the Skyward Eye:1510 +Dark Ritual:1509 +Supernatural Stamina:1509 +Flooded Grove:1503 +Ordeal of Heliod:1503 +Fetid Heath:1500 +Accumulated Knowledge:1498 +Balduvian Horde:1497 +Vampire Lacerator:1491 +Chartooth Cougar:1487 +Lunarch Mantle:1487 +Pendelhaven:1487 +Doomsday:1486 +Colossal Dreadmaw:1485 +Krosan Colossus:1483 +Retraction Helix:1473 +Arcane Denial:1472 +Quicksand:1472 +Fencing Ace:1470 +Goblin War Drums:1467 +Self-Assembler:1463 +Rugged Prairie:1461 +Caustic Tar:1459 +Erg Raiders:1458 +Simian Spirit Guide:1458 +Regrowth:1454 +Mikokoro, Center of the Sea:1450 +Returned Phalanx:1449 +Cursecatcher:1445 +Tree of Redemption:1445 +Soulbright Flamekin:1444 +Primal Clay:1443 +Uncaged Fury:1443 +Will-o’-the-Wisp:1443 +Browbeat:1434 +Heavy Arbalest:1430 +Echoing Courage:1429 +Blood Moon:1425 +Choking Tethers:1424 +Stampede Driver:1422 +Crimson Mage:1421 +Relentless Rats:1421 +Living Wish:1420 +Totally Lost:1418 +Humble Defector:1417 +Ihsan’s Shade:1417 +Zoetic Cavern:1412 +Act of Treason:1405 +Savannah Lions:1404 +Coralhelm Guide:1398 +Trumpet Blast:1397 +Twisted Image:1397 +Dragon’s Eye Savants:1392 +Blue Elemental Blast:1385 +Ancient Stirrings:1377 +Phantasmal Bear:1374 +Rest in Peace:1373 +Dirge of Dread:1372 +Red Elemental Blast:1361 +Triskaidekaphobia:1361 +Cinder Storm:1352 +Auramancer:1346 +Haunted Fengraf:1343 +Strionic Resonator:1342 +Act of Heroism:1341 +Borrowing:100,000 Arrows 1338 +Jackal Pup:1337 +Valor in Akros:1337 +Nihil Spellbomb:1316 +Assembly-Worker:1301 +Pillage:1300 +Disenchant:1271 +Renewed Faith:1250 +Plummet:1238 +Congregate:1218 +Lull:1212 +Conflux:1208 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/rix.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/rix.csv new file mode 100644 index 00000000000..4d561540870 --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/rix.csv @@ -0,0 +1,191 @@ +Rekindling Phoenix:2418 +Tetzimoc, Primal Death:2401 +Ravenous Chupacabra:2290 +Twilight Prophet:2282 +Etali, Primal Storm:2192 +Angrath, the Flame-Chained:2180 +The Immortal Sun:2168 +Profane Procession:2155 +Jadelight Ranger:2143 +Ghalta, Primal Hunger:2131 +Tendershoot Dryad:2121 +Bishop of Binding:2103 +Kumena, Tyrant of Orazca:2098 +Dire Fleet Poisoner:2094 +Trapjaw Tyrant:2087 +Bombard:2052 +Moment of Craving:2039 +Huatli, Radiant Champion:2029 +Hadana’s Climb:2019 +Reaver Ambush:2001 +Warkite Marauder:2001 +Champion of Dusk:2000 +Baffling End:1990 +Luminous Bonds:1970 +Impale:1966 +Golden Demise:1946 +Journey to Eternity:1941 +Crested Herdcaller:1936 +Azor, the Lawbringer:1914 +Thrashing Brontodon:1908 +Raging Regisaur:1902 +Zacama, Primal Calamity:1901 +Legion Lieutenant:1898 +Deeproot Elite:1893 +Sadistic Skymarcher:1893 +Needletooth Raptor:1889 +Elenda, the Dusk Rose:1888 +Dire Fleet Daredevil:1883 +Merfolk Mistbinder:1881 +Hunt the Weak:1839 +Forerunner of the Legion:1828 +Zetalpa, Primal Dawn:1820 +Golden Guardian:1819 +Radiant Destiny:1816 +Vona’s Hunger:1798 +Polyraptor:1793 +Tilonalli’s Summoner:1792 +Swift Warden:1774 +Slaughter the Strong:1767 +Protean Raider:1764 +Waterknot:1762 +Seafloor Oracle:1761 +Forerunner of the Empire:1760 +Divine Verdict:1759 +Reckless Rage:1758 +Dusk Legion Zealot:1755 +Squire’s Devotion:1754 +Temple Altisaur:1753 +Forerunner of the Heralds:1749 +Deadeye Brawler:1748 +Nezahal, Primal Tide:1742 +Captain’s Hook:1722 +Curious Obsession:1720 +Charging Tuskodon:1717 +Azor’s Gateway:1706 +Dire Fleet Neckbreaker:1703 +Wayward Swordtooth:1699 +Resplendent Griffin:1698 +Jungle Creeper:1693 +Siegehorn Ceratops:1690 +Kitesail Corsair:1689 +Martyr of Dusk:1689 +Exultant Skymarcher:1686 +Sailor of Means:1683 +Silvergill Adept:1680 +Atzocan Seer:1675 +Jungleborn Pioneer:1674 +Path of Discovery:1669 +Skymarcher Aspirant:1667 +Siren Reaver:1661 +Paladin of Atonement:1655 +Forerunner of the Coalition:1652 +Mutiny:1648 +Storm Fleet Sprinter:1638 +Relentless Raptor:1634 +Everdawn Champion:1625 +Goblin Trailblazer:1622 +Storm Fleet Swashbuckler:1606 +Spire Winder:1600 +Strength of the Pack:1594 +Secrets of the Golden City:1593 +Mausoleum Harpy:1586 +Slippery Scoundrel:1585 +Colossal Dreadmaw:1584 +Knight of the Stampede:1584 +Dusk Charger:1579 +Expel from Orazca:1578 +Oathsworn Vampire:1578 +Overgrown Armasaur:1576 +Daring Buccaneer:1562 +Deadeye Rig-Hauler:1557 +Sun-Crested Pterodon:1557 +Soul of the Rapids:1549 +Cherished Hatchling:1547 +Crashing Tide:1538 +Recover:1538 +Arch of Orazca:1537 +Majestic Heliopterus:1531 +Sanguine Glorifier:1525 +Form of the Dinosaur:1523 +Pride of Conquerors:1523 +Famished Paladin:1516 +Moment of Triumph:1515 +Silverclad Ferocidons:1511 +Frilled Deathspitter:1509 +Kumena’s Awakening:1505 +Snubhorn Sentry:1504 +Voracious Vampire:1504 +Fathom Fleet Boarder:1501 +Buccaneer’s Bravado:1492 +Thunderherd Migration:1487 +Legion Conquistador:1483 +See Red:1481 +Riverwise Augur:1478 +Cacophodon:1477 +Tomb Robber:1475 +Giltgrove Stalker:1472 +Swaggering Corsair:1472 +Evolving Wilds:1463 +Dinosaur Hunter:1461 +World Shaper:1452 +Path of Mettle:1447 +Hardy Veteran:1446 +Mist-Cloaked Herald:1443 +Fanatical Firebrand:1442 +Jadecraft Artisan:1440 +Stampeding Horncrest:1439 +Admiral’s Order:1436 +Timestream Navigator:1433 +Brazen Freebooter:1427 +Imperial Ceratops:1415 +Aggressive Urge:1413 +Traveler’s Amulet:1412 +Grasping Scoundrel:1403 +Jade Bearer:1384 +Aquatic Incursion:1375 +Shake the Foundations:1374 +Vampire Revenant:1368 +Orazca Raptor:1363 +Sun Sentinel:1362 +Hornswoggle:1350 +Mastermind’s Acquisition:1344 +Raptor Companion:1340 +Sea Legs:1332 +Sun-Collared Raptor:1322 +Tilonalli’s Crown:1318 +Gleaming Barrier:1307 +Enter the Unknown:1301 +Storm the Vault:1297 +Crafty Cutpurse:1291 +Pitiless Plunderer:1288 +Forsaken Sanctuary:1281 +Pirate’s Pillage:1274 +Arterial Flow:1255 +Woodland Stream:1246 +Orazca Frillback:1244 +Dead Man’s Chest:1233 +River Darter:1233 +Naturalize:1224 +Cleansing Ray:1203 +Highland Lake:1199 +Strider Harness:1198 +Negate:1195 +Stone Quarry:1192 +Dark Inquiry:1187 +Release to the Wind:1165 +Plummet:1160 +Foul Orchard:1146 +Orazca Relic:1123 +Flood of Recollection:1121 +Canal Monitor:1094 +Blazing Hope:1069 +Brass’s Bounty:1064 +Sworn Guardian:1060 +Blood Sun:1059 +Gruesome Fate:1036 +Awakened Amalgam:1017 +Induced Amnesia:1003 +Silent Gravestone:968 +Sphinx’s Decree:961 +Shatter:907 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/setsWithRatings.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/setsWithRatings.csv new file mode 100644 index 00000000000..172ed6537e2 --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/setsWithRatings.csv @@ -0,0 +1,19 @@ +# this file specifies which sets have set files. +# each line must be exactly the 3 letter expansion code. this corresponds to a csv resource file in the same directory +# The .csv files have a strict format: +# each line must be: +# cardname : integer rating +# each set's ratings are post-processed to have a normalized score [1..100], so the files don't need to have the same rating system. +# I created the first few files with draftaholicsanonymous but you can use any integer rating system you want +grn +m19 +dom +rix +xln +hou +akh +aer +kld +mm3 +ima +m13 \ No newline at end of file diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/xln.csv b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/xln.csv new file mode 100644 index 00000000000..3e92060d88e --- /dev/null +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/resources/xln.csv @@ -0,0 +1,259 @@ +Vraska, Relic Seeker:2381 +Hostage Taker:2336 +Carnage Tyrant:2332 +Regisaur Alpha:2276 +Ripjaw Raptor:2228 +Captivating Crew:2225 +Vraska’s Contempt:2214 +Vona, Butcher of Magan:2192 +Huatli, Warrior Poet:2173 +Repeating Barrage:2144 +Charging Monstrosaur:2133 +Lightning Strike:2122 +Walk the Plank:2096 +Ixalan’s Binding:2083 +Burning Sun’s Avatar:2068 +Mavren Fein, Dusk Apostle:2061 +Settle the Wreckage:2057 +Waker of the Wilds:2033 +Kinjalli’s Sunwing:2032 +Sanctum Seeker:2003 +Rampaging Ferocidon:2000 +Legion’s Landing:1999 +Territorial Hammerskull:1990 +Dreamcaller Siren:1983 +Bishop of Rebirth:1975 +Vanquish the Weak:1969 +River’s Rebuke:1967 +Fathom Fleet Captain:1950 +Imperial Aerosaur:1939 +Drover of the Mighty:1932 +Deathgorge Scavenger:1917 +Snapping Sailback:1916 +Shapers of Nature:1913 +Entrancing Melody:1911 +Contract Killing:1910 +Adanto Vanguard:1901 +Air Elemental:1901 +Dire Fleet Ravager:1889 +Merfolk Branchwalker:1889 +Jace, Cunning Castaway:1881 +Savage Stomp:1878 +Kitesail Freebooter:1877 +Raging Swordtooth:1858 +Ruin Raider:1856 +Vance’s Blasting Cannons:1854 +Unfriendly Fire:1844 +Captain Lannery Storm:1843 +Pious Interdiction:1842 +Firecannon Blast:1837 +Ranging Raptors:1835 +Treasure Map:1832 +Sky Terror:1824 +Vanquisher’s Banner:1823 +Watertrap Weaver:1811 +Pirate’s Cutlass:1806 +Emperor’s Vanguard:1805 +Storm Fleet Aerialist:1805 +Tempest Caller:1798 +Daring Saboteur:1795 +Search for Azcanta:1794 +Rowdy Crew:1793 +Seekers’ Squire:1777 +Skulduggery:1773 +Glorifier of Dusk:1757 +Siren Lookout:1757 +One With the Wind:1754 +Admiral Beckett Brass:1752 +Bishop of the Bloodstained:1752 +Wanted Scoundrels:1750 +Pounce:1748 +Jade Guardian:1740 +Vineshaper Mystic:1740 +Skymarch Bloodletter:1739 +Gishath, Sun’s Avatar:1733 +Call to the Feast:1730 +Paladin of the Bloodstained:1729 +Emissary of Sunrise:1725 +Otepec Huntmaster:1719 +Thundering Spineback:1710 +Tishana’s Wayfinder:1707 +Fiery Cannonade:1697 +Verdant Sun’s Avatar:1692 +Dark Nourishment:1682 +Deadeye Tracker:1679 +Siren Stormtamer:1679 +Chart a Course:1674 +Dire Fleet Captain:1673 +Inspiring Cleric:1671 +Bishop’s Soldier:1669 +Deathless Ancient:1669 +Deeproot Warrior:1669 +Tilonalli’s Knight:1669 +Deadeye Plunderers:1664 +Conqueror’s Galleon:1657 +Bright Reprisal:1654 +Shining Aerosaur:1654 +Raptor Hatchling:1653 +Wakening Sun’s Avatar:1651 +Fell Flagship:1649 +Herald of Secret Streams:1645 +Headstrong Brute:1643 +Fathom Fleet Firebrand:1641 +Colossal Dreadmaw:1637 +Vicious Conquistador:1636 +Bloodcrazed Paladin:1635 +Bellowing Aegisaur:1629 +Tishana, Voice of Thunder:1628 +Kopala, Warden of Waves:1626 +New Horizons:1624 +Deadeye Tormentor:1621 +Marauding Looter:1621 +Kumena’s Speaker:1619 +Vampire’s Zeal:1618 +Duskborne Skymarcher:1616 +Ixalli’s Diviner:1616 +Ravenous Daggertooth:1615 +Angrath’s Marauders:1613 +Perilous Voyage:1613 +Slash of Talons:1613 +Shaper Apprentice:1612 +Wildgrowth Walker:1609 +Storm Fleet Spy:1607 +Sailor of Means:1605 +Bonded Horncrest:1600 +Grazing Whiptail:1597 +Thaumatic Compass:1596 +Thrash of Raptors:1594 +Legion’s Judgment:1591 +Queen’s Commission:1590 +Deeproot Champion:1587 +Steadfast Armasaur:1581 +River Heralds’ Boon:1579 +Rigging Runner:1575 +Goring Ceratops:1572 +Skittering Heartstopper:1572 +Storm Fleet Arsonist:1571 +Dire Fleet Hoarder:1569 +Commune with Dinosaurs:1566 +Atzocan Archer:1562 +River Sneak:1562 +Skyblade of the Legion:1560 +Run Aground:1558 +Anointed Deacon:1557 +Pterodon Knight:1557 +Mark of the Vampire:1555 +Fathom Fleet Cutthroat:1552 +Prosperous Pirates:1549 +Shipwreck Looter:1546 +Arguel’s Blood Fast:1536 +Wind Strider:1535 +Legion Conquistador:1533 +Depths of Desire:1531 +Ruthless Knave:1531 +Sunbird’s Invocation:1531 +Growing Rites of Itlimoc:1525 +Lookout’s Dispersal:1525 +Lightning-Rig Crew:1517 +Sure Strike:1517 +Boneyard Parley:1515 +Dusk Legion Dreadnought:1515 +Priest of the Wakening Sun:1514 +Brazen Buccaneers:1513 +Star of Extinction:1513 +Raptor Companion:1511 +Rallying Roar:1505 +Heartless Pillage:1501 +Sleek Schooner:1500 +Fleet Swallower:1498 +Ixalli’s Keeper:1497 +Dive Down:1496 +Sheltering Light:1492 +Sun-Crowned Hunters:1483 +Cobbled Wings:1474 +Dire Fleet Interloper:1473 +Lurking Chupacabra:1465 +Storm Fleet Pyromancer:1463 +Dowsing Dagger:1456 +Shadowed Caravel:1455 +Spike-Tailed Ceratops:1455 +Kinjalli’s Caller:1454 +Deeproot Waters:1452 +Rootbound Crag:1451 +Verdant Rebirth:1451 +Storm Sculptor:1448 +Frenzied Raptor:1446 +Opt:1440 +Jungle Delver:1438 +Sword-Point Diplomacy:1438 +Nest Robber:1436 +Tilonalli’s Skinshifter:1434 +Siren’s Ruse:1433 +Crushing Canopy:1431 +Dinosaur Stampede:1429 +Overflowing Insight:1425 +Swashbuckling:1418 +Crash the Ramparts:1413 +Sunpetal Grove:1412 +Favorable Winds:1406 +Shapers’ Sanctuary:1406 +Queen’s Bay Soldier:1405 +Deadeye Quartermaster:1401 +Queen’s Agent:1397 +Dual Shot:1396 +Pirate’s Prize:1394 +March of the Drowned:1387 +Blossom Dryad:1385 +Drowned Catacomb:1383 +Tocatli Honor Guard:1373 +Dragonskull Summit:1372 +Raiders’ Wake:1371 +Spell Swindle:1368 +Sunrise Seeker:1361 +Desperate Castaways:1342 +Prying Blade:1338 +Sorcerous Spyglass:1334 +Blight Keeper:1330 +Costly Plunder:1310 +Primal Amulet:1306 +Unclaimed Territory:1306 +Fire Shrine Keeper:1301 +Imperial Lancer:1297 +Belligerent Brontodon:1296 +Emergent Growth:1293 +Wily Goblin:1293 +Cancel:1287 +Duress:1286 +Old-Growth Dryads:1282 +Navigator’s Ruin:1273 +Glacial Fortress:1262 +Trove of Temptation:1259 +Pillar of Origins:1252 +Hijack:1236 +Rile:1234 +Revel in Riches:1232 +Headwater Sentries:1225 +Grim Captain’s Call:1214 +Elaborate Firecannon:1209 +Looming Altisaur:1206 +Encampment Keeper:1199 +Slice in Twain:1198 +Spell Pierce:1186 +Makeshift Munitions:1183 +Rummaging Goblin:1182 +Axis of Mortality:1179 +Unknown Shores:1173 +Shore Keeper:1172 +Ancient Brontodon:1165 +Sanguine Sacrament:1162 +Arcane Adaptation:1151 +Ashes of the Abhorrent:1135 +Ritual of Rejuvenation:1102 +Field of Ruin:1097 +Hierophant’s Chalice:1077 +Gilded Sentinel:1035 +Blinding Fog:1033 +Demystify:1023 +Sentinel Totem:998 +Demolish:994 +Spreading Rot:935 \ No newline at end of file