GAGNER AUX TCG GRÂCE
À L’INFORMATIQUE
Hearthstone, Magic, et autres Yu-gi-oh! : que
peut-on résoudre avec du code
Gary « T...
Introduction
• Qui suis-je ?
• Ex consultant chez Octo Technology
• Actuellement Associate Producer chez Ubisoft
• Auteur ...
TCG ?
• Trading Cards Game
• Regroupe en vrai tous les jeux de cartes
• Hearthstone (pas de trade)
• Netrunner (distributi...
Pourquoi coder ?
• Répondre à des questions « simples »
• Combien de terrains jouer à Magic ?
• Comment tuer le plus vite ...
Pourquoi coder ?
• Les décisions de jeu commencent très tôt
• Mulligan
• Objectifs (X terrains) atteints plus facilement
•...
Exemple 1 : terrains à Magic
• Deck agressif
• Majorité de cartes à 1 et 2 manas
• Veut absolument son deuxième terrain po...
Exemple 1 : terrains à Magic
• Code :
• Création d’un objet Deck pour simuler le tas de cartes
• Un champ pour représenter...
Exemple 1 : terrains à Magic
• Résultats :
• Il nous faut au grand minimum 19 terrains. Avec nos règles, on
mulligan X% de...
Exemple 2 : le meilleur deck aggro
• Faisons un deck à Magic dont le but est de tuer le plus
efficacement possible sans ad...
Exemple 2 : le meilleur deck aggro
• Différences :
• Structure de tour
• Logique de jeu
• 5 classes de cartes
• Méthode :
...
Exemple 2 : le meilleur deck aggro
• Notre deck « parfait » contient :
• 16 créatures à 1 mana
• 11 créatures à 2 manas
• ...
Conclusion
• On peut analyser des systèmes « inhabituels » avec un
peu de code et beaucoup de suppositions
• Il faut poser...
QUESTIONS ?
@TolkiCasts
Tolkicasts.com
fb.com/tolkicasts
Prochain SlideShare
Chargement dans…5
×

Gagner aux TCG grâce à l'informatique

231 vues

Publié le

Magic, Hearthstone, Netrunner... Comment mieux comprendre les contraintes de construction de deck grâce au code ?

Présentation de Gary Mialaret aux Human Talks Novembre 2015

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
231
Sur SlideShare
0
Issues des intégrations
0
Intégrations
5
Actions
Partages
0
Téléchargements
3
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • « En 2013, j’ai eu accès à la béta d’Hearthstone, et comme toute personne censée, je me suis remis à Magic »
  • Gagner aux TCG grâce à l'informatique

    1. 1. GAGNER AUX TCG GRÂCE À L’INFORMATIQUE Hearthstone, Magic, et autres Yu-gi-oh! : que peut-on résoudre avec du code Gary « Tolki » Mialaret
    2. 2. Introduction • Qui suis-je ? • Ex consultant chez Octo Technology • Actuellement Associate Producer chez Ubisoft • Auteur pour Wizards of the Coast • Commentateur de tournois eSports et youtubeur • Magic, LoL, Starcraft 2 • Contenu régulier sur ogaming.tv de 2012 à 2014 • Blogueur débutant (tolkicasts.com)
    3. 3. TCG ? • Trading Cards Game • Regroupe en vrai tous les jeux de cartes • Hearthstone (pas de trade) • Netrunner (distribution non aléatoire des cartes) • Point commun • Structure de tour • Système de resource • Tirage aléatoire de cartes d’un deck
    4. 4. Pourquoi coder ? • Répondre à des questions « simples » • Combien de terrains jouer à Magic ? • Comment tuer le plus vite avec un deck agressif ? • Y répondre analytiquement • HYPGEOMDIST(succès attendus; nombre de tirages; nombre de succès; taille de la population) • Calcul : avoir 2+ terrains en main plus de 90% du temps • Jouer 26 terrains sur 60 cartes • Contraire à l’expérience
    5. 5. Pourquoi coder ? • Les décisions de jeu commencent très tôt • Mulligan • Objectifs (X terrains) atteints plus facilement • À Magic : chaque mulligan a une carte de moins • À Hearthstone : on peut mulligan une fois quelques cartes • Influence forte et compliquée à représenter • Modélisation informatique puis simulation ! • Inspiration : Frank Karsten sur channelfireball.com
    6. 6. Exemple 1 : terrains à Magic • Deck agressif • Majorité de cartes à 1 et 2 manas • Veut absolument son deuxième terrain pour le « tempo » • Question : combien de terrains jouer au minimum ? • Règle de Mulligan • Mulligan toutes les mains avec 0, 1, 5, 6, 7 terrains si on a 7 cartes, 0, 5, 6 sinon
    7. 7. Exemple 1 : terrains à Magic • Code : • Création d’un objet Deck pour simuler le tas de cartes • Un champ pour représenter les types de cartes (dans notre cas, on a terrain et non-terrain : 2 types) • Création d’un objet Hand pour simuler la main du joueur • Défini en abstract la fonction Boolean mulliganCheck() qui dépend de notre problème • Simulation de 100.000 mains pour chaque quantité de terrains (de 10 à 30) • Combien de mains correspondent à notre contrainte (2 terrains) ? • À partir de quelle quantité a-t-on 90% de chance de réussite ?
    8. 8. Exemple 1 : terrains à Magic • Résultats : • Il nous faut au grand minimum 19 terrains. Avec nos règles, on mulligan X% des mains • Si l’on change notre contrainte à 3 terrains (avec des règles adaptées), on se retrouve à « devoir » en jouer 29 ! • Définition des besoins = cruciale
    9. 9. Exemple 2 : le meilleur deck aggro • Faisons un deck à Magic dont le but est de tuer le plus efficacement possible sans adversaire (goldfish)
    10. 10. Exemple 2 : le meilleur deck aggro • Différences : • Structure de tour • Logique de jeu • 5 classes de cartes • Méthode : • Jouer 100.000 parties avec chaque configuration possible • Regarder à quel tour moyen l’on gagne • Affinement en étudiant notre premier résultat et ses variations
    11. 11. Exemple 2 : le meilleur deck aggro • Notre deck « parfait » contient : • 16 créatures à 1 mana • 11 créatures à 2 manas • 13 sorts de dégâts directs • 20 terrains • cohérent avec notre première simulation ! • Article complet : • http://www.channelfireball.com/articles/frank-analysis-finding-the- optimal-aggro-deck-via-computer-simulation/ • S’en sert pour en retirer une règle de mulligan • Regarde le kill moyen de la main (grâce à l’expérience) • S’il est plus lent qu’une main avec X-1 cartes : mulligan
    12. 12. Conclusion • On peut analyser des systèmes « inhabituels » avec un peu de code et beaucoup de suppositions • Il faut poser les bonnes questions, et comprendre ce que signifie les réponses • La vérité est ailleurs • Guidelines != règles • On peut aller beaucoup plus loin ! • Algorithmes évolutionnistes pour Starcraft 2 et les bases de mana à Magic • Là où l’énumération n’est pas envisageable • Implémenter les algos avec des vraies cartes et règles de jeu
    13. 13. QUESTIONS ? @TolkiCasts Tolkicasts.com fb.com/tolkicasts

    ×