Affichage des résultats 1 à 5 sur 5

Discussion: [TUTORIEL] [CARTES] Créer des portes spéciales : Chapitre 5

  1. #1
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 644

    [TUTORIEL] [CARTES] Créer des portes spéciales : Chapitre 5

    CRÉATION DE PORTES SPÉCIALES





    Ce dernier chapitre des didacticiels sur les portes traite de la création de portes spéciales, et sera alimenté au fur et à mesure.


    A. Créer une porte s'ouvrant en plusieurs étapes ici.

    B. Créer une porte ne menant nulle part à venir.

    ...
    Dernière modification par Freddy_Gwendo ; 23/10/2017 à 03h27.
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

  2. #2
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 644
    A. CRÉER UNE PORTE S'OUVRANT EN PLUSIEURS ÉTAPES.




    Comme nous l'avons vu, pour afficher les portes, le moteur Infinity Engine utilise le tileset (overlay) de la carte en utilisant alternativement les tiles de base et les tiles alternatives du fond de carte. Ce qui limite considérablement les effets visuels que l'on veut produire comme, par exemple, visualiser plusieurs états d'ouverture d'une même porte, comme ceci :

    On trouve un tas de briques :

    On déplace les briques :

    On ouvre la trappe :



    En théorie, c'est impossible car on ne peut pas utiliser plus de deux images différentes sur la même tuile d'une carte.

    En pratique, il suffit d'appliquer le vieil adage du moddeur masqué : en termes de modding, il n'y a pas de problème, il n'y a que des solutions.

    Je sais, c'est une vieille rengaine, mais dans ce cas, ça fonctionne parfaitement.

    L'astuce consiste à utiliser un fichier bam pour simuler l'un des états d'ouverture de la porte.


    Comme je ne compte pas vous inonder de captures d'écrans, je pars du principe que vous avez assimilé les tutos précédents. Si ce n'est pas le cas, je vous incite fortement à les consulter avant de lire la suite, sinon, vous ne comprendrez pas grand-chose à la manip.



    1. Créer le fichier bam d'animation de la trappe.

    J'ai utilisé une animation simple, composée de deux images : -

    Ce qui donne ceci :


    Cette animation permettra de simuler l'ouverture de la trappe sur la carte (le cycle 0 correspond à la trappe fermée, et le cycle 1 à la trappe ouverte).



    2. Créer la porte.

    Puisque vous savez comment faire, je ne vous donne que le résultat :


    Vous noterez que la porte est fermée et que j'ai coché la case « Transp » (Transparence).

    Cette dernière est très importante : on l'utilise lorsqu'on crée une porte qui ne bloque pas la vision.

    Sans oublier le fichier wed :



    Récapitulons.

    Voici la porte fermée :

    Et la porte ouverte :

    On n'oublie pas les impeded blocks :



    À ce stade, on reste coincé par la limitation du moteur du jeu. C'est pour la contourner qu'intervient notre animation.



    3. Ajouter l'animation sur la carte.

    Je crée donc une animation sur la carte pour simuler l'ouverture de la trappe :


    Et je la plaque sur la porte ouverte :


    Vous remarquerez que j'ai choisi le cycle 0 (porte fermée) et que j'ai coché la case « No own light ». Cette dernière permet au moteur de moduler la teinte de l'animation lors des changements de luminosité selon l'heure de la journée (jour/nuit).

    Le travail de préparation étant terminé, il faut maintenant mettre tout ceci en musique à l'aide de scripts. Et qui dit scripts... ?

    Citation Envoyé par Lecteur
    dit triggers !
    Bravo ! On va finalement faire quelque chose de bon de vous...



    4. Créer les triggers permettant de lancer les scripts.

    Nous allons utiliser 4 region triggers utilisant tous le même script :

    • Pierres (facultatif) : Affiche un message lorsqu'on s'approche du tas de pierres.
    • Cache : Permet de déplacer les pierres.
    • TrappeO : Simule le polygone magenta d'ouverture d'une porte et permet d'ouvrir la trappe et d'accéder à la carte suivante.
    • TrappeF : Simule le polygone magenta de fermeture d'une porte et permet de fermer la trappe et d'interdire l'accès à la carte suivante.


    En images :

    Pierres

    Cache

    Les deux sont identiques :

    TrappeO


    TrappeF


    Et on n'oublie pas le travel trigger et son point d'entrée :



    Il est temps de passer à la potion magique qui fait fonctionner tout ceci : les scripts.



    5. Écrire les scripts.

    Nous utiliserons 2 scripts

    • GW0001 : le script de la carte GW0001.
    • GW0001Se : un script unique pour les region triggers. Mais vous pouvez très bien le décomposer en autant de scripts que de triggers (dans ce cas, n'oubliez pas de modifier le nom du script dans les onglets des triggers concernés).


    et 2 variables :

    • GWENTREE : une variable de carte permettant d'initialiser les triggers lorsqu'on entre pour la première fois dans la carte.
    • GWEnt007 : une variable de carte permettant de gérer l'activation/désactivation des différents triggers, l'ouverture de la porte et l'apparition et la modification des séquences de l'animation de la trappe.



    5a. Le script de la carte.

    Commençons par le script de la carte (GW0001). C'est le plus simple et il se compose de deux blocs :



    Comme son nom l'indique (« Initialisation »), le premier bloc désactive tous les triggers de la porte et l'animation de la trappe. Ainsi, la carte n'affiche que la porte fermée (le tas de briques).

    Le second (« Accès à la cachette ») active le trigger Pierres lorsque la variable GWEnt007 est égale à 1. En fait, après un dialogue avec un autochtone. Auparavant, on passe devant le tas de briques sans remarquer qu'il dissimule une trappe.


    5b. Le script des triggers.

    Celui-ci est un peu plus complexe (pas tant que ça, en fait ) et se compose de 3 groupes de blocs :

    • Message automatique.
    • Tas de pierres.
    • Trappe.


    Facultatif dans le cadre de ce tuto, le bloc « Message automatique » informe le groupe qu'il a loupé quelque chose en passant pour la première fois près du tas de briques.


    Une fois le message affiché, la variable GWEnt007 est incrémentée de 1, le trigger Cache est activé et le trigger Pierres désactivé.


    Le bloc « Tas de pierres » est activé par le trigger Cache. La troisième partie simule le déplacement des briques et ouvre la porte.


    La variable GWEnt007 est incrémentée de 1, le trigger TrappeF est activé, l'animation de la trappe (Secret) activée et le trigger Cache désactivé.

    On obtient donc ceci à l'écran :


    Le dernier bloc, « Trappe », gère l'ouverture de la trappe et l'accès à la carte GW0007.


    La troisième partie de ce bloc simule l'ouverture de la trappe :

    Code:
    	StaticSequence("Secret",1)
    Elle change la séquence de l'animation affichée : ce n'est plus la séquence 0 (trappe fermée) qui est affichée, mais la séquence 1 (trappe ouverte).

    Activé, le travel trigger Tran0007 permet de pénétrer (descendre) dans la carte GW0007.

    Enfin, le trigger TrappeO est activé et le trigger TrappeF désactivé.

    Et on obtient ce qu'on voulait :



    Le quatrième partie du code ferme la trappe et condamne l'accès à la carte GW007 :




    Voilà, vous avez saisi le principe (enfin, je l'espère).
    Libre à vous de l'adapter en multipliant les étapes d'ouverture ou de fermeture en activant, désactivant plusieurs fichiers BAM ou plusieurs séquences d'un même fichier BAM.

    Les possibilités sont infinies.


    Dernière modification par Freddy_Gwendo ; 23/10/2017 à 09h27. Motif: Correction orthographique
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

  3. #3
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 644
    BG et BG2 recèlent des ressources insoupçonnées. Si vous vous promenez dans Athkatla et La Porte de Baldur, vous connaissez certainement ces lieux :





    Rien, de bien excitant. Et pourtant... Si vous analysez la structure des cartes, vous vous apercevez que :

     Cliquer ici pour révéler le texte


    Eh oui ! vous avez loupé deux portes ! Sans doute des reliquats de la phase de développement, inutilisés dans le jeu.
    Dernière modification par Freddy_Gwendo ; 18/03/2018 à 21h31.
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

  4. #4
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 644
    message réservé à un autre tuto
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

  5. #5
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 644
    message réservé
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

Discussions similaires

  1. [TUTORIEL] [CARTES] Créer une porte dans une carte existante : Chapitre 4
    Par Freddy_Gwendo dans le forum Tutoriels, guides
    Réponses: 5
    Dernier message: 05/06/2016, 18h25
  2. Réponses: 1
    Dernier message: 20/04/2016, 22h22
  3. Réponses: 1
    Dernier message: 20/04/2016, 00h10
  4. [TUTORIEL] [CARTES] Créer une porte dans une carte : Chapitre 1
    Par Freddy_Gwendo dans le forum Tutoriels, guides
    Réponses: 1
    Dernier message: 19/04/2016, 21h38
  5. [TUTORIEL] [CARTES] CHAPITRE 2 : Les mini-maps d'un fichier are
    Par Armand dans le forum Tutoriels, guides
    Réponses: 8
    Dernier message: 23/03/2016, 21h00

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250