Bonsoir à toutes et à tous !
Cela faisait un petit moment que je n'avais pas reparlé d'IA et je tiens
donc à réparer cet affront au Dieu NavMeshi Pathfindou en vous proposant ce
soir une humble analyse d'IA, cette fois-ci portée sur le jeu de Valve :
Left 4 Dead.
Non, non, je vous bien ce que vous vous dites : « aha...choisir
d'analyser une IA dans un jeu de .... zombies ?!? » Et cette question
est au combien légitime car en effet, à première vue, créer une IA de
mort-vivant n'a pas l'air bien sorcier n'est-ce pas ?
Et bien c'est là que je vais vous surprendre ! Non pas dans un numéro
de claquettes incroyable (quoique...) mais plutôt en essayant de vous montrer ce
que les personnes de chez Valve ont réussi à faire avec brio dans ce FPS
désormais référence pour de nombreux joueurs.
NB: Pour ceux n'ayant pas joué au jeu, sachez juste que L4D est un jeu de coop à
4 dans lequel les joueurs affrontent des hordes de morts-vivants. Leur
« simple » but est de survivre.
5 archétypes bien tranchés
Bon, souvenez-vous, dans mon post sur l'analyse d'IA d'Uncharted 2 je
parlais d'une chose primordiale à la construction de toute bonne Intelligence
Artificielle dans un jeu : la lisibilité. Mais si, vous savez, cette même
lisibilité qui vous permet de reconnaître un ennemi au premier coup d'œil, de
savoir quel sera son comportement, comment l'affronter, etc...
Rien n'est pire pour un joueur qu'un jeu où absolument tous les ennemis se
ressembleront et nécessiterons les mêmes techniques de gameplay pour en venir à
bout.
Et il faut dire que quand on pense à « zombie » on pense à une
horde de décérébrés absolument identiques fonçant sur le joueur...
En effet, je vous entends d'ici : « la majorité de L4D, c'est
exactement cela ! ». C'est vrai, mais L4D ne serait pas le jeu qu'il est s'il
n'y avait pas des archétypes d'ennemis bien précis tels que le Smoker, le
Hunter, la Witch,
le Boomer et le Tank... (d'ailleurs si vous le voulez bien, nous allons mettre de
côté les zombies de base dans ce jeu, ceux-ci étant uniquement la piétaille et donc n'étant pas les plus intéressants)
Ces 5 archétypes d'ennemis ont chacun
un comportement bien précis et ont été diaboliquement pensés pour impacter le
jeu d'une manière assez camouflée, qu'il n'est pas forcément évident de détecter au premier coup d'œil et qui
pourtant apporte ce « petit plus » à chaque partie de L4D.
Par exemple : le Smoker
Pour le joueur, cet archétype est un ennemi qui attrape un joueur « au
lasso » et l'attire jusqu'à lui pour le finir au corps à corps. Le but
pour ses compagnons étant de tuer le Smoker avant qu'il n'attire complètement
sa proie à lui.
Oui ça c'est la vision qu'en a le joueur lambda...
Mais la véritable intention de Valve en créant cet ennemi ne fut pas celle-là. Elle fut de créer un
archétype permettant de « casser » le groupe de joueurs.
Pourquoi ?
Et bien tout simplement pour ajouter du piquant à chaque partie. Il en va de
même pour les autres archetypes :
- le Tank encourage / force les joueurs à agir
ensemble pour le neutraliser,
- le Hunter va neutraliser et mettre au sol un
joueur encourageant l'entraide,
- la Witch va à la fois forcer la coopération des joueurs afin de
ne pas la réveiller et tuer un des joueurs si c'est le cas,
- le Boomer explosera près des joueurs en
les aveuglant pendant un moment, les encourageant à se séparer brièvement
Séparation, rassemblement, coopération, adaptation, les joueurs sont d'un
coup bien sollicités pour un « simple » jeu de zombies vous ne
trouvez pas ?
Je pense que maintenant vous commencez à voir où je voulais en venir en
parlant d'archétypes aux comportements distincts et complémentaires.
L'intention de Valve grâce à ces IA était de créer un véritable jeu de
coopération et non pas un jeu « où l'on joue à 4 ensemble contre les
méchants ». Et dans ce domaine, ils ont parfaitement réussi. Essayez de
jouer à ce jeu sans vous concerter avec vos compagnons, essayez de partir tout
seul en avant dans le niveau sans attendre personne...Combien de temps
survivrez-vous ? Et pourtant le jeu n'a pas l'air « mal
équilibré » ou « injuste » envers le joueur n'est-ce pas ?
Cela est dû au véritable joyau d'IA de L4D : ce ne sont pas les
zombies, ce ne sont même pas les archétypes dont je parlais, c'est quelque chose qui
est invisible à l'œil des joueurs et qui pourtant rend chaque partie différente
de la précédente. Je veux parler de...
L'AI Director
Voilà, voilà...Un bien beau nom n'est-ce pas ? Mais alors késako ?
L'AI Director est le véritable cerveau du jeu : son rôle est de
contrôler et d'alimenter le niveau en cours avec des vagues d'ennemis tout en s'adaptant à la
façon de jouer des joueurs.
On dirait un peu le Saint-Graal dit comme ça, non ? Une entité
invisible dans le jeu mais qui vous permet d'avoir une rejouabilité immense
dans des niveaux que vous avez pourtant parcourus 10.000 fois avec vos amis et
qui en plus s'adapte à ce que vous faites ! Bref une sorte d'IA
personnalisée quoi.
Alors comment ça marche ?
L'AI Director va en fait collecter des données sur la façon de jouer des
joueurs : leur nombre de munitions actuel, le niveau de santé des joueurs,
le nombre de survivants restants, est-ce que les joueurs restent en groupe ou
non ? Est-ce que depuis le début de la partie ils ont tout massacrés ou
sont en train de se faire entuber ? (oui je reste poli même à cette
heure-ci)...
En fonction de toutes ces données (et d'autres encore), cet AI Director va envoyer de nouvelles
vagues d'ennemis composées d'un savant mélange des archétypes existants
afin de pimenter un peu plus le périple des joueurs.
Par exemple, si je me mets à la place de l'AI Director et que je prends le
cas d'une équipe de r0xx0rs incroyables (qui répondrait au doux nom des « 3ls4ss0rs »...au
hasard) qui a tout déchiré depuis le début de la map, qui reste super soudée et
qui n'a pas perdu un poil de santé, je vais leur envoyer lors de la prochaine
vague, par exemple, un smoker et un hunter : deux archétypes qui les mettront en
difficulté, notamment au niveau de la cohésion de leur groupe en les forçant à
être séparés (en plus des 120.000 zombies de base qui fonceront sur eux, évidemment).
A l'inverse, si un groupe joue très mal je pourrais ajuster les vagues
suivantes pour qu'elles soient plus « gentilles » et ne frustrent pas
trop les joueurs. Bien évidemment tout cela prend également en compte le niveau
de difficulté dans lequel ils jouent (donc on va faire beaucoup moins de
cadeaux à ceux qui jouent en mode « Hardcore » par exemple).
Malin comme système, non ?
En plus de cela, cet AI Director va non seulement décider de la composition
des vagues d'ennemis mais également d'où est-ce qu'ils apparaitront dans le
niveau. Pour cela, le « cerveau » de cette IA va analyser d'autres
données supplémentaires telles que : où se trouvent les joueurs
actuellement dans le niveau ? Vers quelle zone ils se dirigent ? Dans
quelle direction ils regardent ?...Afin de faire arriver les zombies dans
l'aire de jeu de la manière la plus adaptée.
En conclusion
Bref, vous l'aurez compris, en tant que Designer, je ne peux qu'admirer ce
travail. La véritable prouesse de l'IA dans ce jeu ne se trouve pas au niveau des ennemis eux-mêmes (qui sont des archétypes intéressants mais qui ne réinventent pas la roue) mais dans la façon de les gérer, dans cet AI Director (qui porte si bien son nom).
Ce n'est pas parfait bien évidemment, le système a ses limites, mais
je pense que c'est une façon extrêmement intelligente d'apporter de la
rejouabilité dans un jeu et d'encourager la coopération des joueurs de manière convaincante
et non contraignante.
Voilà, j'espère que cette brève explication sur certaines des
fonctionnalités de l'IA de ce jeu vous aura plu et surtout que désormais,
lorsque vous y jouerez, vous l'observerez sous un angle nouveau et
apercevrez cet AI Director qui tire les ficelles de ce monde mort-vivant ;).
Sur ces belles paroles, je vous laisse car...je n'arrive plus à écrire à cause
de ce mec...qui m'a mordu dans la rue précédemment...Je me sens...Bizarre...J'ai très
faim tout à coup...je...faim...Beuuuuaaaarrrrrr
David Grivel
PS : oui j'imite très bien le zombie, je donne d'ailleurs des leçons le
mardi de 8 à 16h et le vendredi, un mois sur trois. Paiements acceptés : carte, chèque, Louis d'Or et Gils.