
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.







La date/heure actuelle est 01/05/2025 04:14:42
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 |
Spy-Seth Acolyte ![]() Messages: 33 Localisation: Montpellier |
SAlut a tous,
Je recherche plusieur scripts : - Un qui fait que les créatures à qui on a assimilé le script n'attaque que certain alignement : la créature n'attaque pas les PJs qui sont chaotique mauvais, neutre mauvais, chaotique neutre ; mais attaque en masse les PJs d'alignement loyal bon, Neutre bon, loyal neutre ; et attaque faiblement ceux qui on un alignement Loyal mauvais, chaotique bon,neutre. - un qui est a peut près pareil mais il agit au niveau d'une porte ou d'un point de passage (il laisse passer que certain alignement), pour moi ce serait laissé passer : Loyal bon , Loyal neutre, Neutre mauvais, Neutre, Loyal mauvais, Chaotique bon ; et bloque les alignements : Neutre mauvais, Chaotique neutre, Chaotique mauvais. Et si possible ![]() Si quelqun arrive a trouver tt c script il est le meilleur ![]() ![]() merci d'avance ![]() _________________ Dissiple de maître Laxam La vie est une rivière que l'on descend en bateau, elle a ses rapides et ses eaux calmes... |
Revenir en haut | ![]() ![]() ![]() |
Laxam Légende vivante ![]() Messages: 425 Localisation: Lyon |
Ta question est un peu vaste et compliquée.... faudrait peut-être être plus précis... Enfin je vais essayer de te répondre pour la première question :
Moi ce que je ferai, c'est que je créerai une faction spéciale pour tout mes monstres "fact_monstre", faction a priori neutre envers le PJ. En entrée de zone, je mettrai un déclencheur avec dans le OnEnter un truc du genre (je le fais main levée alors c'est pas sûr que ça passe à la compil, c'est juste une ébauche : NWScript :
object oMonstre = GetObjectByTag("tag_d_un_monstre"); object oPc = GetEntering; if (GetIsPC(oPC)) { if (GetAlignment (oPC) == ALIGNEMENT_GOOD) //Si l'alignement du joueur est BOn { AdjustReputation(oMonstre, oPC, -100); // La faction passe hostile } } Voilà c'est juste une ébauche, je ne suis pas sûr non plus que les fonction soient bien celles-ci mais l'idée y est. Si j'ai un peu de temps, je creuserai un peu. _________________ 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 | ![]() ![]() ![]() ![]() |
Spy-Seth Acolyte ![]() Messages: 33 Localisation: Montpellier |
Maitre Laxam
![]() ![]() Le problème c'est que moi et les script sa fait...1+1=heu2²*3-47a/u+6=2...enfin bref je ne sais scripter et comme tu le sais je suis sur les NPC Actives. Mais tout se que je sais, c'est que il y a une erreur : NWScript :
object oMonstre = GetObjectByTag("tag_d_un_monstre"); object oPc = GetEntering; if (GetIsPC(oPC)) { if (GetAlignment (oPC) == ALIGNEMENT_GOOD) //ton erreur est sur cette ligne.ERREUR : NO RIGHT BRACKET ON EXPRESSION { AdjustReputation(oMonstre, oPC, -100); } } voila ce que je peux dire *Spy est content d'avoir pu rectifier sont maître* ![]() Maître Laxam au plaisir de vous reparler _________________ Dissiple de maître Laxam La vie est une rivière que l'on descend en bateau, elle a ses rapides et ses eaux calmes... |
Revenir en haut | ![]() ![]() ![]() |
SiDi_Revolucion Ecuyer ![]() Messages: 48 Localisation: Mince, un trou de mémoire! C'est bien en Espagne la Bretagne? |
Le dsiciple il va se prendre une boule de feu dans la tronche!
Ce serait marrant, n'empeche! ![]() ![]() ![]() _________________ SiDi_Revolucion |
Revenir en haut | ![]() ![]() ![]() ![]() |
Spy-Seth Acolyte ![]() Messages: 33 Localisation: Montpellier |
Mais non je vais pas prendre de boule de feu dans la tromche, Hein Laxam ?...............Laxam?............*entend des bruits d'incantation
![]() ![]() ![]() _________________ Dissiple de maître Laxam La vie est une rivière que l'on descend en bateau, elle a ses rapides et ses eaux calmes... |
Revenir en haut | ![]() ![]() ![]() |
Laxam Légende vivante ![]() Messages: 425 Localisation: Lyon |
Pas de boule de feu mais la réponse à ta question (cette fois je l'ai fait dans l'editeur donc ça compile.)
NWScript :
// Le seul probleme c'est si le monstre dont on utilise le tag est tue, mais // - si c'est un module solo, la premiere fois que le PC va entrer, le monstre en question sera vivant donc pas de souci // - si c'est un module multi, il faudra peut-etre mettre un placable invisible et indestructible avec la faction en question // et le mettre dans la faction voulue... a voir. void main() { object oMonstre = GetObjectByTag("tag_d_un_monstre"); object oPC = GetEnteringObject(); if (GetIsPC(oPC)) { if (GetAlignmentGoodEvil(oPC) != ALIGNMENT_EVIL)//Si l'alignement du joueur n'est pas mauvais { AdjustReputation(oPC, oMonstre, -100); // La faction passe hostile } DestroyObject(OBJECT_SELF); // Pour dtruire le dclencheur pour qu'il ne marche qu'une fois. ici ce n'est pas tres important de le detruire. } } Pour ta deuxième question un script similaire devrait marché. Si tu trouves pas, repose la question, je regarderai de plus près. _________________ 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 | ![]() ![]() ![]() ![]() |
Spy-Seth Acolyte ![]() Messages: 33 Localisation: Montpellier |
Je vais peut-êtres dire une connerie mais si tu en lève la ligne : DestroyObject(OBJECT_SELF);
Et si par hasard je disais une connerie (se qui est fort probable:D), Maitre vous pourriez m'expliquer se que vous voulez dire par : Citation : // - si c'est un module multi, il faudra peut-etre mettre un placable invisible et indestructible avec la faction en question
Merci, Maître// et le mettre dans la faction voulue... a voir. _________________ Dissiple de maître Laxam La vie est une rivière que l'on descend en bateau, elle a ses rapides et ses eaux calmes... |
Revenir en haut | ![]() ![]() ![]() |
Laxam Légende vivante ![]() Messages: 425 Localisation: Lyon |
En fait la première chose que fait le script est de récupérer l'objet avec le tag tag_d_un_monstre, dans un module solo, le joueur arrive, le monster existe car tu as pris soin de le créer dans ta zone et tout marche bien.
Dans le cas d'un module multi (je ne connais pas trop mais bon....), un premier joueur arrive, tue le monstre en question.... Lorsque le second joueur arrive dans la zone, le monstre est mort et disparu donc la fonction GetObjectByTag ne trouvera pas le monster avec le tag tag_d_un_monstre et donc retournera "objet invalide" si bien qu'alors on ne pourra pas déterminer la faction de ce monstre et donc pas ajuster la réputation.... et plus rien ne marche. Pour palier à ce problème, si on place un objet quelconque invisible (pour ne pas le voir dans le jeu) et indestructible (pour pas qu'on le détruise par une boule de feu sans s'en rendre compte), et qu'on lui met la faction des monstre... Cet objet existera toujours quoiqu'il arrive et donc on pourra toujours retrouver la faction des monstres... C'est pas forcément hyper cliar mais si besoin je pourrai te ré-expliquer ma théorie plus longuement une autre fois. ![]() _________________ 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 | ![]() ![]() ![]() ![]() |


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