Harmonist: Dayoriah Clan Infiltration, un jeu rogue‐like d’infiltration
-
Harmonist: Dayoriah Clan Infiltration est un jeu libre (code sous ISC, CC By pour le reste) rogue‐like pause‐café d’infiltration. Le personnage, Syu, un petit singe gawalt, doit s’infiltrer dans le territoire du Clan Dayoriah pour libérer son amie Shaedra qui s’est fait capturer alors qu’elle essayait de récupérer un objet magique appartenant au grand Marévor Hélith.
Dans un premier temps, la dépêche introduit le jeu et ses particularités en tant que jeu d’infiltration au tour par tour. Ensuite, elle explique les algorithmes de génération procédurale de cartes utilisés par Harmonist.
- lien n°1 : Site du projet
- lien n°2 : Jouer dans le navigateur
Sommaire
Un aperçu du jeu
Lors de chaque partie, le joueur incarne Syu et doit explorer, au tour par tour, des cartes caverneuses parsemées de bâtiments appartenant au Clan Dayoriah. Syu peut essayer de passer inaperçu de maintes façons, en se cachant par exemple parmi les hautes herbes, ou sous une table ou encore à l’intérieur d’un tonneau. Les tonneaux sont les points « sûrs » du jeu, où le joueur peut se reposer et récupérer ses points de vie et de magie, mais ceci seulement s’il peut manger une banane avant, car pas de sommeil réparateur le ventre vide !
Voici quelques autres actions typiques que l’on retrouve dans toutes les parties : passer par un endroit alors qu’un garde regarde ailleurs, grimper à un arbre pour voir plus loin et se protéger de certains ennemis, passer à travers des trous dans les murs, regarder à travers des fenêtres ou activer des pierres magiques qui se trouvent sur la carte.
Dans chaque partie, Syu trouve aussi quelques objets magiques, appelés magaras et qu’il peut utiliser, au prix d’un point de magie, avec des effets divers suivant le type de magara : éloigner des monstres à l’aide de bruits magiques, les endormir ou les perturber avec des illusions et des sons, se téléporter ailleurs, etc.
En plus de l’histoire principale du jeu, le joueur peut trouver lors de ses explorations des messages courts divers donnant plus d’informations sur le Clan Dayoriah et le monde d’Haréka en général. Certains personnages et bon nombre d’éléments d’inspiration proviennent de la saga libre de fantasy Le Cycle de Shaedra.
Un jeu d’infiltration
Le jeu se focalise sur le positionnement tactique, les mécanismes de lumière et de bruit, en utilisant divers types de terrains et des cônes de vision pour les monstres. Ayant pour objectif d’offrir une expérience de jeu épuré et rejouable, le jeu évite la complexité dans la gestion d’inventaire et la construction du personnage, préférant utiliser des objets et l’adaptation du joueur pour faire évoluer le personnage.
Harmonist reprend beaucoup d’idées courantes dans les jeux d’infiltration. Deux particularités distinctives majeures sont :
- il s’agit d’un jeu au tour par tour dans la tradition des jeux roguelike, mais reprenant certaines idées plus souvent présentes dans les jeux de plate‐forme, comme des petits cœurs pour les points de vie et une interface simple ;
- le joueur ne peut (presque) jamais tuer ses ennemis, c’est juste un petit singe gawalt ; lorsque la situation devient difficile, le joueur a à sa disposition divers objets magiques qui peuvent l’aider à échapper aux ennemis ou les perturber temporairement de diverses façons. Un point important qui joue en faveur du joueur, c’est que les ennemis ont tendance à ne pas s’acharner très loin dans leurs poursuites : après tout, le joueur est un petit singe à l’air un peu suspect mais relativement inoffensif.
Interface
L’interface est essentiellement un successeur amélioré de celle de Boohu, le jeu dont Harmonist est initialement une divergence (fork), même si le résultat est un jeu très différent.
Un point notable est que l’interface est plus simple : déplacements possibles avec uniquement les flèches (pas de déplacements diagonaux), une même touche sert à interagir avec tous les objets, ce qui réduit significativement le nombre de raccourcis. Enfin, les raccourcis essentiels sont visibles à tout moment dans l’interface.
Génération de cartes
Dans une dépêche précédente à propos du jeu Boohu, il était question de génération de cartes et différents algorithmes : marche aléatoire, automate cellulaire, génération de tunnels ou encore partition binaire de l’espace. Chacun, en modifiant divers paramètres et en apportant diverses touches finales ad hoc, pouvait produire des résultats très divers et avec des caractéristiques tactiques différentes.
Harmonist reprend certaines idées pour sa génération de cartes. Cependant, les retouches finales sont plus importantes, tout comme l’utilisation de pièces éditées à la main et placées ensuite aléatoirement dans la carte.
Un premier exemple de carte typique du jeu (capture d’écran en mode wizard, sans le personnage et les monstres) :
Génération de la caverne
Tout d’abord, un des algorithmes précédents est utilisé pour produire une première ébauche de carte caverneuse avec des murs et des espaces ouverts, tout en produisant une carte connexe : toutes les cases qui ne sont pas des murs sont connectées, il n’y a pas de cases non atteignables. Actuellement, automate cellulaire et marche aléatoire sont utilisés pour cette phase.
Un automate cellulaire est aussi utilisé pour rajouter ensuite des herbes sur la carte. Une recherche ad hoc pour placer une ou deux zones d’abîme ou un lac est aussi faite en cherchant un groupe de murs qui ressemble à un bon candidat.
Ajout de pièces créées à la main
L’algorithme choisit ensuite des pièces au hasard parmi quelques listes de pièces faites à la main et les place au hasard sur la carte (parfois avec certaines contraintes), en creusant et nettoyant au besoin, peu importe ce qu’il y avait avant à cet endroit. Avant de placer la pièce, des rotations et réflexions sont appliquées au hasard, rendant les pièces moins prévisibles. Les pièces sont décrites dans le code source de façon symbolique, par exemple, une pièce à forme vaguement triangulaire :
?????#????? ????#>#???? ???#!.!#??? ??#_..._#?? ##!.#.#.!## +..P...P..+ ##_..P.._## ??###+###??
Les
#
vont devenir des murs, les.
deviennent le sol de la pièce, les+
potentiellement des portes ou des murs, lesP
sont des points possibles de patrouille, les!
,_
et>
des points où placer diverses catégories d’objets et, enfin, les?
représentent les parties du rectangle qui ne sont pas à proprement parler dans la pièce et qui peuvent être réutilisées par d’autres pièces ou tunnels.En parlant de tunnels, justement : après placement initial des pièces, des tunnels sont créés entre les cases des pièces qui sont candidates pour devenir une porte, de sorte que toutes les pièces soient connectées. L’algorithme essaie de trouver une pièce proche, mais pas toujours la plus proche : il s’agit d’obtenir un résultat à la fois assez naturel, mais en même temps non prédictible et avec quelques boucles.
Afin de donner un style plus naturel au territoire du Clan Dayoriah, des constructions éparpillées dans une zone caverneuse souterraine, les tunnels créés entre portes deviennent des chemins pavés pour les distinguer des autres cases libres en dehors des tunnels et des pièces qui restent des zones caillouteuses ou herbeuses. Les chemins servent aussi à prédire le parcours probable de certains ennemis qui patrouillent.
Bien que toutes les pièces soient connectées grâce aux tunnels, certaines parties de la carte sont peut‐être maintenant isolées du fait de l’ajout des pièces et des murs qui les entourent : on calcule alors la partie connexe et puis on remet des murs dans les parties isolées. En pratique, cela donne des résultats plutôt satisfaisants avec les paramètres utilisés dans Harmonist.
Ajout des objets et créatures
La génération de carte place ensuite divers objets (tables, tonneaux, arbres, bananes, etc.) aléatoirement, mais avec certaines contraintes : les bananes apparaissent en général dans la nature, alors que les tables et les tonneaux vont apparaître à l’intérieur des pièces.
Notons que les pièces, ayant une forme donnée à la main, sont en revanche remplies aléatoirement, avec certaines contraintes quant aux emplacements possibles pour les objets. Une table ne peut pas apparaître juste devant une porte, et certains objets n’apparaissent pas dans tous les types de pièces.
Les créatures sont aussi placées aléatoirement avec des contraintes diverses : certaines patrouillent entre deux pièces, d’autres sont placées dehors dans les zones caverneuses, privilégiant plus ou moins les parties herbeuses (en général, des animaux), d’autres gardent une pièce en particulier sans bouger en regardant autour d’elles, etc.
Voici quelques autres exemples de cartes utilisant des algorithmes de base différents de l’exemple plus haut :
Télécharger ce contenu au format Epub
Commentaires : voir le flux atom ouvrir dans le navigateur
https://linuxfr.org/news/harmonist-dayoriah-clan-infiltration-un-jeu-rogue-like-d-infiltration
Sauf mention contraire, le site est placé sous double licence Creative Commons BY-SA et GNU Free Documentation License propulsé par NodeBB