void RespawnObject(string sResRef, int iType, location lLoc) { CreateObject(iType, sResRef, lLoc); } void main() { object oBoss=GetObjectByTag("mindflayerboss"); SetPlotFlag(oBoss,FALSE); effect eDam = EffectDamage(100); DelayCommand(1.0,ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oBoss)); string sResRef = GetResRef(OBJECT_SELF); int iType = GetObjectType(OBJECT_SELF); // For creatures, save the location at spawn-time as a local location and // use it instead. Otherwise, the creature will respawn where it died. // No changes are required for placeables as they do not move (usually ;-) location lLoc =GetLocation(OBJECT_SELF); float fDelay = 1200.0; // 20 minute delay; adjust as desired AssignCommand(GetModule(), DelayCommand(fDelay, RespawnObject(sResRef, iType, lLoc))); }