Affichage des résultats 1 à 4 sur 4

Discussion: [PsT] Modification d'un dialogue existant

  1. #1
    Date d'inscription
    November 2010
    Messages 
    28

    [PsT] Modification d'un dialogue existant

    Bonjour à tous. En vue d'apprendre à maîtriser WeiDU je me suis lancé dans une petite modification de fichiers pour le jeu Planescape Torment, mais sitôt commencé que je me heurte à un problème ... qui n'en est peut-être même pas un d'ailleurs. Je souhaite donner l'opportunité au joueur de prélever sur certains Zombis de la Morgue un morceau de chair putréfiée et un seul (qu'il pourra plus tard donner à Moelle-Pote au lieu de se faire mordre). Et pour cette petite modification j'essaie d'être le plus rigoureux possible (en créant les bons fichiers dans les bons dossiers, etc.). De plus l'installation via WeiDU se passe bien - je n'ai aucun message d'erreurs et lorsque je teste ma modification dans le jeu, elle a l'air de fonctionner. Le dialogue modifié est le DZM825.DLG associé au Zombi 825 (ZM825.CRE) qui n'est qu'une créature générique sans dialogue particulier.

    J'utilise 3 fichiers pour cette modification (en plus de l'exe de WeiDU et d'un fichier *.tp2 bien sûr) : moelle_pote.tph, DZM825.d et PST-Exp1.tra pour les textes. Mes codes pour chaque fichier :
    Fichier moelle_pote.tph
    Code:
    // Création de l'objet : Chair à Zombi
    COPY ~PST-Exp1/moelle_pote/copy/II181.BAM~ ~override~ // Icône d'inventaire de notre bout de chair
    COPY_EXISTING  ~SKINSCRP.ITM~ ~override/ZOMBFLSH.ITM~ // Clonage d'un objet existant du jeu pour créer notre nouvelle objet
      SAY  0x0c @3                                        // Modification de son nom (Chair de zombi)
      WRITE_ASCII 0x3a ~II181~                            // Modification de son icône d'inventaire
      SAY 0x54 @4                                         // Modification de sa description détaillée
     BUT_ONLY_IF_IT_CHANGES
    
    // Modification du dialogue du Zombi 825 pour permettre au joueur de prélever un bout de chair
    COMPILE ~PST-Exp1/moelle_pote/dlg/DZM825.d~
    
    // Modification des Variables globales du jeu à l'aide de la macro développée par Qwinn
    // L'auteur des 3 modifications majeures pour PST
    INCLUDE ~PST-Exp1/utils/Q_VARMacros.tph~
    COPY_EXISTING ~VAR.VAR~ ~VAR.TMP~
      SET Q_FileSize = %SOURCE_SIZE%
      SPRINT "Q_NewVarType"  ~GLOBAL  ~
      SPRINT "Q_NewVarName"  ~825_Flesh_Taken~
      SET    "Q_NewVarValue" = 0
      LAUNCH_PATCH_MACRO Q_VarVar_AddNewRecord
     BUT_ONLY_IF_IT_CHANGES
    COPY ~VAR.TMP~ ~VAR.VAR~
    Fichier DZM825.d
    Code:
    EXTEND_TOP DZM825 0 #5 // Pour faire apparaître en 5e position cette ligne de dialogue
      IF ~Global("825_Flesh_Taken","GLOBAL",0)PartyHasItem("SCALPEL")~ THEN REPLY @5 GOTO 825-FleshTaken
    END
    
    APPEND DZM825
      IF ~~ THEN BEGIN 825-FleshTaken
        SAY @6
        IF ~~ THEN REPLY #24572 DO ~SetGlobal("825_Flesh_Taken","GLOBAL",1)GiveItemCreate("ZOMBFLSH", Protagonist, 1, 0, 0)~ EXIT
      END
    END
    Alors comme je l'ai dit, dans le jeu tout semble fonctionner parfaitement, l'objet est crée avec ses attributs, le joueur ne peut couper le Zombi qu'une seule fois. Le problème vient plutôt du fait que Near Infinity m'affiche bien ma modification mais également un [state 2] supplémentaire qui n'était pas là avant. En revanche, en décompilant le dialogue avec WeiDU, il a l'air de collé. Étonnant non, alors qui croire ? Donc, je me dis que mon code a "l'air" bon mais qu'il doit être faux. Et cerise sur le gâteau, lorsque je la désinstalle, WeiDU ne me supprime pas les entrées qu'il a créé dans les deux fichiers *.tlk - elle est pas belle la vie.

    Alors si un gourou un WeiDU passe par là, pourrait-il me dire là où mon code merde, parce que je sèche.


    ===============================================================================
    RESOLU
    ===============================================================================
    Je travaillais avec deux installations différentes de PST, la seconde étant la version anglaise, mise à jour mais non modifiée et c'est le PST-FixPack de Qwinn qui a modifié le fichier de dialogue (en le corrigeant) entre les deux versions.
    Quant au fait que WeiDU ne supprime pas des fichiers *.tlk les entrées qu'il créé peut-être est-ce dû au fait que j'installe ma modification française sur une installation anglaise ? Mais c'est mineur.

    Édit de Freddy : Pour marquer une discussion comme "résolue", utilise le bouton "Marquer comme résolu" à droite du bouton "Répondre", en haut de la page.
    Dernière modification par Freddy_Gwendo ; 11/05/2016 à 11h40. Motif: Modification du titre de la discussion

  2. #2
    Date d'inscription
    July 2003
    Localisation
    Plaisir
    Messages 
    6 826
    WeiDU ne retire jamais les textes ajoutés dans le fichier dialog.tlk. C'est une mesure indispensable à la fonction de désinstallation / réinstallation de mods ou de composants de mods en cours de partie. Si, lorsqu'on retire un mod ou un composant au milieu de toute la liste, WeiDU retirait les textes du mod/composant, la réinstallation des mods qui sont à sa suite dans la liste leur ferait obtenir des numéros de texte différents. Cela poserait d'énormes problèmes pour des noms de personnages ou de lieux qui ne seraient plus pointés correctement dans le fichier dialog.tlk en cas de poursuite du jeu à partir de sauvegarde. C'est déjà un problème très fréquent pour ceux qui réinstallent tout (jeu et mods) et essaient de poursuivre une partie créée avant, ce serait catastrophique si cela se produisait juste parce que tu as changé un composant en cours de partie.

    Par ailleurs WeiDU ne crée pas de nouveau texte si un mod ajoute un texte qui existe déjà. De sorte qu'il ne peut pas se permettre de retirer le texte lors de la désinstallation, car il se pourrait bien que ce soit un texte du jeu de base ou d'un autre mod.
    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 644
    Heureux de savoir qu'en fait tu n'as pas de problèmes...

    Non, non : les modifications des fichiers tlk sont irréversibles: même quand tu désinstalles un mod, le fichier tlk garde les nouvelles entrées.

    D'où l'intérêt de conserver une copie de sauvegarde des fichiers originaux en phase de développement.

    Édit : grillé à une mn près !
    Dernière modification par Freddy_Gwendo ; 15/04/2016 à 19h41.
    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
    November 2010
    Messages 
    28
    Merci à tous les deux. Oui, après vous avoir lu et en y réfléchissant cela tombe sous le sens que WeiDU se comporte ainsi pour les fichiers *.tlk. Quant aux fichiers de sauvegarde, je les ai (tlk, key et var car PST - donc de ce côté, tout va bien).

Discussions similaires

  1. Dialogue et modification d'un DLG existant
    Par Cocrane dans le forum Éditeur Baldur's Gate
    Réponses: 0
    Dernier message: 23/11/2013, 19h05
  2. Réponses: 7
    Dernier message: 19/02/2006, 08h02
  3. Réponses: 3
    Dernier message: 14/01/2006, 11h15
  4. Réponses: 6
    Dernier message: 01/11/2005, 15h41
  5. Réponses: 10
    Dernier message: 22/10/2003, 21h22

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