Affichage des résultats 1 à 9 sur 9

Discussion: [BGT] Comment compiler des parties d'un dialogue seulement si BGT est installé ?

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

    [BGT] Comment compiler des parties d'un dialogue seulement si BGT est installé ?

    J'ai écrit un dialogue dont certaines parties se passent dans la Porte de Baldur si BGT est installé. Sinon, elles ne sont jamais lancées.

    Par facilité, je compile tout dans le même fichier.

    Je me demandais s'il existait une commande simple qui permettait de zapper des blocs à compiler selon certains critères (en l’occurrence ici l’installation de BGT) ? Par principe, je préfère éviter de scinder le dialogue en deux parties, la première n'étant compilée que si BGT est installé.
    Dernière modification par Freddy_Gwendo ; 05/09/2016 à 23h13.
    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
    July 2003
    Localisation
    Plaisir
    Messages 
    6 827
    Je ne connais pas de tel mécanisme. Il me semble peu probable qu'un développeur se soit embêté à coder une chose pareille alors qu'il existe quelques façons de s'y prendre avec l'existant (compiler les blocs BGT, qui seront inaccessibles pour cause de condition non respectée, ou découper en deux fichiers, voire avoir deux fichiers d selon le type de jeu), pourvu qu'on n'ait pas autant de principes que toi.
    Autrement tu concatènes les deux fichiers avant de compiler le dialogue, et le tour est joué : une seule compilation.
    Peu disponible
    Guide d'installation (et FAQ) de Baldur's Gate, Baldur's Gate II, Baldur's Gate Trilogy (BGT), BG1Tutu, Widescreen, BGEE
    Pensez à utiliser à la fonction Recherche pour trouver une réponse à votre question !

  3. #3
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 646
    Citation Envoyé par Isaya
    Autrement tu concatènes les deux fichiers avant de compiler le dialogue, et le tour est joué : une seule compilation.
    Ça, ça me plaît !

    Je vais me jeter sur la doc, histoire de vérifier que des trucs genre "EXTEND_TOP" fonctionnent bien avec les fichiers .d, dans ce cas de figure.
    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
    July 2003
    Localisation
    Plaisir
    Messages 
    6 827
    EXTEND_TOP traite des fichiers au format du jeu. Ici il s'agit plutôt que modifier un fichier texte. Voici une solution possible (non testée) :
    Code:
    COPY ~monmod/dialogues/dlgBG2.d~ ~override/dlgComplet.d~
    APPEND ~monmod/dialogues/dlgBGT.d~ ~override/dlgComplet.d~
    COMPILE ~override/dlgComplet.d~
    APPEND ne travaille qu'avec des fichiers du jeu, il faudrait donc que le fichier auquel ajouter soit déjà dans override.
    Peu disponible
    Guide d'installation (et FAQ) de Baldur's Gate, Baldur's Gate II, Baldur's Gate Trilogy (BGT), BG1Tutu, Widescreen, BGEE
    Pensez à utiliser à la fonction Recherche pour trouver une réponse à votre question !

  5. #5
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 646
    Merci pour l'info : j'allais justement m'y plonger.

    C'est vrai que j'ai déjà un peu galéré pour compléter des fichiers non gérés par le jeu (cf. ici).

    Je teste ce point ce soir et je vous tiens au courant.
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

  6. #6
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 646
    Ça fonctionne, mais j'ai préféré utiliser la commande WeiDU APPEND_FILE :

    Code:
    ACTION_IF GW_BGT BEGIN
    
    	COPY ~%MOD_FOLDER%/temp/GWGwendy_BGT.d~ ~%MOD_FOLDER%/dlg/GWGwendy.d~
    
        		APPEND_FILE ~%MOD_FOLDER%/temp/GWGwendy.d~
    
    	BUT_ONLY
    
    	OUTER_SET strref_Gwendolynette = RESOLVE_STR_REF(@3590000)
    
    END ELSE BEGIN
    
    	COPY ~%MOD_FOLDER%/temp/GWGwendy.d~ ~%MOD_FOLDER%/dlg/GWGwendy.d~
    
    	OUTER_SET strref_Gwendolynette = RESOLVE_STR_REF(@3590001)
    
    END
    
    COMPILE  ~%MOD_FOLDER%/dlg/GWGwendy.d~
    Merci pour ton concours, comme toujours fructueux.
    Dernière modification par Freddy_Gwendo ; 08/09/2016 à 02h03.
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

  7. #7
    Date d'inscription
    July 2003
    Localisation
    Plaisir
    Messages 
    6 827
    Ah oui, c'est beaucoup plus souple ainsi. J'ignorais l'existence de ce patch.
    Peu disponible
    Guide d'installation (et FAQ) de Baldur's Gate, Baldur's Gate II, Baldur's Gate Trilogy (BGT), BG1Tutu, Widescreen, BGEE
    Pensez à utiliser à la fonction Recherche pour trouver une réponse à votre question !

  8. #8
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 646
    Moi non plus ! Sinon je n'aurais pas ouvert ce topic.

    Il faut dire que la doc WeiDU est un vrai pavé et que la plupart des commandes ne sont pas documentées, sans compter les ajouts des nouvelles versions.

    De plus, on est tous pareils : s'y plonger près d'une heure pour vérifier toutes les commandes, ça gonfle un peu...

    Mais j'ai voulu en avoir le cœur net et voilà ! En fait si j'ai bien compris, elle a été ajoutée pour éviter certaines utilisations lourdes de DECOMPILE_DLG_TO_D, puis de DECOMPILE_AND_PATCH qui l'a remplacée.
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

  9. #9
    Date d'inscription
    April 2011
    Localisation
    Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
    Messages 
    4 646
    J'ai encore affiné le code pour mieux gérer les "BEGIN" :

    Code:
    <<<<<<<< .../inlined/blank
    BEGIN GWGwendy
    BEGIN GWDucon
    
    >>>>>>>>
    COPY ~.../inlined/blank~ ~%MOD_FOLDER%/GWGwendy.d~
    
       PATCH_IF (GW_BGT) BEGIN
    
          APPEND_FILE ~%MOD_FOLDER%/dlg/GWGwendy_BGT.d~
          APPEND_FILE ~%MOD_FOLDER%/dlg/GWGwendy.d~
          SET strref_Gwendolynette = RESOLVE_STR_REF(@3590000)
    
       END ELSE BEGIN
    
          APPEND_FILE ~%MOD_FOLDER%/dlg/GWGwendy.d~
          SET strref_Gwendolynette = RESOLVE_STR_REF(@3590001)
    
       END
    
    BUT_ONLY
    
    ACTION_GET_STRREF strref_Gwendolynette desc_Gwendolynette
    COMPILE ~%MOD_FOLDER%/GWGwendy.d~	EVALUATE_BUFFER
    CARPE DIEM...
    Co-modérateur de La Forge et de La Chambre des Scribes
    Moddeur qui s'arrache les cheveux...

Discussions similaires

  1. [SCRIPT] Comment compiler un script avec WeiDU ?
    Par clmin dans le forum Scripts
    Réponses: 2
    Dernier message: 01/03/2015, 21h57
  2. Réponses: 21
    Dernier message: 24/04/2012, 21h24
  3. [DLG] Comment mettre en oeuvre un dialogue à 7 ?
    Par Nightmare dans le forum Dialogues
    Réponses: 5
    Dernier message: 09/03/2009, 23h29
  4. [NI] Comment compiler un script avec NearInfinity ?
    Par Sith dans le forum Outils de développement
    Réponses: 2
    Dernier message: 11/02/2005, 17h50
  5. Comment donner un dialogue à une créature
    Par Giga__Deathcool dans le forum NeverWinter Nights & NeverWinter Nights 2 : les modules
    Réponses: 16
    Dernier message: 19/01/2005, 01h02

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 251 252 253 254 255 256