La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 23/11/2024 22:50:27


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Spy-Seth
Acolyte
Inscrit le: 19 Aoû 2004
Messages: 33
Localisation: Montpellier
Répondre en citant
Posté le : 20/08/2004 21:02:46 Sujet du message : Script de distinction d'alignement

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 Very Happy quand un des alignement interdit essaie de passer un message dans le genre "Le mal ne peut entrer dans un sanctuaire du bien".

Si quelqun arrive a trouver tt c script il est le meilleur Very Happy LUI, moi je suis une bouse...non une moisissure de bousse Crying or Very sad en script

merci d'avance Very Happy
_________________
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 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 : 21/08/2004 13:55:05 Sujet du message :

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
      }
  }
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.



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 Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Spy-Seth
Acolyte
Inscrit le: 19 Aoû 2004
Messages: 33
Localisation: Montpellier
Répondre en citant
Posté le : 21/08/2004 14:53:36 Sujet du message :

Maitre Laxam Very Happy se que vous dites m'a l'air juste, j'ai l'imprétion qu'il faut partir sur cette basse. Peut-être qu'en multipliant les "if (GetAlignment (oPC) == ALIGNEMENT_GOOD" en modifiant "good" par les alignements souhaités (au passage si on pouvait me les donner en anglais Very Happy)... Enfin je n'en sais rien je supose.

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);
}
}
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.


voila ce que je peux dire

*Spy est content d'avoir pu rectifier sont maître* Very Happy

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 Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
SiDi_Revolucion
Ecuyer
Inscrit le: 18 Aoû 2004
Messages: 48
Localisation: Mince, un trou de mémoire! C'est bien en Espagne la Bretagne?
Répondre en citant
Posté le : 21/08/2004 15:31:35 Sujet du message :

Le dsiciple il va se prendre une boule de feu dans la tronche!
Ce serait marrant, n'empeche!
Laughing Laughing Laughing
_________________
SiDi_Revolucion
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
Spy-Seth
Acolyte
Inscrit le: 19 Aoû 2004
Messages: 33
Localisation: Montpellier
Répondre en citant
Posté le : 21/08/2004 15:48:21 Sujet du message :

Mais non je vais pas prendre de boule de feu dans la tromche, Hein Laxam ?...............Laxam?............*entend des bruits d'incantation Gun * Shocked Laxam NON.........................Hein? *reguarde Laxan en train de faire chauffer son café* ouffffff Biggrin
_________________
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 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 : 21/08/2004 20:28:57 Sujet du message :

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.
      }
}
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 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 Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Spy-Seth
Acolyte
Inscrit le: 19 Aoû 2004
Messages: 33
Localisation: Montpellier
Répondre en citant
Posté le : 01/09/2004 20:21:27 Sujet du message :

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
// et le mettre dans la faction voulue... a voir.
Merci, Maître
_________________
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 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 : 02/09/2004 13:23:22 Sujet du message :

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.Cool
_________________
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 36.184ms