Modification de Mod:Scripts
Sauter à la navigation
Sauter à la recherche
Attention : vous n’êtes pas connecté(e). Votre adresse IP sera visible de tout le monde si vous faites des modifications. Si vous vous connectez ou créez un compte, vos modifications seront attribuées à votre propre nom d’utilisateur(rice) et vous aurez d’autres avantages.
La précédente modification va être annulée. Veuillez vérifier les différences ci-dessous, puis publier l’annulation ci-dessous si c’est bien ce que vous voulez faire.
Version actuelle | Votre texte | ||
Ligne 1 : | Ligne 1 : | ||
Ce tutoriel vous expliquera la base de création de scripts dans ''[[Wikipédia 2197|Nous Aurons]]''. Pour coder des dialogues, il est préférable de [[Mod:Créer_un_dialogue#Scripter_le_dialogue_.28avanc.C3.A9.29|suivre les étapes de ce tutoriel]]. | Ce tutoriel vous expliquera la base de création de scripts dans ''[[Wikipédia 2197|Nous Aurons]]''. Pour coder des dialogues, il est préférable de [[Mod:Créer_un_dialogue#Scripter_le_dialogue_.28avanc.C3.A9.29|suivre les étapes de ce tutoriel]]. | ||
− | [[file:Ecran | + | [[file:Ecran Level Editor.jpg|thumb|Ce tutoriel utilise principalement l'éditeur de niveaux (''Level Editor'').]] |
== Outils requis == | == Outils requis == | ||
− | |||
* [[Mod:Éditeurs#.C3.89diteur_de_niveaux_.28Level_editor.29|Éditeur de niveaux (''Level Editor'')]] | * [[Mod:Éditeurs#.C3.89diteur_de_niveaux_.28Level_editor.29|Éditeur de niveaux (''Level Editor'')]] | ||
Ligne 10 : | Ligne 9 : | ||
== Termes à connaître == | == Termes à connaître == | ||
− | |||
− | |||
− | |||
=== Player === | === Player === | ||
− | Chaque entité (personnage ou objet interactif) est associée à un ''player'', qu'il soit contrôlé par le joueur ou non. Chaque ''player'' est lié à une ''team'', et plusieurs ''players'' peuvent avoir la même ''team''. Il y a un nombre illimité de ''players''.{{Idée|Il est possible d'assigner des comportements spéciaux (IA) à chaque ''player'', comme par exemple de fuir le joueur.}}Dans ''[[Wikipédia 2197|Nous Aurons]]'', les ''players'' de base sont: | + | Chaque entité (personnage ou objet interactif) est associée à un ''player'', qu'il soit contrôlé par le joueur ou non. Chaque ''player'' est lié à une ''team'', et plusieurs ''players'' peuvent avoir la même ''team''. Il y a un nombre illimité de ''players''.{{Idée|Il est possible d'assigner des comportements spéciaux (IA) à chaque ''player'', comme par exemple de fuir le joueur ou de l'attaquer même s'il est à l'autre bout de la carte.}}Dans ''[[Wikipédia 2197|Nous Aurons]]'', les ''players'' de base sont: |
<ol start="0"> | <ol start="0"> | ||
<li>'''Scenary :''' Tout ce qui fait partie du ''décor'' et n'a pas un comportement particulier. '''Comportement:''' passif.</li> | <li>'''Scenary :''' Tout ce qui fait partie du ''décor'' et n'a pas un comportement particulier. '''Comportement:''' passif.</li> | ||
− | <li>'''Joueur :''' | + | <li>'''Joueur :''' Tout personnage contrôlé par le joueur.</li> |
<li>'''Animaux :''' Animaux de la carte. '''Comportement:''' Amicaux par défaut, hostiles si le joueur dépèce un animal ou a de la viande crue sur lui sans ossements pour les ''distraire''.</li> | <li>'''Animaux :''' Animaux de la carte. '''Comportement:''' Amicaux par défaut, hostiles si le joueur dépèce un animal ou a de la viande crue sur lui sans ossements pour les ''distraire''.</li> | ||
− | <li>'''Humains :''' | + | <li>'''Humains :''' Personnages variés. '''Comportement: Neutres par défaut, hostiles si blessés en présence du joueur.'''' </li> |
− | <li>'''Ennemis :''' | + | <li>'''Ennemis :''' Personnages variés. '''Comportement: Hostiles par défaut, amicaux dans certaines circonstances scriptées.'''' </li> |
− | <li>'''Amis :''' | + | <li>'''Amis :''' Personnages variés. '''Comportement: Amicaux par défaut, hostiles si blessés en présence du joueur.'''' </li> |
− | <li>'''Banque :''' Entités scriptées. '''Comportement:''' | + | <li>'''Banque :''' Entités scriptées. '''Comportement: Jamais hostiles.'''</li> |
</ol> | </ol> | ||
Ligne 29 : | Ligne 25 : | ||
=== Quantity === | === Quantity === | ||
− | ''Quantity'' réfère à une grande liste de conditions possibles pour les | + | ''Quantity'' réfère à une grande liste de conditions possibles pour les personnages, À peu près tout ce qui fait partie de la fiche de ceux-ci (exemple : Force, Dextérité, Âge, Sexe, % de Points de Vie, Vivant ou Mort, Dons, Électricité, etc.) peut-être vérifié (compté) dans une des conditions commençant par: ''Quantity -''. |
=== Waypoint === | === Waypoint === | ||
Ligne 35 : | Ligne 31 : | ||
=== Zone === | === Zone === | ||
− | + | Ajoutées dans l'onglet{{Faux bouton|Zone|couleur=noir2}}de l'[[Mod:Éditeurs#.C3.89diteur_de_niveaux_.28Level_editor.29|Éditeur de niveaux]], les zones ont une forme cubique (avec une largeur, longueur et hauteur) et un nom de code unique. Plusieurs conditions déterminent la présence ou les caractéristiques de personnages dans des zones. | |
=== Exit Grid === | === Exit Grid === | ||
− | + | Zone verte en bordure d'un lieu qui permet, lorsqu'on marche au milieu de celle-ci, de quitter le lieu en cours pour rejoindre la [[Nous Aurons:Carte|carte]]. | |
== Créer un script == | == Créer un script == | ||
Ligne 46 : | Ligne 42 : | ||
# Cliquez sur {{Faux bouton|MORE|couleur=noir|bouton=oui}}. | # Cliquez sur {{Faux bouton|MORE|couleur=noir|bouton=oui}}. | ||
# Cliquez sur {{Faux bouton|LEVEL EDITOR|couleur=noir|bouton=oui}}. | # Cliquez sur {{Faux bouton|LEVEL EDITOR|couleur=noir|bouton=oui}}. | ||
− | # Accédez au menu {{Faux bouton|File|couleur=gris|bordure=noir}} puis {{Faux bouton|Open|couleur= | + | # Accédez au menu {{Faux bouton|File|couleur=gris|bordure=noir}} puis {{Faux bouton|Open|couleur=gris}}. |
− | # Ouvrez le fichier du lieu précédemment créé qui doit se terminer par '''. | + | # Ouvrez le fichier du lieu précédemment créé qui doit se terminer par '''.ent'''. |
=== Accéder aux scripts === | === Accéder aux scripts === | ||
− | Les scripts sont stockés et codés dans l' | + | Les scripts sont stockés et codés dans l'Éditeur de niveaux. |
# Cliquez sur l'onglet {{Faux bouton|Level|couleur=noir2}}. | # Cliquez sur l'onglet {{Faux bouton|Level|couleur=noir2}}. | ||
# Cliquez sur {{Faux bouton|Triggers...|couleur=gris|bordure=noir}} en bas à gauche. | # Cliquez sur {{Faux bouton|Triggers...|couleur=gris|bordure=noir}} en bas à gauche. | ||
=== Ajouter un script === | === Ajouter un script === | ||
− | Dans l'[[Mod:Éditeurs#.C3.89diteur_de_niveaux_.28Level_editor.29|Éditeur de niveaux]], un script est une série de '''conditions''' menant (si elles sont '''toutes''' vraies) à une série d''''actions'''. <font color="red">Attention: Il n'existe pas de "ou" ( | + | Dans l'[[Mod:Éditeurs#.C3.89diteur_de_niveaux_.28Level_editor.29|Éditeur de niveaux]], un script est une série de '''conditions''' menant (si elles sont '''toutes''' vraies) à une série d''''actions'''. <font color="red">Attention: Il n'existe pas de "ou" (or) dans l'Éditeur</font>. Vous pouvez créer autant de scripts que nécessaire, mais ceux-ci ne fonctionnent que dans le lieu dans lequel ils ont été ajoutés.{{Idée|Pour chaque script, ajoutez une courte description qui est facile à comprendre (exemple: ''FUITE ENNEMIS - 1 mort)''}} |
==== Conditions ==== | ==== Conditions ==== | ||
Ligne 61 : | Ligne 57 : | ||
* '''Always:''' Condition par défaut, elle est toujours vraie. Pratique quand on veut produire une action qui démarre automatiquement, comme l'assignation de variables. | * '''Always:''' Condition par défaut, elle est toujours vraie. Pratique quand on veut produire une action qui démarre automatiquement, comme l'assignation de variables. | ||
* '''Never:''' Elle est toujours fausse. Utile pour désactiver un script temporairement. | * '''Never:''' Elle est toujours fausse. Utile pour désactiver un script temporairement. | ||
− | * '''Speech Occured:''' Une fenêtre de dialogue au nom de code spécifié s'est ouverte. Peut être | + | * '''Speech Occured:''' Une fenêtre de dialogue au nom de code spécifié s'est ouverte. Peut être déclenché par scripts en utilisant l'action ''Force Speech''. |
− | * '''Skill Use Occured:''' Un personnage au nom de code spécifié a utilisé une | + | * '''Skill Use Occured:''' Un personnage au nom de code spécifié a utilisé une compétence. |
* '''Variable:''' Une variable spécifiée a une valeur déterminée. | * '''Variable:''' Une variable spécifiée a une valeur déterminée. | ||
* '''Timer:''' Un compteur au nom de code spécifié a atteint une valeur déterminée. | * '''Timer:''' Un compteur au nom de code spécifié a atteint une valeur déterminée. | ||
* '''Quantity - Team:''' Nombre d'éléments ('''<''' '''>''' ou '''=''') d'un même type d'une ''team'' spécifiée. | * '''Quantity - Team:''' Nombre d'éléments ('''<''' '''>''' ou '''=''') d'un même type d'une ''team'' spécifiée. | ||
* '''Quantity - Player:''' Nombre d'éléments ('''<''' '''>''' ou '''=''') d'un même type d'un ''player'' spécifié. | * '''Quantity - Player:''' Nombre d'éléments ('''<''' '''>''' ou '''=''') d'un même type d'un ''player'' spécifié. | ||
− | * '''Quantity - Player Kills:''' Comparaison | + | * '''Quantity - Player Kills:''' Comparaison entre deux ''players'' du nombre de personnages tués. |
* '''Quantity - Unit:''' Nombre d'éléments ('''<''' '''>''' ou '''=''') d'un même type d'une entité spécifiée. | * '''Quantity - Unit:''' Nombre d'éléments ('''<''' '''>''' ou '''=''') d'un même type d'une entité spécifiée. | ||
* '''Object Script State:''' État (activé ou non) d'un objet interactif, comme un interrupteur ou une porte. | * '''Object Script State:''' État (activé ou non) d'un objet interactif, comme un interrupteur ou une porte. | ||
− | * | + | * <s>'''WeaponMode is:''' Ces modes ne sont pas utilisés dans ''Nous Aurons''</s> |
− | * | + | * <s>'''World mode of play is:''' Le mode de jeu de ''Nous Aurons'' est toujours ''CTB''.</s> |
− | * '''Gui Open:''' Fenêtre ouverte par le joueur. '''Inv''' (Sac), | + | * '''Gui Open:''' Fenêtre ouverte par le joueur. '''Inv''' (Sac), <s>Main</s>, '''Char''' (État), '''Loot''' (Fouille), '''Steal''' (Vol), '''Barter''' (Échange), '''Options''' (Options), '''Skilldex''' (Agir), '''Pipboy''' (GPSP) et '''Speech''' (Dialogue). |
− | * | + | * <s>'''Right Click on Tab:''' Inutile.</s> |
* '''All Alive at Exit Grid:''' Vraie si tous les personnages encore vivants dans l'équipe du joueur sont dans des ''Exit Grid'', les zones vertes en bordure du lieu servant à atteindre la carte du jeu. | * '''All Alive at Exit Grid:''' Vraie si tous les personnages encore vivants dans l'équipe du joueur sont dans des ''Exit Grid'', les zones vertes en bordure du lieu servant à atteindre la carte du jeu. | ||
* '''Can See:''' Vraie si le personnage d'un ''player'' est capable d'en ''voir'' un d'un autre ''player''. Les personnages qui utilisent la Compétence ''Discrétion'' ne déclenchent pas cette condition. | * '''Can See:''' Vraie si le personnage d'un ''player'' est capable d'en ''voir'' un d'un autre ''player''. Les personnages qui utilisent la Compétence ''Discrétion'' ne déclenchent pas cette condition. | ||
− | * | + | * <s>'''Brain Extraction Complete:''' Inutile.</s> |
− | * | + | * <s>'''MP - Game Timed Out:''' ''Nous Aurons'' ne fonctionne pas en mode ''Multiplayer''.</s> |
− | * | + | * <s>'''Main Actor Alive:''' Comme la partie s'arrête quand le personnage principal meurt, cette condition équivaut à ''Always''.</s> |
==== Actions ==== | ==== Actions ==== | ||
− | Il existe 61 | + | Il existe 61 conditions. Celles qui ne sont pas recommandées sont barrées. |
* '''Center view:''' Centre la vue sur une entité spécifiée. Le reste du temps, [[Nous_Aurons:À_propos/2#Vue|la vue peut être changée librement par le joueur]]. | * '''Center view:''' Centre la vue sur une entité spécifiée. Le reste du temps, [[Nous_Aurons:À_propos/2#Vue|la vue peut être changée librement par le joueur]]. | ||
* '''Player Retreat Zone:''' Assigne une ''Retreat Zone'' à un ''player'' (zone dans laquelle les personnages d'un ''player'' se rendront si gravement blessés). | * '''Player Retreat Zone:''' Assigne une ''Retreat Zone'' à un ''player'' (zone dans laquelle les personnages d'un ''player'' se rendront si gravement blessés). | ||
* '''Player Move State - Deactivate:''' Désactive un ''player''. Il disparaît. | * '''Player Move State - Deactivate:''' Désactive un ''player''. Il disparaît. | ||
* '''Player Move State - Stationary:''' Hors combat, rend les personnages d'un ''player'' statiques. Si désactivés, ils apparaissent. | * '''Player Move State - Stationary:''' Hors combat, rend les personnages d'un ''player'' statiques. Si désactivés, ils apparaissent. | ||
− | * '''Player Move State - Perimeter:''' Hors combat, assigne | + | * '''Player Move State - Perimeter:''' Hors combat, assigne un ''Perimeter'' à un ''player'' (zone dans laquelle les personnages essaient de rester). |
− | * '''Player Move State - Wander:''' Hors combat, assigne | + | * '''Player Move State - Wander:''' Hors combat, assigne un périmètre à un ''player'' (zone dans laquelle il erre). |
* '''Player Move State - Follow:''' Hors combat, assigne le nom de code d'un personnage à un ''player''. Les personnages de ce ''player'' essaient de le suivre. | * '''Player Move State - Follow:''' Hors combat, assigne le nom de code d'un personnage à un ''player''. Les personnages de ce ''player'' essaient de le suivre. | ||
− | * '''Player Move State - WayPoint:''' Hors combat, assigne le premier ''WayPoint'' (index 0) d'un nom spécifié aux personnages d'un ''player''. Ils marcheront (dépendamment de leur ''Priority'') vers ce premier ''WayPoint'' | + | * '''Player Move State - WayPoint:''' Hors combat, assigne le premier ''WayPoint'' (index 0) d'un nom spécifié aux personnages d'un ''player''. Ils marcheront (dépendamment de leur ''Priority'') vers ce premier ''WayPoint'' et vers d'autres ''WayPoints'' du même nom s'ils existent.{{Avertissement|Si le script est marqué comme{{Faux bouton|✓Preserve|couleur=noir2}}, les personnages ne marcheront jamais au delà de l'index 0.}} |
* '''Player Move State - Flee:''' Donne l'ordre aux personnages d'un ''player'' de se sauver dans une zone spécifiée. | * '''Player Move State - Flee:''' Donne l'ordre aux personnages d'un ''player'' de se sauver dans une zone spécifiée. | ||
− | * '''Player Priority - Move State:''' | + | * '''Player Priority - Move State:''' Priorité accordée par les personnages d'un ''player'' au déplacement. Au dessus de 5, les personnages courent au lieu de marcher. En bas de 4, ils font quelques pas, s'arrêtent, font quelques pas, s'arrêtent, etc. |
− | + | * '''Player Priority - Aggression:''' Chance que les personnages d'un ''player'' en attaquent un autre. L'alignement de leur ''team'' doit être assignée comme agressive pour que ça fonctionne. | |
− | + | * '''Player Priority - Communication:''' Distance à laquelle les personnages d'un ''player'' se rendent compte que les autres personnages de leur ''player'' sont attaqués. À 0, ils ne réagissent jamais, à 10, leur "vision" couvre toute la carte. | |
− | * '''Player Priority - Mobility:''' | + | * '''Player Priority - Mobility:''' |
− | * '''Player Priority - Kill | + | * '''Player Priority - Kill Player:''' |
− | * ''' | + | * '''Player Priority - Kill Unit:''' |
− | * ''' | + | * '''Set Variable:''' |
− | * '''Set | + | * '''Set Timer:''' |
− | * ''' | + | * '''Stop Timer:''' |
− | * ''' | + | * '''Show Timer:''' |
− | + | * '''Wait:''' | |
− | * ''' | + | * '''Add Objective:''' |
− | * ''' | + | * '''Complete Objective:''' |
− | * | + | * <s>'''Set Death Text:''' Non utilisé.</s> |
− | * ''' | + | * '''End Mission:''' |
− | + | * '''Goto Mission:''' | |
− | + | * <s>'''Toggle Exit Grids:''' Les ''Exit Grids'' sont toujours fonctionnelles dans ''Nous Aurons''.</s> | |
− | * ''' | + | * '''Set Click Speech:''' |
− | * ''' | + | * '''Set Random Speech:''' |
− | * ''' | + | * '''Play Wav:''' |
− | * ''' | + | * '''Kill Entity:''' |
− | * ''' | + | * '''Set object script state:''' |
− | + | * '''Set Team Alignment Matrix:''' | |
− | * ''' | + | * '''Display World Text:''' |
− | + | * <s>'''Start Combat Mode:''' Le mode de jeu de ''Nous Aurons'' est toujours ''CTB''.</s> | |
− | + | * <s>'''Add Reputation:''' Utilisé par les scripts généraux pour déterminer l'électricité disponible.</s> | |
− | + | * '''Add Experience:''' | |
− | + | * '''Add Experience to Player:''' | |
− | + | * '''Force Speech:''' | |
− | + | * '''Change Team:''' | |
− | + | * '''Change Player:''' | |
− | + | * '''Move Unit:''' | |
− | + | * '''Give Item to NPC:''' | |
− | + | * '''Give Item from NPC to Human:''' | |
− | + | * '''Lock/Unlock Door:''' | |
− | + | * <s>'''Jam/Unjam Minimap:''' Utilisé par les scripts généraux en fonction de l'électricité disponible.</s> | |
− | + | * '''Ping Minimap:''' | |
− | + | * <s>'''Add text to Debrief text list:''' Utilisé seulement à la fin du jeu.</s> | |
− | + | * <s>'''Display Debrief window and text:''' Utilisé seulement à la fin du jeu.</s> | |
− | + | * '''Zone of death:''' | |
− | + | * '''Play Bink Movie:''' | |
− | + | * '''Modify RecruitPool list:''' | |
− | + | * <s>'''Add items to QuarterMaster list:''' Utilisé par les scripts généraux pour mettre des objets dans la glacière.</s> | |
− | + | * '''Set Mission State:''' | |
− | + | * <s>'''Open Mission:''' Utiliser plutôt ''Set Mission State''.</s> | |
− | + | * '''Mission Complete:''' | |
− | + | * '''Set Random Encounter Enable:''' | |
− | + | * <s>'''Brain Extraction:''' Inutile</s> | |
− | + | * <s>'''MP - Team with the Most Wins:''' ''Nous Aurons'' ne fonctionne pas en mode ''Multiplayer''.</s> | |
− | + | * <s>'''MP - Team with the Least Wins:''' ''Nous Aurons'' ne fonctionne pas en mode ''Multiplayer''.</s> | |
− | + | * <s>'''MP - Team Meeting Condition Wins:''' ''Nous Aurons'' ne fonctionne pas en mode ''Multiplayer''.</s> | |
− | + | * <s>'''MP - Team Victory:''' ''Nous Aurons'' ne fonctionne pas en mode ''Multiplayer''.</s> | |
− | + | {{Idée|Chaque série d'action peut être exécutée une seule fois, ou à chaque fois que les conditions sont remplies. Pour se faire, cochez {{Faux bouton|Preserve|couleur=noir2}} à droite de {{Faux bouton|✔ Conditions|couleur=noir2}}{{Faux bouton| Actions|couleur=noir2}}}} | |
− | + | ||
− | + | === Importer/Exporter des scripts === |