Dans cette étape finale, vous trouverez le code Verse complet utilisé pour créer le projet. Chaque titre ci-dessous correspond au nom du fichier dans le projet où se trouve le code.
Essayez de modifier le code et de trouver des moyens d'ajouter d'autres fonctionnalités au mini-jeu. Voici quelques idées pour vous aider à démarrer :
Ajoutez des niveaux supplémentaires que le personnage doit résoudre.
Enregistrez le temps qu'il a fallu au joueur pour résoudre l'énigme ou le nombre de déplacements que le personnage a effectués par niveau.
Ajoutez des commandes supplémentaires pour le personnage afin de résoudre des énigmes plus complexes, comme ramasser des objets et les placer sur le plateau.
submodules.verse
Le fichier de projet submodules.versedéfinit le niveau d'accès des sous-modules et des ressources du projet afin qu'ils puissent être utilisés dans le code Verse. Pour en savoir plus, consultez l'étape 5. Contrôler le PNJ avec l'interface utilisateur et la rubrique Exposer des ressources dans Verse.
# This file sets the access levels for submodules in the project.
# Specifically, this file is making art assets accessible to the Verse files in the project
# so textures, meshes, and materials can be used in the UI and in the game.
# The submodule Textures.MiniGameUI below is the same as the folder
# Textures/MinigameUI that you can see in the project's Content Browser.
Textures := module:
MiniGameUI<public> := module{}
# The submodule VerseCommander below is the same as the folder
verse_starter_tags.verse
Le fichier de projet verse_starter_tags.verse contient la définition de la balise de jeu verse_commander_minigame_tag que le script du PNJ de personnage du jeu Commandant Verse peut utiliser pour rechercher l'appareil Mini-jeu Commandant Verse et écouter ses événements. Pour en savoir plus, consultez l'étape 1. Créer le comportement du PNJ.
# This file contains the Gameplay Tags for the project.
# You can use Gameplay Tags to tag an object in the island
# and be able to query all objects that have the tag during the game using Verse.
using { /Verse.org/Simulation/Tags }
# The verse_commander_minigame_tag is for the Verse Commander Character NPC script
# to be able to find the Verse Commander Minigame device and listen to its events.
verse_commander_minigame_tag := class(tag){}
commands.verse
Le fichier de projet commands.verse du sous-module VerseCommander contient la représentation des données de toutes les commandes que le PNJ peut recevoir. Pour en savoir plus, consultez l'étape 4. Représenter les données de commande.
# This file contains the data representation of all the commands that the NPC can receive
# and utilities for the data to help with debugging and troubleshooting issues.
# Each type of command that the NPC can perform will be an instance of this class.
# The class has the unique specifier to make instances of the class comparable.
# The class has the computes specifier to be able to instantiate it at module-scope.
# The class has the abstract specifier so it cannot be instantiated directly, and
# requires subclasses to implement any non-initialized functions, like DebugString().
command := class<computes><unique><abstract>:
DebugString():string
gameboard.verse
Le fichier de projet gameboard.verse du sous-module VerseCommander contient les données et le comportement du plateau de jeu. Pour en savoir plus, consultez l'étape 2. Définir des plateaux de jeu.
# This file contains the gameboard structure and how it works.
# The gameboard knows where the NPC is supposed to start on the board
# how many obstacles / barriers there are to getting to the end goal,
# and what the end goal is and when it has been reached.
using { /Fortnite.com/Devices }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { /Verse.org/Simulation }
using { /Verse.org/Simulation/Tags }
# An obstacle on the gameboard, with an associated set of
ui_manager.verse
Le fichier de projet ui_manager.verse du sous-module VerseCommander contient le code permettant de créer et de modifier l'apparence de l'interface utilisateur. Pour en savoir plus, consultez l'étape 5. Contrôler le PNJ avec l'interface utilisateur.
# This file contains all the code to create and modify the UI
# in the Verse Commander minigame.
# The UI for the game contains:
# - Buttons that map to commands for the NPC: forward, turn left, turn right.
# - An execute button that tells the NPC to perform the queue of commands.
# - A remove button that removes the last command added.
# - A reset button that resets the current board and clears out the command queue.
# - A dynamic list of commands that grows wider when a player adds commands and shrinks when a player removes commands.
using { /Fortnite.com/Devices }
verse_commander_minigame.verse
Le fichier de projet verse_commander_minigame.verse du sous-module VerseCommander contient l'appareil Verse qui gère le mini-jeu. Pour en savoir plus, consultez l'étape 6. Gérer la boucle de jeu.
# This device is in charge of managing the minigame.
# In its Details panel in the editor, you can:
# - Define how many gameboards there are
# - The order you play the gameboards
# - All the details of the gameboard such as their obstacles.
using { /Fortnite.com/Devices }
using { /Fortnite.com/UI }
using { /UnrealEngine.com/Temporary }
using { /UnrealEngine.com/Temporary/Diagnostics }
verse_commander_character.verse
Le fichier de projet verse_commander_character.verse du sous-module VerseCommander contient la logique du PNJ du mini-jeu. Pour en savoir plus, consultez l'étape 1. Créer le comportement du PNJ.
# This file handles the logic for the gameboard NPC. The NPC waits for commands from
# verse_commander_minigame, then executes movement based on those commands using navigation targets.
# It also tracks the NPC's position using a visual arrow that updates after each command.
using { /Fortnite.com/AI }
using { /Fortnite.com/Characters }
using { /Fortnite.com/Devices }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { /Verse.org/Assets }