Find help on the FRENCH REFORGER MOD discord if you need ✅ Check our progress about this wiki here 📜
Skip to main content

A1 - Création des compartiment et suite de la configuration des actions

Informations à propos de l'organisation du wiki sur la configuration des préfabs de véhicules

Le wiki à partir de cette page va être organisé en fonction d'un code simple pour vous repérer dans le niveau de difficulté et votre progression 🔧

A=Configuration de base pour un véhicule
B=Configuration pour un véhicule qui nécessite un minimum de réflexion et qui dépend de votre véhicule.
C=Configuration pour un véhicule qui est complexe et qui nécessite de la recherche personnelle et qui varie en fonction des véhicules.
D=Système complexe pour un véhicule qui n'est pas généralisé à tous les véhicules et qui n'est pas évident.

Il est important de savoir que tout est possible, mais ce système de code permet de vous donner une idée de la difficulté. La seule limite que vous avez est l'habitude ainsi que l'expérience avec le workbench et blender, on ne peut pas tout dévoiler car ENFUSION et Blender restent des logiciels complexes ✅

Tous les préfabs non commenté dans cette page ne sont pas a modifier pour l'instant (si vous suivez le fil rouge du wiki) ou simplement pas a modifier sur toute l'intégration de votre véhicule (potentiel exception a des systèmes personnalisés).

Introduction

Dans cette page, nous allons découvrir comment créer une liste de porte et de compartiment (places assises). Pour par la suite, configurer le reste d'actions qu'on a pas encore configurée.

Il faut savoir que dans l'intégration d'un véhicule, ça ne sert à rien de réinventer la roue, on vous conseil de vous baser sur les véhicules vanilla ainsi que sur les fichiers de configuration déjà existant.

Après cette page, le véhicule ne sera pas encore jouable.

SCR_BaseCompartmentManagerComponent:

Ce component va nous servir à définir une liste de compartiment et une liste de portes pour que des joueurs puissent s'installer dans votre véhicule.

image.png

Dans ce component, on trouve deux catégories:

  1. Door Info List: Liste des portes disponibles.
  2. Compartment Slots: Liste des compartiments et des places disponibles pour votre véhicule.

Avant de créer une place dans le véhicule, il faut créer une porte, qu'elle soit réelle ou fausse.

Pour ce faire, cliquez sur le + de Door Info List et créez un "SCR_CompartmentDoorInfo":

  • Anim door index: Numéro d'indentification dans le fichier d'animation qui définit le mouvement de la porte (Voir TODO).
  • OpenCloseDoorAnimGraph: Non utilisé.
  • ContextName: Nom de la porte dans l'éditeur (nommez la dans un nom du type door_L01, door_R02, door_back...)
  • Coverage: Nombre, entre 0 et 1 qui indique a quel point la porte est exposée.

Par la suite, on va définir une suite de class qui va permettre de configurer nos portes:

Open Door Action

Cette class va nous permettre de définir l'action qui va permettre aux joueurs de pouvoir ouvrir la porte. Pour ce faire, faites set class, puis SCR_OpenVehicleDoorUserAction.

Une fois cela fait, mettez les actions de votre nouvelle porte qui vont permettre aux joueurs d'ouvrir votre porte dans "Parent Context List" en cliquant sur le +, puis en sélectionnant les actions: Door_{code de la porte} et Door_{code de la porte}_int -> Exemple: Door_L01 et Door_L01_int.

Une fois cela fait, il faut donner une liste d'informations à propos de l'apparence de l'action. Pour ce faire, faites set class sur le paramètre UI Info puis choisissez la class "SCR_ActionUIInfo". Une fois cela fait, mettez les paramètres ci dessous pour que l'action ais l'apparence d'une action pour fermer la porte.

image.png

Après avec réglé l'UI, il ne vous reste plus qu'a régler le reste des actions, comme sur la capture d'écran si dessous.

Close Door Action

Cette class va nous permettre de définir l'action qui va permettre aux joueurs de pouvoir fermer la porte. Pour ce faire, faites set class, puis SCR_CloseVehicleDoorUserAction.

Une fois cela fait, mettez les actions de votre nouvelle porte qui vont permettre aux joueurs de fermer votre porte dans "Parent Context List" en cliquant sur le +, puis en sélectionnant les actions: Door_{code de la porte} et Door_{code de la porte}_int -> Exemple: Door_L01 et Door_L01_int.

Une fois cela fait, il faut donner une liste d'informations à propos de l'apparence de l'action. Pour ce faire, faites set class sur le paramètre UI Info puis choisissez la class "SCR_ActionUIInfo". Une fois cela fait, mettez les paramètres ci dessous pour que l'action ais l'apparence d'une action pour ouvrir la porte.

image.png

Après avec réglé l'UI, il ne vous reste plus qu'a régler le reste des actions, comme sur la capture d'écran si dessous.

Entry Position Info

Ce paramètre va permettre de définir la position à partir de laquelle le joueur va lancer l'animation d'entrée dans le véhicule. Pour ce faire, cliquez sur set class puis dans Pivot ID, mettez l'os qui correspond à votre porte.

AI Entry Position Info

Ce paramètre permet d'indiquer aux IA, où elle doivent se rendre pour se téléporter dans le véhicule quand elle doivent monter. Ce paramètre s'applique que pour les trappes qui se situent dans une zone que les IA ne peuvent pas accéder sans devoir monter. Placez ce point au niveau du point ou un joueur normal ferait espace pour monter sur le véhicule.

AI Exit Position Info

Ce paramètre permet d'indiquer aux IA, où elle doivent se rendre pour descendre du véhicule depuis le toit du véhicule. Ce paramètre s'applique que pour les trappes. Placez ce point au niveau du point ou un joueur normal ferait espace pour descendre du véhicule vers le sol.

Exit Position Info

Ce paramètre va permettre de définir la position à partir de laquelle le joueur va lancer l'animation de sortie depuis sa place. Pour ce faire, cliquez sur set class puis dans Pivot ID, mettez l'os qui correspond à la place que la porte.

Si votre porte couvre la sortie de plusieurs places dans le véhicule, en général, ne faites pas set class (si vous l'avez déjà défini, faites clic doit puis restore to prefab value).