Difference between revisions of "Mod:Create a dialogue"

From Wikipedia 2197
Jump to navigation Jump to search
m
Line 84: Line 84:
 
# Click on {{False Button|New Node|color=black}} and replace the "New Node" with the code name of your first portion of the dialog under the {{False Button|Remove|color=gray|edge=black}} button.
 
# Click on {{False Button|New Node|color=black}} and replace the "New Node" with the code name of your first portion of the dialog under the {{False Button|Remove|color=gray|edge=black}} button.
 
#* {{False button|✔    Floating      |color=black2}}''(checked by default):''' floats the dialog over the character's head.
 
#* {{False button|✔    Floating      |color=black2}}''(checked by default):''' floats the dialog over the character's head.
#* {{False button|          |color=black2}}'':''' adds the dialog in a box at the bottom of the screen with the character's portrait and a {{False button|OK|color=white|button=yes}} button.
+
#* {{False button|      Windowed    |color=black2}}'':''' adds the dialog in a box at the bottom of the screen with the character's portrait and a {{False button|OK|color=white|button=yes}} button.
 
# Add the code name of the dialog under {{False Button|Default Event|color=gray}} (for scripts).
 
# Add the code name of the dialog under {{False Button|Default Event|color=gray}} (for scripts).
 
# Select the dialog code to the right of {{Fake button|Random 1|color=gray}}.{{Idea|When you add the floating dialogs ''Rdm1'' to ''6'', you can add all 6 of them one after the other. The game will display them randomly}}
 
# Select the dialog code to the right of {{Fake button|Random 1|color=gray}}.{{Idea|When you add the floating dialogs ''Rdm1'' to ''6'', you can add all 6 of them one after the other. The game will display them randomly}}

Revision as of 21:44, 21 September 2022

This tutorial shows how to create or edit dialogs in The Sum.

File:Notepad++.jpg
This tutorial uses mainly the Notepad++ text editor.

Required tools

Before You Begin

Please take some time to browse the "Speech" section of the readme file from the Fallout Tactics editor.

Create a dialogue

Access the .txt file of the location

Each location has its dialog file (with an eponymous code name) already imported. It is in Game/NousAurons/locale/ (French version) and Game/core/locale/ (English version). Some of these files are in a folder of the same name to allow to also store voice files.

Bulb.png  Any .mp3 file (in the same folder) with the same file name as a dialog entry (ex: AJOUT_Di_1_1.mp3 will be heard in the game. 



Writing introduction

  1. Open the two files 'location_code_name_where_the_dialogue_takes_place.txt and for each of them:
    1. Press
       ctrl 
      +
       f 
      and search for "// DIALOGUES"
    2. Copy/paste the following code:
      ADD_Di_1 = {<Ck>- Dialog portion}
  2. Add as many dialog portions as you need.
  3. Go to the
     File 
    menu and then
     Save 
    .

Writing convention

  • Each dialog code name (ex: AJOUT_Di_1) must be unique in the file where it is added.
  • AJOUT_: helps to find the dialog first in the alphabetical list when it is integrated in the Level editor.
  • Di_: indicates that it is a portion of a dialog.
  • Acc: indicates that this is the character's first piece of dialogue.
  • R: indicates that this is a response from the player.
  • Rdm followed by a number from 1 to 6: is used to indicate that the dialogue portion will float over the character's head.
  • OBJ: indicates that the dialogue portion is a quest label, or related to a quest.
  • Pers followed by a number from 1 to 6: refers to a character whose code name is identical in the level editor.
  • Int and Cha: indicate a portion of dialogue that is triggered when the player has a low Intelligence or Charisma score.
  • <Ck>-: is placed in any dialog to change the color of the text to black and precede it with a dash.
  • A few short phrases can be added to the dialog code name to differentiate it (ex: Mad)
    Alert.png  The characters "/" and ":" cannot be used as is in dialogs. Replace them with "^" and "#" to display them properly in the game 


Writing steps

  1. Access the appropriate .txt files (those with the code name of the location where the dialogue will be added)
  2. Choose the code name of the character speaking (if possible identical to the code name of a character already in the location, like Pers1)
  3. Write an introduction line:
    ADD_Di_Pers1_Acc = {<Ck>- Hello!}
  4. Add or don't add a player reply:
    ADD_Di_Pers1_AccR = {<Ck>- Hi!}

    Bulb.png  This response may require certain conditions, indicated after the dialog portion as a comment (preceded by //). Ex: //Intelligence < 5 


  5. Add the dialogs that logically follow:
    ADD_Di_Pers1_1 = {<Ck>- Would you have a minute to help me?}
    ADD_Di_Pers1_1R = {<Ck>- I'd love to!}
    ADD_Di_Pers1_1R_Refuse_to_help = {<Ck>- Forget it!} //Insensible
    ADD_Di_Pers1_2 = {<Ck>- Wonderful. I was about to pass out, this is too heavy!}
    ADD_Di_Pers1_2_Refuse_help = {<Ck>- This is so insensitive of you!}
  6. Add some portions of dialogue appearing above the character's head:
    ADD_Di_Pers1_Rdm1 = {Beautiful day still<C->}
    ADD_Di_Pers1_Rdm2 = {<Cr>This is heavy!<C->}
    ADD_Di_Pers1_Rdm3 = {What's that?<C->}
    ADD_Di_Pers1_Rdm4 = {I could use some help...<C->}
    ADD_Di_Pers1_Rdm5 = {<Co>How are the others doing?<C->}
    ADD_Di_Pers1_Rdm6 = {I try as hard as I can, it's useless.<C->}

Writing codes

The following codes are used to color the text and add special characters, for example.

  • \n: Skip a line.
  • <C*> and <C->: Add/remove a Color. Replace *' with b (blue), c (cyan), k (black), m (magenta), o (orange), r (red), w (white) or y (yellow).
  • <rgb:***,***,***>: Add a specific RGB color. Replace *** with a number from 1 to 255.
  • <b+> and <b->: Add/Remove Bold.
  • <Jl>, <Jc>, <Jr> and <Jj>: Left-aligned, center-aligned, right-aligned or justified text.
More information (English)

Add dialog to Level editor

Open the location file (level editor)

  1. Open the folder Game/ then FT Improver.EXE.
    Alert.png  Use FT Tools.exe instead will result in an error. 


  2. Pass the videos by clicking on them.
  3. Click on
    ⦿  MORE 
    .
  4. Click
    ⦿  LEVEL EDITOR 
    .
  5. Navigate to the
     File 
    menu then
     Open 
    .
  6. Open the file of the location previously created which must end with .mis.

Add the dialog

  1. Click on the Template:False Button tab.
  2. Click on the Template:False Button button at the bottom.
  3. Click on the Template:False Button button at the top.
  4. Scroll left to the bottom of the list.
  5. Click on Template:False Button and replace the "New Node" with the code name of your first portion of the dialog under the Template:False Button button.
    •  ✔    Floating       
      (checked by default):' floats the dialog over the character's head.
    •        Windowed     
      :' adds the dialog in a box at the bottom of the screen with the character's portrait and a
      ⦿  OK 
      button.
  6. Add the code name of the dialog under Template:False Button (for scripts).
  7. Select the dialog code to the right of
     Random 1 
    .
    Bulb.png  When you add the floating dialogs Rdm1 to 6, you can add all 6 of them one after the other. The game will display them randomly 


Scripting dialogue (advanced)

Coding a dialog inside the Mod:Editors#Level_editor requires a lot of scripting. Refer to the Mod:Scripts section for the basics of coding in the Level editor.

Prepare the code to be added

The table here allows you to know in advance the most complex codes to use to program your dialog, according to a number of special pre-determined conditions (e.g. the player refuses to help, tries to seduce the other character, is threatening, etc.)

Coder la première portion du dialogue


Alert.png  La section
 Triggers... 
de l'éditeur de niveaux contient un très grand nombre de triggers, ajoutés avec les années. Évitez de les modifier à moins que vous sachiez exactement ce que vous faites. Ne soyez pas intimidé.e par cette liste, vous n'avez pas à interagir avec ; ajoutez simplement votre code à la fin de celle-ci en utilisant la barre de défilement pour atteindre rapidement à la fin.
 



  1. Cliquez sur l'onglet
     Level 
    .
  2. Cliquez sur
     Triggers... 
    en bas à gauche.
  3. Cliquez sur
     New... 
    .
  4. Ajoutez une description (exemple: PERS1 - Accueil)
  5. L'onglet
     ✔ Conditions 
    est déjà ouvert. Cliquez sur
     New... 
    .
  6. La condition
     Always 
    est déjà sélectionnée. Cliquez sur
     Ok 
    en bas à droite.
  7. Cliquez sur l'onglet
       Actions 
    . Il se transforme ainsi :
     ✔ Actions 
    .
  8. Cliquez sur
     New... 
    .
  9. Cliquez sur l'onglet
     Center View 
    et sélectionnez
     Set Click Speech 
    .
  10. Sous
     Set Click Speech for Unit 
    , cliquez sur
     list... 
    et sélectionner le nom de code du personnage que vous voulez faire parler. Si vous n'avez pas ajouté de personnage déjà, suivez ces étapes.
  11. Sous
     to 
    , sélectionnez le code du dialogue que vous avez précédemment intégré.
  12. Appuyez sur
     Ok 

    Bulb.png  En tout temps, double-cliquer sur un élément de la liste de triggers vous permet d'y retourner pour le modifier. 


Coder les autres portions du dialogue

Les portions de dialogue suivantes n'utiliseront plus la condition Always, mais nécessiteront toutes une condition spéciale pour apparaître.

  1. Cliquez sur l'onglet
     Level 
    .
  2. Cliquez sur
     Triggers... 
    en bas à gauche.
  3. Cliquez sur
     New... 
    .
  4. Ajoutez une description (exemple: PERS1 - 01)
  5. L'onglet
     ✔ Conditions 
    est déjà ouvert. Cliquez sur
     New... 
    .
  6. Cliquez sur l'onglet
     Always 
    et sélectionnez
     Speech Occured 
    , puis sous
     Speech Event was 
    , sélectionnez la portion de dialogue que vous avez codé avant.
  7. Cliquez sur l'onglet
       Actions 
    . Il se transforme ainsi :
     ✔ Actions 
    .
  8. Cliquez sur
     New... 
    .
  9. Cliquez sur l'onglet
     Center View 
    et sélectionnez
     Set Click Speech 
    .
  10. Sous
     Set Click Speech for Unit 
    , cliquez sur
     list... 
    et sélectionner le nom de code du personnage que vous voulez faire parler de nouveau.
  11. Sous
     to 
    , sélectionnez le code de la prochaine section du dialogue.
  12. Appuyez sur
     Ok 

    Bulb.png  Cette étape réalisée, après un premier dialogue, cliquer de nouveau sur le personnage lancera un nouveau dialogue. 


Coder une réponse du joueur ou un enchaînement d'interactions

Il est possible de coder une série d'interactions apparaissant automatiquement après une portion de dialogue (après le clic du bouton de la fenêtre de dialogue).

  1. Cliquez sur l'onglet
     Level 
    .
  2. Cliquez sur
     Triggers... 
    en bas à gauche.
  3. Cliquez sur
     New... 
    .
  4. Ajoutez une description (exemple: PERS1 - 01R)
  5. L'onglet
     ✔ Conditions 
    est déjà ouvert. Cliquez sur
     New... 
    .
  6. Cliquez sur l'onglet
     Always 
    et sélectionnez
     Speech Occured 
    , puis sous
     Speech Event was 
    , sélectionnez la portion de dialogue à laquelle une réponse sera donnée.
  7. Cliquez sur l'onglet
       Actions 
    . Il se transforme ainsi :
     ✔ Actions 
    .
  8. Cliquez sur
     New... 
    .
  9. Cliquez sur l'onglet
     Center View 
    et sélectionnez
     Set Variable 
    .
  10. Sous
     Variable 
    , tapez, par exemple: Pers1_message.
  11. Sous
        Value 
    , tapez, par exemple: AccR.
  12. Appuyez sur
     Ok 
  13. Cliquez sur
     New... 
    .
  14. Ajoutez une description (exemple: PERS1 - 01R (message))
  15. L'onglet
     ✔ Conditions 
    est déjà ouvert. Cliquez sur
     New... 
    .
  16. Cliquez sur l'onglet
     Always 
    et sélectionnez
     Variable 
    , puis sous
     Variable 
    , tapez la variable que vous venez juste de choisir, puis sous
     is Value 
    la valeur que vous venez de choisir.
  17. Cliquez sur l'onglet
       Actions 
    . Il se transforme ainsi :
     ✔ Actions 
    .
  18. Cliquez sur
     New... 
    .
  19. Cliquez sur l'onglet
     Center View 
    et sélectionnez
     Force Speech 
    .
  20. Sous
     Unit 
    , cliquez sur
     list... 
    et sélectionner le nom de code du personnage qui répondra. S'il s'agit du joueur, tapez "LeJoueur" plutôt.
  21. Sous
     will use speech node 
    , sélectionnez le code de la section du dialogue correspondant à la réponse.
  22. Cochez la case
     Blocking 
    en haut à droite.
  23. Répétez les étapes à partir de 18 pour ajouter toutes les portions de dialogues que vous le souhaitez. Elles s'enchaîneront toutes une à la suite de l'autre.
  24. Appuyez sur
     Ok 

Coder une portion du dialogue qui dépend d'une condition

Lorsque vous ajoutez une condition, vous pouvez toujours ajouter un nombre de conditions supplémentaires qui devront toutes être vraies pour que le script actionne la portion de dialogue prévue. Ceci vous permet, par exemple, de créer une portion de dialogue spécifique si le joueur a un score d'intelligence < 5 et une autre si son score est >= 5. Si vous ne considérez pas toutes les possibilités, il se peut qu'il ne se passe rien si le joueur n'a pas les caractéristiques nécessaires. Pour coder une réponse apparaissant seulement si le personnage-joueur a au moins 5 d'intelligence, suivez toutes les étapes de la portion précédente, mais ajoutez celles-ci après l'étape 6:

  1. Cliquez sur
     New... 
    .
  2. Cliquez sur l'onglet
     Always 
    et sélectionnez
     Quantity - Unit 
    , puis sous
     Unit 
    , tapez "LeJoueur", puis sous
     has 
    , cliquez sur
     change 
    . Cliquez sur
     More than 
    et entrez la valeur "4" à la droite de que vous venez de
     Num 
    . Appuyez sur
     Ok 
  3. Sous
     type 
    cliquez sur
     change 
    puis sélectionnez
     Stat 
    . Cliquez sur
     strength 
    à droite et changez le pour
     intelligence 
    . Appuyez sur
     Ok 
    .