generated from Jaysyn/ModuleTemplate
720 lines
14 KiB
Markdown
720 lines
14 KiB
Markdown
# NESS — Spawn System
|
||
Version 8.1.4
|
||
|
||
Original Author: Neshke Narovken
|
||
|
||
ex-Maintainer: Cereborn
|
||
|
||
Current Maintainer: Jaysyn
|
||
|
||
*******************************************************************
|
||
|
||
INCLUDES:
|
||
|
||
Do NOT Modify Main Script:
|
||
Spawn: 'spawn_main'
|
||
|
||
Do NOT Modify Helper Scripts:
|
||
Information: 'spawn__readme'
|
||
Functions: 'spawn_functions'
|
||
Corpse Death: 'spawn_corpse_dth'
|
||
Corpse Decay: 'spawn_corpse_dcy'
|
||
Global Defaults: 'spawn_defaults'
|
||
Flag Parsing: 'spawn_flags'
|
||
Pseudo-heartbeat 'spawn_pseudohb'
|
||
|
||
Lootable corpse event scripts:
|
||
Corpse On Open: 'spawn_onopencrp'
|
||
Corpse On Closed: 'spawn_oncloscrp'
|
||
Corpse Disturbed: 'spawn_dist_corps'
|
||
Corpse Used: 'spawn_used_corps'
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
CONFIGURATION:
|
||
|
||
Modify Configuration Includes if Needed
|
||
Only where Specified in Each File:
|
||
Spawn Flags: 'spawn_cfg_flag'
|
||
Spawn Groups: 'spawn_cfg_group'
|
||
Loot Tables: 'spawn_cfg_loot'
|
||
Spawn Camps: 'spawn_cfg_camp'
|
||
Spawn Effects: 'spawn_cfg_fxsp'
|
||
Area Effects: 'spawn_cfg_fxae'
|
||
Object Effects: 'spawn_cfg_fxobj'
|
||
User Defaults: 'spawn_cfg_global'
|
||
Custom Flags: 'spawn_cfg_cusflg'
|
||
|
||
Modify Check Includes if Needed
|
||
Only where Specified in each File:
|
||
Check PCs: 'spawn_chk_pcs'
|
||
Custom Check: 'spawn_chk_custom'
|
||
|
||
Modify Scripting Includes if Needed
|
||
Only where Specified in Each File:
|
||
Spawn/Despawn: 'spawn_sc_spawn'
|
||
Heartbeat: 'spawn_sc_hbeat'
|
||
Death: 'spawn_sc_death'
|
||
Deactivation: 'spawn_sc_deactiv'
|
||
Camp Trigger: 'spawn_sc_cmptrig'
|
||
Patrol Stops: 'spawn_sc_patrol'
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
USAGE:
|
||
|
||
Add Following to Area Heartbeat:
|
||
|
||
Sample Script: 'spawn_sample_hb'
|
||
|
||
#include "spawn_main"
|
||
Spawn();
|
||
|
||
Add Spawn Waypoints
|
||
All Switches Optional
|
||
|
||
Waypoint Name:
|
||
SP_<Spawn Flags>
|
||
|
||
Waypoint Tag:
|
||
Child Object Tag / ResRef
|
||
Group Designation
|
||
Camp Designation
|
||
|
||
Note:
|
||
For Custom Creatures you must use the ResRef
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
AVAILABLE FLAGS:
|
||
|
||
SPnOn_ISnDn_IDn_FTn_SNnMn_SAnMn_SRnMnP_SDnMn_CLnMn
|
||
_RGnMnCn_RWRn_DYnTn_HRnTn_DOD_NOD_PCnR_SF_SUnIn_FXnDn
|
||
_PRnTn_PLnTn_EEnRn_EXnRn_SG_CDnTnRnD_LTnAnBnCn_DSnSn_DIn_CMDn
|
||
_SSnDn_CCn_CPnRn_TRnDn_AEnDn_OEnDn_RSn_FCn
|
||
_ALnSn_HBn_SLnRnI_RHDn_DTn_HLnE_IT_ST_PT_SM_CF
|
||
_SXn_NL_SB_ELn
|
||
|
||
Format:
|
||
Flag|OptionalFlag
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
SPn|On
|
||
Designates Spawn Waypoint
|
||
SP is required on all Spawn Waypoints
|
||
Performs spawn processing every SP01–SP99 heartbeats
|
||
Default SP01 ˜ 6 seconds
|
||
SP00 defaults to SP01
|
||
Optional On: offset initial processing by n heartbeats
|
||
|
||
ISn|Dn
|
||
Initial State
|
||
0 = Inactive
|
||
1 = Active (default)
|
||
Optional D000: delay initial spawn (minutes)
|
||
|
||
IDn
|
||
Sets LocalInt "SpawnID" on spawn waypoint
|
||
|
||
FTn
|
||
Flag Table
|
||
Defined in 'spawn_cfg_flag'
|
||
|
||
SNn|Mn
|
||
Spawn Number
|
||
Maintains SN00–SN99 children
|
||
Optional M00: minimum children
|
||
|
||
SA|n|Mn
|
||
Spawn All at Once
|
||
Optional n: children per cycle
|
||
Optional M00: minimum per cycle
|
||
|
||
SRn|Mn|P
|
||
Spawn Radius SR00–SR99 meters
|
||
Optional M00: minimum radius
|
||
Optional P: center near random PC
|
||
|
||
SDn|Mn|P
|
||
Spawn Delay SD00–SD99 minutes
|
||
Optional M00: minimum delay
|
||
Optional P: fixed spawn period
|
||
|
||
CLn|Mn
|
||
Child Lifespan in minutes
|
||
Optional M00: random range
|
||
|
||
DYn|Tn
|
||
Spawn Days DY00–DY28
|
||
Optional T00: end day
|
||
|
||
HRn|Tn
|
||
Spawn Hours HR00–HR24
|
||
Optional T00: end hour
|
||
|
||
DO|D
|
||
Day only
|
||
Optional D: despawn at night
|
||
|
||
NO|D
|
||
Night only
|
||
Optional D: despawn at day
|
||
|
||
RW|Rn
|
||
Random Walk
|
||
Optional R00–R99 meters
|
||
WARNING: resource intensive
|
||
|
||
PC|n|R
|
||
PC presence required
|
||
Optional PC00: despawn delay
|
||
Optional R: reset spawn point
|
||
|
||
RGn|Mn|Cn
|
||
Random Gold RG000–RG999
|
||
Optional M00: minimum
|
||
Optional C00: chance %
|
||
|
||
SF
|
||
Spawn Facing matches waypoint
|
||
|
||
SUn|In
|
||
Spawn Unseen
|
||
Optional I00: per-child check
|
||
|
||
FXn|Dn
|
||
Spawn / Despawn Effects
|
||
Defined in 'spawn_cfg_fxsp'
|
||
|
||
PRn|Tn|C
|
||
Patrol Route PR00–PR99
|
||
Route Types:
|
||
0 Sequential
|
||
1 Circular
|
||
2 Random
|
||
3 Walk once / despawn
|
||
Optional C: start closest
|
||
|
||
EEn|Rn
|
||
Entrance / Exit waypoint
|
||
|
||
EXn|Rn
|
||
Exit waypoint
|
||
|
||
PLn|Tn|Pn
|
||
Placeable Behavior
|
||
0 Default
|
||
1 Despawn if empty
|
||
2 Refill if empty
|
||
3 Refresh every P minutes
|
||
|
||
SG
|
||
Spawn Group (spawn_cfg_group)
|
||
|
||
CDn|Tn|Rn|D
|
||
Corpse Decay and remains behavior
|
||
|
||
LTn|An|Bn|Cn
|
||
Loot Table (spawn_cfg_loot)
|
||
|
||
DSn|Sn
|
||
Deactivate Spawn by condition
|
||
Optional S000: run script on deactivation
|
||
|
||
DIn
|
||
Deactivation Information
|
||
|
||
CM|Dn
|
||
Spawn Camp (spawn_cfg_camp)
|
||
|
||
SSn|Dn
|
||
Spawn / Despawn Script
|
||
|
||
DTn
|
||
Death Script
|
||
|
||
CPn|Rn
|
||
PC Check (spawn_chk_pcs)
|
||
|
||
CCn
|
||
Custom Check (spawn_chk_custom)
|
||
|
||
TRn|Dn
|
||
Spawn Trigger
|
||
|
||
AEn|Dn
|
||
Area Effect (spawn_cfg_fxae)
|
||
|
||
OEn|Dn
|
||
Object Effect (spawn_cfg_fxobj)
|
||
|
||
RSn
|
||
Random Spawn Chance %
|
||
|
||
FCn
|
||
Spawn Faction
|
||
|
||
ALn|Sn
|
||
Spawn Alignment Shift
|
||
|
||
HBn
|
||
Heartbeat Script
|
||
|
||
SLn|Rn|I
|
||
Spawn Location(s)
|
||
|
||
RH|Dn
|
||
Return Home Distance
|
||
|
||
HLn|E
|
||
Heal Children when idle
|
||
|
||
IT
|
||
Spawn Item
|
||
|
||
ST
|
||
Spawn Sit
|
||
|
||
PT
|
||
Spawn Plot
|
||
|
||
SM
|
||
Spawn Merchant
|
||
|
||
CF
|
||
Custom Flag stored as LocalString "CustomFlag"
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
EXTERNAL CONTROL FUNCTIONS:
|
||
|
||
object NESS_GetSpawnByID(int nSpawnID, object oArea);
|
||
void NESS_ActivateSpawnByID(int nSpawnID, object oArea);
|
||
void NESS_DeactivateSpawnByID(int nSpawnID, object oArea);
|
||
void NESS_ActivateSpawn(object oSpawn);
|
||
void NESS_DeactivateSpawn(object oSpawn);
|
||
void NESS_ForceProcess(object oSpawn);
|
||
void NESS_TrackModuleSpawns(int nFlag = TRUE);
|
||
int NESS_IsModuleSpawnTracking();
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
TIPS AND POINTERS:
|
||
|
||
1. .erf files usually contain .nss and .utp files.
|
||
2. Save and reopen the module after import.
|
||
3. Configuration scripts are saved, not compiled.
|
||
4. Compile spawn_sample_hb after configuration changes.
|
||
5. Only scripts attached to events need compiling.
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
PACKAGE HEADER (REFERENCE):
|
||
|
||
NESS Version 8.1.1
|
||
Cereborn
|
||
|
||
See 'spawn__readme' for instructions
|
||
Ignore all missing resource errors
|
||
See NWN forums for more info
|
||
|
||
You said:
|
||
in a code window formatted as github markdown
|
||
ChatGPT said:
|
||
|
||
# NESS — Spawn System
|
||
Version 8.1.4
|
||
|
||
Original Author: Neshke Narovken
|
||
ex-Maintainer: Cereborn
|
||
Current Maintainer: Jaysyn
|
||
|
||
*******************************************************************
|
||
|
||
INCLUDES:
|
||
|
||
Do NOT Modify Main Script:
|
||
Spawn: 'spawn_main'
|
||
|
||
Do NOT Modify Helper Scripts:
|
||
Information: 'spawn__readme'
|
||
Functions: 'spawn_functions'
|
||
Corpse Death: 'spawn_corpse_dth'
|
||
Corpse Decay: 'spawn_corpse_dcy'
|
||
Global Defaults: 'spawn_defaults'
|
||
Flag Parsing: 'spawn_flags'
|
||
Pseudo-heartbeat 'spawn_pseudohb'
|
||
|
||
Lootable corpse event scripts:
|
||
Corpse On Open: 'spawn_onopencrp'
|
||
Corpse On Closed: 'spawn_oncloscrp'
|
||
Corpse Disturbed: 'spawn_dist_corps'
|
||
Corpse Used: 'spawn_used_corps'
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
CONFIGURATION:
|
||
|
||
Modify Configuration Includes if Needed
|
||
Only where Specified in Each File:
|
||
Spawn Flags: 'spawn_cfg_flag'
|
||
Spawn Groups: 'spawn_cfg_group'
|
||
Loot Tables: 'spawn_cfg_loot'
|
||
Spawn Camps: 'spawn_cfg_camp'
|
||
Spawn Effects: 'spawn_cfg_fxsp'
|
||
Area Effects: 'spawn_cfg_fxae'
|
||
Object Effects: 'spawn_cfg_fxobj'
|
||
User Defaults: 'spawn_cfg_global'
|
||
Custom Flags: 'spawn_cfg_cusflg'
|
||
|
||
Modify Check Includes if Needed
|
||
Only where Specified in each File:
|
||
Check PCs: 'spawn_chk_pcs'
|
||
Custom Check: 'spawn_chk_custom'
|
||
|
||
Modify Scripting Includes if Needed
|
||
Only where Specified in Each File:
|
||
Spawn/Despawn: 'spawn_sc_spawn'
|
||
Heartbeat: 'spawn_sc_hbeat'
|
||
Death: 'spawn_sc_death'
|
||
Deactivation: 'spawn_sc_deactiv'
|
||
Camp Trigger: 'spawn_sc_cmptrig'
|
||
Patrol Stops: 'spawn_sc_patrol'
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
USAGE:
|
||
|
||
Add Following to Area Heartbeat:
|
||
|
||
Sample Script: 'spawn_sample_hb'
|
||
|
||
#include "spawn_main"
|
||
Spawn();
|
||
|
||
Add Spawn Waypoints
|
||
All Switches Optional
|
||
|
||
Waypoint Name:
|
||
SP_<Spawn Flags>
|
||
|
||
Waypoint Tag:
|
||
Child Object Tag / ResRef
|
||
Group Designation
|
||
Camp Designation
|
||
|
||
Note:
|
||
For Custom Creatures you must use the ResRef
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
AVAILABLE FLAGS:
|
||
|
||
SPnOn_ISnDn_IDn_FTn_SNnMn_SAnMn_SRnMnP_SDnMn_CLnMn
|
||
_RGnMnCn_RWRn_DYnTn_HRnTn_DOD_NOD_PCnR_SF_SUnIn_FXnDn
|
||
_PRnTn_PLnTn_EEnRn_EXnRn_SG_CDnTnRnD_LTnAnBnCn_DSnSn_DIn_CMDn
|
||
_SSnDn_CCn_CPnRn_TRnDn_AEnDn_OEnDn_RSn_FCn
|
||
_ALnSn_HBn_SLnRnI_RHDn_DTn_HLnE_IT_ST_PT_SM_CF
|
||
_SXn_NL_SB_ELn
|
||
|
||
Format:
|
||
Flag|OptionalFlag
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
SPn|On
|
||
Designates Spawn Waypoint
|
||
SP is required on all Spawn Waypoints
|
||
Performs spawn processing every SP01–SP99 heartbeats
|
||
Default SP01 ˜ 6 seconds
|
||
SP00 defaults to SP01
|
||
Optional On: offset initial processing by n heartbeats
|
||
|
||
ISn|Dn
|
||
Initial State
|
||
0 = Inactive
|
||
1 = Active (default)
|
||
Optional D000: delay initial spawn (minutes)
|
||
|
||
IDn
|
||
Sets LocalInt "SpawnID" on spawn waypoint
|
||
|
||
FTn
|
||
Flag Table
|
||
Defined in 'spawn_cfg_flag'
|
||
|
||
SNn|Mn
|
||
Spawn Number
|
||
Maintains SN00–SN99 children
|
||
Optional M00: minimum children
|
||
|
||
SA|n|Mn
|
||
Spawn All at Once
|
||
Optional n: children per cycle
|
||
Optional M00: minimum per cycle
|
||
|
||
SRn|Mn|P
|
||
Spawn Radius SR00–SR99 meters
|
||
Optional M00: minimum radius
|
||
Optional P: center near random PC
|
||
|
||
SDn|Mn|P
|
||
Spawn Delay SD00–SD99 minutes
|
||
Optional M00: minimum delay
|
||
Optional P: fixed spawn period
|
||
|
||
CLn|Mn
|
||
Child Lifespan in minutes
|
||
Optional M00: random range
|
||
|
||
DYn|Tn
|
||
Spawn Days DY00–DY28
|
||
Optional T00: end day
|
||
|
||
HRn|Tn
|
||
Spawn Hours HR00–HR24
|
||
Optional T00: end hour
|
||
|
||
DO|D
|
||
Day only
|
||
Optional D: despawn at night
|
||
|
||
NO|D
|
||
Night only
|
||
Optional D: despawn at day
|
||
|
||
RW|Rn
|
||
Random Walk
|
||
Optional R00–R99 meters
|
||
WARNING: resource intensive
|
||
|
||
PC|n|R
|
||
PC presence required
|
||
Optional PC00: despawn delay
|
||
Optional R: reset spawn point
|
||
|
||
RGn|Mn|Cn
|
||
Random Gold RG000–RG999
|
||
Optional M00: minimum
|
||
Optional C00: chance %
|
||
|
||
SF
|
||
Spawn Facing matches waypoint
|
||
|
||
SUn|In
|
||
Spawn Unseen
|
||
Optional I00: per-child check
|
||
|
||
FXn|Dn
|
||
Spawn / Despawn Effects
|
||
Defined in 'spawn_cfg_fxsp'
|
||
|
||
PRn|Tn|C
|
||
Patrol Route PR00–PR99
|
||
Route Types:
|
||
0 Sequential
|
||
1 Circular
|
||
2 Random
|
||
3 Walk once / despawn
|
||
Optional C: start closest
|
||
|
||
EEn|Rn
|
||
Entrance / Exit waypoint
|
||
|
||
EXn|Rn
|
||
Exit waypoint
|
||
|
||
PLn|Tn|Pn
|
||
Placeable Behavior
|
||
0 Default
|
||
1 Despawn if empty
|
||
2 Refill if empty
|
||
3 Refresh every P minutes
|
||
|
||
SG
|
||
Spawn Group (spawn_cfg_group)
|
||
|
||
CDn|Tn|Rn|D
|
||
Corpse Decay and remains behavior
|
||
|
||
LTn|An|Bn|Cn
|
||
Loot Table (spawn_cfg_loot)
|
||
|
||
DSn|Sn
|
||
Deactivate Spawn by condition
|
||
Optional S000: run script on deactivation
|
||
|
||
DIn
|
||
Deactivation Information
|
||
|
||
CM|Dn
|
||
Spawn Camp (spawn_cfg_camp)
|
||
|
||
SSn|Dn
|
||
Spawn / Despawn Script
|
||
|
||
DTn
|
||
Death Script
|
||
|
||
CPn|Rn
|
||
PC Check (spawn_chk_pcs)
|
||
|
||
CCn
|
||
Custom Check (spawn_chk_custom)
|
||
|
||
TRn|Dn
|
||
Spawn Trigger
|
||
|
||
AEn|Dn
|
||
Area Effect (spawn_cfg_fxae)
|
||
|
||
OEn|Dn
|
||
Object Effect (spawn_cfg_fxobj)
|
||
|
||
RSn
|
||
Random Spawn Chance %
|
||
|
||
FCn
|
||
Spawn Faction
|
||
|
||
ALn|Sn
|
||
Spawn Alignment Shift
|
||
|
||
HBn
|
||
Heartbeat Script
|
||
|
||
SLn|Rn|I
|
||
Spawn Location(s)
|
||
|
||
RH|Dn
|
||
Return Home Distance
|
||
|
||
HLn|E
|
||
Heal Children when idle
|
||
|
||
IT
|
||
Spawn Item
|
||
|
||
ST
|
||
Spawn Sit
|
||
|
||
PT
|
||
Spawn Plot
|
||
|
||
SM
|
||
Spawn Merchant
|
||
|
||
CF
|
||
Custom Flag stored as LocalString "CustomFlag"
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
EXTERNAL CONTROL FUNCTIONS:
|
||
|
||
object NESS_GetSpawnByID(int nSpawnID, object oArea);
|
||
void NESS_ActivateSpawnByID(int nSpawnID, object oArea);
|
||
void NESS_DeactivateSpawnByID(int nSpawnID, object oArea);
|
||
void NESS_ActivateSpawn(object oSpawn);
|
||
void NESS_DeactivateSpawn(object oSpawn);
|
||
void NESS_ForceProcess(object oSpawn);
|
||
void NESS_TrackModuleSpawns(int nFlag = TRUE);
|
||
int NESS_IsModuleSpawnTracking();
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
TIPS AND POINTERS:
|
||
|
||
1. .erf files usually contain .nss and .utp files.
|
||
2. Save and reopen the module after import.
|
||
3. Configuration scripts are saved, not compiled.
|
||
4. Compile spawn_sample_hb after configuration changes.
|
||
5. Only scripts attached to events need compiling.
|
||
|
||
-------------------------------------------------------------------
|
||
|
||
PACKAGE HEADER (REFERENCE):
|
||
|
||
NESS Version 8.1.4
|
||
Jaysyn
|
||
|
||
See 'spawn__readme' for instructions
|
||
Ignore all missing resource errors
|
||
See NWN forums for more info
|
||
|
||
Spawn Package:
|
||
|
||
NESS Scripts:
|
||
- spawn__readme
|
||
- spawn__history
|
||
- spawn_cfg_camp
|
||
- spawn_cfg_flag
|
||
- spawn_cfg_fxae
|
||
- spawn_cfg_fxobj
|
||
- spawn_cfg_fxsp
|
||
- spawn_cfg_global
|
||
- spawn_cfg_group
|
||
- spawn_cfg_loot
|
||
- spawn_cfg_cusflg
|
||
- spawn_chk_pcs
|
||
- spawn_chk_custom
|
||
- spawn_corpse_dcy
|
||
- spawn_corpse_dth
|
||
- spawn_defaults
|
||
- spawn_dist_corps
|
||
- spawn_flags
|
||
- spawn_functions
|
||
- spawn_main
|
||
- spawn_onopencrp
|
||
- spawn_oncloscrp
|
||
- spawn_pseudohb
|
||
- spawn_sample_hb
|
||
- spawn_sc_cmptrig
|
||
- spawn_sc_deactiv
|
||
- spawn_sc_death
|
||
- spawn_sc_patrol
|
||
- spawn_sc_spawn
|
||
- spawn_smpl_onent
|
||
- spawn_smpl_onext
|
||
- spawn_timefuncs
|
||
- spawn_used_corps
|
||
|
||
NESS Resources:
|
||
- invis_corpse_obj
|
||
- invis_corpse_bdy
|
||
- invis_corpse_bon
|
||
- invis_corpse_pot
|
||
- invis_corpse_pch
|
||
- invis_corpse_ser
|
||
- invis_corpse_tre
|
||
|
||
Spawn Banner Scripts:
|
||
- spawnb_cc_activ
|
||
- spawnb_cc_dactiv
|
||
- spawnb_cc_dump
|
||
- spawnb_cc_nodump
|
||
- spawnb_cc_notrck
|
||
- spawnb_cc_nsclog
|
||
- spawnb_cc_nsdlog
|
||
- spawnb_cc_sclog
|
||
- spawnb_cc_sdlog
|
||
- spawnb_cc_trck
|
||
- spawnb_main
|
||
- spawnb_sample_ai
|
||
- spawnb_sc_activ
|
||
- spawnb_sc_dactiv
|
||
- spawnb_sc_disp
|
||
- spawnb_sc_dump
|
||
- spawnb_sc_nodump
|
||
- spawnb_sc_notrck
|
||
- spawnb_sc_nsdlog
|
||
- spawnb_sc_sclog
|
||
- spawnb_sc_sdlog
|
||
- spawnb_sc_snclog
|
||
- spawnb_sc_trck
|
||
|
||
Spawn Banner Resources:
|
||
- spawn_ban_rod.uti
|
||
- spawn_banner.dlg
|
||
- spawn_ban_a.utp
|
||
- spawn_ban_d.utp |