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 23/11/2024 21:11:26
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 |
arain gend Légende vivante Messages: 371 Localisation: quecpar en france |
je voudrais faire un scriptqui fait que le joueur est teleporté dans une nouvelle zone en passant par une zone de transitions qui est censé mené ailleurs mais uniquement quand il a remplis certain objectif.
voila merci d'avance. ps: je cherche un volontaire pouir m'expliquer le nwscripts me contacter par mp. |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
Si je comprends bien, tu veux une zone de transition à deux directions: - qd la condition n'est pas remplie - qd la condition (quête sans doute) est remplie. Allons-y !! NWScript : // A placer dans le OnClick de la zone de transition void main() { object oClicker = GetClickingObject(); // si la condtion est remplie... if(GetLocalInt(GetModule(), "Quest") >= 20) {AssignCommand(oClicker,JumpToObject(GetWaypointByTag("WP_Remplie")));} // si la condition n'est pas remplie else {AssignCommand(oClicker,JumpToObject(GetWaypointByTag("WP_Non_Remplie")));} } _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
arain gend Légende vivante Messages: 371 Localisation: quecpar en france |
merci a premiere vue ça ressemble a ce que je cherche mais comment je fais pour choisir la condition?
|
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
hum, hum...
Alors là on entre effectivement dans les délices du nwscript... C'est la ligne if(GetLocalInt(GetModule(), "Quest") >= 20) qui est importante... Je prends un exemple simple, la condition est la mort du gardien de cette zone. Dans le OnDead de celui-ci, tu modifies la variable Quest avec le script suivant (la variable passe à 20) NWScript :
// OnDead du Gardien void main() { // SetLocalInt veut dire modification de la variable SetLocalInt(GetModule(), "Quest", 20); } Si je reviens sur le 1e script... Le GetLocalInt permet de regarder et de vérifier la variable (elle est à 20 la condition est remplie, la téléportation est modifiée...) Bon courage _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
arain gend Légende vivante Messages: 371 Localisation: quecpar en france |
merci mais j'ais toujours pas tout compris tu peut m'expliquer comment je determine la condition.
|
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Heu.... be c'est à toi de nous dire dans quelle condition tu veux que ton Pj aille dans la fameuse zone.. non ?
_________________ 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 | |
Jaheira 007 Seigneur Messages: 223 |
Oui comme par exemple: le joueur ne peut aller à la zone suivante que si et seulement si il a tué un monstre, ou si il a parlé à un pnj pour mettre le journal à jour.
Dis nous ce que tu veux exactement. _________________ La nature reprendra ses droits ici, aprés notre passage. |
Revenir en haut | |
arain gend Légende vivante Messages: 371 Localisation: quecpar en france |
la condition sera de remplir une quete.
|
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
Cela nous avance guère... Mais avançons... Si la quête se termine par une conversation de récompense par exemple. 1. Dans la conversation, à la ligne du PNJ du genre "Prenez ceci pour vous récompensez" Dans l'onglet "Actions Conséquentes" tu places le script suivant NWScript :
void main() { // SetLocalInt veut dire modification de la variable SetLocalInt(GetModule(), "Quest", 20); GiveGoldToCreature(GetPCSpeaker(), 50); GiveXPToCreature(GetPCSpeaker(), 200); } 2. Ainsi dans la zone de transition, tu peux placer le script NWScript :
// A placer dans le OnClick de la zone de transition void main() { object oClicker = GetClickingObject(); // si la condtion est remplie... if(GetLocalInt(GetModule(), "Quest") >= 20) {AssignCommand(oClicker,JumpToObject(GetWaypointByTag("WP_Remplie")));} // si la condition n'est pas remplie else {AssignCommand(oClicker,JumpToObject(GetWaypointByTag("WP_Non_Remplie")));} } J'espère que cet exemple sera éclairant... _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
arain gend Légende vivante Messages: 371 Localisation: quecpar en france |
merci mais c'est pas assez eclairant pour moi. pour remplir la quete il faut tuer un monstre j'espere que ça te permetera de me donner le bon sripts.
|
Revenir en haut | |
Fantome Ecuyer Messages: 63 |
Hello,
si c'est la mort d'un monstre, reprend la solution que t'a écrit Longbow plus haut dans son exemple de gardien. _________________ Arcantia |
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Si c'est la mort du monstre la fin de la quête, dans ce cas mets le script de longbow dans le OnDeath du monstre.
_________________ 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 | |
Eldorane Héros Messages: 298 Localisation: Moselle |
Salut à tous,
j'ai copié ce script pour mon module, mais j'arrive pas à le faire fonctionner. J'ai trois cartes concernées : - Relais du Sud - Relais du Sud HS - Campagne X Le PJ démarre sur la carte Relais du Sud. Il va ensuite sur la carte Campagne X. Là il rencontre un PNJ avec qui il engage un dialogue. Ce dialogue affecte la variable SetLocalInt(GetModule(), "Relais_Mass", 20);. Ensuite s'il veut revenir au relais, il se retrouve à la carte Relais du Sud HS. J'ai créé sur la carte Relais du Sud un déclencheur nommé RELAIS_OK. Sur la carte Campagne X un déclencheur X Sur la carte Relais du Sud HS un déclencheur nommé RELAIS_HS J'ai placé sur le ONCLIK du déclencheur X le script de Longbow adapté : NWScript :
// Zone de transition conditionnelle void main() { object oClicker = GetClickingObject(); // si la condtion est remplie... if(GetLocalInt(GetModule(), "Relais_Mass") >= 20) {AssignCommand(oClicker,JumpToObject(GetWaypointByTag("RELAIS_HS")));} // si la condition n'est pas remplie else {AssignCommand(oClicker,JumpToObject(GetWaypointByTag("RELAIS_OK")));} } Seulement si je clique sur le déclencheur X, il ne se passe rien. Je dois le définir d'une manière particulière ? Ou lui donner une transition par défaut ? Ou bien j'ai l'impression de mélanger zones de transitions et points de passages... |
Revenir en haut | |
grosraoul Ecuyer Messages: 60 |
es tu sure que les objets qui ont pour tag RELAIS_HS et RELAIS_OK sont des waypoints ?
d'apres ce que tu dis , RELAIS_HS ,RELAIS_OK et X sont des declencheurs. alors pour X c'est ok , normal que cela soit un declencheur, puisque c'est une zone de transition. Par contre d'apres le script, il faut que RELAIS_HS et RELAIS_OK soient des WAYPOINTS et non pas des déclencheurs. si ce sont des déclencheurs c'est sur que ca ne marchera pas. les déclencheurs sont les objets que tu dessines à la souris, les waypoints c'est les petits triangles jaune avec un drapeau bleu. |
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Personnellement je n'utiise pas la fonction GetWayPointByTag car j'ai souvent constaté des dysfonctionnement, j'utilise plutôt GetObjectByTag et ça marche très bien même si l'objet est un WayPoint.
_________________ 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 | |
Eldorane Héros Messages: 298 Localisation: Moselle |
heu.... je plâne un peu là...
il faudrait que je mette sur la première zone un déclencheur vers la Campagne X. Là dialogue avec le PNJ qui affecte la variable. Ensuite pour aller à la zone 3 ? Je met un déclencheur qui renvoi sur des waypoints ? Pis je corrige le script en : NWScript : // Zone de transition conditionnelle void main() { object oClicker = GetClickingObject(); // si la condtion est remplie... if(GetLocalInt(GetModule(), "Relais_Mass") >= 20) {AssignCommand(oClicker,JumpToObject(GetObjectByTag("RELAIS_HS")));} // si la condition n'est pas remplie else {AssignCommand(oClicker,JumpToObject(GetObjectByTag("RELAIS_OK")));} } |
Revenir en haut | |
Eldorane Héros Messages: 298 Localisation: Moselle |
j'ai finalement réussi à le faire marcher mais je sais pas comment...
quelqu'un peu m'expliquer ? |
Revenir en haut | |
grosraoul Ecuyer Messages: 60 |
y'a pas de raisons que ca marche pas eldorane, le script que tu as mis est correct a condition que RELAIS_HS et RELAIS_OK soient des waypoint et non pas des declencheurs.
j'imagine que c'est ce que tu as fait non ? tu as remplacé tes declencheurs par des wp ? |
Revenir en haut | |
Eldorane Héros Messages: 298 Localisation: Moselle |
heu non, la seule chose que j'ai fait c'est GetWaypointByTag par GetObjectByTag dans le script. Je suppose que la solution était là.
Par contre j'ai du mal à faire la diférence entre les déclencheurs et les waypoints. |
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Les déclencheurs ou trigger, sont des zones dessinées par tes soins qui servent à déclencher un évenement quand le joueur (ou un NPC) passe dessus, ils peuvent avoir la forme et la taille que tu veux. Les Waypoint ou point de passage, sont comme des petits drapeaux qui servent à localiser un point, pour par exemple y faire apparaître une créature, une note de carte ou encore faire quelque chose de particulier comme par exemple un effet visuel ou bien indiquer une destination (c'est ton cas, les waypoint sont pour toi des point de destination de ta téléportation du joueur.)
En espérant que ça éclaire ta lanterne. _________________ 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 | |
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