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 18:26:39


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Souli
Novice
Inscrit le: 09 Oct 2008
Messages: 5
Répondre en citant
Posté le : 07/02/2010 21:21:52 Sujet du message : Groupe de plusieurs Henchmen ?

Bonsoir,

Dans l'optique d'un mod solo où le joueur possède un large groupe, un peu à l'image d'un Baldur's Gate, je me retrouve confronté à un problème.

J'ai réussi à intégrer un henchman au groupe, avec des scripts appropriés, cela marche nickel, il monte de niveau en même temps que le PJ, obéit aux ordres, etc...

Je souhaite que le PJ recrute un second henchman dans la foulée, et là problème, je reçois un message indiquant qu'il est impossible d'avoir plus d'un seul et unique compagnon.

Existe t'il une solution permettant de contourner le problème ?

Si oui, peut-on envisager un recrutement d'un nombre (potentiellement) "infini" de henchmen (c'est à dire 5, 6...) ?

Second sous-cas, si l'on peut recruter plusieurs henchmen, quelle est la limite de ce nombre ?

Merci d'avance.

Si cela peut être utile en quelque soit, voici le script que j'utilise pour ajouter un henchman au groupe du PJ :

Ce message est un spoiler, et risque de vous informer de choses que vous auriez dû apprendre par vous même (fin d'un jeu, film, etc). À vos risques et périls (ludiques), vous pouvez le voir en cliquant sur cet avertissement.
Spoiler :
NWScript :
void main()
{

object oPC = GetPCSpeaker();

object oTarget;
oTarget = OBJECT_SELF;

AddHenchman(oPC, oTarget);

oTarget = GetHenchman(oPC);

int nInt;
if (GetIsObjectValid(oTarget))
  {
  nInt = GetHitDice(oPC) - GetHitDice(oTarget);

  while (nInt>0)
      {
      LevelUpHenchman(oTarget, CLASS_TYPE_FIGHTER);
      nInt--;
      }
  }
}
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.


Bonne soirée,

Souli.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Ivellios
Légende vivante
Inscrit le: 25 Jan 2005
Messages: 447
Localisation: Poitiers
Répondre en citant
Posté le : 08/02/2010 17:34:14 Sujet du message :

Il y une une fonction simple pour ça, SetMaxHenchmen(), avec une limite d'environ 200 apparemment.

Un conseil, pour les scripts, tu peux facilement trouver des fonctions soit sur le lexicon, soit sur le filtre de nwscript (à droite quand on tape un script) avec des mots clef, ici Henchmen par exemple ^^.
_________________
Scripts, systèmes, fonctions,... c'est par ici...
Pyjama pour castor, une vocation, un avenir sûr
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger Ignorer l'utilisateur
 
Psychopompos
Seigneur
Inscrit le: 10 Fév 2008
Messages: 209
Localisation: Ici
Répondre en citant
Posté le : 11/02/2010 13:34:18 Sujet du message :

Il me semble qu'il est impossible de dépasser deux henchmen.
_________________
"Oh Destin cruel! Cruel, cruel cruel Destin! Oh cruauté du destin!"
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Psychopompos
Seigneur
Inscrit le: 10 Fév 2008
Messages: 209
Localisation: Ici
Répondre en citant
Posté le : 20/12/2010 22:40:45 Sujet du message :

En fait c'est possible. J'ai réussi à mettre une dizaine de henchmen.
Il faut trafiquer plusieurs scripts pour que ça marche :

1) x0_i0_henchman

Remplacer les constantes du "/**** Number of henchmen ****/" (ligne 72 et suivantes) par le nombre que l'on désire.

Ligne 480, remplacer
NWScript :
//    object oFormerHench = GetAss*ociate(ASSOCIATE_TYPE_H ENCHMAN, oPC, 1);
    int nCountHenchmen = X2_GetNumberOfHenchmen(oPC);
    int nNumberOfFollowers = X2_GetNumberOfHenchmen(oPC, TRUE);
    // * The true number of henchmen are the number of hired
    nCountHenchmen = nCountHenchmen ;

    int nMaxHenchmen = X2_NUMBER_HENCHMEN;
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.



par

NWScript :
// Fire the PC's former henchman if necessary
//    object oFormerHench = GetAss*ociate(ASSOCIATE_TYPE_H ENCHMAN, oPC, 1);
int nCountHenchmen = X2_GetNumberOfHenchmen(oPC);
//int nNumberOfFollowers = X2_GetNumberOfHenchmen(oPC, TRUE);
// * The true number of henchmen are the number of hired
//nCountHenchmen = nCountHenchmen ;

int nMaxHenchmen = GetMaxHenchmen();
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.


2) Ajouter "SetMaxHenchmen(le nombre que vous désirez);" au début du script mis dans le OnModuleLoad du module.

3) Pour le recrutement proprement dit, j'utilise dans le dialogue une version un peu trafiquée du script par défaut x0_d1_hen_hired, en changeant la dernière ligne, remplacée par AddHenchman(GetPCSpeaker());

Maintenant, vous pourrez être suivi par une véritable petite armée.Cool
_________________
"Oh Destin cruel! Cruel, cruel cruel Destin! Oh cruauté du destin!"
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé 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 32.595ms