Bienvenue sur JeuxOnLine - MMO, MMORPG et MOBA !
Les sites de JeuxOnLine...
 

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

Des traces à suivre

Par mobidique le 14/10/2002 à 11:11:29 (#2332251)

Voici un petit script permetant de faire apparaitre des traces pour que les jouers les cherchent et les suivent :


void main()
{
object oPC = GetEnteringObject();
int DC;
int SpotRanks;
int iIDClass;
location lTrace;

if(GetIsPC(oPC))
{
SpotRanks = GetSkillRank(SKILL_SPOT, oPC) + GetAbilityModifier(ABILITY_WISDOM,oPC);
if(!GetLocalInt(OBJECT_SELF, "trace_vues")) DC = 14;
else DC=0;
if((d20() + SpotRanks) >= DC){
SetLocalInt(OBJECT_SELF, "trace_vues",1);
iIDClass = GetClassByPosition(1,oPC);
if (iIDClass == CLASS_TYPE_RANGER || iIDClass == CLASS_TYPE_DRUID){
FloatingTextStringOnCreature("Vous voyez des traces de pas sur le sol.",oPC,FALSE);
object oSparks = CreateObject(OBJECT_TYPE_PLACEABLE,"plc_magicgreen",
GetLocation(OBJECT_SELF));
DestroyObject(oSparks,120.0f);
DelayCommand(240.0f,SetLocalInt(OBJECT_SELF, "trace_vues",0));
}
else FloatingTextStringOnCreature("Vous voyez des traces sur le sol mais seul un ranger
ou un druide pourrait les identifer.",oPC,FALSE);
}
}
}


L'idée est la suivante. Vous faites un trigger vous collez ce script sur le onenter et aprés vous copiez coller le trigger autant de fois que vous le voulez pour faire votre chappelet de traces. Le script fait la chose suivante. Lorsqu'un perso passe sur le trigger, on test s'il perçoit la trace. S'il perçoit la trace un message lui est délivré à lui et seulement à lui. S'il est un druide ou un ranger des lumières s'allument à l'endroit des traces. C'est un truc de gameplay parce que sans, je vous assure que pour essayer de se rappeller où l'on a vu les derniére trace et essayer d'interpoller un trajectoire, avec la caméra à 45° en plus :eek: ... bref .... Lorsqu'un perso a trouver un trace il n'a plus de check à faire pour les trouver pendant 4 minutes : aussi souvent il passera sur le trigger aussi souvent il aura le message et allumera les lumière s'il est druide ou ranger. Au bout de 2 minutes les lumières s'éteignent :D . Pour corser l'affaire on peut mettre des traces d'animaux :


void main()
{
object oPC = GetEnteringObject();
int DC;
int SpotRanks;
int iIDClass;

if(GetIsPC(oPC))
{
SpotRanks = GetSkillRank(SKILL_SPOT, oPC) + GetAbilityModifier(ABILITY_WISDOM,oPC);
if(!GetLocalInt(OBJECT_SELF, "trace_vues")) DC = 14;
else DC=0;
if((d20() + SpotRanks) >= DC){
SetLocalInt(OBJECT_SELF, "trace_vues",1);
iIDClass = GetClassByPosition(1,oPC);
if (iIDClass == CLASS_TYPE_RANGER || iIDClass == CLASS_TYPE_DRUID)
FloatingTextStringOnCreature("Vous voyez des traces d'animaux sur le sol.",oPC,FALSE);
else FloatingTextStringOnCreature("Vous voyez des traces sur le sol mais seul un ranger
ou un druide pourrait les identifer.",oPC,FALSE);
}
}
}


Le truc ensuite c'est de faire un trigger carré pour les traces d'animaux et un trigger triangulaire pour les traces de pas. Ca permet de facilement les distinguer dans aurora sans avoir à aller voir quel script se trouve derriére tel ou tel autre trigger.

Lorsque j'ai utilisé celà mes triggers triangulaire étaient assez petits, du genre on peut mettre un perso sur chaque sommet sans qu'ils se gènent ce qui est assez petit sisi. Les traces d'animaux en étant rectangulaire étaient un peu plus grand mais à pein. Avec le recul, je ferais peut être des triggers un poil plus grand plus facile à trouver et j'allumerais peut être des lumières d'un autre couleur pour les triggers non identifié (mais celà oblige alors lors de l'identification à commencet par éteindre la lumiére de non identification puis allumer l'autre ...). Les joueurs ne m'ont pas dit avoir été génés par la difficulté à trouver les traces ou par l'absence de couleur.

Illustration :
http://www.arpenteurs-univers.com/modules/uskolaxgallery/images/nwn/big/Traces.jpg

Mob'.

super !!!!

Par Ballesto le 14/10/2002 à 11:26:17 (#2332319)

Mais il est super ton script Mob'. Aller hop copier-coller et dans le dossier des script à utiliser dans mon module.
Justement j'avait zapper cette possibilité pour que les joueurs allent dans un endroit particulier du scénar. Mais maintenant cela va être autre chose.

Merci encore. :D :D :eureka:

Par mobidique le 14/10/2002 à 11:29:44 (#2332337)

Ben si ça te fait plaisir ça me fait plaisir ;) ... Un joueur vient de me confirmer une nouvelle fois que c'était trés bien comme ça ... En fait c'est pour moi que c'était usant ... "*derrière mon écran ALLLLLLLEZ ... MAIS FAIT UN PAS A DROITE ANDOUILLEEEEEEEUUUUUUUUH
- (in game) Ben moi j'les trouve pas les traces ... ":maboule:

Par mobidique le 14/10/2002 à 11:30:55 (#2332350)

Damned ... Désolé Daynos je peux pas éditer mon sujet pour lui mettre un [SCRIPT] devant. Désolé ...

Par Ballesto le 26/10/2002 à 18:37:09 (#2413252)

Salut Mod,

J'ai enfin collé ton script dans mon module mais j'ai un problème mon rangers trouve bien les traces mais aucune lumière ne s'allume ?

Au fait ils faut un petit triggers ou bien un grand trigger couvvrant tout une zone fait l'affaire en ensuite tu place comment les traces à suivre ?

Répond moi sur le Forum STP je suis en congé et j'ai pas le serveur de méssagerie de la boite donc pas d'e-mail.

Merci de ton aide.

Par coolstar le 26/10/2002 à 20:26:36 (#2413807)

Super mobi! :hardos:

Par eMRaistlin le 26/10/2002 à 21:07:02 (#2413953)

lool... le post sortis des enfers... TOPIC REVIVALLLLL

Mais c'est pas grave... j'adore, c'est bien qu'il soit remonté...

J'en ai pas l'usage, mais j'aime tellement l'idée que je vais me forcer un chouilla pour trouver une raison de le mettre dans module...

Good Job ^^

Par mobidique le 26/10/2002 à 21:56:45 (#2414120)

Provient du message de Ballesto
aucune lumière ne s'allume ?

Au fait ils faut un petit triggers ou bien un grand trigger couvvrant tout une zone fait l'affaire en ensuite tu place comment les traces à suivre ?


ben comme le montre l'illustration chez moi celà s'allumait :( ... Alors attention ... y a 2 scripts ... l'un pour les traces à suivre qui génére bien une lumière et l'autre simplement des traces d'animaux qui ne génére pas de lumière ... Sinon je vois pas à part le debug là je vois pas ...

Pour la taille du trigger, le script génére un message et le cas échéant une lumière lorsque le perso rentre dans le trigger ... Si tu fais un trigger de la taille de ta zone t'aura au mieux un message ... Ce qui n'est pas ce que tu veux. Donc ça s'utilise en faisant des petits triggers genre des triangles équilatéraux de 2m de coté ou des carrés de 2 m de coté, et tu les place en faisant un chemin du point des premières traces au point des dernières traces. Un nouvelle fois je ne saurais vous conseiller mieux que de DL mon module trashcity2 (avec le hakpack qui va bien sinon vous allez avoir un pb) et de regarder dans la zone "Forêt" comment j'ai fait. Dans cette zone quand vous la regarder de puis une vue plongeante à la verticale vous voyez des triggers triangulaire qui sont des traces de pas et des triggers carrés qui sont des traces d'animaux.

Valà :)

EM> pour le topic revival ... l'a que 12 jours ce topic hein ;) mais tout va trop vite dans notre monde de brutes et patati patata ;)

Par Ballesto le 27/10/2002 à 14:58:48 (#2417595)

Excuse mod, effectivement cela marche super. Juste que j'avais fait un grand trigger et que le centre se trouvait dans une barraque.

Merci encore.

Par Zariel le 4/1/2003 à 13:14:09 (#2942110)

Bah désolé se script ne se compile pas chez moi, j'ai une erreur ligne 24 "UNDERTERMINED STRING CONSTANT".

Par sounéva le 4/1/2003 à 20:54:38 (#2945482)

else FloatingTextStringOnCreature("Vous voyez des traces sur le sol mais seul un ranger
ou un druide pourrait les identifer.",oPC,FALSE);


else FloatingTextStringOnCreature("Vous voyez des traces sur le sol mais seul un ranger"+
"ou un druide pourrait les identifer.",oPC,FALSE);

Par Zariel le 5/1/2003 à 3:43:07 (#2947448)

J'ai rien compris... :D

Par Archamedes_Fr le 5/1/2003 à 12:52:55 (#2948788)

Il manquait: "+ après Ranger, et " avant le "ou" de la deuxième ligne.

Entre " ", on met le texte à écrire, mais comme le texte est trop long et qu'il est sur deux ligne, ce que l'éditeur ne sait pas lire, on met deux phrases qu'on lui demande d'afficher enchainé, d'où le +

Exemple:
"Phrase_1_hyper_mega_trop_longue_parce_qu_y_a_plein_de_chose_a_dire_est_pour_que_ça_reste_lisible"+
" he_bhen_je_met_sur_une_autre_ligne !"

Par coolstar le 5/1/2003 à 13:09:05 (#2948896)

:mdr:

JOL Archives 1.0.1
@ JOL / JeuxOnLine