La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 17/05/2024 03:56:24


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Jaheira 007
Seigneur
Inscrit le: 24 Juin 2004
Messages: 223
Répondre en citant
Posté le : 05/08/2004 20:36:40 Sujet du message : Dialogue aléatoire

Pour mes roturiers je leur ai attribué à chacun le même dialogue. Bien sur avec pleins de phrases différentes.
Dans mon cas, j'ai fais 10 phrases ayans chacune 1 chance sur 10 de tomber: Evidement dans l'onglet Action conséquente, et évidement sa marche pas terrible. Souvent en engageant le dialogue avec un roturier, le pnj se tourne vers moi mais ne dis rien et continue à me fixer et à me suivre des yeux quant je bouge. Je suis obligé de recliquer sur le pnj pour que la discussion commence.
C'est bizarre non? Pourtant je me suis assurée de bien avoir mis le même script "1foissur10" sur toutes mes phrases...
Il n'y a pas une solution? Genre un truc pour forcer la discussion quant on clique sur un pnj?
_________________
La nature reprendra ses droits ici, aprés notre passage.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Tuyen
Demi-dieu
Inscrit le: 23 Nov 2002
Messages: 460
Localisation: Chez moi
Répondre en citant
Posté le : 05/08/2004 21:48:38 Sujet du message :

C'est bizarre que t'as à recliquer deux fois sur le PNJ pour qu'il te parle...

Normalement s'il est de faction non-hostile (marchand, populace, défenseur) et qu'il a un dialogue, il va te parler directement...

Bien sûr pour les textes aléatoires, il faut mettre la condition dans l'onglet 'condition d'exécution'

Sinon j'ai bien un script qui marche pour les dialogues aléatoires...
Met chacun de ces scripts dans 'condition d'exécution' de chaque début de ligne dans ton dialogue. On suppose que t'as 10 possibilités de dialogue. :

NWScript :

// 1iere ligne
int StartingConditional()
{
    int iRandom = Random (10);
    return (iRandom == 0);

}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


NWScript :


int StartingConditional()
{
    int iRandom = Random (9);
    return (iRandom == 0);

}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


NWScript :


int StartingConditional()
{
    int iRandom = Random (8);
    return (iRandom == 0);

}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


etc...

NWScript :

avant dernière ligne (9ième)
int StartingConditional()
{
    int iRandom = Random (1);
    return (iRandom == 0);

}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


Pour la dernière ligne (si t'en a 10 bien sur) tu met rien comme condition.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
Fantome
Ecuyer
Inscrit le: 06 Nov 2002
Messages: 63
Répondre en citant
Posté le : 05/08/2004 22:59:05 Sujet du message :

Bonsoir,

Jaheira, tu veux pas poster ton script afin de voir si le pb vient pas de lui ?

Merci.

a+
_________________
Arcantia
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Laxam
Légende vivante
Inscrit le: 12 Avr 2004
Messages: 425
Localisation: Lyon
Répondre en citant
Posté le : 06/08/2004 16:58:59 Sujet du message :

Plus simple serait de mettre ce script sur la condition d'exécution de chacune de tes phrase du NPC :

NWScript :
int StartingConditional()
{
    int iRandom = Random (10);
    if (iRandom == 1)
        return TRUE;
    return FALSE;
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.




Et de ne pas oublier de laisser la dernière phrase sans condition (à mon avis c'est là ton erreur) car sinon il y a risque qu'aucune des 10 phrases ne soit ok, si par exemple c'est toujours un nombre différent de 1 qui sort.
_________________
Mon site NWN nouvelle version et mon module Boisperdu en ligne ! Et maintenant un FORUM
La première version française de la doc du NPC Activities (version 2.0)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Jaheira 007
Seigneur
Inscrit le: 24 Juin 2004
Messages: 223
Répondre en citant
Posté le : 06/08/2004 18:26:32 Sujet du message :

En fait j'ai utilisé l'assistant de script dans l'onglet condition d'exécution et il m'a donné ce script que j'ai collé sur les 10 prenières phrases:

NWScript :
int StartingConditional()
{

   
    if(Random(10) >= 1)
        return FALSE;

    return TRUE;
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


Je vais assayer d'enlever cette condition pour la dermiére phrase.
_________________
La nature reprendra ses droits ici, aprés notre passage.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Jaheira 007
Seigneur
Inscrit le: 24 Juin 2004
Messages: 223
Répondre en citant
Posté le : 06/08/2004 18:34:10 Sujet du message :

Oui c'était bien ça! Il suffit juste d'enlever la condition à la dernière ligne! Mais comment l'avez vous su qu'il fallait faire ça?
_________________
La nature reprendra ses droits ici, aprés notre passage.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Laxam
Légende vivante
Inscrit le: 12 Avr 2004
Messages: 425
Localisation: Lyon
Répondre en citant
Posté le : 06/08/2004 19:10:25 Sujet du message :

C'est mathématique...

En fait, le test que tu as mis qui a exactement le même effet que celui que je t'ai donné dit :

je prends un chiffre aléatoire de 1 à 10 (ou peut-être 0 à 10, à vérifier)

Si le chiffre est supérieur ou égal à 1 alors je retourne FAUX => la phrase ne s'affiche pas.
Sinon je retourne VRAI => la phrase s'affiche.

En fait pour chacune de tes phrases, il retire un chiffre aléatoire donc si tu as pas de chance, il retourne toujours FAUX et ce pour chacune de tes 10 phrase et donc à la dernière, il ne l'affiche pas et affiche donc ... ben rien.

Alors que si tu enlèves la dernière condition, il reste toujours la dernière phrase valide qui pourra alors s'afficher si toutes les autres ne s'affiche pas.

Pour bien comprendre, il faut savoir que lorsque tu mets plusieurs phrases pour le NPC sur un même noeud, il affichera que la première (et oui le NPC ne peut pas choisir une réponse comme un jioueur qui peut avoir un choix multiple). La seule façon d'afficher la phrase suivante c'est de ne pas afficher celle d'avant !! en mettant une condition d'exécution.

Voilà j'espère que ça t'apportera la lumière dans tes ténèbres...
_________________
Mon site NWN nouvelle version et mon module Boisperdu en ligne ! Et maintenant un FORUM
La première version française de la doc du NPC Activities (version 2.0)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Montrer les messages depuis :
Page 1 sur 1 ¤


Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Sauter vers:
FAQ | Rechercher | Liste des Membres | Groupes d'utilisateurs | S'enregistrer | Profil | Se connecter pour vérifier ses messages privés | Connexion
Powered by phpBB 2.* [m] © 2001, 2002 phpBB Group
Theme rewritten in beautiful XHTML code by Baldurien.
Thème "La Bibliothèque de Neverwinter" crée par Kruger
Traduction par : phpBB-fr.com
Page generated in 27.389ms