Comment la conversation de script entre deux ou plusieurs PNJ


Une conversation entre deux scriptée de base PNJ est assez simple à mettre en place. Trois ou plus PNJ de parler les uns aux autres, en particulier si vous voulez faire quelque chose en plus rester immobile, est plus complexe. Nous allons couvrir toutes ces possibilités, à commencer par le plus simple.







Création d'une conversation entre deux scriptée de base PNJ

Il y a deux façons simples pour PNJ de parler les uns aux autres:

  • Un PNJ avec un paquet Trouver ciblant un autre PNJ démarre automatiquement une conversation avec le second APN, en commençant par le sujet de conversation BONJOUR. Ceci est la même façon que les PNJ démarrent des conversations au hasard entre eux.
  • Utilisez StartConversation pour déclencher la conversation. Cela peut être utile si vous voulez commencer la conversation avec un sujet personnalisé (avec quelque chose en plus BONJOUR).

Afin de forcer les PNJ à avoir une conversation particulière, vous devez mettre en place les infos de dialogue qu'ils utiliseront afin qu'ils lient ensemble dans une conversation complète. Les principes de base sont les suivants:

1. La façon la plus simple de faire une conversation est de créer un nouveau sujet pour chaque réponse sur l'onglet Conversation de la fenêtre Quest, créer une information pour chaque thème, et utiliser le « Lien vers » et « Lien de » champs pour relier la infos ensemble dans l'ordre que vous voulez être annoncé. Ceci est très bien pour une conversation très courte, mais la création d'un nouveau sujet pour chaque information peut devenir lourd pour les conversations plus longues.







2. Une façon plus sophisiticated (et la façon dont la plupart des conversations dans Oblivion ont été créés) est d'utiliser un seul sujet, avec les infos conditionalized sur une variable qui est incrémenté dans le domaine des résultats de chaque information. Regardez l'onglet Conversation de la quête de MSConversations dans le fichier maître Oblivion pour quelques exemples de la façon dont cela est fait. Les étapes de Importants sont les suivantes:

Création d'un discours prononcé par un seul PNJ

Mise en place d'un « discours » par un PNJ (où il est le seul à parler) est en fait une variante du procédé ci-dessus. Vous pouvez utiliser StartConversation pour lui dire de parler à lui-même (par exemple BurdRef.Startconversation BurdRef), ou mettre en place la conversation afin que toutes les infos sont « Next Président: Self » (par exemple, vous avez un deuxième APN présent, mais il ne parle jamais ).

Création d'une conversation entre plusieurs PNJ

Obtenir plus de deux PNJ de parler les uns aux autres, ou d'obtenir des PNJ de parler et se déplacer en même temps, il faut abandonner le générateur de conversation du jeu complètement, et la manipulation tout par le script. Les commandes clés sont Say et SayTo. en combinaison avec des minuteries de script qui permettent de suivre quand il est temps pour le prochain APN de parler. Toutes les conversations PNJ dans la séquence de création de caractères ont été traitées de cette façon.

  • Créer un script de recherche pour lancer la minuterie principale, et suivre les variables de conversation (voir scénario CharGenQuest). La minuterie principale est une minuterie de script standard:
  • Créer une variable dans le script de quête pour suivre dont le tour est de parler. Par exemple, dans le script CharGenQuest:
  • Dans le script de chaque PNJ, ajoutez une section qui est à la recherche de la variable de quête pour leur dire qu'il est temps de parler. Dites et SayTo revenir le temps (en secondes) que le dialogue spécifié prendra la parole, donc définit la variable de la minuterie de recherche et le script du NPC. Par exemple, dans le script de Glenroy:
  • La dernière étape consiste à créer réellement le dialogue. Chaque information doit être conditionalized aussi bien sur le haut-parleur et une variable de suivi (de sorte que vous pouvez utiliser un seul sujet dans vos scripts, par exemple CharGenMain). Le champ de chaque information incrémente la variable de suivi des résultats et définit les variables de haut-parleur et cible (si nécessaire) pour l'orateur suivant. Par exemple:

Voir la quête CharacterGen, sujet CharGenMain pour un vaste exemple.







Articles Liés