contrepartie utilitaire des unités dans les wargames et JdF

Bonjour à tous.

Je vous prie par avance d’excuser ce titre abscons ainsi que la formulation du problème que je vais vous soumettre et qui ne le sera pas moins.


Il est relativement courant dans les wargames et jeux de figurines d’associer à chaque unité disponible un coût.

Dans le cadre d’un wargame/jeu de fig que je suis en train de développer, je souhaite que ce coût soit je reflet de la contrepartie utilitaire qu’offre une unité. De sa contrepartie utilitaire et seulement de celle-ci ! Le coût de l’unité ne doit pas être le reflet de son “coût réel dans le vrai monde” mais doit simplement être le reflet de l’utilité qu’elle offre au joueur qui la dirige.

En ce domaine, il serait loisible de dire qu’il existe une “contrepartie utilitaire nette” et une “contrepartie utilitaire brute”.

Je m’explique: dans un wargamme visant à recréer les champs de bataille au moyen âge, un archer d’élite possède assurément une grande contrepartie utilitaire: il tire loin, ses flèches acérées peuvent percer l’armure des chevaliers… C’est ce que j’appèlerai sa contrepartie utilitaire brute, directement dépendante de ses caractéristique intrinsèques: précision, portée, puissance de tir…

Pour autant, ce même archer placé maladroitement derrière une colline ne sera d’aucune utilité: dans cette configuration, sa contrepartie utilitaire a considérablement baissé. Il s’agit là de ce que l’appelle sa contrepartie utilitaire nette. Il appartient au joueur avisé de chercher à maximiser par le placement de ses unités et la stratégie adoptée la contrepartie utilitaire nette de ses unités.

Venons en à mon problème:

Reprenons l’archer d’élite dont il était question précédemment. Les spécificités de cet archer sont déterminées comme souvent grâce à un ensemble de caractéristiques chiffrées.

Ces caractéristiques sont:

-la capacité de tir (prenant en compte divers facteurs)
-la capacité à se défendre
-la capacité à se déplacer

Le système que j’élabore est plus complexe que cela, mais je simplifie par soucis de la concision.

Voyant cela, diriez vous que la valeur chiffrée de la contrepartie utilitaire brute offerte par l’archer est égale à:

capacité de tir * capacité à se défendre * capacité à se déplacer

ou

capacité de tir + capacité à se défendre + capacité à se déplacer ?


J’espère avoir été clair.

Cordialement,

LePamphletaire

je dirais que d’une part ça dépend de ton système, et que d’autre part c’est beaucoup plus subtil que ça…

pour le d’une part :
si dans ce système, l’archer peut se déplacer puis tirer, c’est déjà pas la même chose que s’il peut ne faire que l’un ou l’autre quand on le joue.

pour le d’autre part :
dans tes deux formules, toutes les caractéristiques ont le même poid, c’est pas forcément le cas dans le jeu

à mon avis, il n’existe pas de moyen de créer une formule précise permettant d’évaluer la valeur d’un profil dans un système de jeu pour wargame, c’est pour ça que l’équilibre de ces jeux est toujours une grosse difficulté pour leurs auteurs et que ça passe par de nombreux tests et des années d’errata.

Merci pour ta réponse

je dirais que d’une part ça dépend de ton système, et que d’autre part c’est beaucoup plus subtil que ça…

Le système que j’ai élaboré est également plus subtil que ce que je viens de te présenter, forcément simpliste et réducteur pour des questions de concision.
pour le d’une part :
si dans ce système, l’archer peut se déplacer puis tirer, c’est déjà pas la même chose que s’il peut ne faire que l’un ou l’autre quand on le joue.

Si toutes des unités à distances peuvent tirer ET se déplacer, cela ne change rien, non ?
pour le d’autre part :
dans tes deux formules, toutes les caractéristiques ont le même poid, c’est pas forcément le cas dans le jeu

En fait non, toutes les caractéristiques n’ont pas le même poids, mais ça tu ne pouvais pas le rêver au vu de mon exemple.

à mon avis, il n’existe pas de moyen de créer une formule précise permettant d’évaluer la valeur d’un profil dans un système de jeu pour wargame, c’est pour ça que l’équilibre de ces jeux est toujours une grosse difficulté pour leurs auteurs et que ça passe par de nombreux tests et des années d’errata.


A mon avis, une telle formule n’existe pas non plus. Néanmoins, je considère qu’il est possible de s’en rapprocher, tout comme il est possible d’affiner la valeur du nombre pi. Je considère également qu’un examen préalable des caractéristiques numériques des unités est une condition nécessaire mais insuffisante pour l’équilibrage d’un jeu.

Je reformule donc ma question de manière mon mathématique et plus abstraite:

Soit une unité de valeur A, valeur prenant en compte sa capacité à se déplacer à une distance de D.

Soit à présent une unité A améliorée, capable de se déplacer deux fois plus, c’est à dire sur une distance de 2D.

Dirais tu que l’avantage apporté à l’unité A améliorée a augmenté la valeur de l’unité A “simple” de façon linéaire, ou qu’au contraire elle a multiplié sa valeur ?

Je ne vois guère qu’une solution pour donner à chaque unité le prix “juste” (adapté à la situation, au moment…) : un système faisant intervenir les joueurs, par un système d’enchère (après, il existe moultes systèmes d’enchères possibles). Par contre, je crains que dans un wargame, ça ne rallonge exgérément le jeu (encore qu’un système d’offre et de demande simple puisse être efficace, je pense par exemple au système d’achats des matières premières dans funckenschlag).

Attention !

Il ne s’agit pas de découvrir une formule permettant de calculer le “juste prix” d’une unité en fonction de la situation, mais justement en faisant abstraction de ces situations.

Exemple: aux échecs, la contrepartie utilitaire de chaque pièce est dépendante de la configuration générale de la partie.

Néanmoins, tout le monde s’accorde à dire que la reine est plus puissante que le pion.

Ma question porte en fait sur la synergie entre différentes caractéristiques d’une même unité.

Est ce que l’augmentation de l’une de ces caractéristiques augmente la valeur de l’unité de façon équivalente, ou au contraire est ce qu’elle multiplie la contrepartie utilitaire offerte par l’unité et donc sa valeur ?

Ben teste : fais une escarmouche avec 10 unités (attaque A, mouvement B) vs 5 unités (A - 2B), recommence plusieurs fois, et vois le résultat. A mon avis, c’est les 10 qui vont gagner…

A mon avis, il faut que tu fixe les prix au jugé et que tu rééquilibre en effectuant des tests.

On est souvent confronté à ce genre de problème lors de la création d’un jeu. Nombre de cartes de telle ou telle sorte, nombre de cases… Il faut tester.

Ben teste : fais une escarmouche avec 10 unités (attaque A, mouvement B) vs 5 unités (A - 2B), recommence plusieurs fois, et vois le résultat. A mon avis, c'est les 10 qui vont gagner...

Indéniablement ! Et de tels tests ont déjà été effectués.

Mais les combats en 1 vs 1 ou entre deux groupes d'unités ne permettent que de refléter l'efficacité des unités respectives lors d'un combat. Cela ne reflète pas à mon sens totalement la contrepartie utilitaire offerte par l'unité.
Dans un wargame napoléonien, dirais tu d'un groupe de cavalerie légère, condamné à être massacré s'il engage le combat contre un carré d'infanterie, que la contrepartie utilitaire de ce groupe de cavalier est quasi nulle, alors que la vitesse de la cavalerie lui permettrait de porter la ruine chez l'ennemi, bien plus loin et rapidement que ne le ferait le carré d'infanterie ?
Et l'on en revient à ma question: Est ce que l'augmentation de l'une de ces caractéristiques augmente la valeur de l'unité de façon équivalente, ou au contraire est ce qu'elle multiplie la contrepartie utilitaire offerte par l'unité et donc sa valeur ?
A mon avis, il faut que tu fixe les prix au jugé et que tu rééquilibre en effectuant des tests.
On est souvent confronté à ce genre de problème lors de la création d'un jeu. Nombre de cartes de telle ou telle sorte, nombre de cases... Il faut tester.


Une nouvelle fois, je crois que l'ajustement empirique des coûts et caractéristiques d'unité est nécessaire, mais insuffisant. Tout comme le fait de s'en tenir à une formule purement mathématique.

Il serait utile pour toi de poser la question à un ou des auteurs de ce type de jeu. Certains comme Croc (auteur de HellDorado en autres, trainent sur le forum. Envoie lui un message privé en lui indiquant l’adresse de ce topic, il répondra peut-être. Son pseudo : Biohazard.

Quelques petites réfléxions :
je préfère toujours 2 unités de valeur (Att, Def, Dep) à une seule de valeur (2Att, Def, Dep) donc la valeur des unités est inférieure aux produit de ses valeurs.
je préfère toujours 1 unités de valeur (2Att, 2Def, 2Dep) à 2 de valeur (Att, Def, Dep) donc la valeur des unités est supérieure à la somme de ses valeurs.
je verrai bien une formule de type (A^xB^yC^z)^(1/t)
avec x, y z qui représente le poids des différentes caractéristiques et t <(x+y+z) de manière à avoir un résultat inférieur au produit des valeurs.

Bien évidement c’est plus compliqué :
Une unité avec 0 en défense ou en déplacement à quand même une utilité.
Le choix des coefficient dépent du type d’unité, du corpus de règle, du type de terrain (les abris sont-ils fréquent ou rare en moyenne)…

quelque chose du type (att*(def+1)*racine(deplacement+1)) exp (2/3) en première approximation

J’ai dit
dans tes deux formules, toutes les caractéristiques ont le même poid, c’est pas forcément le cas dans le jeu

dans A*B comme dans A+B, A et B ont la même importance…


Et quand je te parle du système, je vais te donner un exemple :
admettons que tes troupes débuttent la partie à 40 pouces les un des autres, que leur déplacement est de 10 pouces et que leur portée de tir est de 20 pouces. Mettons un archer face à un guerrier :

Système 1 : tu bouges et tu tires/tappes dans le même tour !
- les deux figurines avancent de 10 pouces, ils sont à 20 pouces, l’archer tire
- le guerrier avance de 10 pouces, l’archer recule de 10 pouces, ils sont à 20 pouces, l’acher est acculé, l’archer tire
- le guerrier avance de 10 pouces, les deux figurines sont à 10 pouces, l’archer tire
- le guerrier avance de 10 pouces, les deux figurines sont au contact, le guerrier tappe

Système 2 : tu bouges OU tu tires/tappes dans un même tour.
- les deux figurines avancent de 10 pouces, ils sont à 20 pouces
- le guerrier avance de 10 pouces, les deux figurines sont à 10 pouces, l’archer tire
- le guerrier avance de 10 pouces, les deux figurines sont au contact, le guerrier tappe

dans le second système, le déplacement ne permettant pas de fuir pendant qu’on tire, il faut choisir entre fuir et tirer, donc le déplacement est plus important dans le premier système (puisque plus utile) que dans le second.

et puis un truc tout bête :
si tu exprime ton mouvement en pouce ou en cm, c’est pas la même chose…
dans l’absolu, 2 pouces = 5 cm, mais dans une formule, selon si tu exprime la caractéristique de déplacement en pouces ou en cm, sans rien changer au jeu, ça change pourtant le cout relatif de tes unités…

archer 1 : tir 2, déplacement pouce 2 / déplacement cm 5
archer 2 : tir 2, déplacement pouce 6 / déplacement cm 15
Soit la formule cout = tir + déplacement
cout archer 1 en pouce = 2+2 = 4
cout archer 2 en pouce = 2+6 = 8
mais
cout archer 1 en cm = 2+5 = 7
cout archer 2 en cm = 2+15 = 17

si tu exprime les distance en pouce, l’archer 2 vaut 2 fois l’archer 1
mais si tu les exprime en cm, l’archer 2 vaut plus que 2 fois l’archer 1
=> juste en changeant l’unité, cette formule change les rapports de valeur entre les profils, pourtant c’est les même profils.

Donc je me répète : ça dépend du système !

Pour ce genre de trucs, une approche en ‘points’ peut aider.

Tu assigne des valeurs arbitraires en points à 1 de déplacement, 1 de combat CC, 1 de combat distance, 1 de résistance, …

Au début tu tapes à pouf, puis tu affines en testant.

Une fois que ca commence a tourner, ca devient pratique pour comparer des unités : Si tu pars du principe qu’une unité normale de base (un fantassin) a un budget de 100 pts, et que tu veux faire un archer de valeur équivalente, les points ajoutés pour augmenter son tir devront être compensés en en retirant en déplacement, résistance, …
et pour de sunités supérieures, le budget augmente.

Un exemple simpliste avec trois caractéristiques : déplacement (1 = 5 pts), combat corps à corps (1 = 5 pts) et combat à distance (1 = 5 pts).
SI tu pars du principe qu’une unité dispose de 50 Pts, ca donne
fantassin D 5 CC 5 T 0
archer D 2 CC 3 T 5
eclaireur D 8 CC 2 T 0
Brute D 4 CC 8 T 0 <= il dépasse 50 Pts

etc…

c’est pas la panacée mais ca permet quand on crée ensuite de nouvelles unités de pré-équilibrer un peu avant de tester.

je pense que les concepteurs de jeux comme heroscape utilisent ce principe en interne (mais c’est juste une hypothèse)

Avec un ami on avait adapté la liste d’armée de Aigles pour une autre simulation en attribuant à chaque carac une certaine valeur, sachant que toutes les carac n’avaient pas la même valeur (ex. Tir et CC ont la même valeur, mais moral et qualité vallent plus que CC ou CT).

Merci beaucoup pour vos réponses, qui alimentent ma réflexion.


Mon système est actuellement le suivant:

La caractéristique d’attaque est fonction de plusieurs facteurs:

-la précision: désigne la capacité d’une unité à toucher sa cible.
-la pénétration: désigne la capacité à percer l’armure de la cible.

Ainsi, un sniper est peut être très précis, mais il ne peut pas pour autant endommager un char d’assaut.

Viennent ensuite:

-la portée: désigne la distance à laquelle une unité peut tirer
-la zone: il s’agit de la zone couverte par l’attaque
-les dommages: il s’agit des dommages que l’attaque va infliger à chaque unités touchées

Enfin:

-les points d’action: désignent le nombre de fois par tour où une unité va pouvoir user de sa capacité d’attaque.

Le cout de la capacité d’attaque se calcul de la manière suivant:

((Précision + Pénétration) * (Portée * Zone * Dommages)) * Points d’action

A côté de la capacité d’attaque existe la capacité de défense:

-L’évitement: désigne la capacité de l’unité à éviter les attaques adverses
-l’armure: désigne la capacité de l’unité à se protéger des attaques adverse

Ainsi, un tank aura une valeur d’évitement très faible (il est gros, donc facile à toucher) mais une armure très forte (il a un lourd blindage).

-La résistance: désigne le nombre de points de vie de l’unité

La contrepartie utilitaire de la défense se calcule de la manière suivante:

(Évitement + Armure) * Résistance


Relevons ici qu’il est tout à fait possible d’envisager une “défense de zone” Ex: l’unité génère un champs de force et protège les unités voisines. Dans ce cas, une caractéristique de zone sera nécessaire.

Pour qu’une unité soit touchée il faut:

-que la capacité de pénétration de l’unité attaquante soit supérieur à l’armure de l’unité attaquée.
-que le jet de précision de l’unité attaquante dépasse le jet d’évitement de l’unité attaquée.

Si c’est le cas, alors l’unité attaquée perd un nombre de points de résistance égal au nombre de points de dégâts de l’unité attaquante.

Si plusieurs unités sont concernées par une attaque de zone, l’unité attaquante effectue autant de jets d’attaque qu’il y a d’unité concernées, et ces mêmes unités effectuent autant de jets d’évitement. Sauf bien sur si leur valeur d’armure les protège de l’attaque en cours.


Vient enfin la valeur de déplacement:

-la distance: il s’agit de la distance franchissable par une unité sur un terrain plat ordinaire à l’aide d’un point de déplacement
-les Points de déplacement: il s’agit du nombre de fois par tour ou une unité pourra se déplacer.

Le déplacement se calcul de la manière suivante:

Distance * Points de déplacement


La contrepartie utilitaire totale de d’unité est égale à:

Valeur d’attaque + Valeur de défense + Valeur de déplacement.


Vous en pensez quoi ?

Je vous laisse, je suis au taf et je vais me faire tuer

Cross posting:

Pour ce genre de trucs, une approche en ‘points’ peut aider.
Tu assigne des valeurs arbitraires en points à 1 de déplacement, 1 de combat CC, 1 de combat distance, 1 de résistance, …
Au début tu tapes à pouf, puis tu affines en testant.
Une fois que ca commence a tourner, ca devient pratique pour comparer des unités : Si tu pars du principe qu’une unité normale de base (un fantassin) a un budget de 100 pts, et que tu veux faire un archer de valeur équivalente, les points ajoutés pour augmenter son tir devront être compensés en en retirant en déplacement, résistance, …
et pour de sunités supérieures, le budget augmente.

C’est tout à fait ma démarche.

c’est pas la panacée mais ca permet quand on crée ensuite de nouvelles unités de pré-équilibrer un peu avant de tester.


Et c’est tout à fait l’esprit dans lequel je suis.

Mais est ce que les valeurs dans ton exemple de CC, de CD et de Dp “synergisent” la puissance de l’unité et devraient donc se multiplier entre elles, ou est ce qu’elles s’additionnent ?

J’ai bien compris qu’elles s’additionnaient dans ton exemple, mais est ce que cela reflète effectivement la contrepartie utilitaire de l’unité ?

Ah ? tu veux juste savoir si la puissance en augmentant l’ensemble des carac tend plus vers une croissance linéaire ou exponentielle en fait ?

bah c’est un peu des deux…

entre la portée et le déplacement par exemple, tu va avoir une addition
sous-cout portée/dpt = kportée + k’dpt
parceque les caractéristique sont plutôt compémentaires

mais le rapport entre le tir et la zone va plutôt être d’ordre multiplicatif
sous-cout tir/zone = k
tir * k’
(zone+1)
parceque l’augmentation de la zone multiplie l’efficacité du tir (+1 en zone, c’est la possibilité de toucher plus de cible et donc de multiplier d’autant l’efficacité du tir)
en l’occurence, ça serait même de l’ordre de ktir * k’(zone+1)²
car l’aire d’un cercle croit en fonction du carré de son rayon
et si jamais le tir correspond à un nombre de dés à lancer, alors son interet est plutôt une factoriel inverse : k*((max_tir - tir) !) * k’*(zone+1)²
car si c’est un jet de toucher, chaque dé que l’on ajoute a statistiquement moins d’interet que le précédent (basiquement, le x-ième dé ne sert que si les x-1 précédent ont foiré, ce qui est de moins en moins probable quand x augmente) à moins que le nombre de réussite influence le jet de dés qui suit dans la procédure auquel cas en contre partie, chaque dé supplémentaire augmente le maximum potention… bref c’est compliqué

mais là, tu t’embarque dans des formules extrêmement tordu, je suis pas sûr que ce soit plus rapide qu’un équilibrage par ajustement.

PS : l’évitement c’est moche, appelle plutôt ça l’esquive ;)

Merci pour cette réponse.

h ? tu veux juste savoir si la puissance en augmentant l’ensemble des carac tend plus vers une croissance linéaire ou exponentielle en fait ?

Tout à fait !
mais le rapport entre le tir et la zone va plutôt être d’ordre multiplicatif

Nous sommes d’accord, cela ne me parait pas pouvoir être contesté. Nous adoptons là le même raisonnement.
entre la portée et le déplacement par exemple, tu va avoir une addition
sous-cout portée/dpt = k*portée + k’*dpt
parceque les caractéristique sont plutôt compémentaires

C’est TRES intéressant de lier portée et déplacement ! Merci pour la suggestion, je n’y avais pas pensé et à la réflexion, c’est très vrai.
Comme la portée influe également sur l’efficacité du tir, c’est une manière de dire que le déplacement influe également sur celui-ci.

mais là, tu t’embarque dans des formules extrêmement tordu, je suis pas sûr que ce soit plus rapide qu’un équilibrage par ajustement.


Ce n’est RIEN en comparaison de ce que j’ai déjà fait pour ce système de jeu.

Et pour anticiper la question que tu ne m’as pas encore posée, oui, j’aime faire subir les derniers outrages à des diptères innocentes qui ne m’ont rien fait.


Maintenant une petite question:

-comment est ce que tu lierais la portée d’un tir à sa puissance ? Il s’agirait d’une augmentation linéaire ou exponentielle ?

-comment est ce que tu considérerais la Défense dans tout ce schilblique ?

Cordialement,

LePamphletaire

Magnifique cette discussion…
Mais il ne faut pas poussez le système trop loin…
on en perd en jouabilité.

Magnifique cette discussion...
Mais il ne faut pas poussez le système trop loin...
on en perd en jouabilité.


Pour l'instant, avec mon système, la seule chose complexe est le calcul du coût des unités, ce qui est le travail du développeur, pas du joueur

La résolution des combats est très simple et peut même encore être simplifiée
LePamphletaire dit:
-comment est ce que tu lierais la portée d'un tir à sa puissance ? Il s'agirait d'une augmentation linéaire ou exponentielle ?

La valeur d'une unité, c'est grosso modo sa probabilité de faire des morts.
La probabilité de faire des morts c'est la probabilité d'avoir une cible à portée * la probabilité de réussir à la toucher, donc plutôt exponentielle.
sauf que la probabilité d'avoir une cible à portée c'est :
*pour des petites valeurs de la portée
**=k*P² si les unités sont placés aléatoirement sur une carte
**= k*p si les unités commencent chacune à un bord de la carte et se rapproche
* dès que la portée n'est plus "petite" par rapport à la taille de ton plateau de jeu, la probabilité d'avoir une cible à portée tend assez vite vers 1 (ex à battelore, avec 4 de portée tu es presque sur d'avoir une cible à portée)
* à partir du moment ou on est presque sur d'avoir une cible à portée, une augmentation de la portée peut permettre d'atteindre une cible plus intéressante que celles déjà à portée, donc l'intérêt de la portée continue de croitre, mais moins vite
Donc pour revenir au départ, la valeur d'une unité c'est quelque chose comme :
P*puissance avec :
P proportionnel à p² (p étant la portée) pour de petite valeur de p
P se rapprochant d'une valeur limite (disons 1) de manière asymptotique quand p tend vers la diagonale du plateau de jeu
un raccordement à ajuster entre les deux branche de la courbe en fonction du mode de déploiement (ennemi tout autour ou deux front de bataille), de la taille du plateau, de la densité de remplissage de celui-ci.

LePamphletaire dit:
-comment est ce que tu considérerais la Défense dans tout ce schilblique ?

ça va dépendre du type d'objectifs :
si le but est d'être le premier à avoir tuer x unités avec x pas trop grand par rapport au nombre d'unité initial (disons < 1/4), les joueurs vont chercher à tuer les unités les plus faibles, dans ce cas la défense s'ajoute aux autres caractéristiques (il est aussi génant de perdre une unité de faible puissance qu'une unité de forte puissance), et le cout de la défense va être logarithmique avec la valeur de celle-ci (il vaut mieux augmenter la défense d'une unité faible que celle d'une unité forte).
Si le but est une éradication totale la défense va se multiplier avec la puissance (il est d'autant plus intéressant d'augmenter la défense que l'unité est puissante en attaque)
LePamphletaire dit:
Cordialement,
LePamphletaire


Moi aussi j'ai l'impression qu'on est en train de monter une usine à gaz par rapport à une évaluation intuitive des coûts suivi de tests d'ajustements, mais c'est intellectuellement intéressant comme réflexion

Ludiquement