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 16:48:32


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
BenGorre
Légende vivante
Inscrit le: 12 Fév 2004
Messages: 301
Répondre en citant
Posté le : 07/01/2006 17:45:38 Sujet du message : [réso]Comment creer un trigger par script?

Bonjour bonjour,
Je me suis rendu compte que l'on ne pouvait creer de trigger grace à la fonction
NWScript :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.

Alors j'ai cherché autre chose et j'ai rien trouvé.
Alors comment peut on creer un trigger(déclencheur) par script en ayant son ResRef?
_________________
La mort n'est rien seul le fait de mourir est terrible
Henry Fielding 1745

Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2.
Dernière édition par BenGorre le 13/01/2006 19:01:03; édité 1 fois
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Black Knight
Grand Maître Chanteur du Conseil
Inscrit le: 27 Oct 2005
Messages: 1031
Localisation: Fin fond du trou du cul du monde
Répondre en citant
Posté le : 07/01/2006 19:50:25 Sujet du message :

Declencheur ? ce n'est pas possible, puisque, dans la logique, un declencheur doit etre formé a notre maniere, et le jeu ne serait pas capable de faire sa.
Cela est impossible, il te faudrais juste mettre un script dans le OnEnter de celui ci pour dire si il s'active ou pas, non ?
_________________
[http]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
mork
Seigneur
Inscrit le: 12 Aoû 2005
Messages: 205
Localisation: A landeda, pres de brest
Répondre en citant
Posté le : 07/01/2006 19:56:35 Sujet du message :

Juste une petite question toute bête ^^
C'est pour quoi faire ?
Si c'est pour que ca ne s'utilise qu'une fois, il y a une fonction (enfin je crois) qui supprime le trigger apres avoir marche dessus.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
BenGorre
Légende vivante
Inscrit le: 12 Fév 2004
Messages: 301
Répondre en citant
Posté le : 08/01/2006 02:04:06 Sujet du message :

Je pense que c'est possible, les trigger ont une forme par défaut. On la voit par exemple dans le jeu quand on pose un piège ou quand on crée un trigger avec l'interface MD. Et je ne peus pas activer ou desactiver ce trigger car il doit en fait apparaitre à une location au hazard. Et il doit pouvoir yen avoir plusieurs à des endroits différents.
_________________
La mort n'est rien seul le fait de mourir est terrible
Henry Fielding 1745

Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Sith Vicious
Grand Sage du Conseil
Inscrit le: 19 Oct 2005
Messages: 693
Répondre en citant
Posté le : 08/01/2006 02:34:02 Sujet du message :

Malheureusement je crois pas. J'ai jamais réussi et c'est pas faute d'avoir essayé, même créer un piège par script est impossible. C'est super bête d'ailleurs.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
lylver
Héros
Inscrit le: 08 Avr 2005
Messages: 274
Répondre en citant
Posté le : 10/01/2006 14:40:31 Sujet du message :

Tiens, je vais vérifier ça : buloc (concepteur de Pierre de Lune) avait un respawner de pièges fait maison.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Anthraxcite
Légende vivante
Inscrit le: 12 Juin 2004
Messages: 372
Localisation: Belgique
Répondre en citant
Posté le : 10/01/2006 18:06:08 Sujet du message :

J'ai regardé dans le lexicon et apparament le ActionUseSkill ne marche pas avec SKILL_SET_TRAP donc impossible pour un pnj de poser un piège(c'était une solution que j'envisageais).
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger Ignorer l'utilisateur
 
BenGorre
Légende vivante
Inscrit le: 12 Fév 2004
Messages: 301
Répondre en citant
Posté le : 10/01/2006 23:41:08 Sujet du message :

Si un PNJ peut mettre un piège, seulement ce n'est pas avec une fonction que tu as comme ça dans l'editeur il faut un include, il me semble que c'est "x2_inc_craft".
_________________
La mort n'est rien seul le fait de mourir est terrible
Henry Fielding 1745

Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
lylver
Héros
Inscrit le: 08 Avr 2005
Messages: 274
Répondre en citant
Posté le : 11/01/2006 01:57:28 Sujet du message :

Fausse joie, les pièges de buloc étaient basé sur des scripts personnalisés.
Dans ma petite recherche je suis tombé sur ça :
NWScript :
// Returns Item property Trap.  You must specify the trap level constant
// (IP_CONST_TRAPSTRENGTH_*) and the trap type constant(IP_CONST_TRAPTYPE_*).
itemproperty ItemPropertyTrap(int nTrapLevel, int nTrapType)
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.

On peut ajouter la propriété d'être un "piège" utilisable à n'importe quoi.
Mais bon, ce n'est pas fait pour les plaçables/portes/déclencheurs
Je pensais au moyen de faire faire ça par une bébète invisible (comme The Voice du DMFI) Razz mais le lexicon (version patch 1.61) dit que pour ActionUseSkill :

Citation :
Known Bugs
SKILL_SET_TRAP does not work at all with this function, and therefore NPC's can never ever set traps.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
zantigui
Grand Chevalier
Inscrit le: 14 Mar 2005
Messages: 109
Répondre en citant
Posté le : 11/01/2006 14:06:31 Sujet du message :

Alors il faut un pnj invisible qui détecte la présence du PC et qui dit aux pièges de s'activer, piège qui peut être un placeable de la zone.
Mais tout dépend de l'utilisation qu'il veut faire de son piège..
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
lylver
Héros
Inscrit le: 08 Avr 2005
Messages: 274
Répondre en citant
Posté le : 11/01/2006 15:10:29 Sujet du message :

Ben non malheureusement ca marche pas non plus : il y a bien la fonction
NWScript :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.

mais pas celle pour activer Sad
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
BenGorre
Légende vivante
Inscrit le: 12 Fév 2004
Messages: 301
Répondre en citant
Posté le : 11/01/2006 20:54:02 Sujet du message :

Bon bon bon j'ai une idée de solution qui devrait marcher.
Il suffit de creer un déclencheur qui n'est pas un trigger.
]Je sais vous devez vous dire: mais qu'est ce qu'il raconte lui là?????
Mais voilà si on fa
_________________
La mort n'est rien seul le fait de mourir est terrible
Henry Fielding 1745

Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
BenGorre
Légende vivante
Inscrit le: 12 Fév 2004
Messages: 301
Répondre en citant
Posté le : 11/01/2006 21:03:37 Sujet du message :

Bon bon bon j'ai une idée de solution qui devrait marcher.
Il suffit de creer un déclencheur qui n'est pas un trigger.
Je sais vous devez vous dire: mais qu'est ce qu'il raconte lui là?????
Mais voilà si on applique une Area of effect en precisant le scipt d'entrée et de sortie (OnEnter, OnExit) sur une location ca devrait faire la même chose en plus on peut dire pour combien de temps ce "déclencheur reste".
Je met la description de EffectAreaOfEffect:
NWScript :
// Create an Area Of Effect effect in the area of the creature it is applied to.
// If the scripts are not specified, default ones will be used.
effect EffectAreaOfEffect(int nAreaEffectId, string sOnEnterScript="", string sHeartbeatScript="", string sOnExitScript="")
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 donc il suffirait, arrêtez moi si je me trompe mais ej pense pas faire:
NWScript :
ApplyEffectAtLocation(DURATION_TYPE_PERMANENT, EffectAreaOfEffect(?????, "randomplace1", "", "randomplace2"), RandomLocation(oArea));//pour le nAreaEffectId je sais pas quoi mettre.
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.

_________________
La mort n'est rien seul le fait de mourir est terrible
Henry Fielding 1745

Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Sith Vicious
Grand Sage du Conseil
Inscrit le: 19 Oct 2005
Messages: 693
Répondre en citant
Posté le : 12/01/2006 02:38:32 Sujet du message :

A mon avis t'as mis le doigt dessus BenGorre !
Je pense que c'est le seul moyen et il fallait effectivement y penser. Après ça implique de la bidouille dans les 2da (je crois pour que AreaEffectId ait un sens, mais j'ai pas trop regardé). Mais il y a pas de raison pour que ça ne marche pas.
Bien joué !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
BenGorre
Légende vivante
Inscrit le: 12 Fév 2004
Messages: 301
Répondre en citant
Posté le : 12/01/2006 16:54:13 Sujet du message :

Bonjour bonjour,

La solution marche bien mais en effet il faut modifier un 2da "VFX_PERSISTANT" Le ID va en effet chercher les parametres dans ce 2da les parametres sont: Le modele (un effet visuel) les scripts par defaut OnEnter, OnHeartBearth, OnExit ainsi que le rayon, la forme de la zone et d'autres choses moins importante.

Donc il est possible de creer un declencheur par script mais auparavant il faut modifier le fichier 2da en rajoutant une ligne en n e mettant pas de modele masi juste un rayon et une forme.

L'inconvenient c'est qu'il faut faire un hak Crying or Very sad
_________________
La mort n'est rien seul le fait de mourir est terrible
Henry Fielding 1745

Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Anthraxcite
Légende vivante
Inscrit le: 12 Juin 2004
Messages: 372
Localisation: Belgique
Répondre en citant
Posté le : 12/01/2006 20:55:57 Sujet du message :

T'as pas essayé si en mettant juste du coté serveur(override) ça marchait?
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger Ignorer l'utilisateur
 
lylver
Héros
Inscrit le: 08 Avr 2005
Messages: 274
Répondre en citant
Posté le : 13/01/2006 16:26:25 Sujet du message :

Bon d'abord un coup de chapeau à BenGorre pour cette intuition issue d'une connaissance accumulée.

Deuxio : c'est pas très propre et ca va en faire hurler quelques uns mais...

Beaucoup de 2da sont activés en ne mettant QUE côté serveur : dossier override
Et pour les autres ?
Et bien dans beaucoup de cas il faut les inclure dans un hak, sans doute pour un problème d'ordre de chargement des composants du module.

Or, il se trouve que leur présence dans le hak coté serveur suffit pour beaucoup d'entres eux.
Ceci dit, il reste des 2da trop proches du côté client nwn, je teste au coup par coup.

En contournement, j'ai une astuce pas propre mais qui marche sans plantage depuis 3 mois sur le TN Bouchon2
Beaucoup de modules utilisent le CEP, et surtout la plupart des joueurs l'ont.
Je modifie donc côté serveur un hak du CEP avec précaution en y ajoutant/remplacant le fichier 2da dont j'ai besoin.
Pour plus de sureté, mettez votre modif dans le premier hak de la liste. Par exemple avec le cep_1.52 dans le fichier cep1patch152.hak

Je le répète : c'est à vos risques et périls.

Sinon faire un hak c'est pas très compliqué : il y a un outil livré avec le jeu.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
BenGorre
Légende vivante
Inscrit le: 12 Fév 2004
Messages: 301
Répondre en citant
Posté le : 13/01/2006 18:09:31 Sujet du message :

Merci Lylver pour cette remarque je lance un post dans contenu personalisé pour definir quels 2da ont peut ne mettre que du coté serveur.
_________________
La mort n'est rien seul le fait de mourir est terrible
Henry Fielding 1745

Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
BenGorre
Légende vivante
Inscrit le: 12 Fév 2004
Messages: 301
Répondre en citant
Posté le : 13/01/2006 19:00:23 Sujet du message :

Merci Bioware
Eh oui ils pensent beaucoup à nous quand même je viens de regarder de plus pres le vfx_persistant.2da et que vois je a la ligne 37? VFX_CUSTOM Genial je regarde dans la colonne apart C pour cercle et 5 pour le rayon ya rien, encore mieux voila ce qu'il nous faut pour faire un declencheur.
[nwscript]ApplyEffectAtLocation(DURATION_TYPE_PERMANENT, EffectAreaOfEffect(37, "randomplace1", "", "randomplace2"), RandomLocation(oArea));nwscript]
Voila ca crée un declencheur en forme de cercle sans effet visuel. Seul chose embetante cest que l'on en peut pas modifier le rayon mais 5 c'est tres bien. Donc voila sujet résolu^^.
_________________
La mort n'est rien seul le fait de mourir est terrible
Henry Fielding 1745

Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
lylver
Héros
Inscrit le: 08 Avr 2005
Messages: 274
Répondre en citant
Posté le : 16/01/2006 19:02:23 Sujet du message :

En complément : vous pouvez examiner le code livré par bioware pour le sort Glyph of Warding : la glyphe de garde.
X2_S0_GlphWard.nss (ressource module)
On peut personnaliser l'effet, il y a même un exemple livré pour une glyphe de boule de feu.
Principe : création d'un plaçable et d'une zone d'effet autour.
 
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 39.395ms