Project Biome est conçu comme un voyage arcade à travers le / les mondes ouverts, sur un véhicule biologique ou technologique. Plus précisément dans ce jeu, la caméra est fixée sur le dessus et divers mécanismes de jeu sont conçus pour cet angle (bien que j'utilise parfois une vue non standard pour enregistrer des vidéos et des tests). En plus des avantages et des inconvénients purement techniques de l'utilisation de différentes caméras, différents angles impliquent une approche légèrement différente de l'organisation du jeu.
Architecture des couches
Le prototype implémente un système à niveaux infinis (jusqu'à présent, un seul axe). Pour le moment, un niveau est disponible, le long duquel vous pouvez rouler à l'infini dans deux directions, et les autres sont bloqués par deux murs.
Quelques mots sur son fonctionnement (en principe, des choses assez basiques, pas de révélations spéciales). Le monde du jeu actuel se compose de deux zones (conventionnellement verte et bleue), chacune à l'intérieur d'elle-même est divisée en 4 sections. Lorsque la machine touche la gâchette d'une certaine zone, le niveau vérifie s'il est nécessaire de décaler l'une des zones pour que toutes les sorties de cette zone conduisent à d'autres zones, et non au vide.
Le joueur touche la zone dont le passage le mènera au-delà de la limite extérieure du niveau, et la seconde zone est décalée dans le sens du mouvement du joueur pour qu'il soit à nouveau entouré d'autres zones accessibles.
Cette implémentation est quelque peu redondante pour le niveau actuel partiellement infini délimité par deux murs, il était possible de ne faire que 2 sections dans chaque zone, mais c'est une base pour d'éventuels niveaux complètement infinis qui se poursuivent dans toutes les directions (comme si vous voyagiez sur une certaine planète).
Après les tests, il était en outre nécessaire de corriger une telle nuance que les déclencheurs des sections sont étroitement adjacents les uns aux autres et une situation pourrait se produire lorsque la machine ne touche que la nouvelle gâchette, sans quitter l'ancienne (c'est-à-dire que la zone est décalée par la nouvelle gâchette et que l'ancienne n'a pas été activée). Ce point a été corrigé par le fait que les déclencheurs ont commencé à prendre en compte à la fois l'entrée et la sortie de la voiture, ne se déplaçant que lors de la sortie de la zone de déclenchement et uniquement lorsque la sortie ne s'est pas produite à partir de la même zone qui venait d'être touchée (éliminant ainsi le problème des touches). En général, l'utilisation de déclencheurs de zone dans Godot n'est, bien sûr, pas le seul moyen d'implémenter une telle transition de niveau, mais l'un des plus simples.
Un niveau complètement infini dans une telle implémentation signifiera déjà 4 zones, où quelques zones sont décalées à la fois.
Le joueur touche la zone de la zone bleue qui est actuellement à l'extérieur. Ensuite, les zones rouge et verte sont déplacées vers une nouvelle position.
Une telle solution peut également présenter certaines nuances, comme le fait qu'un déclencheur en diagonale, en conditions réelles, fonctionnera soudainement avant les deux autres, mais cela peut être résolu dans le cadre du même mécanisme, par exemple, en divisant les déclencheurs de zones en plusieurs parties ou en ajoutant des zones gâchette centrale.
Afin d'optimiser le niveau, ses deux zones sont constituées d'un certain nombre de tuiles, qui sont affichées dans l'éditeur sous forme de simples tuiles rectangulaires (entre autres, sauvegarde de la mémoire de l'éditeur), et au début du jeu elles chargent la pièce de surface souhaitée.
Dans le script de chaque tuile, un ID est défini, par lequel il récupérera le fragment souhaité.
Un jeu
Maintenant, plus sur le gameplay lui-même. Au début, le joueur prend l'une des voitures et apparaît dans le monde du jeu. Les voitures peuvent sauter, mitrailler et tirer si elles ramassent une arme vivante spéciale qui tourne autour de la carte. Si la machine est détruite (par des tirs ennemis ou par contact avec des champignons explosifs), une âme (entité immortelle immortelle) reste à sa place, qui peut s'installer dans une nouvelle coquille. La machine transporte des charges conventionnelles (boîtes vertes) qui peuvent être ramassées ou jetées.
Sauter et mitrailler dans les voitures sont limités comme suit: vous ne pouvez pas utiliser plus de deux actions de ce type à la fois, après quoi cette opportunité ne disparaîtra pas une courte recharge. De cette façon, vous pouvez faire, par exemple, un strafe plus un saut ou un double saut. L'âme et le fuseau n'ont pas de limites, donc si vous le souhaitez, vous pouvez interrompre le changement de niveau en volant au-dessus des déclencheurs.
Il y a deux cachettes spéciales sur la carte, où les stubs d'interface d'achat / vente sont affichés. Les deux premiers articles de l'inventaire peuvent être «vendus» en les échangeant contre une «devise» spécifique - «fraîcheur» (la seconde «devise», «poussière», n'est pas encore utilisée, elle peut simplement être augmentée en cliquant sur l'article le plus bas). En quittant le refuge, le jour passe à la nuit (ou vice versa).
Découpe vidéo avec les moments du gameplay de la version démo. Le moteur de jeu utilisé est le moteur Godot 3.2.3, qui rend gles3.
Vous pouvez télécharger la démo de votre OS (windows 64 - .exe, linux - .x86_64) sur la page itch.io (taille de l'archive environ 60Mo):
https: //thenonsense.itch. io / biome Les
astuces de contrôle sont affichées dans le jeu lorsque vous appuyez sur le bouton Entrée, à l'intérieur de l'inventaire d'ouverture.
WASD - mouvement de la
souris - visée partielle (et influence sur la caméra automatique)
Espace - saut
Bouton gauche de la souris - prise de vue
Q, E - strafe
1 - allumer / éteindre la caméra automatique
2,3 - zoomer / dézoomer la caméra
PgUp - une impulsion aléatoire
Il reste également des options spéciales pour les tests, qui ne devraient normalement pas être dans le joueur (marquées en rouge dans l'infobulle du jeu):
4 - un grand degré de zoom de la caméra
Accueil - se transformer en âme ou en une voiture de base
Fin - créer un ennemi
PgDown - créer une vie arme
Prime
Un véhicule volant récemment apparu dans le prototype est la broche.
Il y a aussi une vidéo d'un autre prototype sur le moteur Unigine, avec une version antérieure de cette biomachine: