Le jour pourrait bientôt venir où l'IA ajustera finement la difficulté en fonction des compétences du joueur, et même créera des étapes. Tenue le 22 août 2024 lors de la deuxième journée de la conférence des développeurs "CEDEC 2024" ``Méthodes d'analyse de la "compétence" du joueur et de la "difficulté" du jeu et de génération automatique de niveaux Dans "Applications" , les résultats de la recherche. de la division IA et développement de moteurs de Square Enix ont été révélés.
weight « Méthodes d'analyse des compétences des joueurs et de la difficulté du jeu et application à la génération automatique de niveaux » Intervenant
- Aseong Song (programmeur de la division IA et développement de moteurs de Square Enix)
- Ken Shirodokoro (programmeur IA de la division IA et développement de moteurs de Square Enix)
Photo de gauche : M. Song A-seong, M. Ken Shirodokoro
|
L'IA analyse les compétences du joueur et crée une difficulté agréable
Pour jouer au jeu, les joueurs doivent posséder diverses capacités, telles que la capacité de lancer des attaques et d'éviter les attaques. M. Song souligne que même si chaque joueur possède des points forts et des points faibles, les paramètres de difficulté actuels du jeu sont uniformes et ne sont pas adaptés à chaque joueur individuel.
Dans une telle situation, si vous changez le niveau de difficulté, tous les éléments monteront ou descendront uniformément, ce qui pourrait entraîner des écarts. Par exemple, si une personne mauvaise en esquive mais bonne en attaque diminue la difficulté et que l'esquive devient plus facile, cela deviendra trop facile car elle possède déjà de grandes compétences en attaque.
Par conséquent, M. Song a pensé : « Si nous pouvions ajuster de manière dynamique le niveau de difficulté de chaque domaine, nous pourrions offrir une expérience qui correspond aux forces et aux faiblesses de chaque joueur. » Pour ce faire, il est nécessaire de disposer d'un système qui classe à l'avance les capacités des joueurs et permet ensuite à l'IA de porter des jugements et des analyses.
|
|
C'est ainsi qu'a été créé le mécanisme « Ability Analysis » utilisant le « Ability Graph ». Le "Game Master AI" surveille non seulement le jeu et juge les capacités, mais l'analyse également et interfère avec le développement du jeu, vérifiant les compétences du joueur et fournissant une assistance ou augmentant le nombre d'ennemis.
Un exemple a été donné où cela a été appliqué à une démo de technologie de tir à défilement vertical (les joueurs marchent sur le terrain et reçoivent des interférences du terrain lorsqu'ils se déplacent. Le terrain peut être détruit et des objets apparaissent à l'intérieur).
Le graphique de capacités a une structure graphique dans laquelle des « nœuds de capacités » sont reliés par des « bords (flèches) ». Les nœuds de capacités indiquent les capacités que vous souhaitez analyser, telles que « Basique (capacité à effectuer des tâches de base telles que le mouvement et les attaques) » et « Action (capacité à atteindre des objectifs en utilisant pleinement plusieurs capacités de base, telles que vaincre ennemis et ramasser des objets))" et "Tactiques (capacités qui représentent des stratégies de jeu, telles que la réduction des menaces, la prévention des dégâts et l'augmentation du statut)."
Chaque nœud de capacité a un « Taux de maîtrise (ci-après dénommé MR) » qui indique le niveau de compétence du joueur, et un « Taux de défi (ci-après dénommé CR) » qui est la capacité demandée par le jeu. Le lien a une valeur de poids (pertinence) définie, et plus la valeur est élevée, plus elle est importante.
Lorsque vous jouez réellement au jeu, l'IA du maître du jeu vérifie les compétences du joueur dans chaque élément de nœud de capacité en fonction du graphique de capacité. Les caractéristiques des capacités sont jugées à l'aide d'un graphique comportant deux axes : bon←→faible et difficile←→facile. Un MR élevé signifie bon (faible signifie mauvais), et élevé, la différence entre CR et MR signifie difficile (faible signifie mauvais). ).
|
|
Voyant cela, l’IA du game master intervient dans le développement du jeu. Si vous êtes bon dans quelque chose mais que vous trouvez cela difficile, demandez à un PNJ amical de vous aider, et si vous êtes faible dans quelque chose mais trouvez la tâche en elle-même facile, vous pouvez afficher des conseils pour vous aider à vous améliorer, en donnant un suivi détaillé. Cela peut également s'appliquer à la production, et si vous rencontrez des difficultés, vous pouvez créer une atmosphère inquiétante en rendant le fond en lambeaux et en faisant pleuvoir.
Si le joueur traverse une période difficile, vous pouvez l'aider, ou si le niveau de difficulté n'est pas suffisant, vous pouvez augmenter le nombre d'ennemis et d'obstacles. Exprimez une « difficulté confortable » que le joueur trouvera enrichissante. a dit que cela serait possible.
Lorsque le joueur avait du mal à détruire le terrain, un allié sur le côté droit de l'écran a lancé des éclairs et a brisé les rochers
|
|
Dans cette méthode des nœuds de capacité, le calcul du MR et du CR utilisé pour l'évaluation est important, c'est pourquoi diverses idées ont été conçues. Certains nœuds de capacité peuvent être directement évalués et d’autres non. Par exemple, dans le cas de « vaincre un ennemi », le MR peut être calculé à partir du nombre d'ennemis vaincus et du nombre non vaincu, et le CR peut être calculé à partir du type et du nombre d'ennemis disposés dans un niveau.
Cependant, étant donné que les capacités tactiques sont abstraites, comme « augmenter le statut » ou « terminer une étape avec succès », elles sont estimées à l'aide des poids du MR et du CR de la capacité parentale sur le graphique. Cette idée elle-même peut être utilisée quel que soit le genre ou le format de carte, comme le FPS, le RPG au tour par tour, le FPS, etc.
En ce qui concerne l'avenir, M. Song a déclaré qu'il aimerait pouvoir estimer les raisons pour lesquelles une pièce s'est bien ou mal déroulée, et présenter un contenu qui aide les gens à mettre en pratique les capacités à l'origine du problème.
Utiliser l'IA pour générer automatiquement des étapes qui correspondent aux compétences du joueur
Dans la seconde moitié de la conférence, M. Shirodokoro a parlé d'un exemple d'utilisation de nœuds de capacité et de CR pour générer automatiquement des niveaux, une initiative dans laquelle l'IA crée des étapes en fonction des compétences du joueur .
Lors de l'utilisation de la génération de contenu procédural (ci-après dénommée PCG) pour la génération de niveaux, dans cet exemple, un algorithme PCG correspondant à chaque CR est requis, mais si les spécifications CR changent, l'algorithme ne peut pas être utilisé, et plusieurs Un algorithme qui prend CR en considération présente l’inconvénient de devenir trop complexe.
Afin de résoudre ce problème, la Procedural Content Generation via Reinforcement Learning (génération de niveaux utilisant l'apprentissage par renforcement, ci-après dénommée PCGRL) a été utilisée. Il est possible de générer des niveaux basés sur des récompenses fixées par les humains, et dans ce cas, si vous utilisez CR comme récompense, l'IA apprendra à créer des niveaux.
L'apprentissage par renforcement est un agent qui apprend la meilleure stratégie basée sur les récompenses, en recherchant des moyens d'obtenir plus de récompenses. Dans PCGRL, les agents reçoivent des récompenses lorsqu'ils placent des obstacles dans le niveau qu'ils modifient, ils apprennent donc à viser des récompenses plus élevées (des placements qui correspondent à l'intention de la conception de la scène).
Même en ce qui concerne PCGRL, il existe différentes méthodes, chacune avec ses propres limites. Par exemple, lorsque vous utilisez PCGRL pour générer automatiquement un jeu de puzzle dans lequel vous poussez une caisse dans un but (probablement le soi-disant "Sokoban"), vous pouvez créer un niveau avec un certain degré de difficulté en ajustant les récompenses. possible de créer des niveaux en fonction de paramètres tels que le contrôle du nombre.
Autrement dit, il est impossible de générer des niveaux selon le CR cible. Le PCGRL contrôlable résout ce problème. Dans l'exemple que j'ai donné plus tôt, PCGRL peut contrôler des aspects tels que le nombre de caisses, d'objectifs et le nombre d'étapes le plus court, mais il ne peut pas générer les niveaux d'un jeu complexe comme le jeu de tir que je souhaite créer cette fois-ci.
PCGRL multicouche génère automatiquement des niveaux de jeu complexes en combinant des « couches de niveau » telles que les ennemis et le terrain, des « couches d'informations » avec des informations telles que le CR, les modules de génération de terrain, les modules de placement d'ennemis, etc. Le module de génération de terrain crée le terrain, le module de placement d'ennemis place les ennemis en fonction de cela et le module de placement d'objets place les objets pour terminer le niveau.
La conférence a également expliqué comment le PCGRL multicouche génère automatiquement des niveaux concernant la capacité à détruire le terrain. PCGRL multicouche génère automatiquement un écran à la fois. L'objectif dans ce cas est un « CR moyen de 20 lignes », qui est la moyenne du CR de 20 lignes x 16 colonnes pour un écran. PCGRL multicouche répète les essais et les erreurs de sorte que le CR moyen du niveau généré soit une moyenne de 20 lignes CR. En d’autres termes, la politique du niveau que vous souhaitez générer est une moyenne de 20 lignes CR, et plus elle correspond, plus la récompense est élevée.
Dans cet exemple, nous effectuons un test dans lequel nous apprenons 20 millions d'étapes en 4 jours environ, spécifions des CR aléatoires et créons 100 niveaux (dans ce cas, 100 écrans de cartes). Il faut en moyenne 0,62 seconde pour générer normalement, 0,46 seconde pour générer des routes et autres terrains pour guider le joueur, et 0,74 seconde pour ajouter des obstacles, qui sont tous rapides, et tous les niveaux générés prennent en moyenne 20 lignes. a déclaré qu'il répondait aux critères du CR.
Lorsque vous placez des ennemis et des objets sur un terrain plat avec un CR moyen de 20 lignes, les ennemis peuvent être placés en 0,32 seconde en moyenne et les objets en 0,48 seconde, et 100 % ont un CR moyen de 20 lignes. En demandant à PCGRL de modifier les niveaux existants, il est également possible de créer quelque chose de facile au début mais difficile dans la seconde moitié. Ils ont également effectué un test où PCGRL génère des niveaux en temps réel pendant le jeu, et apparemment de bons résultats ont été obtenus.
Enfin, M. Song a parlé des méthodes d'analyse des capacités, telles que la génération dynamique de contenu et de quêtes, le fait que l'IA complète les cartes que le joueur a commencé à créer et la création de nouveaux jeux solo mais rappelant le multijoueur, tels que joueur contre maître du jeu AI Il a conclu sa conférence en parlant des perspectives d'avenir et en pensant que cela pourrait être appliqué au sexe.
L'ajustement automatique de la difficulté à l'aide de l'IA est un rêve des développeurs de jeux, un effort continu depuis longtemps. On peut dire que la recherche moderne sur l’IA et la puissance des machines ont rendu ce rêve plus réaliste et plus ambitieux. En tant que joueur, vous pouvez profiter d'un jeu qui correspond à votre niveau de compétence, et la génération automatique de niveaux rendra le développement plus varié, c'est donc un souhait qui se réalise. Il y a eu une tendance récente à créer des environnements faciles à jouer pour un large éventail de personnes, et il semble y avoir un fort besoin d'ajustement automatique de la difficulté et de génération automatique de niveaux, et cette conférence m'a donné une forte idée de leur potentiel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!