Probleme : invocation / possession de familier

Répondre
Partager Rechercher
Citation :
Provient du message de Vendiria
Heu, si c'est pour un roublard, il doit avoir la compétence utilisation d'objets magique et peuvent utiliser les scrolls d'invocation de créatures.
Mais comme je connais pas bcp les objets magique existants je sais pas si les convocations de créatures peuvent summon une panthère?! Ou alors toujours des élémentaires et autres créatures du type ?!
justement non , on ne peu invoquer une panthère ( en théorie ) que si on est druide / rodeur / mage / sorcier.

d'ou le probleme
pour transformer mon npc ( ma pantére ) en henchman je peu pet me servir de sa :

Citation :
Provient du message de sojkowski
Utilisez ce script d'orignie dans un dialogue, a mettre ds action concéquence. "nw_ch_action_13"

Tu te joins à moi?.
1- oui -> action concéquence. "nw_ch_action_13"
2- non [fin de dialogue]
bien que je trouve pas sa super pour une panthère : /

*cherche sur d'autre forum, pour les henchmen*
Citation :
Provient du message de Vendiria
Arf, ok Merci pour la précision
no problem ^^
on est la pour apprendre et partager nos connaissances non ?
les script nw_ch_***.nss sont les scripts des henchmen.

Les scripts nw_ac_*** sont les script des familiers.

Regarde quels sont les scripts a attribuer a un familier (pour voir, utilise le nwnviewer pour regarder dans les "template" de nwn, puis recherche les creature familier (la panthere). Dans le template, tu va avoir une entre pour chacun des "slot" script dispo : OnRest / OnAtk / OnDmg / etc... avec quel script utiliser : nw_ac_acani / nw_ac_a9 / etc...)
je dois être une sacrée quiche, mais je n'arrive pas a trouver les scripts de familier, par contre j'ai trouvé sa :

Code PHP:

 //::///////////////////////////////////////////////
//:: Summon Familiar
//:: NW_S2_Familiar
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
    This spell summons an Arcane casters familiar
*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: Sept 27, 2001
//:://////////////////////////////////////////////

void main()
{
    
//Yep thats it
    
SummonFamiliar();

il y a peu etre un moyen de se servir de sa non ?

*naif*
donc si jai bien compris il faudrais que je fasse un objet avec lequel on puisse parler,
une première option permettant "d'invoquer" la créature.
une deuxième option permettant de la prendre comme Henchmen

dans le action taken du dialogue :
Code PHP:

///////////////////////////////////////////////
//:From Bioware
//:traduit/modifié par MrCocktail pour nwn-fr.com
///////////////////////////////////////////////


void main()

{

SetAssociateListenPatterns();
SetLocalInt(OBJECT_SELF,"NW_COM_MODE_COMBAT",ASSOCIATE_COMMAND_ATTACKNEAREST);
SetLocalInt(OBJECT_SELF,"NW_COM_MODE_MOVEMENT",ASSOCIATE_COMMAND_FOLLOWMASTER);
AddHenchman(GetPCSpeaker());
//Le hench suit son maitre et attaque l'ennemi le plus proche par défaut

Dans les propriétés du NPC, rubrique scripts, mettre:

On Blocked :nw_ch_ace
OnCombatRoundEnd:nw_ch_ac3
On Conversation:nw_ch_ac4
OnDamage:nw_ch_ac6
OnDeath:nw_ch_ac7
OnDisturb:// blank \\ ou nwn_ch_ac8
OnHeartBeat:nw_ch_ac1
OnPerception:nw_ch_ac2
OnPhysicalAttacked:nw_ch_ac5
OnRested:// blank \\ ou nwn_ch_aca
OnSpawn:nw_ch_ac9
OnSpellCast:nw_ch_acb
OnUserDefined:nw_ch_acd


tout cela parait réalisable mais m'éloigne de se que jaimerais faire...
Citation :
Provient du message de TyKeM
2eme post
en gros, c'est ca ^^

(l'ajout en henchmen n'est pas forcement interressant si tu lui met des scripts de familier, toutefois. mais ca ne gene pas)
il n'y a pas un moyen de faire plus "simple" car cette solution ne me plais pas vraiment :'(

de plus tout le monde pourrais prendre la panthère comme henchman, se qui n'ai pas vraiment "rp".
de plus comment la faire disparaitre a part par dialogue ?

*commence a se dire que ce qu'il veux n'ai peut être pas faisable *

Edit : je parle de la fonction Henchman , il doit y avoir une solution pour que la phantère soit directement le familier ?
de plus je n'arrive pas a trouver les scripts de familier ...

*doit vraiment etre une quiche *
le pb, c'est surtout qu'emuler un familier pour une classe qui n'en a pas, c'est pas possible : et d'ailleur, au niveau RP, c'est logique, vu qu'un voleur pourra lancer des sorts, voire invoquer des creature, mais pas en prendre le controle ou puiser dans leur essence, comme le ferait un mage avec son familier.


Au niveau technique, tu peu ajouter des nouveau familiers a ceux qui en ont deja, tu peux bidouiller en faisant comme on as dit, ou t'abstenir et t'en tenir a un NPC qui agit a sa guise, ou enfin utiliser un summon. Au choix.

Citation :
il n'y a pas un moyen de faire plus "simple" car cette solution ne me plais pas vraiment :'(
ca, non. Si tu veux bidouiller, c'est toujours faisable, mais ca coute cher en temps. Au pire, laisse ton familier etre un NPC classique...

Citation :
de plus tout le monde pourrais prendre la panthère comme henchman, se qui n'ai pas vraiment "rp".
bein, de toute facon, toute personne utilisant la baguette.

Tout depend de ce que tu as a faire avec ce faux familier...
ce faux "familier" est pour un seul joueur.
( peut être pour plus si le système marche bien en adaptant )

si il y a un "sumon" avec une creature par "tag" , et si je met les script de "familier" ( si on veux bien me les donné vu que je n'arrive pas a les trouver ^^ )
et ce que j'aurais encore besoin d'un dialogue ?
Citation :
Panther Companion nw_ac_pant01
Panther Companion nw_ac_pant02
Panther Companion nw_ac_pant03
Panther Companion nw_ac_pant04
Panther Companion nw_ac_pant05
Panther Companion nw_ac_pant06
Panther Companion nw_ac_pant07
Panther Companion nw_ac_pant08
Panther Companion nw_ac_pant09
Panther Companion nw_ac_pant10
Panther Companion nw_ac_pant11
Panther Companion nw_ac_pant12
Panther Companion nw_ac_pant13
Panther Companion nw_ac_pant14
Panther Companion nw_ac_pant15
Panther Companion nw_ac_pant16
Panther Companion nw_ac_pant17
Panther Companion nw_ac_pant18
Panther Companion nw_ac_pant19
Panther Companion nw_ac_pant20
voila après pas mal de recherche j'ai trouvé sa , mais il semblerais que se soit pour la version 1.30 , et je ne sais pas a quoi correspond chaque script
Citation :
Provient du message de eMRaistlin
en gros, c'est ca ^^

(l'ajout en henchmen n'est pas forcement interressant si tu lui met des scripts de familier, toutefois. mais ca ne gene pas)
j'aimerais juste que la créature invoquer se comporte comme toute créature invoquée ( suive son mettre , le défende, stile une panthere de druide )

les problèmes:

- c'est que je n'arrive pas a avoir les scripts de familier.
- pour faire disparaitre la créature je ne sais pas comment mi prendre sans la tuer :'(



( edited )
voila j'ai presque finit , il ne me manque plus que 1 option de dialogue:

- faire disparetre le " faux familier" ( je voudrais évité de le faire mourir )

donc je règle se dernier point et je post tout pour mettre ma pierre a l'édifice
j'ai pas encore finit ...
et ma solution reste du "bricolage"
sa seras une sorte d'invocation animale de druide, avec pas mal d'option de dialogue en moins ...

en fait sa seras :

- un objet qui permet de d'invoquer une créature
- cette créature ne suivras que le possesseurs de l'objet ( par dialogue )
- et après il me manque les autre script , option a mettre dans le dialogue ( je pourrais remettre la fonction "jeux" , le fait de le nourrir pour le guérir ..ect )
Si ton objet permet d'invoquer n'importe quel créature, je trouve déjà alors ton bricolage plutôt sympa. pour les options de dialogues, ca devrait être pas trop genant quand même personnellement je trouve. Une panthere te fais pas la discussion comme ça quand même. Pour faire disparaitre une créature avec un dialogue regarde ça, je sais pas si ça va t'interesser, mais bon je le met quand même :
script dans l’action conséquente d’un dialogue. Editer script, mettre tag PNJ (c'est peut être le probleme, car il faut un tag)

Code PHP:

 //pnj dans action consequante d'un dialogue disparait
void main()
{
object oDestroy GetObjectByTag("Della");

DestroyObject(oDestroy0.5);

sinon pour le hench man j'ai retrouvé ça, je sais pas si c'est pareil que ce que tu as mis avant :

Faire d’un PNJ son Henchman
à placer dans un action consequente de fin de dialogue : g_hench_normal01
Dans les propriétés du NPC, rubrique scripts, mettre:
On Blocked :nw_ch_ace
OnCombatRoundEnd:nw_ch_ac3
On Conversation:nw_ch_ac4
OnDamage:nw_ch_ac6
OnDeath:nw_ch_ac7
OnDisturb:// blank \\ ou nwn_ch_ac8
OnHeartBeat:nw_ch_ac1
OnPerception:nw_ch_ac2
OnPhysicalAttacked:nw_ch_ac5
OnRested:// blank \\ ou nwn_ch_aca
OnSpawn:nw_ch_ac9
OnSpellCast:nw_ch_acb
OnUserDefined:nw_ch_acd


pour g_hench_normal01 c'est ça :

Code PHP:

void main()

{

SetAssociateListenPatterns();
SetLocalInt(OBJECT_SELF,"NW_COM_MODE_COMBAT",ASSOCIATE_COMMAND_ATTACKNEAREST);
SetLocalInt(OBJECT_SELF,"NW_COM_MODE_MOVEMENT",ASSOCIATE_COMMAND_FOLLOWMASTER);
AddHenchman(GetPCSpeaker());
//Le hench suit son maitre et attaque l'ennemi le plus proche par défaut

vi vi je me suis servi de sa
mais cela ne suffit pas
et le problème de ta façon de détruire c'est que l'on voit le "faux familier" mourir.

pour les options de dialogues je pense a celle que généralement on trouve sur les "familiers",
nourrir = guérissons
jeux = interactivité

d'autant plus que j'ai l'opportunité de mettre se que je veux en interaction tout en restant "réaliste".

( non parce que si non je pourrais lui faire faire n'importe quoi a cette panthère , un guérisseur Ambulant pour son proprio ...Ect )
Je me demandais. Et si tu rajoute un effet visuel, lors de la mort de la créature genre :
Code PHP:

effect eEtheral EffectVisualEffect(VFX_IMP_UNSUMMON );
DelayCommand(1.0ApplyEffectToObject(DURATION_TYPE_INSTANTeEtheraloDestroy)); 
Ca passerais mieux ou pas ?
Désolé de ne pas pouvoir t'aider completement je suis encore newbee en script
( j'ai pas tester )

je ferais des testes mais les effets visuels ne sont que une partie en fait il faudrais aussi que j'arrive a scripter d'autre "action" dans cette panthère pour la rendre plus proche des autres familiers .

( se qui ne doit pas être dur par dialogue ^^ )

mais je n'ai pas eu le temps depuis
et je n'ai plus d'idée la ...

-> DODO

ps : même pdt les vacances j'arrive a me surcharger
je vais tout compilé dans un mod' et l'uper chez qq un : /
il y a pas mal de script , donc dés que je trouve sa, je met mon travail en ligne
Salut je bosse sur un script un peu équivalent à celui que tu cherche à faire, en effet un perso étant le Général des armées abyssalles doit être capable d'invoquer plusieurs démons (enfin des extérieurs démoniaques) qui le servent fidèlement..... Si tu pouvais redonner exactement ce que donne tes script, je t'en serais reconnaissant

------------------------

Wyn Ashgrove, Haut Nécromant
Crysta Lhyne, roublarde au grand coeur
Kyra, Championne de l'Amour
dans le script onactiveitem j'ai rajouter :

Code PHP:


if(GetTag(oItem)=="tykem_ring2"// l'anneaux de tykem qui invoque une panthère
   
{
     
location lWhere GetLocation (oActivator);
     
effect eEtheral EffectVisualEffect(VFX_FNF_SUMMON_UNDEAD );
     
CreateObject(OBJECT_TYPE_CREATURE,"tykminion",lWhereTRUE);

     return;
     } 
tu créee l' anneau avec comme tag tykem_ring2 ( tu lui met bien le pouvoir unique sur soit )

tu crée un monstre tykminion
tu lui met des scripts de hencman :



Citation :

On Blocked :nw_ch_ace
OnCombatRoundEnd:nw_ch_ac3
On Conversation:nw_ch_ac4
OnDamage:nw_ch_ac6
OnDeath:nw_ch_ac7
OnDisturb:
OnHeartBeat:nw_ch_ac1
OnPerception:nw_ch_ac2
OnPhysicalAttacked:nw_ch_ac5
OnRested:
OnSpawn:nw_ch_ac9
OnSpellCast:nw_ch_acb
OnUserDefined:nw_ch_acd
après tu cré un dialogue pour ton henchman de la forme

-la panthère vous regarde et attends un ordre (sc_tykminion0 )

-- suit moi (sc_tykminion1 )
-- retourne dans ton plan (sc_tykminion2 )
-- non rien

- la panthere vous regarde d'un air curieux


Code PHP:

  //::///////////////////////////////////////////////
//:: FileName sc_tykminion0
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: Tykem
//:: Created On: 16/07/03 22:45:40
//:://////////////////////////////////////////////
#include "nw_i0_tool"

int StartingConditional()
{

    
// Vérifier que le PJ qui parle possède ces objets dans son inventaire
    
if(!HasItem(GetPCSpeaker(), "tykem_ring2"))
        return 
FALSE;

    return 
TRUE;


Code PHP:


//::///////////////////////////////////////////////
//:: FileName sc_tykminion1
//:://////////////////////////////////////////////

void main()

{

SetAssociateListenPatterns();
SetLocalInt(OBJECT_SELF,"NW_COM_MODE_COMBAT",ASSOCIATE_COMMAND_ATTACKNEAREST);
SetLocalInt(OBJECT_SELF,"NW_COM_MODE_MOVEMENT",ASSOCIATE_COMMAND_FOLLOWMASTER);
AddHenchman(GetPCSpeaker());

Code PHP:



//::///////////////////////////////////////////////
//:: FileName sc_tykminion2
//:://////////////////////////////////////////////

 
void main()
{
object oDestroy GetObjectByTag("tykminion");
effect eEtheral EffectVisualEffect(VFX_IMP_UNSUMMON );
DelayCommand(1.0ApplyEffectToObject(DURATION_TYPE_INSTANTeEtheraloDestroy));
DestroyObject(oDestroy1.0);


voilà je ne sais pas si c assez clair , mais en tout cas cela marche



Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés