mardi 5 février 2008

De ces ennemis qu'on voit ou qu'on ne voit pas...


Qui dit RPG dit histoire, mais également système de combat, mais également assaut. Nous reviendrons la prochaine fois sur les systèmes de combat (c'est-à-dire la façon dont le joueur gère son système attaque/défense) et nous concentrerons aujourd'hui sur les systèmes d'assauts (la façon dont le combat est déclenché, par le joueur ou un adversaire).

On peut schématiser les systèmes d'assauts en 2 grandes catégories, elles-mêmes subdivisées : le système où les ennemis sont visibles et celui où les ennemis ne le sont pas. Nous irons d'abord au plus simple avec le sytème des ennemis dits "invisibles" et donc a priori inévitables : c'est le système qui régit depuis les premiers temps les Final Fantasy et les Dragon Quest. Et Xenogears, et tout un tas d'autres RPGs "à la japonaise". Visiblement, les Japonais ça ne les dérange pas et, pour être tout à fait honnête, moi non plus.
Le principe est simple : le personnage principal se balade sur un écran vide d'autres personnages et tout d'un coup une animation le surprend en pleine balade pour lui faire comprendre qu'il est attaqué. Le combat s'engage.

Penchons-nous maintenant sur la deuxième grande catégorie, celle du système où les ennemis sont visibles à l'écran et donc a priori évitables : c'est cette catégorie qui plaît le plus aux Américains, eux qui ont été épargnés par les premiers RPGs japonais pour être éduqués aux RPGs à base de Chrono Trigger et de Secret of Mana. En voilà une bonne blague ! En effet, Chrono Trigger reste pour les Américains la référence du RPG où les ennemis sont visibles, donc évitables, donc comme étant le système le plus pratique. Sauf que les gens qui ont joué à CT savent bien que la plupart des ennemis n'étaient pas évitables, même s'ils étaient visibles, puisque c'est le passage à un endroit donné de l'écran qui déclenchait l'attaque et non pas le contact avec les ennemis en question. Le seul avantage du système que l'on peut concéder c'est que, sachant quel ennemi on allait affronter, on pouvait se préparer en conséquences.
Le véritable système d'ennemis visibles et évitables vient plus tard avec Chrono Cross et là je dis : "OK, on peut esquiver l'ennemi et ne pas enclencher le combat". Pareil pour Xenosaga ou Grandia.

D'autres systèmes de cette catégorie viennent à l'esprit : celui de Tales of Symphonia où l'ennemi est symbolisé par un ectoplasme, évitable jusqu'à un certain degré (si on esquive trop de combats un ennemi fonce directement sur le personnage principal forçant ainsi l'affrontement), permettant de localiser l'ennemi sur la carte mais sans pouvoir l'identifier.
Je pense également au système de Persona 3, où les ennemis sont représentés par des blobs noirs petits ou gros selon leur puissance, complètement esquivables, non identifiables, avec lesquel le combat peut être à l'initiative du joueur s'il frappe le premier (en utilisant un arc plutôt qu'une épée, par exemple). Dans ce même système, si le personnage principal devient plus puissant que les ennemis du niveau qu'il parcourt, ceux-ci le fuient, le déclenchement du combat devenant alors difficile.

Il nous appartient dès lors de définir un système de réalité, système idéal et hybride : de même qu'un boss est souvent visible dans les Final Fantasy, signifiant par là-même que le combat est inévitable, on peut imaginer un système proche de l'écosystème réel où certains monstres seraient invisibles tandis que certains autres ne le seraient pas. D'abord en fonction de leur taille : je veux bien tomber dans une embuscade tendue par 6 lapins-garou dont la taille justifie qu'ils m'attaquent par surprise, mais 3 tyrannosaures que je n'aurais pas vu venir sur une plaine, j'ai du mal à y croire...
Ensuite par le mode de prédation : certains animaux se cachent pour attaquer par surprise, d'autres non. On peut donc avoir une forêt où un ours se balade à l'écran, des guêpes volent (ouais, vous avez remarqué, les guêpes se cachent rarement pour attaquer), mais où d'autres animaux (insectes, oiseaux, reptiles, etc.) n'apparaissent pas à l'écran et donnent lieu à des attaques surprises.
Ce système hybride a été utilisé assez intelligemment dans Dragon Quest VIII : les ennemis "normaux" sont invisibles à l'écran tandis que certains ennemis collectionnables se baladent normalement et sont évitables.

Là où FFXII se montre cohérent, c'est que les ennemis évoluent dans leur milieu naturel (sauf Denver, évidemment) et c'est le joueur qui vient perturber leur équilibre, d'où l'assaut (ou pas, dans le cas d'une esquive ou d'une fuite). Les ennemis n'ont donc pas besoin de se cacher, certains attaquant tout de même par surprise (les squelettes qui se matérialisent juste sous les pieds du joueur ou les poissons géants qui se jettent à la gueule du joueur si ce dernier a le malheur de marcher trop près de l'eau). Bien vu.

Au point de vue de la programmation, il nous faut envisager plusieurs possibilités :
1- dans le cas d'attaques surprises, elles peuvent être déclenchées par un nombre de pas (tous les x pas=combat), un endroit de la carte, un timer (toutes les x secondes, combat), un timer aléatoire (toutes les x secondes on lance un dé à x face et si les faces a, b, d, e, g etc. sortent on a un combat).
2- dans le cas d'attaques sur ennemis visibles, il faut programmer l'AI : est-ce que l'ennemi est en chasse, offensif, passif, quel est son champ visuel et les variables afférentes, etc. ? Evidemment c'est plus chiant à programmer, mais c'est plus réel.

3 commentaires:

Anonyme a dit…

Pour les attaques surprises, tu peux aussi définir une variable de "probabilité d'attaque" globale en fonction de la dalle de terrain parcouru (si tu es dans un système de tiles). Cette probabilité peut augmenter en fonction de la distance parcouruie par exemple.

Sonocle Ujedex a dit…

L'un des systèmes visibles le plus sympa pour moi, c'est celui de Paper Mario 2. Parce que tu vois des ennemis à l'écran lors de la phase d'exploration, et selon la race quel il appartient (genre un goomba), tu sais qu'en le touchant, tu auras affaire à des monstres de la même catégorie/puissance/race que lui (genre 2 goomba normax et un ailé, ou un goomba à casque-pointe, un normal un koopa de base).

En plus, comme tu peux esquiver les ennemis, mais aussi avoir l'initiative soit en leur sautant dessus, soit en donnant un coup de marteau. Et là, c'est pierre-feuille-ciseau. Parce que quand tu prend l'initiative, rien ne garantit que tu ne tomberas pas sur un goomba à casque-pointe lors de l'engament du combat, ou sur un goomba ailé alors que tu as le marteau. Et comme la phase d'initiative s'enclenche directement dès que le combat commence, tu assume ce qui arrive après.

Rajoute à ça que tu peux caser un combo dès la prise d'initiative en respectant un certains timing, fondamental dans le système de combat du jeu, et tu as un jeu parfaitement équilibré avec un ou deux petits trucs abusables, mis en valeur par la gestion maline des ennemis sur le terrains.

J'aurais jamais dut revendre ce jeu et laisser ma sœur partir avec la gamecube. T_T

Sonocle Ujedex a dit…

autre détail qui tue: les ennemis sur l'aire d'exploration de Paper Mario 2,héritage du jeu de plateforme oblige, ont chacun leur propre comportement et façon de bouger. Comme quand tu avais les goombas qui avançait toujours tout droit, ou les tortues ailé qui traçait des arcs de cercles sen sautant. Rajoute au fait que ton perso ne se déplace que selon les 4 points cardinaux, mais qu'il peut aussi gérer la hauteur, en sautant et faisant d'autre mouvemnts de jeu de plate-forme (Mario oblige) et tu avais une nouvelle façon fraiche et agréable d'aborder l'aire de jeu, l'explorer et d'anticiper les combats.

 
Creative Commons License
Cette création est mise à disposition sous un contrat Creative Commons