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

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

Spawner des Monstres comme dans les MMORPG

Par Mandalor le 29/6/2002 à 12:53:32 (#1729370)

Salutations
J'ai besoin d'aide car je suis en train de créer mon module et je veux créer un campement de goblins qui respawn comme dans EQ. J'utilise le super script que j'ai trouvé mais il se passe deux choses qui ne me vont pas: le corps de la creature ne disparait pas mais pire après le temps que j'ai decidé, elle ne réapparait pas à l'endroit du Waypoint assigné mais à la place de son corps décédé.

Je vous montre le script; su quelqu'un à une idée pour corriger ces deux erreurs?:

Finally it's complete!

Special thanks to SPIKE for the error correcting!

This will respawn a monster to a waypoint OnDeath.

Steps:

1) Create a monster in the creature wizard.
2) Remember or copy down the creatures BLUEPRINT name. (if this isn't done you may start respawning badgers instead of the intended creature).
3) Laydown a WAYPOINT and name it's tag to something - I used "littlespawner" but you may change it to whatever you like.
4) Copy this script into the OnDeath script of your creature.
5) Replace your waypoint name where it reads "littlespawner"
6) Replace your custom creature blueprint name where it reads "spec"
7) Save the script as a Save As [whatever_name_you_want_] Update any instances for that monster by right clicking the monster name in the blueprint editor and selecting UPDATE INSTANCED: (if you have placed any creatures make sure you select them all or the script may not execute)
You're done! You now have a simple MMORPG style creature respawner.

//::**********************
//::MMORPG Style Respawner
//::By: Stephan Cam
//:: Error Correcting by SPIKE
//:: June 24, 2002

#include "NW_I0_GENERIC"

void VoidCreateObject(string sTemplate, location lLoc, int bUseAppearAnimation=TRUE);
void main()
{


location lLoca = GetLocation(GetObjectByTag ("littlespawner"));//waypoint name
float fSeconds = 10.0; //monster spawn time
string sTemplate = "spec";//monster name - same as initial monster - use blueprint name

if(GetSpawnInCondition(NW_FLAG_DEATH_EVENT))
{
SignalEvent(OBJECT_SELF, EventUserDefined(1007));
}


{
SetIsDestroyable(FALSE);
AssignCommand(OBJECT_SELF, DelayCommand(fSeconds, VoidCreateObject(sTemplate,lLoca, TRUE)));
}

}

void VoidCreateObject(string sTemplate, location lLoca, int bUseAppearAnimation=TRUE)
{
CreateObject(OBJECT_TYPE_CREATURE, sTemplate,lLoca,TRUE);
SetIsDestroyable(TRUE);
}

//****************

Mercid 'avance et un grand merci pour tous les liens vers les scripts déjà tout fait.

Par Lumina le 29/6/2002 à 15:04:44 (#1729961)

Dans "littlespawner", tu dois mettre le tag du waypoint où tu veux que le monstre apparaisse, pas le tag du monstre.

Et pour que le corps disparaisse, c'est dans les propriétés de la créature, advanced, special, et tu décoches toutes les cases : disarmable, plot, no permanent death. Et tu mets le "Treasure Model" à défaut.

Bon, je n'ai pas testé, mais c'est tout ce qui me vient à l'idée pour tes problèmes.

Par Caepolla le 29/6/2002 à 16:48:18 (#1730394)

Je vais poser une question bête : pourquoi chercher à se compliquer la vie avec des scripts ici, alors qu'on peut obtenir le même résultat avec le "Encounter Wizard" ? de façon plus rapide, plus souple (modification plus simple).

Normalement, les Encounters servent à définir le point d'apparition de monstres, à définir dans des listes, et tu peux cocher une case pour un "respawn" avec temps déterminé. Je n'ai pas du tout essayé de faire un respawn avec, mais en tout cas j'ai vu l'option.

:merci:

Par Mandalor le 30/6/2002 à 0:22:16 (#1732234)

merci pour ces conseils je vais voir tout ça

Par Mandalor le 1/7/2002 à 13:03:08 (#1738947)

bon après essai...effectivement mes erreurs venaient du tag, par contre j'ai essayé de paramètrer le encounter avec respawn continuous et ça marche pas du tout...j'ai une première rencontre mais pas de respawn après...

dans le script d'au dessus qu'elle ligne dois je mettre si je veux paramètrer un nobre défini de respawn?

JOL Archives 1.0.1
@ JOL / JeuxOnLine