La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 27/04/2024 12:06:43


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Dimencia
Novice
Inscrit le: 08 Juin 2003
Messages: 11
Localisation: Beckrunes
Répondre en citant
Posté le : 30/08/2007 15:19:33 Sujet du message : HCR2 et bug Neverwinter

J'essayes d'implementer le HCR2 sur un module.

http://nwvault.ign.com/View.php?view=Nwn2scripts.Detail&id=61

Pour faire rapide, le HCR2 (Hard Core Rules) possède un noyau auquel on vient greffer divers modules. Il peut s'agir de système de repos, de blessures avant la mort...etc

J'ai un petit soucis avec le module de "Faim et Soif".
Le principe est que l'on peut attaché à un objet "nourriture" plusieurs variables. Par exemple, une bouteille de vin, rend de l'energie pour la soif mais en même temps alcoolise. C'est assez bien fouttu car on peut ajouter des maladies, des poisons... etc le tout avec un effet différé sur le joueur.

Malheureusement, y a un gros soucis. Lorsque l'on place un objet en magasin ou qu'on le créer directement dans l'inventaire, il perd les fameuses variables, et donc, impossible d'utiliser correctement le système de Faim et Soif.
Par contre si l'objet est posé directement sur le sol dans la zone, pas de problème. (mais pour un module persistant, c'est très problèmatique.)

Je trouve assez dommage que le problème ne soit pas evoqué dans la doc du package HCR2.
On trouve seulement une trace du problème sur le forum de l'auteur sans avoir de solution:

http://www.neises.com/forums/showthread.php?t=585

Maintenant la question est de savoir s'il est possible de créer un objet qui soit une copie complete d'un blueprint prédéfini ?
_________________
Mais, euh...!
http://beckrunes.info
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Dimencia
Novice
Inscrit le: 08 Juin 2003
Messages: 11
Localisation: Beckrunes
Répondre en citant
Posté le : 30/08/2007 23:27:35 Sujet du message :

Je corriges mon post precédent.

En fait l'import du module Faim/soif comporte une erreur que l'auteur à faites dans le package erf.

Le script hcr2_fooditem doit avoir le code suivant : (Attention dans les remarques il y a egalement une invertion quant au nom du fichier.

NWScript :

/*
Filename:          i_hcr2_fooditem_ac
System:            hunger and thirst
Author:            Edward Beck (0100010)
Date Created:      Mar. 17th, 2007
Summary:
HCR2 hcr2_fooditem item script. (alternate item activation script)
This script fires via tag based scripting for the OnActivate events for
items with hcr2_fooditem as the tag value.

If you wish to support food items that use a different tag, you should save
a copy of this script as the name of the tag you want to support.
Do the same to i_hcr2_fooditem_ac, but retain the i_ and _ac prefix and suffix.

-----------------
Revision:

*/


void main()
{
    ExecuteScript("hcr2_fooditem", GetModule());
}
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.


Vous devez egalement creer un script i_hcr2_fooditem_ac avec le code suivant (Là aussi le filename en remarque, ne correspond pas au nom reel du fichier):

NWScript :

/*
Filename:          hcr2_fooditem
System:            hunger and thirst
Author:            Edward Beck (0100010)
Date Created:      Mar. 17th, 2007
Summary:
HCR2 hcr2_fooditem item script.
This script fires via tag based scripting for the OnActivate events for
items with hcr2_fooditem as the tag value.

If you wish to support food items that use a different tag, you should save
a copy of this script as the name of the tag you want to support.

-----------------
Revision:

*/




#include "hcr2_hungerthirst_i"
#include "x2_inc_switches"

void main()
{
    int nEvent = GetUserDefinedItemEventNumber();
    if (nEvent == X2_ITEM_EVENT_ACTIVATE)
    {
        object oPC = GetItemActivator();
        object oItem = GetItemActivated();
        h2_ConsumeFoodItem(oPC, oItem);
    }
}
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.


J'ai pas pondu ça tout seul (Le script c'est pas mon point fort). Le HCR2 est fourni avec 3 modules de tests, en plus des packages. J'ai comparé les versions des scripts que j'ai importé au module qui supportait la Faim et la Soif (Et qui fonctionnait)

A ce stade, on peut consommer les nourritures et boissons, posé dans le module, mais toujours pas les acheter via l'echoppe d'un marchand.

Pour palier à ce problème, j'ai creer via un simple dialogue, la création de l'objet "nourriture" directement dans l'inventaire du joueur. Et là ... ouf, ça marche enfin. (Contrairement à ce que j'ai dit dans le post précédent)
_________________
Mais, euh...!
http://beckrunes.info
 
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 22.911ms