Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bots improvements to make them useful (basic AI) #855

Open
tooomm opened this issue Feb 10, 2020 · 5 comments
Open

Bots improvements to make them useful (basic AI) #855

tooomm opened this issue Feb 10, 2020 · 5 comments

Comments

@tooomm
Copy link
Contributor

tooomm commented Feb 10, 2020

Some ideas from the discussion started in #798 as a starting point.

General rules without set/card knowledge as simple start, like sticking to colors at same point:

But how to get started? Pick randomly in first 3 rounds with an emphasis on rarer cards? And once a Color appears again try to stick to that with like 90% chance. Also, count how many cards of a Color you are seeing in packs = likelihood that they wheel for example?
Consider rarity, especially mostly don’t pass on-color rares for example.
Or even take creature count into account as well.
When no on-color pick available. Randomly pick?
There is a lot to think of! :/

Source: #798 (comment)


A more advanced approach which considers card ratings when available:

Thinking of ideas on how we can handle drafts better. https://aetherhub.com/Apps/LimitedRatings goes back quite a while (starting with KTK), so we could use their draft stats number to make better informed choices for the bots.

Rudimentary idea I'm having on how to make a better draft bot, since we don't have a good starting stat base. Would love to try and partner with someone to get more data.

if set exists on AetherHub:

  • First three picks of draft, take highest ranking card rank
  • After those picks, select highest ranking card that falls within the same colors as the first three

if set does not exist on AetherHub:

  • First pick the rare
  • Pick cards that fall in the same color ranges as other cards drafted

if cube draft:

  • Pick randomly at all times

Source: #798 (comment)


Please let us know what you think and share your ideas.
Which basic rules we can start with (and fall back to once no limited rating is there)?
What is a good - not overkill - pattern to start a draft and decide on later picks to make the bots better.

@HerveH44
Copy link
Contributor

For bots with AI, it may be interesting to look at a possible wrapper of this : https://github.com/madrury/mtg-draftbot

@tooomm
Copy link
Contributor Author

tooomm commented May 6, 2020

That should also allow to improve auto picks made by real players (e.g. dropped or AFK) for the benefit of all.

@tooomm
Copy link
Contributor Author

tooomm commented Feb 9, 2021

Another recent Bot AI I came across: https://github.com/RyanSaxe/MagicDraftBot

@ruler501
Copy link

I just released the CubeArtisan draftbots which are based on a machine learning model that gets 60/81/90% for top 1/2/3 accuracy on data from CubeCobra drafts. They are quite easy to integrate as you can see in this PR to mtgadraft Senryoku/Draftmancer#288
Docs on the bots themselves can be found at https://github.com/CubeArtisan/mtgdraftbots/tree/development/emscripten

If you can give me some pointers on how to get started I could probably make a PR for it in an afternoon.

@ZeldaZach
Copy link
Member

Hey @ruler501 I believe we've spoken on Discord in the past, so I'll reach out there :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants