Les mécaniques de jeu d'énigme peuvent être intégrées dans de nombreux types de jeux, notamment les jeux d'aventure, les jeux de rôle, les jeux de plateformes et les jeux de tirs à la première personne, pour n'en nommer que quelques-uns. Ils peuvent également constituer un jeu à part entière à condition que les énigmes proposées soient intéressantes. Il est par ailleurs possible d'utiliser plusieurs fois la même configuration d'énigme dans le même jeu en spécifiant des conditions initiales et des solutions différentes pour chaque énigme.
Dans ce jeu de casse-tête, le joueur doit trouver la bonne combinaison de lumières (toutes allumées dans ce cas) en interagissant avec des boutons. Chaque bouton active/désactive un ensemble de lumières. Une fois le casse-tête résolu, un objet est généré en guise de récompense.

Dans ce tutoriel, vous allez apprendre à créer une version de ce jeu de casse-tête dans laquelle vous pouvez personnaliser les états de départ des lumières, les lumières que chaque bouton active/désactive et la solution du casse-tête, en utilisant un appareil créé avec Verse dans l'Unreal Editor pour Fortnite (UEFN).
Fonctionnalités du langage Verse utilisées
array: l'appareil que vous allez créer utilise en grande partie des matrices pour exécuter sa logique. Les boutons, les lumières, l'état des lumières, les gestionnaires d'événements, etc. sont stockés dans des matrices pour varier les configurations d'énigme (plus ou moins de lumières, différents états des lumières de départ et d'arrivée) et pour éviter la duplication de code.for: L'expressionforvous permet d'itérer les matrices utilisées par les appareils.if: l'expressionifpermet de déterminer quand le casse-tête est résolu, de filtrer les appareils détectés viaGetCreativeObjectsWithTag()et de contrôler l'état des lumières.failure: les contextes d'échec permettent d'accéder aux matrices, de déterminer quand l'énigme est résolue et de contrôler le déroulement du programme.class: outre la classe de l'appareil du mode Créatiftagged_lights_puzzle, vous allez créer la classe pour les gestionnairesInteractedWithEvent` de bouton en vue d'activer les propriétés par événement.
API Verse utilisées
- Propriétés modifiables : plusieurs propriétés d'appareils créés avec Verse sont exposées à l'UEFN afin que vous puissiez les personnaliser dans l'éditeur. Vous pouvez créer de nouvelles configurations d'énigme en modifiant ces propriétés.
GetCreativeObjectsWithTag(): l'APIGetCreativeObjectsWithTag()vous permet de trouver tous les appareils balisés avec une balise de jeu personnalisable à l'exécution sans exposer les références dans l'éditeur. Dans cet exemple, les lumières comportent la balisepuzzle_light.- Événements d'appareil : Les
InteractedWithEventdes boutons servent à contrôler l'état de jeu.
Procédure
Procédez comme suit pour apprendre à créer un jeu de casse-tête où le joueur doit trouver la bonne combinaison de lumières pour faire apparaître un objet. Le script complet est inclus dans l'étape finale à titre de référence.