[Mesh rebelle] Le topic des techniques qui décoiffent dans les jeux


#261

ici ou dans le topic de la science ? j’ai hésité…

… même pas 1 an.


open AI 5, five de son petit nom, vient d’écraser une équipe de joueurs semi-pros (99.95th percentile) lors d’un best-of 3 custom match :

custom match, détail des restrictions actives pour ce match
  • Pool of 18 heroes (Axe, Crystal Maiden, Death Prophet, Earthshaker, Gyrocopter, Lich, Lion, Necrophos, Queen of Pain, Razor, Riki, Shadow Fiend, Slark, Sniper, Sven, Tidehunter, Viper, or Witch Doctor)
  • No Divine Rapier, Bottle
  • No summons/illusions
  • 5 invulnerable couriers, no exploiting them by scouting or tanking
  • No Scan

résumé

  • 1er match expédié en 13 minutes : 26-4, team wipe devant la base, GG de l’équipe humaine qui n’a pas réussi à prendre une seule tour
  • 2ème match 21 minutes : 39-8, team wipe devant la base, GG de l’équipe humaine qui n’a pas réussi à prendre une seule tour
  • le 3ème match est un peu plus particulier, cette fois-ci ce n’est pas five qui draftait mais le public qui a imposé une team hétéroclite à l’IA (slark, sven, axe, rikki, queen of pain), l’équipe humaine l’emporte 49-22 en 35 minutes, une victoire en demie teinte vu le handicap (on sent que l’IA ne peut imposer son jeu de “push à 5”) et un final un peu bizarre ou five continue de pousser alors que l’équipe humaine est entrée dans sa base.

les points intéressants de l’IA :

  • le draft qui est une étape infiniment plus complexe qu’il n’y paraît à gérer. même si j’imagine que pour le coup le deep learning est particulièrement adapté pour gérer un draft (surtout vu la quantité de données disponibles) cela suppose que l’IA maîtrise maintenant suffisamment de persos et de façons de jouer pour s’offrir un roster suffisant pour drafter (ici 18 héros sur les 100 et des poussières de DOTA).
  • la vitesse de progression : en juin l’IA jouait encore des matchs miroirs à persos imposés parmi 5, pas de roshan, pas d’invisibilité, pas de warding, + une grosse liste d’items interdits…
  • corollaire : on constate quelques faiblesses (gestion des persos invisibles…) ou quelques manquements (warding, smoke gank…) dus au manque de recul depuis la levée de ces limitations mais cela ne l’empêche pas de mener une partie à sens unique.
  • la stratégie est encore un peu bourrine, il s’agit en gros de pousser très fort sur une lane à 5 avec une équipe ayant des pouvoirs de zone ou du heal, et une tendance à snowball (typiquement : tidehunter, witch doctor, necrophos, …) stratégie qui vole en éclat quand on lui impose une équipe.
  • five joue chaque jour l’équivalent de 180 années de DOTA contre lui même (vu qu’il joue les 5 héros c’est 180 x 5 = 900 années / joueurs humains, chaque jour :hypno: )
  • five tourne sur 256 GPUs et 128’000 CPU cores

et concernant les points de gameplay qui ont automatiquement émergé du modèle de five sans qu’on lui aprenne :

  • il a trouvé de lui même la stratégie de creep-blocking
  • il favorise une stratégie qui a mis 8 ans à émerger sur la méta actuelle (si on fait abstraction des évolutions du jeu) à savoir sacrifier sa safe lane en échange du contrôle de la safe lane adverse
  • il a tendance à permettre aux supports de progresser (gold / XP) en early game afin de maximiser les damages, gagner les premiers teamfights et s’appuyer dessus pour snowball. dans les parties pro humaines, le rôle de support (notamment le hard support ou “position 5”) est généralement totalement dédié à son équipe et peut finir la partie avec 10 niveaux de retard et juste une paire de botte…

Le retour du topic de la science et des choses étranges
[DOTA-LOL-HON-HOUBAHOUBA] Le topic de la mauvaise foi et des MOBAS
#262

Ça a probablement été déjà débattu quelque part à quel point l’IA “ruine” les jeux orientés stratégie / tactique / c’est-pas-l’exécution-qui-compte. Est-ce que dans le future, à chaque update de StarCivOfHeroes 6 on lancera une ferme de bot pour trouver les bonnes strat en jeux compétitif ? Où est-ce qu’on se tournera plus vers la célébration de réflexes / adaptation humaine (FPS ou baston 2d) ?


#263

Sainte mère de dieu.


#264

je ne connais pas de jeux “orientés stratégie / tactique / c’est-pas-l’exécution-qui-compte” joués en compétitifs mais oui je comprends que ça peut vite dégénérer en sortant très vite une stratégie OP, mais le joueur humain est-il capable de la reproduire même en dehors de toute considération de skill / réflexes ?

d’un coté l’IA peut tenir compte de milliers de paramètres qu’un joueur humain ne peut traiter.
d’un autre coté avec le deep learning tu ne connais pas ces paramètre et tu ne sais pas ce qui a fait gagner la machine… la machine trouve d’elle-même des tas de stratégies visible (qu’on peut reproduire) mais aussi certainement des tas de stratégies invisibles.

aujourd’hui alphaGO est le meilleur joueur de GO au monde, il a montré la voie, c’est pas pour autant que quelqu’un peut “faire du alphaGO” ni même je pense que les joueurs pro ont changé leur façon de jouer radicalement.

et même si la stratégie est décrite noir sur blanc et applicable, cela demande un bon niveau de jeu pour la jouer…
dans le genre stratégie, j’ai mis plusieurs mois avant d’arriver à jouer songhai une faction de duelyst, je voyais bien les cartes de mes adversaires, je comprenais la stratégie dans son ensemble (songhai = un max de dégat dans ta tête le plus vite possible, ça paraît pas démesuré comme stratégie) mais rien à faire, chaque fois que je jouais songhai ça foirait, ça demande vraiment une approche particulière pour s’approprier une façon de jouer.

et même avant l’IA, internet avec sa rapidité d’établissement d’une méta ne ruinait-il déjà pas ce type de jeu ?
pour avoir connu les tournois de magic pré et post-internet ce n’était plus le même jeu.

enfin le principe de la méta est que si ton jeu est suffisamment riche pour le permettre (ou si un patch sort assez rapidement :stuck_out_tongue: ) tu peux jouer une contre-meta.

ex. un deck rush > un deck contrôle > un deck combo > un deck rush etc…


#265

J’espère vraiment que ce genre de système va arriver au Japon et qu’ils vont l’utiliser pour tester/optimiser leurs jeux de combat. Ne serait-ce que parce que ça pourrait leur faire gagner des tas de thunes en debug… Après, évidemment, le facteur humain / barrière d’exécution est plus dur à gérer, surtout sur des jeux à la con genre SF4.
Il suffira de régler ce problème en ne faisant plus de jeux à la con comme SF4, d’ailleurs.


#266

(Je me suis beaucoup plus amusé sur le 4 que sur le 5)

A propos de meta et des agendas de joueurs, pour une courte parenthèse, je regardais un stream Magic hier, et à un moment, les mecs qui jouaient à deux se sont étonnés que le joueur adverse sorte une carte en particulier, qui leur semblait complètement incohérente par rapport au thème de son deck, alors que c’était une carte qui nettoyait complètement la table (en emportant ses propres créatures dans l’affaire). J’ai trouvé ça bizarre d’être aussi catégorique, comme s’il n’aurait du jouer que la version connue et optimisée du thème de son deck, et donc ne laisser aucune place aux cassures, surprises et autre tentatives d’embrouilles.


#267

La question, c’est est-ce que ça a payé ? Est-ce qu’en jouant cette carte inattendue, il a gagné… ou est-ce que les commentateurs avaient raison et c’était une connerie ?


#268

Hum, ben en l’occurrence il a perdu, mais pas à cause de cette carte, en tout cas pas directement puisque sans elle il serait mort encore plus tôt. Elle lui a permis de nettoyer la table, après ça il a eu environ 3 tours pour revenir mais ça l’a pas fait à ce moment précis. En ce qui me concerne elle m’a sauvé le cul plusieurs fois.

Mais je n’ai pas de réponse définitive, si ça se trouve cette carte (qui n’est pas pertinente pour toutes les parties) prenait le slot d’une autre carte qui lui aurait été plus utile plus tôt, c’est là que j’aurais envie de balancer une IA, il faudrait jouer cette configuration de deck des milliers de fois pour savoir.

EDIT : ils viennent de me répondre. En ce qui les concerne Magic est tellement exigeant qu’il est quasiment impossible de sortir des sentiers de la méta. Les pros sont payés pour réfléchir à ces questions, donc à partir du moment où tu joues un thème connu t’es censé avoir le meilleur plan actuel à un instant T (comme avec tous les jeux en fait). Mais surtout, pour eux, le concept de back up est déjà pris en charge par le side deck (une partie de Magic se joue en deux manches, tu peux ajouter/enlever des cartes depuis ton side entre les manches), donc cette carte était une carte morte car non prévue dans le déroulé principal du plan de jeu.

Logique, mais frustant, c’est ce qui différencie le jeu pour la gagne et le jeu pour le fun.


#269

Hum… oui, je vois l’intérêt de l’IA… mais effectivement, après, il nous faudrait une autre IA pour interpréter et comprendre les décisions de l’IA.

Dans la vidéo de Tam, j’adore que Open IA a aussi appris le trashtalk: “We estimate the probablility of winning to be above 90%”.
Prochaine étape : lui apprendre le russe.


#270

C’est complètement le futur du debug et toute l’industrie se penche dessus. C’est un nœud primordial de la déflation des coûts de développement et du meilleur contrôle des calendriers de développement.

Ce que je trouverais au minimum intéressant avec le truc mentionné par Tam, c’est si cela a permis d’émerger sur une meilleure compréhension théorique du MOBA et fait découvrir de nouvelles stratégies aux humains ? Mias à part le coup des supports, j’ai pas pigé dans le post si l’A.I. était innovante (ex. le sacrifice de la safe lane ? C’est fou-fou ?) ou simplement ultra-efficace. Je sais qu’AlphaGo a permis de repenser quelques points du Go à haut niveau en jouant des coups très peu intuitifs pour le niveau actuel des meilleurs joueurs humains.


#271

c’est probablement encore un peu tôt pour qu’on voit quelquechose de concret émerger car tout le roster n’est pas présent et la stratégie utilisée pour l’instant est assez basique et brutale.
on voit que la strat’ de sacrifice de la lane est apparue assez vite (en temps humain) chez five, alors que cette strat a mis 8 ans à émerger chez les pros ou encore que l’IA a su s’adapter assez vite (1 mois) à des changements importants (introduction de 13 nouveaux héros, nouvelles règles comme l’invisibilité…).

cela prouve que leur modèle d’apprentissage semble maintenant performant et solide ce qui devrait énormément accélérer les avancées.
en effet l’avantage de ces IA est qu’elles travaillent “toutes seules” une fois qu’un modèle performant est établi, elles progressent de manière exponentielle {{référence souhaitée comme dirait wikipedia}}.

ainsi alphaGO ZERO qui bat 100 à 0 la version d’alphaGO ayant battu lee sedol … en partant de rien et après seulement 72h à jouer contre elle-même :smiley-skynet.gif:

bref, je pense que d’ici à l’international 2019 il y ait des chances qu’on ait une team five bien craquée jouant avec les règles complètes de DOTA et là on risque de voir de chouettes trucs apparaître.


#272

Je sais plus si c’était Horizon Zero Dawn ou AssCreed Égypte qui avait été debuggé avec une IA qui explore chaque centimètre carré de la carte et trouve des bugs qu’il aurait fallu 50 testeurs à plein temps pour trouver. Probablement les deux. Je me demande si BOTW a fait pareil… J’espère vraiment que le Japon est pas à la traîne là-dessus, sinon ça va encore faire comme le début de la génération HD.

Une des questions intéressantes avec les IA qui élaborent des stratégies, c’est que je me demande à quel moment on va se retrouver dans une situation où un gros jeu e-sport sort (genre Overwatch 2, Starcraft 3, le nouveau LOL) et une équipe avec de gros sponsors engage une IA pour étudier le jeu pour donner à son équipe l’équivalent d’un ou deux ans de metagame d’avance.


#273

je suis intéressé par la source, ça fait des années en effet que je me demande pourquoi ils utilisent pas des scripts de validation des open world.
je suis même pas sur qu’une IA (au sens auto-apprenant etc…) soit nécessaire, juste un “bot” qui parcours des milliards de kilomètres dans toutes les configurations et trace tous les bugs de collision suffirait.

selon moi, ça peut jouer sur un tournoi, mais ça peut pas te donner 2 ans d’avance. les pros sont flexibles et peuvent jouer presque n’importe quel poste, ça suffit pour réagir à certaines strats.
on a vu ça lors de certains the international passés où les mecs tentent une stratégie qui fonctionne sur un match voire sur une rencontre (best of 3), grâce à l’effet de surprise principalement, mais ils se font pulvériser au match suivant.


#274

J’ai essayé de rassembler mes pauvres neurones, et je me souviens que c’était une conférence à Berlin sur le QA d’il y a un an à propos du debug de Horizon.
J’étais là, donc je sais pas si ça a été enregistré et mis en ligne… Faudra que je regarde si j’ai gardé des notes.


#275

Je ne sais pas qui l’a fait en premier mais Dead Rising 2 avait des joueurs automatiques qui parcouraient le monde au hasard pendant la nuit pour trouver les trous dans la géométrie. C’est évoqué là: https://www.gamasutra.com/view/feature/134698/the_tale_of_the_tools_that_made_.php

De même, il y avait le walkmonster pour The Witness, chargé de vérifier où le joueur pouvait aller:
http://the-witness.net/news/2012/12/mapping-the-islands-walkable-surfaces/

No Man’s Sky avait également des “sondes” automatisées qui allaient faire des gifs animés de différentes surfaces de planètes qui étaient regardés en masse par les devs (à 24:23).

Concernant l’émergence de nouvelles stratégies, c’était arrivé pour Starcraft avec le gars qui avait fait une IA simple qui ne jouait pas au jeu mais calculait des build orders optimaux pour des rushs qu’il jouait ensuite lui-même. Les résultats semblaient illogiques a priori mais une fois mis en pratique il avait massacré le ladder avec. Malheureusement je ne retrouve pas le lien pour l’instant.


#276

EDIT : semi Chev-ed !

Alors si si, ça existe depuis longtemps, pour avoir vu ce genre de bot en action, ce sont par exemples des consoles debug qui font voler un personnage à un mètre du sol, et qui testent le nav mesh et les collisions en faisant des allers-retours non stop jusqu’à que tu ais couvert le ou les secteurs voulus. Tu couples ça dans ton process de build quotidien, donc complètement automatisé et hop ! C’est assez “bête” sur le papier, de la pure force brute. Mais ça marche très bien pour des taches spécifiques qui bouffent du temps.

De manière général et comme le disait Chaz, le futur de l’industrie (ou plutôt son présent déjà fort actuel) passe par une automatisation poussée des processus de production. Que cela soit par du procédural pour la population de décors avec du photogramme et ses variantes, et tous les trucs foufous à base de deep learning pour le traitement des données dans l’animation ou la navigation des personnages. En gros retirer tout ce qui manuel et à faible valeur ajoutée, et qui demande une grosse main d’oeuvre. On le voit aussi dans les services en ligne (genre matchmaking, serveur dédié), qui suivent ce que fait Google par exemple, avec des infras clouds super poussées, du zero downtime, et une chiée d’automation pour réduire le temps passé sur les opérations manuelles, qui sont en plus source d’erreurs humaines.

Et bien évidemment tout le champ de recherche sur l’automatisation des tests qui préoccupe bcp de monde en ces temps de GaaS et d’open worlds.


#277

… tu veux dire qu’il y avait des zombies dans un jeu de zombies, c’est méta ça.


#278

Eux appelaient ça des Chucks (pour des raisons évidentes de différentiation) mais oui.

Concernant les tests de gameplay via des bots j’ai fouillé un peu dans les archives de la GDC et c’est en 2009 que beaucoup de monde s’est mis à en parler (par exemple pour Brütal Legend pour lequel ils ont commencé à utiliser ça en 2007, l’analyse est intéressante: https://www.gdcvault.com/play/1703/Robotic-Testing-to-the), mais la plus vieille conférence archivée sur le sujet semble remonter à 2003 pour The Sims Online: https://www.gdcvault.com/play/1022622/Automated-Testing-of-Massively-Multiplayer. Je n’ai pas encore écouté pour savoir si ils ont piqué l’idée ailleurs. On atteint la limite des archives mais il semble logique que le système soit apparu en premier pour des MMO vu que les mondes ouverts qui pouvaient se permettre des tests systématiques n’étaient pas encore répandus en dehors de ça.


#279

Je suis même sur que tu peux même remonter jusque dans les années 80/90, dès que des RPG offline genre Elder Scrolls avec un énorme terrain de jeu ont fait leur apparition. Ya surement un petit malin avait trouvé un moyen de se faire des tests automatisés, ou du moins pouvoir batcher des grosses séquences répétitives de temps à autre. Sans doute pas intégré de la même manière qu’une chaine de production moderne, mais avec largement de quoi s’économiser des heures de tests qui rendent fou.


#280

les vieux elder scrolls (pré morrowind) c’était pas 100% génération procédurale ?
dans ce cas tu peux (théoriquement) ne pas générer de terrain buggué :smiley:

mais justement c’est en jouant plus tard à oblivion ou skyrim que l’absence de test de collision automatisé m’a sauté aux yeux, c’est tellement facile de faire bugguer ces jeux même dans une configuration simple (un perso / un mur) que j’étais persuadé qu’ils n’avaient pas eu l’idée d’implémenter ce genre de bots de tests.

EDIT : on pourrait scinder cette discussion sur l’IA pour le JV dans un sujet à part non ?