David Madore's WebLog: Un nouveau jeu de labyrinthe(?) hyperbolique

[Index of all entries / Index de toutes les entréesLatest entries / Dernières entréesXML (RSS 1.0) • Recent comments / Commentaires récents]

↓Entry #2256 [older| permalink|newer] / ↓Entrée #2256 [précédente| permalien|suivante] ↓

(dimanche)

Un nouveau jeu de labyrinthe(?) hyperbolique

Je viens de produire un nouveau jeu de labyrinthe hyperbolique. Je n'étais pas vraiment satisfait du précédent (introduit ici) parce que je trouvais qu'il y a quelque chose d'insatisfaisant à plaquer un labyrinthe au sens traditionnel (i.e., des murs infranchissables) sur l'espace hyperbolique : l'espace hyperbolique est labyrinthique en lui-même (au sens où, par exemple, si on se trompe de direction quelque part, on doit essentiellement revenir à son point de départ pour aller à l'endroit où on voulait aller), je trouvais qu'il faudrait exploiter ce fait — et c'est ce que j'ai tenté de faire dans cette nouvelle version.

[Navigation : pour plus d'explications sur la géométrie hyperbolique, voir cette série de trois entrées passées : 1, 2, 3 (plus ou moins indépendantes) ; voir aussi celle-ci pour des illustrations de différentes projections ; voir aussi les jeux de labyrinthe hyperbolique que j'introduis ici et et , et celui-ci dont j'explique le fonctionnement dans des transparents disponibles ici.]

Le monde, « périodisé » du plan hyperbolique, est exactement le même que dans la version précédente (88110 carrés formant une surface de genre 8812, et pavé par des carrés selon mon pavage préféré), de même type que le monde « jouet » dont je bassine régulièrement mes lecteurs depuis quelques jours, si ce n'est que ce dernier n'a que 30 carrés formant une surface de genre 4, ce qui le rend plus facile à analyser. J'ai repris le monde à 88110 carrés (et qui est un déguisement du graphe de Cayley du groupe PSL(2,89)) parce qu'il est facile à construire, et d'une taille suffisamment raisonnable.

Cette fois, donc, il n'y a aucun obstacle : juste 24 orbes de couleur cachés (quoique placés de façon régulière) dans ce monde, et qu'il s'agit de collecter, mais c'est surtout un prétexte pour explorer ce à quoi ce monde peut ressembler. Pour aider à l'exploration, chaque orbe fait apparaître un domaine de couleur proche autour de lui, tous connexes et approximativement de même taille (c'est-à-dire dans les 3700 cases). J'ai donné des noms aux orbes pour décorer et surtout pour éviter qu'on s'arrache les cheveux à savoir quand deux couleurs sont identiques.

Le monde n'est pas très grand en diamètre : on peut aller de n'importe quelle carré à n'importe quel autre en au plus 17 mouvements (consistant à passer à une case adjacente). Ce qui n'empêche que ces 17 mouvements, dans un pavage hyperbolique, permettent d'aller à beaucoup plus d'autres cases que ce que ce serait dans un pavage euclidien. On retombe donc assez difficilement sur ses pas (sauf évidemment à suivre une boucle — par exemple en allant tout droit selon un des axes du quadrillage on boucle en 11 mouvements).

Globalement, ce n'est pas très difficile une fois qu'on a un peu compris comment fonctionnent les choses.

Pour aider à savoir par où on est passé, j'ai mis une fonction « petit poucet » qui est amusante en elle-même.

Bref, dans l'ensemble je trouve que c'est plus réussi que le jeu de labyrinthe précédent. Mais j'aimerais surtout trouver comment motiver des gens plus doués que moi pour écrire des jeux informatiques à explorer plus les possibilités intéressantes offertes par la géométrie hyperbolique.

Petit changement () : Je garantis maintenant l'existence d'au moins un orbe à distance de vue du point de départ (mais ça peut être délicat de le repérer).

Amélioration () : J'ai ajouté un système de balises qu'on peut déposer dans le labyrinthe (et rappeler à tout moment) et qui indiquent la direction dans laquelle elles se trouvent (ou du moins une direction, puisqu'il y a souvent plusieurs chemins menant d'un point à un autre selon la façon dont on tourne dans le monde).

↑Entry #2256 [older| permalink|newer] / ↑Entrée #2256 [précédente| permalien|suivante] ↑

[Index of all entries / Index de toutes les entréesLatest entries / Dernières entréesXML (RSS 1.0) • Recent comments / Commentaires récents]