Génération de donjons cycliques sur l'exemple d'Unxplored

image

Arrêtez de créer des chemins de branchement, commencez à utiliser la génération cyclique de donjons. Vos niveaux deviendront beaucoup plus similaires à ceux créés manuellement.

Le plus souvent, pour générer des donjons dans des jeux du genre roguelike, des fragments générés ou pré-créés du donjon sont ajoutés à la carte. Le donjon se développe à partir du point de départ comme un arbre. Cependant, les arbres se terminent en branches, ce qui conduit à la création de nombreuses impasses. Pour contourner ce problème, la plupart des générateurs de donjons recherchent des endroits où vous pouvez connecter au hasard des branches afin que le joueur puisse se déplacer dans un cercle plutôt que de revenir constamment en arrière.

Le robot d'exploration de donjon inexploré utilise une approche fondamentalement différente (voir figure 1). Au lieu de chemins linéaires, il utilise initialement des boucles comme structure la plus élémentaire. La différence est frappante: avec l'ancienne approche, de bons et intéressants cycles pourraient se produire par hasard, mais dans Unexplored, ils sont une caractéristique planifiée du résultat du générateur.

https://i1.wp.com/ctrl500.com/wp-content/uploads/2016/07/basic-cyclic-explantion.png

Figure 1 - cycles contre les arbres.

Comment ça marche? Lorsque Unexplored commence à générer un donjon, il commence à partir d'un point de départ arbitraire sur la carte. Mais au lieu de créer une branche vers le point cible, il crée un cycle composé de deux chemins reliant l'entrée et le point final. De telles boucles sont bien mieux adaptées aux modèles de conception de niveau standard que les chemins linéaires.

Chaque cycle a un chemin A menant de l'entrée au point final et un chemin B menant en arrière. En fonction des longueurs absolues et relatives des chemins A et B, chaque cycle peut être transformé en motif de conception (voir figure 2). Par exemple, lorsque A est court et B est long, vous pouvez placer une porte fermée à la fin du cycle et placer la clé à la fin de B, juste avant de pouvoir retourner sur le chemin principal. Cela créera un niveau où le joueur voit d'abord la porte verrouillée, et quand il trouve une clé appropriée, il n'a pas besoin d'aller loin pour trouver la porte qu'il ouvre. Évidemment, cela nécessite que le joueur ne puisse pas atteindre B directement depuis l'entrée du cycle, bien que cela puisse être intéressant s'il peut voir immédiatement B et la clé.

Un autre exemple qui fonctionne bien avec A long et B court - vous pouvez placer une porte secrète entre l'entrée et B, créant une tranche cachée. Ou B peut simplement être une route plus risquée que A, car il y a un ennemi dangereux ou une pièce avec de nombreux pièges. Il existe de nombreuses possibilités, la figure 2 en montre quelques-unes.


Figure 2 - Exemples de modèles de conception cycliques.

Les résultats sont incroyables. La figure 3 montre le niveau généré par le jeu inexploré . Il se compose d'un grand cycle de clé de verrouillage avec un cycle rempli d'un grand gouffre. Pour ajouter un peu d'intérêt, une petite boucle gambit a été ajoutée. Le design est simple mais efficace. En fait, nous avons réalisé que pour la plupart des niveaux, quelques cycles suffisent souvent; déjà avec quelques cycles, les niveaux acquièrent une structure et un caractère uniques.

https://i1.wp.com/ctrl500.com/wp-content/uploads/2016/07/the-ring-level.png

Figure 3 - passer le niveau.

Remerciements: L'idée de la création de donjons cycliques est née lors d'un atelier de recherche au Canadian Banff Centre . Je ne peux pas m'approprier la paternité de cette idée, je partage donc cet honneur avec tous ceux qui faisaient partie de notre groupe de travail.

Source: https://habr.com/ru/post/fr468957/


All Articles