Comment on crée 5 000 niveaux à une seule solution parfaite
BallRoute compte 5 000 niveaux, et nous ne les avons pas dessinés à la main. Nous n'avons pas non plus jeté des flèches au hasard sur un plateau : un plateau aléatoire est presque toujours impossible ou ennuyeux. Voici comment nous créons les niveaux de notre jeu de puzzle, de l'idée jusqu'à ton écran.
Étape 1 : définir le ressenti du niveau
Chaque numéro de niveau correspond à une recette : la taille du plateau, le nombre de flèches de la route qui pointent au départ dans la mauvaise direction, le nombre de trous, les mécaniques qui peuvent apparaître (flèches dorées, portails, glace, clés) et à peu près combien de coups la solution parfaite doit demander. Les premiers plateaux font 7×5. Les plus grands font 12×8.
La difficulté ne fait pas que grimper. Elle avance par vagues sur chaque série de dix niveaux : un cran au-dessus, un niveau plus facile, puis un nouveau cran. Ce rythme compte. Une difficulté constante fatigue, et une facilité constante ennuie.
Étape 2 : construire un plateau avec une vraie route
Le générateur trace d'abord une route du départ à la sortie, puis remplit le reste du plateau avec des flèches, des trous et les mécaniques du niveau. Ensuite, il tourne certaines flèches de la route dans la mauvaise direction. Voilà ton puzzle. Comme la route existe avant que quoi que ce soit soit mélangé, chaque niveau a forcément une solution.
Étape 3 : laisser un solveur y jouer
Avant qu'un niveau soit accepté, un solveur y joue. Il explore tous les trajets possibles de la balle, en gardant la trace des clés déjà ramassées, et trouve l'ensemble de rotations le moins coûteux qui amène la balle à la sortie. Ce nombre devient le « par » du niveau : le nombre de coups pour trois étoiles.
Le solveur vérifie ensuite sa réponse en lâchant vraiment la balle, avec les glissades sur la glace, les portails et les sorties verrouillées, pour s'assurer que la route fonctionne bel et bien.
Étape 4 : en fabriquer beaucoup, garder les meilleurs
Pour chaque niveau, nous générons un lot de plateaux candidats et nous leur attribuons une note. Un bon candidat :
- a une seule solution parfaite, pour que les trois étoiles soient une vraie découverte et pas de la chance
- a un par proche de l'objectif fixé pour ce niveau
- place les mécaniques du niveau sur la route, pas en décoration dans un coin
Le plateau le mieux noté l'emporte. Dans nos tests, chacun des 600 premiers niveaux a une seule solution à trois étoiles.
Étape 5 : le même niveau sur tous les téléphones
Chaque niveau est généré à partir d'une graine fixe, donc le niveau 347 est le même plateau sur tous les téléphones, hors ligne, à chaque fois. Le défi du jour utilise la date comme graine. C'est pour ça que tout le monde a le même puzzle le même jour, sans rien télécharger.
Créer des niveaux : ce qu'un ordinateur ne peut pas décider
Certaines choses demandent encore des humains. Nous avons construit le niveau 1 à la main pour en faire un tutoriel, choisi quand chaque nouvelle mécanique apparaît (flèches dorées au 6, flèches verrouillées au 12, portails au 17, glace au 21, clés au 31) et nous jouons beaucoup de niveaux pour ajuster les recettes. Si un niveau te semble un jour injuste, nous voulons le savoir : écris-nous à hello@ballroute.com.
Tu veux voir les mécaniques du côté du joueur ? Commence par toutes les mécaniques de BallRoute expliquées.