La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
FAQ
Rechercher
Liste des Membres
Groupes d'utilisateurs
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
La date/heure actuelle est 27/11/2024 18:02:21
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Voir le sujet précédent ¤ Voir le sujet suivant | |
---|---|
Auteur | Message |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Bonjour à tous,
On petite question concernant les variables. Voilà, lorsque un PNJ donne une mission au joueur, j'initialise un variable de type string du genre vMissionXXXEtat à "DONNEE", puis suivant l'avancement elle passe à "FAITE" puis "TERMINEE" que je stocke dans en GetModule() afin de pouvoir l'utiliser en dehors des dialogues.... Mon interogation porte sur le fait qu'en règle général, il vaut mieux utiliser des variables en integer pour des questions de place mémoire. A votre avis c'est genant si je continue à utiliser des variables en string (beaucoup plus parlante que des 1,2,3,... Est-ce que le problème de mémoire est important à prendre en compte ? Merci. _________________ 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 | |
kiky.le.magnifique Homme très gay Messages: 907 Localisation: Camping de la nation martienne... |
Ha mon avis, c'est pas les variables qui vont faire laguer ton module!
Du moment que tu évites un max les OnHeart, les DelayCommand, et les acces fréquents à la base bioware, c'est déjà pas mal... M'enfin, ce n'est qu'un avis perso, sans calcul, sans preuve, sans calcul, juste au feeling quoi, donc attend p'tête une confirmation (ou réfutation ) d'un autre avant ^^ Par contre d'empiler TOUTES tes variables dans le GetModule, je sais pas si c'est l'idéale, j'ai cru comprendre que trop de variable sur un même objet, c pas trop bon... _________________ http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin! |
Revenir en haut | |
olfleouf Acolyte Messages: 35 |
Je pense globalement comme kiky.le.magnifique pour ce qui est de la mémoire, mais je me permet de te rappeler que tu peux aussi commenter ton code à chaque fois pour dire ce que signifie le 1, 2 où 3, c'est aussi très parlant
Sinon j'ai pas compris : Citation : que je stocke dans en GetModule() afin de pouvoir l'utiliser en dehors des dialogues.... Ben pourquoi? Si tu la met sur le joueur tu peux aussi la récupérer dans d'autres cas, par exemple avec des GetEnteringObject, enfin bref sauf des cas vraiment spéciaux (que je ne connais pas) il y a toujours moyens de récupérer le joueur _________________ Arkanis, forum jeux de rôle dungeons et dragons 3.5 |
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Ok merci...
Pour l'objet à qui attribuer la variable, j'avais commencer à mettre mes variables sur le GetPCSpeaker(), mais comme ensuite, suivant une action réalisé, je devais changer l'état de cette variable (en dehors d'un dialogue), j'ai essayé en utilisant le GetFirstPC() (dans mon cas c'est un jeu solo, donc un seul PC) mais il semble que GetPCSpeaker et GetFirstPC ne renvoie pas le même objet, même s'il n'y a qu'un seul joueur, enfin sauf si je me trompe car en tout cas mon truc marchait pas... _________________ 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 | |
olfleouf Acolyte Messages: 35 |
Normalement ca doit bien te renvoyer le même objet, le joueur, je ne vois pas d'autre solution. La seule possibilité que je verrais est que si le dialogue n'a qu'une branche (pas de réponse) GetPCSpeaker retourne un objet_invalid je crois, mais sinon dans un solo GetFirstPC et GetPCSpeaker c'est totalement pareil
_________________ Arkanis, forum jeux de rôle dungeons et dragons 3.5 |
Revenir en haut | |
kiky.le.magnifique Homme très gay Messages: 907 Localisation: Camping de la nation martienne... |
Je vois pas la différence, question ressources,
entre tout stocké sur GetModule ou sur le PC, c'est grave docteur? Je disais que ce qui me genait, c'était que tu stockait tout sur un seul objet, mais que ce soit le module ou le joueur, c kif kif bourico pour moi... M'enfin, je peux me trompé bien sur... Moi, perso, je stock ça sur les PNJ qui donne la quete ^^ Ou même des fois, sur le placeable qui contient l'objet à trouver Tout ça dans le soucie de répartir mes variables sur plusieurs objets... Personne peut dire si c bien ou mal de stocker plusieurs variable sur un même objet? _________________ http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin! |
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Bon, peut-être que le problème venait d'autre part... je vais réessayer de mettre mes variables sur le joueur en utilisant une fois GetPCSpeaker et une fois GetFirstPC, c'est vrai que j'avais été surpris que ça ne marche pas (pas même objet) mais comme je le dis ci-dessus, peut-être était-ce une autre erreur...
Merci pour vos conseils en tout cas. _________________ 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 | |
Mathrim Cauthon Ecuyer Messages: 54 |
@kiki: je suis plutôt novice en conception, mais voilà mon propre avis.
Tout dépend du type de module que tu conçois. Dans le cas d'un monde persistant, il faut que les variables se trouvent sur les PJ, afin d'éviter que seul le premier joueur interrogeant un PNJ (par exemple) n'ait accès à une quête. Dans le cas d'un module conçu pour être joué en multi, il vaut mieux que les variables se trouvent sur les objets, afin que la même quête ne soit pas déclenchée deux fois de suite par deux PJ différents. Dans le cas d'un module conçu pour être joué en solo, je pense que ça a peut d'importance. Personnellement, j'ai tendance à associer mes variables aux objets comme tu le fais, pour éviter entre autre de créer des doublons dans mes variables. Maintenant, j'apprécierais beaucoup l'opinion d'un expert sur le sujet Edit: après mure réflexion (en bon français, après avoir dû recommencé quelques scripts ça et là), je me rend compte qu'il y a quand même un gros problème lié à l'utilisation de variable associée à des objets plutôt qu'à des PJ: si l'objet disparaît, certaines indications disparaissent avec lui. Entre autre, si un PNJ quitte une zone, on ne peut cependant lui permettre d'être détruit, et on doit donc le laisser dans un endroit inaccessible au PJ, ce qui manque singulièrement d'élégance. _________________ It's time to toss the dice. |
Revenir en haut | |
olfleouf Acolyte Messages: 35 |
C'est pour ca qu'il utilise GetModule, qui ne risque pas d'être détruit
Bon après bien sur je pense quand même que la meilleure solution reste d'assigner la variable sur le pj, c'est plus propre. _________________ Arkanis, forum jeux de rôle dungeons et dragons 3.5 |
Revenir en haut | |
Mathrim Cauthon Ecuyer Messages: 54 |
Mais ça ne risque pas de poser de problèmes dans le cas d'un module multijoueur, dans lequel tous les joueurs appartiennent à un même groupe ? Si un des PJ déclenche une quête en parlant à un PNJ, que le groupe finit la quête, et que toutes les variables liées à la quête se trouvent associées au PJ, un autre PJ du même groupe ne risque-t-il pas de re-déclencher la quête ?
_________________ It's time to toss the dice. |
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
A mon humble avis pour un module multi-joueur il faut effectivement assigner les variables soit à un objet soit au module pour qu'un autre joueur ne déclenche pas à son tour la même quête... quoique ça pourrait être interessanr que plusieurs joueurs aient la même quête et au plus rapide de récupérer la récompense.. En tout cas pour mon module, come c'est un module solo, ce n'est pas un problème d'assigner les variables au joueur ou à un objet ou au module...
_________________ 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 | |
Mathrim Cauthon Ecuyer Messages: 54 |
En fait, je viens de voir qu'il existait une fonction nommée "SetLocalIntOnAll", qui a la même syntaxe que SetLocalInt, mais qui permet d'assigner des variables locales à l'ensemble du groupe dont fait partie le PJ. A noter qu'il semble que la cible doivent être obligatoirement un PJ (ce qui semble normal).
_________________ It's time to toss the dice. |
Revenir en haut | |
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
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