Oyez, oyez !
Les résultats du vote sur les meilleurs RPG de tous les temps sont désormais dévoilés dans ce message !
Merci à toutes et à tous pour votre participation !
N'hésitez pas à aller commenter, ajouter des jeux auxquels vous n'auriez pas pensé...
Les résultats du vote sur les meilleurs RPG de tous les temps sont désormais dévoilés dans ce message !
Merci à toutes et à tous pour votre participation !
N'hésitez pas à aller commenter, ajouter des jeux auxquels vous n'auriez pas pensé...
[DLG] Comment faire dialoguer des persos customisés ?
- Freddy_Gwendo
- Adepte de Grondemarteau
- Orbe ancien
- Messages : 5877
- Enregistré le : sam. 23 avr. 2011, 00:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
[DLG] Comment faire dialoguer des persos customisés ?
.
A l'heure de finaliser la quête de ma Chevaucheuse de licorne, je me pose une question existentielle : Que se passe-t-il si le joueur décide de créer une équipe à sa sauce et d'attribuer le kit à un perso autre que CHARNAME ?
Bref, quels fichiers de dialogues sont concernés par ces persos ? Et d'ailleurs, en disposent-ils ? Je n'en suis pas certain du tout...
Bref, quels fichiers de dialogues sont concernés par ces persos ? Et d'ailleurs, en disposent-ils ? Je n'en suis pas certain du tout...
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Isaya
- Adepte de Grondemarteau
- Planaire
- Messages : 6990
- Enregistré le : mar. 22 juil. 2003, 21:03
- Localisation : Plaisir
- Contact :
- Statut : Hors ligne
.
De façon générale le PJ s'exprime au travers du dialogue de la personne avec laquelle il parle. Je ne pense pas qu'il y ait de différence pour les autres personnages créés par le joueur. Eventuellement il faudrait ouvrir certaines choses de Player1 à d'autres dans des scripts qui engagent la conversation, par exemple.
A titre d'exemple de contraintes, pour le composant Dialogues initiés par le joueur, BG1 NPC introduit une pseudo-réplique (écrite comme un texte descriptif de situation) qui va être attribué au PNJ du groupe afin d'offrir au joueur, sous forme de réponses, le choix de la façon de véritablement initier l'échange.
Par ailleurs BG2 Tweaks modifie MULTIG.dlg pour intervenir dans dans le processus au moment de virer du groupe un personnage créé par le joueur. Il n'est pas exclus qu'il puisse être enrichi.
Enfin tu trouveras certains textes dans Player1.dlg. A première vue cela ne concerne que des messages communiqués au joueur en tant que pensées, je n'ai pas l'impression qu'il y ait des réponses possibles. Je pense qu'il y a par ailleurs des scripts généraux ou de zones qui déclenchent ce dialogue en fonction de circonstances. Il n'est pas forcément adapté à ton besoin.
A titre d'exemple de contraintes, pour le composant Dialogues initiés par le joueur, BG1 NPC introduit une pseudo-réplique (écrite comme un texte descriptif de situation) qui va être attribué au PNJ du groupe afin d'offrir au joueur, sous forme de réponses, le choix de la façon de véritablement initier l'échange.
Par ailleurs BG2 Tweaks modifie MULTIG.dlg pour intervenir dans dans le processus au moment de virer du groupe un personnage créé par le joueur. Il n'est pas exclus qu'il puisse être enrichi.
Enfin tu trouveras certains textes dans Player1.dlg. A première vue cela ne concerne que des messages communiqués au joueur en tant que pensées, je n'ai pas l'impression qu'il y ait des réponses possibles. Je pense qu'il y a par ailleurs des scripts généraux ou de zones qui déclenchent ce dialogue en fonction de circonstances. Il n'est pas forcément adapté à ton besoin.
:!: 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 !
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 !
- Freddy_Gwendo
- Adepte de Grondemarteau
- Orbe ancien
- Messages : 5877
- Enregistré le : sam. 23 avr. 2011, 00:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
.
En gros, je suis coincé ici :
Je voudrais que Player2 à 6 puissent répondre et je dois leur assigner un .dlg pour cela. Mais lequel en sachant qu'ils peuvent être aussi bien des PNJ que des persos créés ?
Code : Tout sélectionner
IF ~Kit(Player1,GW_UNICORN_RIDER)~ ==> <PLAYER1>... Quel étrange patronyme pour une suivante de Lurue. Mais il est vrai que tu n'appartiens pas au peuple de .
IF ~Kit(Player2,GW_UNICORN_RIDER)~ ==> <PLAYER2>... id
...
IF ~Kit(Player6,GW_UNICORN_RIDER)~ ==> <PLAYER6>... id.
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Isaya
- Adepte de Grondemarteau
- Planaire
- Messages : 6990
- Enregistré le : mar. 22 juil. 2003, 21:03
- Localisation : Plaisir
- Contact :
- Statut : Hors ligne
.
J'aurais dû m'en douter. Pour ma part, j'avais exclus cette situation de ma réponse car je trouve inutilement complexe de vouloir gérer les modifications de "triche" du joueur tant les situations peuvent être sans fin. Et par ailleurs, cela fait bizarre de vouloir prendre en main la réaction d'un PNJ qui est supposé avoir une personnalité scriptée par son auteur. Ou quand on le fait, dans un banter ou une interjection, on sait pertinemment quel dialogue sera concerné et il suffit d'utiliser un CHAIN, par exemple.
Tu trouveras peut-être une solution générique en utilisant StartDialogOverride afin d'imposer temporairement un nouveau dialogue à un personnage avant d'initier un dialogue.
Tu trouveras peut-être une solution générique en utilisant StartDialogOverride afin d'imposer temporairement un nouveau dialogue à un personnage avant d'initier un dialogue.
:!: 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 !
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 !
- Freddy_Gwendo
- Adepte de Grondemarteau
- Orbe ancien
- Messages : 5877
- Enregistré le : sam. 23 avr. 2011, 00:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
.
Au départ, je comptais uniquement créer cette quête pour CHARNAME, mais je me suis aperçu que pas mal de joueurs utilisaient Level1NPC pour modifier les classes et les kits des PNJ vanilla et que de nombreux autres constituaient leur propre équipe.
Et je trouvais dommage de zapper la possibilité de trouver une licorne compagnon pour un perso du groupe autre que CHARNAME.
Mais si pour ça je dois pondre une usine à gaz, je vais peut-être me contenter d'une quête pour CHARNAME.
Et je trouvais dommage de zapper la possibilité de trouver une licorne compagnon pour un perso du groupe autre que CHARNAME.
Mais si pour ça je dois pondre une usine à gaz, je vais peut-être me contenter d'une quête pour CHARNAME.
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Freddy_Gwendo
- Adepte de Grondemarteau
- Orbe ancien
- Messages : 5877
- Enregistré le : sam. 23 avr. 2011, 00:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
.
Bon, j'ai vérifié plusieurs mods qui tentent de contourner ce problème :
1. Il faut des centaines de lignes de dialogues pour présenter une équipe à un PNJ (mod Djinni companion).
2. Aucun ne permet aux PNJ non officiels ou non modés de participer à un dialogue autre que recrutement-départ du groupe.
J'abandonne donc ce projet : la quête ne sera disponible que pour <CHARNAME>.
1. Il faut des centaines de lignes de dialogues pour présenter une équipe à un PNJ (mod Djinni companion).
2. Aucun ne permet aux PNJ non officiels ou non modés de participer à un dialogue autre que recrutement-départ du groupe.
J'abandonne donc ce projet : la quête ne sera disponible que pour <CHARNAME>.
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Freddy_Gwendo
- Adepte de Grondemarteau
- Orbe ancien
- Messages : 5877
- Enregistré le : sam. 23 avr. 2011, 00:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
.
Suite...
J'ai contourné le problème et je ne n'ai plus besoin de réponse à la question précédente.
En revanche, j'ai un petit souci de dialogue.
Background : Un médaillon permet de convoquer une licorne. Cette dernière s'adresse uniquement à celui qui possède le médaillon.
Tout va bien sauf lorsque je tente de coder ses répliques lorsque c'est un autre perso qui initie le dialogue.
En gros, si le possesseur du médaillon est <CHARNAME>, ça donne ceci :
Mais ce que je veux faire, c'est remplacer !InPartySlot(LastTalkedToBy,0) - c'est toujours <CHARNAME> - par une variable indiquant que ce n'est pas le possesseur du médaillon (LastSummonerOf(Myself)) qui initie le dialogue.
Des idées ? Notamment sur l'utilisation de IsGabber() et Name() avec des variables autres que des noms de personnages ?
J'ai contourné le problème et je ne n'ai plus besoin de réponse à la question précédente.
En revanche, j'ai un petit souci de dialogue.
Background : Un médaillon permet de convoquer une licorne. Cette dernière s'adresse uniquement à celui qui possède le médaillon.
Tout va bien sauf lorsque je tente de coder ses répliques lorsque c'est un autre perso qui initie le dialogue.
En gros, si le possesseur du médaillon est <CHARNAME>, ça donne ceci :
Code : Tout sélectionner
CHAIN IF ~[color="#FFFF00"]!InPartySlot(LastTalkedToBy,0) RandomNum(2,1)[/color]~ GWLICORS GWLicorS_NoCharname1
@78 // ~Désolée, <GABBER> ! Je ne m'adresse qu'au possesseur du médaillon~ ~Désolée, <GABBER> ! Je ne m'adresse qu'à la détentrice du médaillon~
EXIT
CHAIN IF ~[color="#FFFF00"]!InPartySlot(LastTalkedToBy,0) RandomNum(2,2) !Kit(LastSummonerOf(Myself),GW_UNICORN_RIDER)[/color]~ GWLICORS GWLicorS_NoCharname2
@79 // ~Je veux parler à l'Elu de la Grande Cavalière.~ ~Je veux parler à l'Elue de la Grande Cavalière.~
EXIT
CHAIN IF ~[color="#FFFF00"]!InPartySlot(LastTalkedToBy,0) RandomNum(2,2) Kit(LastSummonerOf(Myself),GW_UNICORN_RIDER)[/color]~ GWLICORS GWLicorS_NoCharname3
@80 // ~Je veux parler à l'Elue de Lurue.~
EXIT
Des idées ? Notamment sur l'utilisation de IsGabber() et Name() avec des variables autres que des noms de personnages ?
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Freddy_Gwendo
- Adepte de Grondemarteau
- Orbe ancien
- Messages : 5877
- Enregistré le : sam. 23 avr. 2011, 00:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
.
Près de quinze jours plus tard : pas d'idées ou c'est vraiment impossible ?
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité