Cette question ne concerne pas les jeux vidéo mais les jeux en général. Hier, je suis allé à un salon de jeu de société et je me suis demandé s'il était possible de calculer l'équité d'un jeu. Bien sûr, certains d'entre eux nécessitent une bonne part de chance, mais il est peut-être possible de calculer si un personnage est maîtrisé. Surtout dans les jeux de rôle et les jeux de cartes à collectionner. Comment, par exemple, les créateurs de "Magic: The Gathering" peuvent-ils s'assurer qu'il n'y a pas "une carte qui les bat tous", étant donné le nombre impressionnant de cartes disponibles?
40
Réponses:
Oui, c'est théoriquement possible - c'est une bonne partie de la théorie des jeux qui traite de ce sujet.
Cependant, ce n'est que rarement pratique , et même dans ce cas, la plupart du temps, uniquement pour des jeux qui n'impliquent pas de randomiseur (Echecs, Reversi, Go, etc.). L'explosion combinatoire garantit que le temps théorique nécessaire à de telles preuves pour des jeux plus complexes comme Magic the Gathering peut facilement être supérieur de plusieurs ordres de grandeur à l'âge actuel de l'univers.
En fin de compte, pour tout jeu non trivial, vous devrez probablement abandonner la notion de preuve de l' équilibre ou de l'équité d'un jeu et opter plutôt pour une combinaison de bon sens, d'instinct de concepteur, de réutilisation du système de jeu et de tests.
la source
Réponse courte: Chaque jeu avec un nombre fini, même indéfini, de coups disponibles a donc un nombre fini de jeux possibles. N'importe quel jeu avec une "complexité d'arborescence" finie peut théoriquement analyser tous les jeux possibles pour déterminer si le nombre de jeux dans lesquels chaque joueur gagnerait est égal.
En termes simples: si le joueur 1 gagne exactement la moitié de tous les jeux possibles d'un jeu, le jeu est équilibré. Si ce n'est pas vrai, le jeu est biaisé en faveur d'un joueur ou de l'autre.
Cependant, cette règle simple peut être très difficile à mettre en pratique. Go, par exemple, a une complexité d'arborescence de jeu de l'ordre de 10 ^ 170 jeux possibles, plus que le nombre d'atomes supposé exister dans l'univers connu. On pense qu'il est impossible de compiler un arbre de jeu exhaustif. Cependant, la bibliothèque de jeux joués et enregistrés est de plusieurs millions, et suggère que le jeu a un "avantage de premier mouvement" (qui est généralement atténué avec 1,5 point de "komi" attribué à White).
Contrairement à cela, même en cas de grandes complexités globales de l’arbre de jeu, tous les jeux M, N, K (un tableau de grille de largeur M, hauteur N, dans lequel l’objet est que le joueur crée un rang de pièces K en plaçant et jamais les déplacer / les supprimer) sont résolus, car il existe un raccourci; des "branches" entières de l’arbre de jeu peuvent être identifiées comme causant toujours la perte d’un joueur ou de l’autre. Les branches restantes suivent un schéma identifiable. Tic-Tac-Toe est l'exemple le plus évident. en plus de n'avoir que 300 000 parties possibles, il n'y a que 16 joueurs dans lesquels un joueur ou l'autre ne fait pas un coup qui laissera évidemment l'autre joueur l'emporter au coup suivant. Ainsi, l’arbre de jeu commence petit et devient plus petit quand on considère les jeux que les joueurs sont réellement susceptibles de faire.
Dans les jeux avec un élément de chance, la complexité de l'arborescence de jeu est augmentée au-delà du nombre de décisions disponibles pour chaque joueur. Parce que le jeu ne se joue plus avec "l'information parfaite", comme c'est le cas pour les échecs, les dames, Go, Othello, etc., il est possible pour un joueur qui a parfaitement joué compte tenu des informations connues à l'époque élément aléatoire. Ces jeux n'ont pas de "solution"; Cependant, il y a généralement encore un arbre de jeu fini et donc théoriquement, les jeux peuvent encore être analysés de manière exhaustive. Ce n'est toujours pas faisable. au lieu de cela, les jeux impliquant des probabilités sont analysés de manière probabiliste pour identifier les stratégies du "meilleur pari", et s’il est démontré que ces stratégies favorisent le joueur qui les utilise, quelle que soit la stratégie utilisée par tout autre joueur (y compris la même stratégie),
En règle générale, la règle suivante s'applique: si la conception du jeu conduit de manière inhérente à une inégalité dans un ou plusieurs des éléments suivants, le jeu a un biais:
Maintenant, la conception du jeu peut introduire une inégalité mais tenter de compenser avec une autre. Ou bien, la conception du jeu peut permettre un caractère aléatoire dans les zones susceptibles de générer un biais, ce qui signifie qu'un jeu peut être biaisé tandis qu'un autre est plus équitable (les jeux avec des tableaux de départ aléatoires peuvent le montrer). Dans ces cas, seule une analyse empirique des jeux entre joueurs de force à peu près égale sur le long terme peut démontrer un quelconque biais.
Pour plus de discussion sur les partis pris dans les jeux de société, essayez les forums de http://www.geekdo.com ; il y a eu plusieurs discussions sur les biais démontrés dans les jeux et sur la manière d'éviter ces biais dans le développement des jeux en général.
la source
Je suppose qu’il n’existe aucune formule mathématique préconçue pour évaluer la justesse d’un jeu en raison de la complexité et de la complexité de chaque jeu.
Vous ne pouvez pas vraiment comparer différents paramètres de jeu et créer une sorte de score de puissance indiquant la qualité d'un personnage (à moins que votre jeu ne soit très simple) car ils affectent tous votre jeu différemment et dépendent de la manière dont ils sont mis en œuvre (par exemple, comment pouvez-vous évaluer le rapport entre force et vitalité (comment attribuer une valeur numérique à l'attaque spéciale d'un personnage?).
Vous devez tester votre jeu. Beaucoup . Jouez votre jeu seul et faites en sorte que les autres le jouent et stockez les résultats de la bataille / du jeu dans un fichier afin de générer des statistiques et d'évaluer la fréquence à laquelle certains personnages gagnent, dans quelles circonstances, etc. ou analysez le gameplay pour voir pourquoi un tel personnage est maîtrisé et appliquez les modifications en conséquence.
Vraiment, vous n'avez pas d'autre choix que de tester. C'est l'une des raisons pour lesquelles les bêta existent (par exemple, Starcraft2 en version bêta a donné à Blizzard l'occasion d'équilibrer les 3 courses en fonction des résultats du jeu).
Pour résumer, jouez à votre jeu et faites-le jouer aux autres joueurs (commencer une version bêta est une option). Découvrez pourquoi le jeu est déséquilibré par des répliques ou des analyses automatisées et modifiez ce qui doit être modifié en conséquence. C'est la seule façon dont vous abordez l'équité.
la source
Pour pouvoir prouver qu'un jeu est équilibré ou juste, vous devez d'abord définir ce que signifie équilibré ou juste. Ce sont des termes plutôt vagues qui peuvent englober un éventail de choses, par exemple, on entend souvent par «jeu» l'équilibre:
Etc.
En général, je suis un partisan de prouver mathématiquement ce genre de chose, mais pour prouver quoi que ce soit par la logique ou par des tests, vous devez d’abord le définir clairement. Certains aspects de l'équilibre sont faciles à tester en mathématiques si vous êtes capable de comprendre correctement les règles de votre jeu. D'autres sont beaucoup plus difficiles à juger sans effectuer simplement des tests empiriques. Le problème principal est que la plupart des concepteurs de jeux ne comprennent pas vraiment les mécanismes de leur jeu, car ils finissent généralement par fusionner les règles du jeu dans une simulation, ce qui est très difficile à modéliser avec précision.
la source
Théoriquement, c'est possible, mais pour la plupart des jeux, c'est extrêmement difficile, donc cela peut être considéré comme impossible.
Une approche: convertir le jeu en forme normale. Jeu en forme normale est Ensemble de stratégies pour chaque joueur et fonction qui dit à quel point le résultat est bon quand on donne une combinaison de choix. Le facteur aléatoire peut être modélisé comme un autre joueur.
Ensuite, nous pouvons rechercher des stratégies dominantes / dominées (choses à faire TOUJOURS et choses à ne JAMAIS faire). Le jeu est au moins intéressant si il ne contient pas de stratégies dominantes.
Ensuite, nous pouvons regarder ce que chaque joueur peut se garantir. Pour chacun des choix "MY", examinez le pire résultat possible et choisissez celui qui présente le meilleur résultat.
Si cela diffère beaucoup entre les joueurs, il y a quelque chose de pourri dans le jeu.
Il y a d'autres choses à regarder (stratégie mixte dominante (choisir chaque choix avec une certaine probabilité), équilibres nash (combinaisons que tous les joueurs savent faire, sont les meilleurs localement pour tous)).
Mais la première étape est extrêmement compliquée pour la plupart des jeux, elle n’est donc généralement pas aussi utile. Mais il peut être utilisé si vous pouvez extraire des détails complexes / remplacer des stratégies par des ensembles de stratégies reconnaissables (par exemple, des ordres de construction initiaux) et aboutir à une approximation statistique des jeux réellement joués et vous en dire plus sur les problèmes rencontrés dans le jeu. Je suppose que quelque chose comme ce magicien fait avec SC.
Une autre forme de jeu est un jeu où les joueurs se relaient et savent tout ce que font les autres (échecs). Là, vous pouvez essayer de rechercher la stratégie de dominat en recherchant l’arbre d’état du jeu (et c’est habituellement ÉNORME, encore une fois, trop compliqué à utiliser). Et beaucoup de jeux sont sans connaissance totale et cela complique beaucoup les choses.
Une autre approche, regardez les choses dans le jeu et essayez de les comparer.
Une autre approche: pour le combat en équipe (en particulier avec des participants de grande taille), vous pouvez essayer d’utiliser la simulation force sur force (je ne l’ai jamais utilisée, et cela nécessite des calculs complexes (équations diférentielles) et un travail ardu pour convertir le jeu en modèle propre).
Donc, ma conclusion, beaucoup de choses peuvent être faites pour équilibrer les sous-systèmes de jeu, et lorsque le jeu est terminé (et pendant le jeu), il est possible d'analyser les résultats, mais à moins que tout soit identique, il est presque impossible de prouver que le jeu est équilibré .
PS: Vous pouvez masquer la similitude en remplaçant un attribut par plusieurs qui ensemble peuvent être utilisés pour calculer l'attribut initial, et en rendant tout beaucoup plus aléatoire, afin que les joueurs ne voient pas cette similitude (
Attention, il est facile de s'y tromper (par exemple, petites attaques rapides vs grandes attaques lentes), car 18 lancers par d6 -18 donnent des résultats de 0 à 90, 10 lancers de d10-10 donnent des résultats de 0 à 90 1 jet de d91-1 donne des résultats de 0 à 90 mais tous ont des distributions différentes.
PS2: Un homme sage a dit que l’équilibre réel n’était pas important, mais que l’équilibre était important.
la source
Il y a beaucoup de bonnes réponses pour obtenir une réponse mathématiquement correcte, mais je vais essayer un angle différent: si votre code le permet, vous pouvez simuler un très grand nombre de jeux et ensuite vérifier s'il existe une ou plusieurs stratégies qui gagner trop souvent.
Vous connaissez peut-être les simulations de Monte-Carlo ou les algorithmes génétiques. L'idée ici liée. Vous avez besoin d'une IA pour jouer au jeu et de certaines mesures clés. Vous laissez l'IA se battre dans un grand tournoi, assez souvent, avec différentes variables de départ et vous mesurez les résultats.
J'ai toujours voulu essayer une telle approche pour équilibrer classes / armes, ce serait vraiment amusant.
la source
Du point de vue de la théorie du calcul, il semblerait que répondre à cette question soit impossible en général . Il pose une question sur une propriété d'un programme et le théorème de Rice peut s'appliquer. Mon hypothèse est que ce jeu fait référence à un programme écrit dans un langage Turing Complete tel que c ++. Je suppose également que pour calculer ou prouver si un jeu est juste , il existe un programme c ++ lisant un programme c ++ (le programme du jeu) et se terminant par un laps de temps fini pour toutes les entrées possibles , avec seulement deux sorties, juste ou injuste.
Une recherche rapide montre qu’il est possible d’avoir un jeu déterministe mais indécidable, voir la diapositive 7 ici et dans le Journal international de la théorie des jeux: Quelques jeux déterminés indécidables:
"Les machines informatiques utilisant des algorithmes jouent à des jeux et apprennent même à jouer. Cependant, les propriétés inhérentes à la finitude des algorithmes imposent des limites aux capacités de jeu des machines. M. Rabin a illustré cette limitation en 1957 en construisant un jeu gagnant-perdant à deux avec des règles décidables mais pas de stratégies gagnantes calculables ".
Le cerveau humain est apparemment plus "puissant" que les ordinateurs, car nous pouvons acquérir et appliquer des connaissances antérieures et sembler parfois contredire des résultats tels que le problème Halting en trouvant des boucles infinies dans les programmes. Mais la façon dont nous procédons est mal connue et ne peut pas être écrite avec précision et sans ambiguïté dans un algorithme.
la source
Je voulais vraiment commenter la réponse de Martin Sojka, mais je n’ai pas la réputation. Il a raison de dire que la théorie des jeux inclut le calcul de l'équité d'un jeu (par exemple, la question est ouverte si dans un jeu d'échecs où les Blancs et les Noirs jouent à la perfection, qu'il s'agisse ou non d'une égalité).
Pour MtG, il se pourrait très bien qu'il soit totalement impossible de calculer si c'est juste, mais personne n'a prouvé mathématiquement que le calcul serait infaisable.
Il peut être trivialement possible de prouver que c'est juste - si c'est aléatoire qui joue en premier et que tout le monde respecte les mêmes règles, alors c'est juste. Il se peut que celui qui joue en premier gagne toujours, mais si le premier joueur est décidé équitablement, alors le jeu est juste.
la source
Que signifie "juste" est vague, laissez-moi vous expliquer:
Considérez le jeu Rock-paper-cissors (http://en.wikipedia.org/wiki/Rock-paper-scissors): selon vous, il est juste, je suppose (selon moi aussi).
Maintenant, considérons le jeu: Rock-paper-cissors-well où le puits bat le rocher et le papier et le puits perd contre le papier. Déséquilibré, non? Le puits semble assez maîtrisé: il bat deux armes et perd contre une.
Mais on pourrait dire qu’il n’est pas du tout maîtrisé: parce que si vous savez que votre adversaire est plus susceptible d’utiliser le puits parce qu’il bat deux armes, vous pouvez simplement agir en choisissant le papier plus souvent.
Il existe donc une réponse au potentiel surexploité: il suffit de choisir plus souvent le papier. Mais vous savez alors que votre adversaire peut le savoir et utiliser le papier assez souvent. Vous pensez donc que vous devriez utiliser les ciseaux plus souvent. Etc. Pas vraiment maîtrisé, juste un jeu différent avec des règles différentes.
Je recommanderais de lire sur la théorie des jeux et en particulier les jeux avec des informations imparfaites (http://en.wikipedia.org/wiki/Game_theory).
la source