Spawn in mystery. Confused.
TheTinman
Member Posts: 74
When spawning in creatures to a waypoint they fall from the sky to the spawn point.creatures. Anyone know why this happens?
Im using the "spawndaemon" script.
Im using the "spawndaemon" script.
0
Comments
I hate it when that happens.
//On Area Heartbeat Script
void main()
{
int sq,x,sqt,sqdone,rr;
string sqc;
location sql;
object curarea;
curarea = GetArea(OBJECT_SELF);
sq = GetLocalInt(curarea,"spawnqueue");
if (sq >= 1) {
x = 1;
if (GetLocalInt(curarea,"rollover") == 1) {
rr = 40;
} else {
rr = sq;
}
while (x <= rr) {
sqt = GetLocalInt(curarea,"sqt" + IntToString(x));
sqdone = GetLocalInt(curarea,"sqtdone" + IntToString(x));
if (sqt == 0 || sqdone == 1) { }
else {
if (sqt > 1) {
SetLocalInt(curarea,"sqt" + IntToString(x), sqt-1);
} else {
sqc = GetLocalString(curarea,"sqc" + IntToString(x));
sql = GetLocalLocation(curarea,"sqt" + IntToString(x));
CreateObject(OBJECT_TYPE_CREATURE,sqc,sql,TRUE);
SetLocalInt(curarea,"sqtdone" + IntToString(x),1);
}
}
x++;
}
}
}
// On Creature death script
//::///////////////////////////////////////////////
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
Shouts to allies that they have been killed
*/
#include "NW_I0_GENERIC"
void main()
{
int spawnqueue;
int sq;
object curarea;
int nClass = GetLevelByClass(CLASS_TYPE_COMMONER);
int nAlign = GetAlignmentGoodEvil(OBJECT_SELF);
if(nClass > 0 && (nAlign == ALIGNMENT_GOOD || nAlign == ALIGNMENT_NEUTRAL))
{
object oKiller = GetLastKiller();
AdjustAlignment(oKiller, ALIGNMENT_EVIL, 5);
}
curarea = GetArea(OBJECT_SELF);
spawnqueue = GetLocalInt(curarea,"spawnqueue");
if (spawnqueue >= 1) {
sq = spawnqueue+1;
if (sq == 41) { sq = 1; SetLocalInt(curarea,"rollover",1); }
} else {
sq = 1;
}
if (GetLocalInt(curarea,"rollover") == 1) {
if (GetLocalInt(curarea,"sqtdone" + IntToString(sq)) == 0 && GetLocalInt(curarea,"sqt" + IntToString(sq)) > 0) {
CreateObject(OBJECT_TYPE_CREATURE,GetLocalString(curarea,"sqc" + IntToString(sq)),GetLocalLocation(curarea,"sqt"+IntToString(sq)),TRUE);
}
}
SetLocalInt(curarea,"spawnqueue",sq);
SetLocalInt(curarea,"sqt" + IntToString(sq),6);
SetLocalInt(curarea,"sqtdone" + IntToString(sq),0);
SetLocalString(curarea,"sqc" + IntToString(sq), GetTag(OBJECT_SELF));
SetLocalLocation(curarea,"sqt" + IntToString(sq),GetLocalLocation(OBJECT_SELF,"myspawn"));
SpeakString("NW_I_AM_DEAD", TALKVOLUME_SILENT_TALK);
//Shout Attack my target, only works with the On Spawn In setup
SpeakString("NW_ATTACK_MY_TARGET", TALKVOLUME_SILENT_TALK);
if(GetSpawnInCondition(NW_FLAG_DEATH_EVENT))
{
SignalEvent(OBJECT_SELF, EventUserDefined(1007));
}
}
// On Creature respawn script
//::///////////////////////////////////////////////
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
Determines the course of action to be taken
after having just been spawned in
*/
#include "NW_O2_CONINCLUDE"
#include "NW_I0_GENERIC"
void main()
{
// OPTIONAL BEHAVIORS (Comment In or Out to Activate ) ****************************************************************************
//SetSpawnInCondition(NW_FLAG_SPECIAL_CONVERSATION);
//SetSpawnInCondition(NW_FLAG_SPECIAL_COMBAT_CONVERSATION);
// This causes the creature to say a special greeting in their conversation file
// upon Perceiving the player. Attach the [NW_D2_GenCheck.nss] script to the desired
// greeting in order to designate it. As the creature is actually saying this to
// himself, don't attach any player responses to the greeting.
//SetSpawnInCondition(NW_FLAG_SHOUT_ATTACK_MY_TARGET);
// This will set the listening pattern on the NPC to attack when allies call
//SetSpawnInCondition(NW_FLAG_STEALTH);
// If the NPC has stealth and they are a rogue go into stealth mode
//SetSpawnInCondition(NW_FLAG_SEARCH);
// If the NPC has Search go into Search Mode
//SetSpawnInCondition(NW_FLAG_SET_WARNINGS);
// This will set the NPC to give a warning to non-enemies before attacking
//SetSpawnInCondition(NW_FLAG_SLEEP);
//Creatures that spawn in during the night will be asleep.
//SetSpawnInCondition(NW_FLAG_DAY_NIGHT_POSTING);
SetSpawnInCondition(NW_FLAG_APPEAR_SPAWN_IN_ANIMATION);
//SetSpawnInCondition(NW_FLAG_IMMOBILE_AMBIENT_ANIMATIONS);
SetSpawnInCondition(NW_FLAG_AMBIENT_ANIMATIONS);
//This will play Ambient Animations until the NPC sees an enemy or is cleared.
//NOTE that these animations will play automatically for Encounter Creatures.
// NOTE: ONLY ONE OF THE FOLOOWING ESCAPE COMMANDS SHOULD EVER BE ACTIVATED AT ANY ONE TIME.
//SetSpawnInCondition(NW_FLAG_ESCAPE_RETURN); // OPTIONAL BEHAVIOR (Flee to a way point and return a short time later.)
//SetSpawnInCondition(NW_FLAG_ESCAPE_LEAVE); // OPTIONAL BEHAVIOR (Flee to a way point and do not return.)
//SetSpawnInCondition(NW_FLAG_TELEPORT_LEAVE); // OPTIONAL BEHAVIOR (Teleport to safety and do not return.)
//SetSpawnInCondition(NW_FLAG_TELEPORT_RETURN); // OPTIONAL BEHAVIOR (Teleport to safety and return a short time later.)
// CUSTOM USER DEFINED EVENTS
/*
The following settings will allow the user to fire one of the blank user defined events in the NW_D2_DefaultD. Like the
On Spawn In script this script is meant to be customized by the end user to allow for unique behaviors. The user defined
events user 1000 - 1010
*/
//SetSpawnInCondition(NW_FLAG_HEARTBEAT_EVENT); //OPTIONAL BEHAVIOR - Fire User Defined Event 1001
//SetSpawnInCondition(NW_FLAG_PERCIEVE_EVENT); //OPTIONAL BEHAVIOR - Fire User Defined Event 1002
//SetSpawnInCondition(NW_FLAG_ATTACK_EVENT); //OPTIONAL BEHAVIOR - Fire User Defined Event 1005
//SetSpawnInCondition(NW_FLAG_DAMAGED_EVENT); //OPTIONAL BEHAVIOR - Fire User Defined Event 1006
//SetSpawnInCondition(NW_FLAG_DISTURBED_EVENT); //OPTIONAL BEHAVIOR - Fire User Defined Event 1008
//SetSpawnInCondition(NW_FLAG_END_COMBAT_ROUND_EVENT); //OPTIONAL BEHAVIOR - Fire User Defined Event 1003
//SetSpawnInCondition(NW_FLAG_ON_DIALOGUE_EVENT); //OPTIONAL BEHAVIOR - Fire User Defined Event 1004
//SetSpawnInCondition(NW_FLAG_DEATH_EVENT); //OPTIONAL BEHAVIOR - Fire User Defined Event 1007
// DEFAULT GENERIC BEHAVIOR (DO NOT TOUCH) *****************************************************************************************
SetListeningPatterns(); // Goes through and sets up which shouts the NPC will listen to.
WalkWayPoints(); // Optional Parameter: void WalkWayPoints(int nRun = FALSE, float fPause = 1.0)
// 1. Looks to see if any Way Points in the module have the tag "WP_" + NPC TAG + "_0X", if so walk them
// 2. If the tag of the Way Point is "POST_" + NPC TAG the creature will return this way point after
// combat.
GenerateNPCTreasure(); //* Use this to create a small amount of treasure on the creature
SetLocalLocation(OBJECT_SELF,"myspawn",GetLocation(OBJECT_SELF));
}
If its not a script error could it be with framerate or vsync?
No change when I tried this. They still drop from the heavens.
Thanks for the help everyone.