From 522ac455fd939ac50131d86c449f94ff22ee0862 Mon Sep 17 00:00:00 2001 From: Jaysyn904 <68194417+Jaysyn904@users.noreply.github.com> Date: Wed, 9 Oct 2024 13:59:44 -0400 Subject: [PATCH] Added NESS Added NESS. Hopefully fixed Master of the Void spawn in. Full compile. Updated release archive. --- _module/are/nessnoplay.are.json | 1726 ++++++++++++ _module/are/thevoid001.are.json | 8 +- _module/dlg/spawn_banner.dlg.json | 777 ++++++ _module/gic/nessnoplay.gic.json | 103 + _module/gic/thevoid001.gic.json | 2 +- _module/git/nessnoplay.git.json | 641 +++++ _module/git/thevoid001.git.json | 21 +- _module/ifo/module.ifo.json | 7 + _module/itp/creaturepalcus.itp.json | 95 + _module/itp/doorpalcus.itp.json | 11 + _module/itp/itempalcus.itp.json | 312 ++- _module/itp/placeablepalcus.itp.json | 101 +- _module/ncs/sf_wingwand.ncs | Bin 229 -> 245 bytes _module/ncs/silenttrigger2.ncs | Bin 128 -> 144 bytes _module/ncs/spawn_corpse_dcy.ncs | Bin 0 -> 1275 bytes _module/ncs/spawn_corpse_dth.ncs | Bin 0 -> 4515 bytes _module/ncs/spawn_dist_corps.ncs | Bin 0 -> 1137 bytes _module/ncs/spawn_oncloscrp.ncs | Bin 0 -> 784 bytes _module/ncs/spawn_onopencrp.ncs | Bin 0 -> 155 bytes _module/ncs/spawn_orig_hb.ncs | Bin 0 -> 88823 bytes _module/ncs/spawn_pseudohb.ncs | Bin 0 -> 2095 bytes _module/ncs/spawn_sample_hb.ncs | Bin 0 -> 88823 bytes _module/ncs/spawn_sc_cmptrig.ncs | Bin 0 -> 3182 bytes _module/ncs/spawn_sc_deactiv.ncs | Bin 0 -> 331 bytes _module/ncs/spawn_sc_death.ncs | Bin 0 -> 781 bytes _module/ncs/spawn_sc_hbeat.ncs | Bin 0 -> 2145 bytes _module/ncs/spawn_sc_patrol.ncs | Bin 0 -> 833 bytes _module/ncs/spawn_sc_spawn.ncs | Bin 0 -> 3735 bytes _module/ncs/spawn_smpl_onen2.ncs | Bin 0 -> 1098 bytes _module/ncs/spawn_smpl_onent.ncs | Bin 0 -> 1007 bytes _module/ncs/spawn_smpl_onext.ncs | Bin 0 -> 334 bytes _module/ncs/spawn_used_corps.ncs | Bin 0 -> 104 bytes _module/ncs/spawnb_cc_activ.ncs | Bin 0 -> 180 bytes _module/ncs/spawnb_cc_dactiv.ncs | Bin 0 -> 164 bytes _module/ncs/spawnb_cc_dump.ncs | Bin 0 -> 209 bytes _module/ncs/spawnb_cc_nodump.ncs | Bin 0 -> 209 bytes _module/ncs/spawnb_cc_notrck.ncs | Bin 0 -> 210 bytes _module/ncs/spawnb_cc_nsclog.ncs | Bin 0 -> 208 bytes _module/ncs/spawnb_cc_nsdlog.ncs | Bin 0 -> 208 bytes _module/ncs/spawnb_cc_sclog.ncs | Bin 0 -> 208 bytes _module/ncs/spawnb_cc_sdlog.ncs | Bin 0 -> 208 bytes _module/ncs/spawnb_cc_trck.ncs | Bin 0 -> 210 bytes _module/ncs/spawnb_sample_ai.ncs | Bin 0 -> 1382 bytes _module/ncs/spawnb_sc_activ.ncs | Bin 0 -> 459 bytes _module/ncs/spawnb_sc_dactiv.ncs | Bin 0 -> 487 bytes _module/ncs/spawnb_sc_disp.ncs | Bin 0 -> 299 bytes _module/ncs/spawnb_sc_dump.ncs | Bin 0 -> 161 bytes _module/ncs/spawnb_sc_nodump.ncs | Bin 0 -> 162 bytes _module/ncs/spawnb_sc_notrck.ncs | Bin 0 -> 164 bytes _module/ncs/spawnb_sc_nsdlog.ncs | Bin 0 -> 115 bytes _module/ncs/spawnb_sc_sclog.ncs | Bin 0 -> 114 bytes _module/ncs/spawnb_sc_sdlog.ncs | Bin 0 -> 114 bytes _module/ncs/spawnb_sc_snclog.ncs | Bin 0 -> 114 bytes _module/ncs/spawnb_sc_trck.ncs | Bin 0 -> 163 bytes _module/ncs/spawnbanner.ncs | Bin 0 -> 1508 bytes _module/nss/messagewarning.nss | 2 +- _module/nss/spawn__history.nss | 544 ++++ _module/nss/spawn__readme.nss | 694 +++++ _module/nss/spawn_cfg_camp.nss | 134 + _module/nss/spawn_cfg_cusflg.nss | 114 + _module/nss/spawn_cfg_flag.nss | 77 + _module/nss/spawn_cfg_fxae.nss | 75 + _module/nss/spawn_cfg_fxobj.nss | 55 + _module/nss/spawn_cfg_fxsp.nss | 243 ++ _module/nss/spawn_cfg_global.nss | 32 + _module/nss/spawn_cfg_group.nss | 541 ++++ _module/nss/spawn_cfg_loot.nss | 162 ++ _module/nss/spawn_chk_custom.nss | 103 + _module/nss/spawn_chk_pcs.nss | 132 + _module/nss/spawn_corpse_dcy.nss | 62 + _module/nss/spawn_corpse_dth.nss | 142 + _module/nss/spawn_defaults.nss | 306 ++ _module/nss/spawn_dist_corps.nss | 127 + _module/nss/spawn_flags.nss | 154 + _module/nss/spawn_functions.nss | 3702 +++++++++++++++++++++++++ _module/nss/spawn_main.nss | 1906 +++++++++++++ _module/nss/spawn_oncloscrp.nss | 50 + _module/nss/spawn_onopencrp.nss | 33 + _module/nss/spawn_orig_hb.nss | 8 + _module/nss/spawn_pseudohb.nss | 40 + _module/nss/spawn_sample_hb.nss | 8 + _module/nss/spawn_sc_cmptrig.nss | 55 + _module/nss/spawn_sc_deactiv.nss | 46 + _module/nss/spawn_sc_death.nss | 67 + _module/nss/spawn_sc_hbeat.nss | 180 ++ _module/nss/spawn_sc_patrol.nss | 62 + _module/nss/spawn_sc_spawn.nss | 309 +++ _module/nss/spawn_smpl_onen2.nss | 34 + _module/nss/spawn_smpl_onent.nss | 23 + _module/nss/spawn_smpl_onext.nss | 17 + _module/nss/spawn_timefuncs.nss | 156 ++ _module/nss/spawn_used_corps.nss | 29 + _module/nss/spawnb_cc_activ.nss | 16 + _module/nss/spawnb_cc_dactiv.nss | 16 + _module/nss/spawnb_cc_dump.nss | 15 + _module/nss/spawnb_cc_nodump.nss | 15 + _module/nss/spawnb_cc_notrck.nss | 15 + _module/nss/spawnb_cc_nsclog.nss | 18 + _module/nss/spawnb_cc_nsdlog.nss | 18 + _module/nss/spawnb_cc_sclog.nss | 18 + _module/nss/spawnb_cc_sdlog.nss | 18 + _module/nss/spawnb_cc_trck.nss | 15 + _module/nss/spawnb_main.nss | 69 + _module/nss/spawnb_sample_ai.nss | 18 + _module/nss/spawnb_sc_activ.nss | 17 + _module/nss/spawnb_sc_dactiv.nss | 17 + _module/nss/spawnb_sc_disp.nss | 14 + _module/nss/spawnb_sc_dump.nss | 12 + _module/nss/spawnb_sc_nodump.nss | 12 + _module/nss/spawnb_sc_notrck.nss | 12 + _module/nss/spawnb_sc_nsdlog.nss | 11 + _module/nss/spawnb_sc_sclog.nss | 11 + _module/nss/spawnb_sc_sdlog.nss | 11 + _module/nss/spawnb_sc_snclog.nss | 11 + _module/nss/spawnb_sc_trck.nss | 12 + _module/nss/spawnbanner.nss | 20 + _module/uti/spawn_ban_rod.uti.json | 121 + _module/utp/invis_corpse_bdy.utp.json | 213 ++ _module/utp/invis_corpse_bon.utp.json | 213 ++ _module/utp/invis_corpse_obj.utp.json | 213 ++ _module/utp/invis_corpse_pch.utp.json | 213 ++ _module/utp/invis_corpse_pot.utp.json | 213 ++ _module/utp/invis_corpse_scr.utp.json | 213 ++ _module/utp/invis_corpse_tre.utp.json | 213 ++ _module/utp/spawn_ban_a.utp.json | 217 ++ _module/utp/spawn_ban_d.utp.json | 217 ++ _release/Underworld 2 [PRC8-CEP3].7z | Bin 7485748 -> 7561567 bytes 127 files changed, 16625 insertions(+), 60 deletions(-) create mode 100644 _module/are/nessnoplay.are.json create mode 100644 _module/dlg/spawn_banner.dlg.json create mode 100644 _module/gic/nessnoplay.gic.json create mode 100644 _module/git/nessnoplay.git.json create mode 100644 _module/ncs/spawn_corpse_dcy.ncs create mode 100644 _module/ncs/spawn_corpse_dth.ncs create mode 100644 _module/ncs/spawn_dist_corps.ncs create mode 100644 _module/ncs/spawn_oncloscrp.ncs create mode 100644 _module/ncs/spawn_onopencrp.ncs create mode 100644 _module/ncs/spawn_orig_hb.ncs create mode 100644 _module/ncs/spawn_pseudohb.ncs create mode 100644 _module/ncs/spawn_sample_hb.ncs create mode 100644 _module/ncs/spawn_sc_cmptrig.ncs create mode 100644 _module/ncs/spawn_sc_deactiv.ncs create mode 100644 _module/ncs/spawn_sc_death.ncs create mode 100644 _module/ncs/spawn_sc_hbeat.ncs create mode 100644 _module/ncs/spawn_sc_patrol.ncs create mode 100644 _module/ncs/spawn_sc_spawn.ncs create mode 100644 _module/ncs/spawn_smpl_onen2.ncs create mode 100644 _module/ncs/spawn_smpl_onent.ncs create mode 100644 _module/ncs/spawn_smpl_onext.ncs create mode 100644 _module/ncs/spawn_used_corps.ncs create mode 100644 _module/ncs/spawnb_cc_activ.ncs create mode 100644 _module/ncs/spawnb_cc_dactiv.ncs create mode 100644 _module/ncs/spawnb_cc_dump.ncs create mode 100644 _module/ncs/spawnb_cc_nodump.ncs create mode 100644 _module/ncs/spawnb_cc_notrck.ncs create mode 100644 _module/ncs/spawnb_cc_nsclog.ncs create mode 100644 _module/ncs/spawnb_cc_nsdlog.ncs create mode 100644 _module/ncs/spawnb_cc_sclog.ncs create mode 100644 _module/ncs/spawnb_cc_sdlog.ncs create mode 100644 _module/ncs/spawnb_cc_trck.ncs create mode 100644 _module/ncs/spawnb_sample_ai.ncs create mode 100644 _module/ncs/spawnb_sc_activ.ncs create mode 100644 _module/ncs/spawnb_sc_dactiv.ncs create mode 100644 _module/ncs/spawnb_sc_disp.ncs create mode 100644 _module/ncs/spawnb_sc_dump.ncs create mode 100644 _module/ncs/spawnb_sc_nodump.ncs create mode 100644 _module/ncs/spawnb_sc_notrck.ncs create mode 100644 _module/ncs/spawnb_sc_nsdlog.ncs create mode 100644 _module/ncs/spawnb_sc_sclog.ncs create mode 100644 _module/ncs/spawnb_sc_sdlog.ncs create mode 100644 _module/ncs/spawnb_sc_snclog.ncs create mode 100644 _module/ncs/spawnb_sc_trck.ncs create mode 100644 _module/ncs/spawnbanner.ncs create mode 100644 _module/nss/spawn__history.nss create mode 100644 _module/nss/spawn__readme.nss create mode 100644 _module/nss/spawn_cfg_camp.nss create mode 100644 _module/nss/spawn_cfg_cusflg.nss create mode 100644 _module/nss/spawn_cfg_flag.nss create mode 100644 _module/nss/spawn_cfg_fxae.nss create mode 100644 _module/nss/spawn_cfg_fxobj.nss create mode 100644 _module/nss/spawn_cfg_fxsp.nss create mode 100644 _module/nss/spawn_cfg_global.nss create mode 100644 _module/nss/spawn_cfg_group.nss create mode 100644 _module/nss/spawn_cfg_loot.nss create mode 100644 _module/nss/spawn_chk_custom.nss create mode 100644 _module/nss/spawn_chk_pcs.nss create mode 100644 _module/nss/spawn_corpse_dcy.nss create mode 100644 _module/nss/spawn_corpse_dth.nss create mode 100644 _module/nss/spawn_defaults.nss create mode 100644 _module/nss/spawn_dist_corps.nss create mode 100644 _module/nss/spawn_flags.nss create mode 100644 _module/nss/spawn_functions.nss create mode 100644 _module/nss/spawn_main.nss create mode 100644 _module/nss/spawn_oncloscrp.nss create mode 100644 _module/nss/spawn_onopencrp.nss create mode 100644 _module/nss/spawn_orig_hb.nss create mode 100644 _module/nss/spawn_pseudohb.nss create mode 100644 _module/nss/spawn_sample_hb.nss create mode 100644 _module/nss/spawn_sc_cmptrig.nss create mode 100644 _module/nss/spawn_sc_deactiv.nss create mode 100644 _module/nss/spawn_sc_death.nss create mode 100644 _module/nss/spawn_sc_hbeat.nss create mode 100644 _module/nss/spawn_sc_patrol.nss create mode 100644 _module/nss/spawn_sc_spawn.nss create mode 100644 _module/nss/spawn_smpl_onen2.nss create mode 100644 _module/nss/spawn_smpl_onent.nss create mode 100644 _module/nss/spawn_smpl_onext.nss create mode 100644 _module/nss/spawn_timefuncs.nss create mode 100644 _module/nss/spawn_used_corps.nss create mode 100644 _module/nss/spawnb_cc_activ.nss create mode 100644 _module/nss/spawnb_cc_dactiv.nss create mode 100644 _module/nss/spawnb_cc_dump.nss create mode 100644 _module/nss/spawnb_cc_nodump.nss create mode 100644 _module/nss/spawnb_cc_notrck.nss create mode 100644 _module/nss/spawnb_cc_nsclog.nss create mode 100644 _module/nss/spawnb_cc_nsdlog.nss create mode 100644 _module/nss/spawnb_cc_sclog.nss create mode 100644 _module/nss/spawnb_cc_sdlog.nss create mode 100644 _module/nss/spawnb_cc_trck.nss create mode 100644 _module/nss/spawnb_main.nss create mode 100644 _module/nss/spawnb_sample_ai.nss create mode 100644 _module/nss/spawnb_sc_activ.nss create mode 100644 _module/nss/spawnb_sc_dactiv.nss create mode 100644 _module/nss/spawnb_sc_disp.nss create mode 100644 _module/nss/spawnb_sc_dump.nss create mode 100644 _module/nss/spawnb_sc_nodump.nss create mode 100644 _module/nss/spawnb_sc_notrck.nss create mode 100644 _module/nss/spawnb_sc_nsdlog.nss create mode 100644 _module/nss/spawnb_sc_sclog.nss create mode 100644 _module/nss/spawnb_sc_sdlog.nss create mode 100644 _module/nss/spawnb_sc_snclog.nss create mode 100644 _module/nss/spawnb_sc_trck.nss create mode 100644 _module/nss/spawnbanner.nss create mode 100644 _module/uti/spawn_ban_rod.uti.json create mode 100644 _module/utp/invis_corpse_bdy.utp.json create mode 100644 _module/utp/invis_corpse_bon.utp.json create mode 100644 _module/utp/invis_corpse_obj.utp.json create mode 100644 _module/utp/invis_corpse_pch.utp.json create mode 100644 _module/utp/invis_corpse_pot.utp.json create mode 100644 _module/utp/invis_corpse_scr.utp.json create mode 100644 _module/utp/invis_corpse_tre.utp.json create mode 100644 _module/utp/spawn_ban_a.utp.json create mode 100644 _module/utp/spawn_ban_d.utp.json diff --git a/_module/are/nessnoplay.are.json b/_module/are/nessnoplay.are.json new file mode 100644 index 0000000..06c252d --- /dev/null +++ b/_module/are/nessnoplay.are.json @@ -0,0 +1,1726 @@ +{ + "__data_type": "ARE ", + "ChanceLightning": { + "type": "int", + "value": 0 + }, + "ChanceRain": { + "type": "int", + "value": 0 + }, + "ChanceSnow": { + "type": "int", + "value": 0 + }, + "Comments": { + "type": "cexostring", + "value": "" + }, + "Creator_ID": { + "type": "int", + "value": -1 + }, + "DayNightCycle": { + "type": "byte", + "value": 0 + }, + "Expansion_List": { + "type": "list", + "value": [] + }, + "Flags": { + "type": "dword", + "value": 1 + }, + "FogClipDist": { + "type": "float", + "value": 45.0 + }, + "Height": { + "type": "int", + "value": 6 + }, + "ID": { + "type": "int", + "value": -1 + }, + "IsNight": { + "type": "byte", + "value": 1 + }, + "LightingScheme": { + "type": "byte", + "value": 13 + }, + "LoadScreenID": { + "type": "word", + "value": 0 + }, + "ModListenCheck": { + "type": "int", + "value": 0 + }, + "ModSpotCheck": { + "type": "int", + "value": 0 + }, + "MoonAmbientColor": { + "type": "dword", + "value": 2960685 + }, + "MoonDiffuseColor": { + "type": "dword", + "value": 6457991 + }, + "MoonFogAmount": { + "type": "byte", + "value": 5 + }, + "MoonFogColor": { + "type": "dword", + "value": 0 + }, + "MoonShadows": { + "type": "byte", + "value": 0 + }, + "Name": { + "type": "cexolocstring", + "value": { + "0": "| NessNoPlay |" + } + }, + "NoRest": { + "type": "byte", + "value": 0 + }, + "OnEnter": { + "type": "resref", + "value": "" + }, + "OnExit": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "PlayerVsPlayer": { + "type": "byte", + "value": 3 + }, + "ResRef": { + "type": "resref", + "value": "nessnoplay" + }, + "ShadowOpacity": { + "type": "byte", + "value": 60 + }, + "SkyBox": { + "type": "byte", + "value": 0 + }, + "SunAmbientColor": { + "type": "dword", + "value": 0 + }, + "SunDiffuseColor": { + "type": "dword", + "value": 0 + }, + "SunFogAmount": { + "type": "byte", + "value": 0 + }, + "SunFogColor": { + "type": "dword", + "value": 0 + }, + "SunShadows": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "NessNoPlay" + }, + "Tile_List": { + "type": "list", + "value": [ + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 4 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 13 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 13 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 30 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 13 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 13 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 30 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 4 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 13 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 30 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 30 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 13 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 4 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 4 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 30 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 13 + }, + "Tile_Orientation": { + "type": "int", + "value": 2 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 3 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 2 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 2 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 4 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 14 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 3 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 3 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 0 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 1 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Tile_AnimLoop1": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop2": { + "type": "byte", + "value": 1 + }, + "Tile_AnimLoop3": { + "type": "byte", + "value": 1 + }, + "Tile_Height": { + "type": "int", + "value": 0 + }, + "Tile_ID": { + "type": "int", + "value": 82 + }, + "Tile_MainLight1": { + "type": "byte", + "value": 4 + }, + "Tile_MainLight2": { + "type": "byte", + "value": 0 + }, + "Tile_Orientation": { + "type": "int", + "value": 0 + }, + "Tile_SrcLight1": { + "type": "byte", + "value": 0 + }, + "Tile_SrcLight2": { + "type": "byte", + "value": 0 + } + } + ] + }, + "TileBrdrDisabled": { + "type": "byte", + "value": 0 + }, + "Tileset": { + "type": "resref", + "value": "tic01" + }, + "Version": { + "type": "dword", + "value": 5 + }, + "Width": { + "type": "int", + "value": 6 + }, + "WindPower": { + "type": "int", + "value": 0 + } +} diff --git a/_module/are/thevoid001.are.json b/_module/are/thevoid001.are.json index ff97a7f..7a1304b 100644 --- a/_module/are/thevoid001.are.json +++ b/_module/are/thevoid001.are.json @@ -104,7 +104,7 @@ }, "OnHeartbeat": { "type": "resref", - "value": "" + "value": "spawn_sample_hb" }, "OnUserDefined": { "type": "resref", @@ -2907,13 +2907,17 @@ } ] }, + "TileBrdrDisabled": { + "type": "byte", + "value": 0 + }, "Tileset": { "type": "resref", "value": "tdc01" }, "Version": { "type": "dword", - "value": 46 + "value": 47 }, "Width": { "type": "int", diff --git a/_module/dlg/spawn_banner.dlg.json b/_module/dlg/spawn_banner.dlg.json new file mode 100644 index 0000000..bdd7ea9 --- /dev/null +++ b/_module/dlg/spawn_banner.dlg.json @@ -0,0 +1,777 @@ +{ + "__data_type": "DLG ", + "DelayEntry": { + "type": "dword", + "value": 0 + }, + "DelayReply": { + "type": "dword", + "value": 0 + }, + "EndConverAbort": { + "type": "resref", + "value": "nw_walk_wp" + }, + "EndConversation": { + "type": "resref", + "value": "nw_walk_wp" + }, + "EntryList": { + "type": "list", + "value": [ + { + "__struct_id": 0, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "RepliesList": { + "type": "list", + "value": [ + { + "__struct_id": 0, + "Active": { + "type": "resref", + "value": "spawnb_cc_activ" + }, + "Index": { + "type": "dword", + "value": 10 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Active": { + "type": "resref", + "value": "spawnb_cc_dactiv" + }, + "Index": { + "type": "dword", + "value": 9 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 2, + "Active": { + "type": "resref", + "value": "spawnb_cc_trck" + }, + "Index": { + "type": "dword", + "value": 8 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 3, + "Active": { + "type": "resref", + "value": "spawnb_cc_notrck" + }, + "Index": { + "type": "dword", + "value": 7 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 4, + "Active": { + "type": "resref", + "value": "spawnb_cc_dump" + }, + "Index": { + "type": "dword", + "value": 6 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 5, + "Active": { + "type": "resref", + "value": "spawnb_cc_nodump" + }, + "Index": { + "type": "dword", + "value": 5 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 6, + "Active": { + "type": "resref", + "value": "" + }, + "Index": { + "type": "dword", + "value": 0 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + } + ] + }, + "Script": { + "type": "resref", + "value": "" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Speaker": { + "type": "cexostring", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "" + } + } + }, + { + "__struct_id": 1, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "RepliesList": { + "type": "list", + "value": [ + { + "__struct_id": 0, + "Active": { + "type": "resref", + "value": "spawnb_cc_sdlog" + }, + "Index": { + "type": "dword", + "value": 4 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 1, + "Active": { + "type": "resref", + "value": "spawnb_cc_nsdlog" + }, + "Index": { + "type": "dword", + "value": 3 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 2, + "Active": { + "type": "resref", + "value": "spawnb_cc_sclog" + }, + "Index": { + "type": "dword", + "value": 2 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + }, + { + "__struct_id": 3, + "Active": { + "type": "resref", + "value": "spawnb_cc_nsclog" + }, + "Index": { + "type": "dword", + "value": 1 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + } + ] + }, + "Script": { + "type": "resref", + "value": "" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Speaker": { + "type": "cexostring", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "What debug operation do you want to do?" + } + } + } + ] + }, + "NumWords": { + "type": "dword", + "value": 91 + }, + "PreventZoomIn": { + "type": "byte", + "value": 0 + }, + "ReplyList": { + "type": "list", + "value": [ + { + "__struct_id": 0, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [ + { + "__struct_id": 0, + "Active": { + "type": "resref", + "value": "" + }, + "Index": { + "type": "dword", + "value": 1 + }, + "IsChild": { + "type": "byte", + "value": 0 + } + } + ] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "I would like to debug NESS." + } + } + }, + { + "__struct_id": 1, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_snclog" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "Turn spawn counting in this area off." + } + } + }, + { + "__struct_id": 2, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_sclog" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "Turn spawn counting in this area on." + } + } + }, + { + "__struct_id": 3, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_nsdlog" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "Turn spawn delay logging in this area off." + } + } + }, + { + "__struct_id": 4, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_sdlog" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "Turn spawn delay logging in this area on." + } + } + }, + { + "__struct_id": 5, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_nodump" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "I would like to turn spawn dumping off." + } + } + }, + { + "__struct_id": 6, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_dump" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "I would like to turn spawn dumping on." + } + } + }, + { + "__struct_id": 7, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_notrck" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "I would like to turn spawn tracking off." + } + } + }, + { + "__struct_id": 8, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_trck" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "I would like to turn spawn tracking on." + } + } + }, + { + "__struct_id": 9, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_dactiv" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "I would like to Deactivate this spawn." + } + } + }, + { + "__struct_id": 10, + "Animation": { + "type": "dword", + "value": 0 + }, + "AnimLoop": { + "type": "byte", + "value": 1 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Delay": { + "type": "dword", + "value": 4294967295 + }, + "EntriesList": { + "type": "list", + "value": [] + }, + "Quest": { + "type": "cexostring", + "value": "" + }, + "Script": { + "type": "resref", + "value": "spawnb_sc_activ" + }, + "Sound": { + "type": "resref", + "value": "" + }, + "Text": { + "type": "cexolocstring", + "value": { + "0": "I would like to Activate this spawn." + } + } + } + ] + }, + "StartingList": { + "type": "list", + "value": [ + { + "__struct_id": 0, + "Active": { + "type": "resref", + "value": "" + }, + "Index": { + "type": "dword", + "value": 0 + } + } + ] + } +} diff --git a/_module/gic/nessnoplay.gic.json b/_module/gic/nessnoplay.gic.json new file mode 100644 index 0000000..c93372f --- /dev/null +++ b/_module/gic/nessnoplay.gic.json @@ -0,0 +1,103 @@ +{ + "__data_type": "GIC ", + "Creature List": { + "type": "list", + "value": [] + }, + "Door List": { + "type": "list", + "value": [] + }, + "Encounter List": { + "type": "list", + "value": [] + }, + "List": { + "type": "list", + "value": [] + }, + "Placeable List": { + "type": "list", + "value": [] + }, + "SoundList": { + "type": "list", + "value": [] + }, + "StoreList": { + "type": "list", + "value": [] + }, + "TriggerList": { + "type": "list", + "value": [] + }, + "WaypointList": { + "type": "list", + "value": [ + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + }, + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + }, + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + }, + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + }, + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + }, + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + }, + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + }, + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + }, + { + "__struct_id": 5, + "Comment": { + "type": "cexostring", + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." + } + } + ] + } +} diff --git a/_module/gic/thevoid001.gic.json b/_module/gic/thevoid001.gic.json index 7253262..b4e0d55 100644 --- a/_module/gic/thevoid001.gic.json +++ b/_module/gic/thevoid001.gic.json @@ -293,7 +293,7 @@ "__struct_id": 5, "Comment": { "type": "cexostring", - "value": "" + "value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive." } } ] diff --git a/_module/git/nessnoplay.git.json b/_module/git/nessnoplay.git.json new file mode 100644 index 0000000..00fa335 --- /dev/null +++ b/_module/git/nessnoplay.git.json @@ -0,0 +1,641 @@ +{ + "__data_type": "GIT ", + "AreaProperties": { + "__struct_id": 100, + "type": "struct", + "value": { + "__struct_id": 100, + "AmbientSndDay": { + "type": "int", + "value": 66 + }, + "AmbientSndDayVol": { + "type": "int", + "value": 32 + }, + "AmbientSndNight": { + "type": "int", + "value": 66 + }, + "AmbientSndNitVol": { + "type": "int", + "value": 32 + }, + "EnvAudio": { + "type": "int", + "value": 0 + }, + "MusicBattle": { + "type": "int", + "value": 41 + }, + "MusicDay": { + "type": "int", + "value": 50 + }, + "MusicDelay": { + "type": "int", + "value": 90000 + }, + "MusicNight": { + "type": "int", + "value": 50 + } + } + }, + "Creature List": { + "type": "list", + "value": [] + }, + "Door List": { + "type": "list", + "value": [] + }, + "Encounter List": { + "type": "list", + "value": [] + }, + "List": { + "type": "list", + "value": [] + }, + "Placeable List": { + "type": "list", + "value": [] + }, + "SoundList": { + "type": "list", + "value": [] + }, + "StoreList": { + "type": "list", + "value": [] + }, + "TriggerList": { + "type": "list", + "value": [] + }, + "WaypointList": { + "type": "list", + "value": [ + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 29.93688201904297 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 29.75654602050781 + }, + "ZPosition": { + "type": "float", + "value": 9.5367431640625e-007 + } + }, + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc1", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc1" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 10.11644172668457 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 49.61051559448242 + }, + "ZPosition": { + "type": "float", + "value": -5.7220458984375e-006 + } + }, + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc2", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc2" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 9.882942199707031 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 29.73343467712402 + }, + "ZPosition": { + "type": "float", + "value": -5.7220458984375e-006 + } + }, + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc3", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc3" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 10.10672569274902 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 9.680875778198242 + }, + "ZPosition": { + "type": "float", + "value": -5.7220458984375e-006 + } + }, + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc4", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc4" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 30.02265167236328 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 49.55963516235352 + }, + "ZPosition": { + "type": "float", + "value": -5.7220458984375e-006 + } + }, + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc5", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc5" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 29.89828872680664 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 9.568124771118164 + }, + "ZPosition": { + "type": "float", + "value": -5.7220458984375e-006 + } + }, + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc6", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc6" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 50.05917739868164 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 49.72054290771484 + }, + "ZPosition": { + "type": "float", + "value": -5.7220458984375e-006 + } + }, + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc7", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc7" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 49.90233612060547 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 29.79799652099609 + }, + "ZPosition": { + "type": "float", + "value": -5.7220458984375e-006 + } + }, + { + "__struct_id": 5, + "Appearance": { + "type": "byte", + "value": 1 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "HasMapNote": { + "type": "byte", + "value": 0 + }, + "LinkedTo": { + "type": "cexostring", + "value": "" + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "wpNessCachedLoc8", + "id": 14817 + } + }, + "MapNote": { + "type": "cexolocstring", + "value": {} + }, + "MapNoteEnabled": { + "type": "byte", + "value": 1 + }, + "Tag": { + "type": "cexostring", + "value": "wpNessCachedLoc8" + }, + "TemplateResRef": { + "type": "resref", + "value": "nw_waypoint001" + }, + "XOrientation": { + "type": "float", + "value": 0.0 + }, + "XPosition": { + "type": "float", + "value": 50.07466888427734 + }, + "YOrientation": { + "type": "float", + "value": 1.0 + }, + "YPosition": { + "type": "float", + "value": 9.439542770385742 + }, + "ZPosition": { + "type": "float", + "value": -5.7220458984375e-006 + } + } + ] + } +} diff --git a/_module/git/thevoid001.git.json b/_module/git/thevoid001.git.json index 5bed082..a0f146b 100644 --- a/_module/git/thevoid001.git.json +++ b/_module/git/thevoid001.git.json @@ -35,7 +35,7 @@ }, "MusicDelay": { "type": "int", - "value": 89000 + "value": 45000 }, "MusicNight": { "type": "int", @@ -5561,7 +5561,10 @@ }, "LocalizedName": { "type": "cexolocstring", - "value": {} + "value": { + "0": "SP_SN01_SA_SD01_SF_DS0_RH_HL", + "id": 14817 + } }, "MapNote": { "type": "cexolocstring", @@ -5569,31 +5572,31 @@ }, "MapNoteEnabled": { "type": "byte", - "value": 0 + "value": 1 }, "Tag": { "type": "cexostring", - "value": "WP_void_lich_01" + "value": "void_lich" }, "TemplateResRef": { "type": "resref", - "value": "" + "value": "nw_waypoint001" }, "XOrientation": { "type": "float", - "value": 0.9972903728485107 + "value": 1.0 }, "XPosition": { "type": "float", - "value": 34.86428070068359 + "value": 34.65420150756836 }, "YOrientation": { "type": "float", - "value": 0.07356543838977814 + "value": 7.549790126404332e-008 }, "YPosition": { "type": "float", - "value": 45.25579071044922 + "value": 45.0279655456543 }, "ZPosition": { "type": "float", diff --git a/_module/ifo/module.ifo.json b/_module/ifo/module.ifo.json index 7d47022..4ed355f 100644 --- a/_module/ifo/module.ifo.json +++ b/_module/ifo/module.ifo.json @@ -839,6 +839,13 @@ "type": "resref", "value": "wol_a_dymond" } + }, + { + "__struct_id": 6, + "Area_Name": { + "type": "resref", + "value": "nessnoplay" + } } ] }, diff --git a/_module/itp/creaturepalcus.itp.json b/_module/itp/creaturepalcus.itp.json index 64fc822..6d38e73 100644 --- a/_module/itp/creaturepalcus.itp.json +++ b/_module/itp/creaturepalcus.itp.json @@ -18698,6 +18698,25 @@ "LIST": { "type": "list", "value": [ + { + "__struct_id": 0, + "CR": { + "type": "float", + "value": 7.0 + }, + "FACTION": { + "type": "cexostring", + "value": "Hostile" + }, + "NAME": { + "type": "cexostring", + "value": "Algoid" + }, + "RESREF": { + "type": "resref", + "value": "prc_algoid" + } + }, { "__struct_id": 0, "CR": { @@ -18945,6 +18964,25 @@ "value": "livingdarknes001" } }, + { + "__struct_id": 0, + "CR": { + "type": "float", + "value": 1.0 + }, + "FACTION": { + "type": "cexostring", + "value": "Commoner" + }, + "NAME": { + "type": "cexostring", + "value": "Myconid" + }, + "RESREF": { + "type": "resref", + "value": "prc_myconid" + } + }, { "__struct_id": 0, "CR": { @@ -18983,6 +19021,25 @@ "value": "zep_phyrexiann2" } }, + { + "__struct_id": 0, + "CR": { + "type": "float", + "value": 6.0 + }, + "FACTION": { + "type": "cexostring", + "value": "Hostile" + }, + "NAME": { + "type": "cexostring", + "value": "Shambling Mound" + }, + "RESREF": { + "type": "resref", + "value": "prc_shambmound" + } + }, { "__struct_id": 0, "CR": { @@ -29960,6 +30017,25 @@ "value": "hamatula" } }, + { + "__struct_id": 0, + "CR": { + "type": "float", + "value": 8.0 + }, + "FACTION": { + "type": "cexostring", + "value": "Commoner" + }, + "NAME": { + "type": "cexostring", + "value": "Hamatula" + }, + "RESREF": { + "type": "resref", + "value": "hamatula001" + } + }, { "__struct_id": 0, "CR": { @@ -31138,6 +31214,25 @@ "value": "mikesgod" } }, + { + "__struct_id": 0, + "CR": { + "type": "float", + "value": 3.0 + }, + "FACTION": { + "type": "cexostring", + "value": "Defender" + }, + "NAME": { + "type": "cexostring", + "value": "Spiritual Weapon" + }, + "RESREF": { + "type": "resref", + "value": "prc_spirit_weapn" + } + }, { "__struct_id": 0, "CR": { diff --git a/_module/itp/doorpalcus.itp.json b/_module/itp/doorpalcus.itp.json index a57b61b..9411c49 100644 --- a/_module/itp/doorpalcus.itp.json +++ b/_module/itp/doorpalcus.itp.json @@ -86,6 +86,17 @@ "LIST": { "type": "list", "value": [ + { + "__struct_id": 0, + "ID": { + "type": "byte", + "value": 10 + }, + "STRREF": { + "type": "dword", + "value": 111808 + } + }, { "__struct_id": 0, "ID": { diff --git a/_module/itp/itempalcus.itp.json b/_module/itp/itempalcus.itp.json index c98d183..c1b7f84 100644 --- a/_module/itp/itempalcus.itp.json +++ b/_module/itp/itempalcus.itp.json @@ -3813,6 +3813,17 @@ "type": "resref", "value": "devarobe" } + }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Unarmed Spiritual Weapon \"Fists\"" + }, + "RESREF": { + "type": "resref", + "value": "prc_sprtwp_armor" + } } ] }, @@ -10500,6 +10511,17 @@ "value": "elefiendskin045" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Algoid Hide" + }, + "RESREF": { + "type": "resref", + "value": "prc_hide_algoid" + } + }, { "__struct_id": 0, "NAME": { @@ -12623,6 +12645,17 @@ "value": 12938 } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Myconid Hide" + }, + "RESREF": { + "type": "resref", + "value": "prc_hide_myconid" + } + }, { "__struct_id": 0, "RESREF": { @@ -13316,6 +13349,17 @@ "value": "shadmastskin44" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Shambling Mound Hide" + }, + "RESREF": { + "type": "resref", + "value": "prc_hide_shambmd" + } + }, { "__struct_id": 0, "RESREF": { @@ -13448,6 +13492,17 @@ "value": "servantprops4" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Spiritual Weapon Properties" + }, + "RESREF": { + "type": "resref", + "value": "prc_sprtwpn_hide" + } + }, { "__struct_id": 0, "NAME": { @@ -14058,6 +14113,17 @@ "LIST": { "type": "list", "value": [ + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Algoid Slam" + }, + "RESREF": { + "type": "resref", + "value": "prc_slam_algoid" + } + }, { "__struct_id": 0, "NAME": { @@ -15532,6 +15598,17 @@ "value": 16807690 } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Spirtual Weapon Slam" + }, + "RESREF": { + "type": "resref", + "value": "prc_sprtwpn_slam" + } + }, { "__struct_id": 0, "RESREF": { @@ -22919,6 +22996,17 @@ "value": "zep_rose_red" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Rod of Spawn Banners" + }, + "RESREF": { + "type": "resref", + "value": "spawn_ban_rod" + } + }, { "__struct_id": 0, "NAME": { @@ -25679,6 +25767,17 @@ "value": 767 } }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_997" + }, + "STRREF": { + "type": "dword", + "value": 16790493 + } + }, { "__struct_id": 0, "RESREF": { @@ -28594,6 +28693,17 @@ "value": 16827179 } }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_995" + }, + "STRREF": { + "type": "dword", + "value": 16790488 + } + }, { "__struct_id": 0, "RESREF": { @@ -32763,6 +32873,50 @@ "value": 6340 } }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_874" + }, + "STRREF": { + "type": "dword", + "value": 16790512 + } + }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_865" + }, + "STRREF": { + "type": "dword", + "value": 16790497 + } + }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_868" + }, + "STRREF": { + "type": "dword", + "value": 16790502 + } + }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_871" + }, + "STRREF": { + "type": "dword", + "value": 16790507 + } + }, { "__struct_id": 0, "NAME": { @@ -33863,6 +34017,17 @@ "value": 917 } }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_877" + }, + "STRREF": { + "type": "dword", + "value": 16790517 + } + }, { "__struct_id": 0, "RESREF": { @@ -33962,6 +34127,28 @@ "value": 2671 } }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_880" + }, + "STRREF": { + "type": "dword", + "value": 16790522 + } + }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_881" + }, + "STRREF": { + "type": "dword", + "value": 16790525 + } + }, { "__struct_id": 0, "NAME": { @@ -34655,6 +34842,17 @@ "value": 16829598 } }, + { + "__struct_id": 0, + "RESREF": { + "type": "resref", + "value": "prc_scr_884" + }, + "STRREF": { + "type": "dword", + "value": 16790530 + } + }, { "__struct_id": 0, "NAME": { @@ -36368,7 +36566,7 @@ }, "RESREF": { "type": "resref", - "value": "mc_blckstickbloo" + "value": "mc_blckstickbld" } }, { @@ -36544,7 +36742,7 @@ }, "RESREF": { "type": "resref", - "value": "mc_pieceofleathe" + "value": "mc_pieceofleathr" } }, { @@ -37501,7 +37699,7 @@ }, "RESREF": { "type": "resref", - "value": "mc_grasshopperhl" + "value": "mc_grasshopprhlg" } }, { @@ -46652,17 +46850,6 @@ "value": "hellsdagger66" } }, - { - "__struct_id": 0, - "NAME": { - "type": "cexostring", - "value": "Katar" - }, - "RESREF": { - "type": "resref", - "value": "katar" - } - }, { "__struct_id": 0, "NAME": { @@ -47113,6 +47300,17 @@ "value": "falchion" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Falchion" + }, + "RESREF": { + "type": "resref", + "value": "prc_wswfa001" + } + }, { "__struct_id": 0, "NAME": { @@ -48212,6 +48410,17 @@ "value": "drowweapon" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Eagle Claw" + }, + "RESREF": { + "type": "resref", + "value": "bbd_eagle_claw" + } + }, { "__struct_id": 0, "NAME": { @@ -48231,7 +48440,7 @@ }, "RESREF": { "type": "resref", - "value": "elvencourtblade" + "value": "prc_wspec001" } }, { @@ -48242,7 +48451,7 @@ }, "RESREF": { "type": "resref", - "value": "elvenlightblade" + "value": "prc_wspel001" } }, { @@ -48253,7 +48462,7 @@ }, "RESREF": { "type": "resref", - "value": "elventhinblade" + "value": "prc_wspet001" } }, { @@ -48333,6 +48542,17 @@ "value": "goad" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Goad" + }, + "RESREF": { + "type": "resref", + "value": "prc_wspgd001" + } + }, { "__struct_id": 0, "NAME": { @@ -48374,7 +48594,7 @@ }, "RESREF": { "type": "resref", - "value": "heavypick" + "value": "prc_wblph001" } }, { @@ -48388,6 +48608,17 @@ "value": "hellsablade044" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Katar" + }, + "RESREF": { + "type": "resref", + "value": "prc_wswdp001" + } + }, { "__struct_id": 0, "NAME": { @@ -48407,7 +48638,7 @@ }, "RESREF": { "type": "resref", - "value": "lightpick" + "value": "prc_wblpl001" } }, { @@ -48564,6 +48795,17 @@ "value": "sahuaginsticker" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Sai" + }, + "RESREF": { + "type": "resref", + "value": "prc_wswsi001" + } + }, { "__struct_id": 0, "NAME": { @@ -48855,17 +49097,6 @@ "value": "drowner44" } }, - { - "__struct_id": 0, - "NAME": { - "type": "cexostring", - "value": "Eagle Claw" - }, - "RESREF": { - "type": "resref", - "value": "eagleclaw" - } - }, { "__struct_id": 0, "NAME": { @@ -49276,7 +49507,7 @@ }, "RESREF": { "type": "resref", - "value": "sap" + "value": "prc_wspsp001" } }, { @@ -49561,7 +49792,7 @@ }, "RESREF": { "type": "resref", - "value": "maul" + "value": "prc_wxblma001" } }, { @@ -49687,7 +49918,7 @@ }, "RESREF": { "type": "resref", - "value": "heavy_mace" + "value": "prc_wxblmh001" } }, { @@ -50034,7 +50265,7 @@ }, "RESREF": { "type": "resref", - "value": "scimitar_double" + "value": "prc_wxdbsc001" } }, { @@ -50644,7 +50875,7 @@ }, "RESREF": { "type": "resref", - "value": "nunchaku" + "value": "prc_wblnn001" } }, { @@ -50713,17 +50944,6 @@ "value": "ruinwhip44" } }, - { - "__struct_id": 0, - "NAME": { - "type": "cexostring", - "value": "Sai" - }, - "RESREF": { - "type": "resref", - "value": "sai" - } - }, { "__struct_id": 0, "RESREF": { diff --git a/_module/itp/placeablepalcus.itp.json b/_module/itp/placeablepalcus.itp.json index d30f4ea..d4c99b0 100644 --- a/_module/itp/placeablepalcus.itp.json +++ b/_module/itp/placeablepalcus.itp.json @@ -13928,6 +13928,83 @@ "value": "mil_clothingbuil" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "corpse" + }, + "RESREF": { + "type": "resref", + "value": "invis_corpse_bdy" + } + }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "corpse" + }, + "RESREF": { + "type": "resref", + "value": "invis_corpse_bon" + } + }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "corpse" + }, + "RESREF": { + "type": "resref", + "value": "invis_corpse_obj" + } + }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "corpse" + }, + "RESREF": { + "type": "resref", + "value": "invis_corpse_pch" + } + }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "corpse" + }, + "RESREF": { + "type": "resref", + "value": "invis_corpse_pot" + } + }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "corpse" + }, + "RESREF": { + "type": "resref", + "value": "invis_corpse_scr" + } + }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "corpse" + }, + "RESREF": { + "type": "resref", + "value": "invis_corpse_tre" + } + }, { "__struct_id": 0, "NAME": { @@ -22610,6 +22687,17 @@ "LIST": { "type": "list", "value": [ + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Active Spawn" + }, + "RESREF": { + "type": "resref", + "value": "spawn_ban_a" + } + }, { "__struct_id": 0, "NAME": { @@ -22632,6 +22720,17 @@ "value": "buildersnotes1" } }, + { + "__struct_id": 0, + "NAME": { + "type": "cexostring", + "value": "Deactivated Spawn" + }, + "RESREF": { + "type": "resref", + "value": "spawn_ban_d" + } + }, { "__struct_id": 0, "NAME": { @@ -28752,7 +28851,7 @@ "__struct_id": 0, "NAME": { "type": "cexostring", - "value": "Genesis Enterance Portal" + "value": "Genesis Entrance Portal" }, "RESREF": { "type": "resref", diff --git a/_module/ncs/sf_wingwand.ncs b/_module/ncs/sf_wingwand.ncs index a416ab9cc47edd4539c658e4c55075c9b36e5a2f..bc76f6ea417fa0bb6acdc95c9cb8ce75268b5627 100644 GIT binary patch delta 78 zcmaFL_?6Mk&pB8j%uvt3iGhLPs~nJE;80*-Vg|F8vM_@LcogKplq`tsXJTVzVBEpL U$oT*N{~ru2(hNZQ&qTBJ03^Z@rT_o{ delta 62 zcmey$_>|Gi&pB8j%uvt3iGhLPsT`1C;80*-Vg|FOvM_@LcogKplq`s>XJugA!7$Nn FJpfL{310vJ diff --git a/_module/ncs/silenttrigger2.ncs b/_module/ncs/silenttrigger2.ncs index 90e8f4e514fd33a31c411f9796330c94a99ff188..2274260f3ac111434189c8bf6e1b15a4d110baa9 100644 GIT binary patch delta 50 zcmZo*oWQ8%=NzmMW~gW2#K6EXK@LbTa40Y^v9U5RNHQ=o{{R2~2Lp>V1CahRQ7R1p D0s0Mu delta 34 ocmbQh*uW^|=NzmMW~gW2#K6GNAO|EEI20II85krPCTgVt0BmgqT>t<8 diff --git a/_module/ncs/spawn_corpse_dcy.ncs b/_module/ncs/spawn_corpse_dcy.ncs new file mode 100644 index 0000000000000000000000000000000000000000..cf568b4695b7e8ae9e38ffd79e27864f59aeb9fa GIT binary patch literal 1275 zcmah|K}#D^5T5t;?HWjnX|YsjwQFe)RVfjRg3uP4_9l8zyatVX5Y&VyREvj#f5DqS zrM-AkF#ZFN9&+$tpoc((blx}bZIUI@K(g7HdEb2Vy>FIEEAiUQ`{EZO^LL#1lZ#1* zCZxv)#d2-CQm$0%wY@~CPN&l*^Md$!kAl1_*r@Jo^rt5YNQEgvd7BX<6It;7I*x`E zmCzut4gL@ZXijI#wCSeRFJ%G?m5*Op$Rj?I7mTk-W&IG9w*dN(0h%sweU86{F?;eI zO7F-pLSe7A{(aXCTi&c3GLM{&2_^SH8`7BO&Yso7J%m;i_%eB?PQZXqKxTDoC#ios zsBP7gO`K=~YBod6gFz(q=(X>P0Y~x1+GA|W$B_(vIcRXfcY~*l(!obCcu@p=nB@&v z&IfLO+uM9>G_Iaauq;D511CDN)sAML43ZxE>715byY^%3P7|73Mf2U$xDJgMNPX~Fl1 zA?Y&~y%=k>2JaFO;ZQTCci}=-sJ3);Y!}cB0}W0IHrI01*ypZ literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_corpse_dth.ncs b/_module/ncs/spawn_corpse_dth.ncs new file mode 100644 index 0000000000000000000000000000000000000000..94ccc655cce9c4400061d30086a95d9a19c82087 GIT binary patch literal 4515 zcmcgw&1+m$6u=EFo2`Zb9bG`5=Jx1ep4RDzT$NoYZYkY=V~Aju4qKpR*6 z2L#7cR2MBBg`OVkG|V@7(+5-Iq6wh0;!&%bfc= z=brOBANQtbM<;XVj=wNGqEy${hZO#_K+Y!M|t&|JI|4sZ$N%$^r*~<)r%wPn1tv^-MEOWLlJpf^+2 z5&#(?lalYF+iT_^9S}Lo=8kB0&k|~-o{@g!NPQ#y#*wB(>OFN3X1uGkDioreq^cvb zEk`B{qC^Ep3+E!}y)DQ|u7w`@hn@n7e|Tapo3l?lT0(d(d0T>0ega+Yy z&8$~dpl7D{Eq%JB`e<#F806ovc7Rgbi*Q0~w%(=`lMC@b_FknpcdD{bs!%9?n$AOM zYs8sSX}JkvgNRmbV`6Uke0g!V5mY>kv}z;GAnOe)XD%jN!C{;Q$I< zyb7j@3x&$*%jIIl3~d=8ui51285O*>w)RW!0Fu4WkC}UpK_Lw=*tt}mxwL3*y6ODv z3KUv=lVsSTJ`-{SS6TABmdP9|O}{&ucp1%1aARWVYf-eohLlhQ*O)^M9LixAE}Se8 z-CBri+&V~#=rVepXua3n!C~Uxq7)drBJj`ULIX6SDEH%#M_gS6Y`tD^oA!eo?g4I8iu-WQ8P{-T|8Xa8y@*>ZIGp9M69qlNPlh23eVxKT#7F z=<*AR^O>33+0+CU@3cVuMyz}!n4JnM}ZoQsXSK1+AZIAa3}v!5K0 zU!ogfo*7VUETHuN2`K%~qX{T1-QCq$K5yV|W$XY;ZOC^vX@ywA4P6!Xso| zUi#9R#w4DKH7vJK&~}yVn+L@wj`aSIkGz9L z^<_#-1-oA*HW7So2U(a`(d*`j9c$HindwZep;uJF46{YPf5(yk)%>A)_uRmkjUc z7#X-qX@>6M7`vkQ(V)&R1l$6p;+HASe)(qiaC5Hu{DPpUZu>x7mps+zn*NnR&SRd` zfw*gd*+!G_ca0BSe@tIvmj_}Ef)iKFy8zWno%IC%qE6JKP6WZob)|X-s5wYYr$Oxl zCaUB5WJ3>vQCMo{!&?ox(%u1AM;G_bn#FMM{`r)S64KBNPLh0(W`u7+U*1 z#yCmkO(l#}sel2-bz8OB?@;(%iUC%byRAr}ZBw$XNzosp9D8_Cidr!H5pU?oT91%o z1FsX$lyR4jF1o7PNY<($Ycs+?RX8z^ z2|HS#58}qWCu5;eQJ%tR0lMOLRh$Q6Q1Z^-z0GDS~;fV1U&#E{{MfgN3^?gh-J$6+4Ly c_Zf30LsCzo$c@o#NXk>_Aq`0$9}dF*0HBb5S`uII}tDvJEO?OSP(=5jfIU78cm2MVzeQ;X$Fs!oOgN{uLYl zfE9&>g{3VC1qBJt&ffBI1wg`GZtmTC^WMxJWb^h(dNY*)5cey9zkm(g6ei3)qzcvB zQlaFy)!G$fyaVhQlxB|yjn6rDKDNuT=d3L4*D3izYo$DWv4om0_n@EsCF!s1OoGOy5*$aUap5g6Q6$#cfblkYI+B z*#1VJg8Z?NO)aL0xQY7G=r0Jbb&pdUK%y3>wQLSDAy>-;!G!4PPi;D`u0b-s*u4OK z*$pAv`m7Kuo*a6&Ft3_@rYd6e9ou^Mt+;LnUnLk>Oe%iOXafJ_DxN_J-RXxl1A}NQ pA5nR3pVV>eJF_$rr!{^J!fFk+hen8&D9a&^V_zI3`k~~s=s!ixUBv(Z literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_oncloscrp.ncs b/_module/ncs/spawn_oncloscrp.ncs new file mode 100644 index 0000000000000000000000000000000000000000..3557f5bf26d1c643bd7cdddf109505662a2c95f3 GIT binary patch literal 784 zcmah{Jxjw-6us}|B?ekGxQW&VajK=Xi-U{ME>12L*I;A8p^{<>e&FElPwZxo0M`82!KBn zG;Ca^QF<4}*Zp)94_Zh!g!D{>OQI`^giMlwL{o~=epNG%QQ(q)nxvz4a`j+~=}4|F zX6Y~W0Hr?Oaz&F=Sr;vQp;2_4&0FofxJV0d{%nA&w42%^(f`N?*Vx0m50GeJOwg3PC literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_orig_hb.ncs b/_module/ncs/spawn_orig_hb.ncs new file mode 100644 index 0000000000000000000000000000000000000000..77d2eb48fde40613d50bcab5846cea44c2cee618 GIT binary patch literal 88823 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 C`T8LM literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_sample_hb.ncs b/_module/ncs/spawn_sample_hb.ncs new file mode 100644 index 0000000000000000000000000000000000000000..77d2eb48fde40613d50bcab5846cea44c2cee618 GIT binary patch literal 88823 zcmeIb4Vc~4SueWx&Sdg6`2Z3~DWw}oC{Snv2`#0mO_&LgHYC$bC}~R#lbM}l+R04r z%!H3#?kQF5sYk5nJiH z`+I-y`>v1w{_kO+=yN@f<>~yh*Lv6cz25b`*4EyE`unea%bJ@i)eru^7gzAV`SnWI z+{)s6*X%klI<#wOeB!`l0||>PVfXm{-Cc78(EiS?bPY5Hr>?57^s+ZsUSDaoS})c0 zH?Y;ZYjg46ocJHmEgd*8c+Xg0V|4JozQ*o@d%L;?<=jeTZSC?Z%Ac-u5zpBG+dF=6 zY^oIYOai-n>!yK$T^lDFgPX@jrbY%wM?TgVPLR(Lk5d3{%y8Gw5y5vXu zU-0wkIid8|AOg#Spp-jrjj^cem|IyQbSW5_4F%smhq|glmYMl``<$zn0r7JD|LQm3 zPi4u)P-gRYV3MwP9Xav`;AdWqM2|`K+?RrmRs_2!TOJb(@w&yts!&emd2i`@w*!nlQ)k~3^n>E#)le{lOtn$!Qr>mjMNm& zsBW^T?wTh9*LBKWEmEKBxtGqFSMOGqFIH^|d+&P>**_xecl{-}>88#ngTB|+YI6i| z$Iq$MRWbVW?j=Ni67Fk$wu}V2#(`)q5!L3hSd9S3&DImkFC&`68JZ)I&pr2TH3B@F z0X!#_sd81-{H;fLp7U2oo404z&7*^RCrJcl0Cl}0KoK=7vtDuyE>S)FDj?4zn_Ca= z9~iv5F+4B@Q>S=np$jsY-ogC`61ZnbZ>>rQZ&n*E2{xh?R+4^_J5M>dis`T{zfY@v zZhtd>0kJ6l=f6n_&M020<)}*q{?FaB%RJ`hiN^nOurW4tA4{tm)~XtycvS-mEDZ&= z?b$Qgm}-YUkwBl@dvIc+F*ap1c8m;tw7tMFFTgAmS68tLQrBNO=VH6+)HM~B0DCH( zl^7^1!8Fw}D6FW9>>Zec=HLQvpF<)`uaRHp(1d9P%f#T1vz0DZsJAFHolC(^#LrR? z-oNHn>pHSur4r!iY7OD9a+N8;sb83s4vG|F8iH>Pu!LB219-}RL9ZG`ezamKXfzd?ujPpQ*??$SC4i+Z5wd1`fl zQvBy#d9BuWf2cs@d?GnTB-L#{AxQFA|D3j^JzoaiZ-J(efCA4O-m~kL(ed4bqXP#I z9GF1-?b}XNr_IzV8Xy+~^5tLz+W`&Zd8N#-3Fc)HGO3Ljn6z|D0cLG5BTs=f_(Us* zVrQTLWul%7ToNsJ4DKFnAnxsMOq2ss($KRghY`j|>$Z`xk^Kkvw?hg0O915|w4I!B ze@+ergzd;gWy^E8jZ@pkh8pFd7nFgvBQ^%a7Fs<9?}L^nG%`k87+4UdZ}7fNW5Wf? zMPY6oKR7W1GSMGt3S2ujGntUQV{mM^F|mDcY;TFMqGYk__Quq~iLqP9_cuBKiUNgZ ze{b);#?VJ+a1*gUkPMISzh!*1D5dcw8jCRPiUrs(2ns4e(z|c4qp5;cH|^Qe7%Hkh zq1V@#6rU^wODxnsI5jaox_$iMREfGo3q8WSWbe4|KnD;JuYYuKs3A3_9Be%>y)FgY z-q?fav9G@|F*07FHBpD?f5*h&fxeMRL0p6~A%wpz*Y|guQ4>Jy}dTx#3Bh$x%YZKkRELrE@Lh5KQM#6q_SAuoC!>D z!2zcB%>*P~LMLL7>OD9)HC}94jI|K63EAIUw3LHE84~XRFq1(;G~O{WvUhK%c2Uf3 zlFkSxCZH5DoGgu3FsRhE6#$GdeFrB7r{M7A#upa1?fwWtWGP0IS0Y0S)fuM*B(aHx z@fm7v(9O*;ox{T-fZjgY=p7u|*P)eU zIFjs}4i0_PhLdgKNH`;o-tn}h!_-TLG4%bHGl*aiIWPrTwTn@VI1q$$QyWL`8N3hkN0aD> zAezg}UkA|F>A<6}v1jn$=+tB~*Oqaiqn>&NlYlY>sPigS8^K^4^YK=gJ^8Q>m@uMb zQnlw&8P`^yf=aq%PLFso0>c={=1DNNvN58Jh{AXa0PmJ5s@gz*&t)7Nzex!u7^ZcK z;pH(bQViervK-8v4nxzD`6A5M$P7sJCYvvM(YYiFh{rEdgXA~P0k`uxZ@FXRElw%Q z35-gRSr{jZ4veu&94nFz=}0|*hhb)&W7*5SIKMuIh1ZkaiT1H8vMBDUsO7|7->)i! zMKt>jGEsRGaU%^Z7ANK29_CIt5I=k9QxB08+j<(tRvuw~uijjhTYHeRTUs1Q5-% zjZ+_v`7bl>eJDbC2~#sqyaJE=Gcz=jAQ<%`46^)WjP z6WHNP2B0@Y7@?tEP#alN5$h5F@ZUb@ToVC8a7%}gSI2y@XURbGiU=XPCJ%A=NG?`I zkQoM-^#~=bqyt7`xhUq(IG|h^;Y6>+q2%(I9VAW%k;`I!@Zc~uBqKdJM97Q-$N3RL zbW%2C?1~`4bUq3sl}ZE%_IChlNt6o$kQcN$57Mm}|ETLK)CpJ&Ud=ac{oum1DgkcXQTLo#Jh`C~-_AzGjc!Vep8Jovq zo+ypuz&KcJ9*x<8ynUG1JQ5)Sf;d2I9=2?%_*wQv=Ort`&1abZ4)&Sl2l^ii(X=)8 z9~i}IFH1QHd&hHj-MoXTPiu$%O*?h3f(U}LA^S8nM#niJpNNF0X zE0+;Q##9-LPm#szYv>vIfXhZDGSQoX0u!Kg+}1=n?^a`=v=2+2GJcZ*XjZ0(zPih> zb5Ty1>r_HJ=8=x;r5qkZ>vr8{3`1wiu2(oo+J#)Lh^U| zm^T)Ff*CjIxW2Z$zJiPIP2dFl_vzs3v=h!yks7ih-Z_Qh?`CnqrF?sF6v3VXe1mm*927;z4)kd0dV-PIcIuPJ8{%V^!$`R{e06TkR9>4dfByehs-7LgK>f z&##w^N6(OrCGCSWAp{#{+(xi4RtsS8J)t6nYMcA0XyfCuKh5~4*qXkM_*D(_*yLKV zM~!eMU~NEgKCH4`_HQzrZL+Z@RBsbztl&dh@XebI?Nbyy19?zEt~fIr-2Dk|D|nSw zHK>#bUaEANsJ8u~WQsti4RR+sMb6;rR7%wJr&5EU2pCu_-5G3B(++}AZDvrxy2TN2 z4yHy}o>J81wvnL>r>PE6gTilR<^!s=OM=!63N;f@reFn~QqVX3lm@DSjYM#-A?UM$ zhYY>u9jv7#@ z5*>8J?~9eLrMlDTt^PX$&g+=WJGFk-5ik$^0_7m#L+r$6reseDcuXLj4cOm!PWO)h zPXY^8)ko+^aeku-oyMvyI>5FGGk!MBkpqfa+5mN7Fb7oMbc`EEN8^ry98lf!yo_`w zSoP8KOJKd9=TfP2^=%WaH%HYsF8-!Qgg!`6v#eoro40F$ty;iRFaGtUfMwlj1-fZZ z)!PEpz`^^rjg4~Euz6Ri*`No5u#pG($^cali}vi=I0=Md98M@l7+}_hPOmFzhELVvc$gM`~ zVG;v6|3;5)Cq@|6IT}q3jmaFD(2YK=nn!eWINJ!4LxFPQ(AkVx4yd|E>qm6S#907S z7utS@aM|3V@?A7(DtLr+s@p~12C_jxF8xvP{DKA;gQz4y?{$3V0 zO0VB-d_1IlSnfLG@;3xlc0V%|c4*S6L@T&P3to0N3#!dgA8qcDlz}@kt{R3Ji?fr> z3`})QMB5v-oijj~1fMcZazUhdwK8(yx3gSrqqZx^Dg~)OmV@-tS_)D(kg)#%dBGig z%TV)*c8O3Q+Gb31I28%V@=ZelC}XO2^G@o{__^?nS+4dp4P>RV{Ko%83#fj**2M|f zCNM=SC@mJT>HLw`SGGj+0dX>t}vo3j0;w#{^FxA^!o^q=4 zAS`FQnsOMG2F;RU;+*})sov3XEKYJUB!Fwp?B7D&8mBA!O_&F)MriJQm1E`SvRo5Y zK`IJz@s=Efy;7wy4c26wbMciFSs3j+3^+yl5H-wSlg+MF9a_O;#8TYB)y&{jZK!6& zsqP$1HMcTB*S6Cu6j0p_Xgx8}FIXPrVm)DOzGY(k-~qA@DEge~=YCc27EVJWV<-0DWDjRpdZ2*^c$ogt{+lz_ZsAcu1hx}9Np(Lg>&UPXgqgW=fF$*+7|KuFPH zCrDsPI(cr_GMvDYKn5F!9d1Hu8p*M8s*T~!0j97EE(cdrr{INUgdAK=o`M%v69Raq z(OMsezSE}66`#&>s{>*Z19@Kc{rc-OkXqknifXwlZVT4H4i5=Lek6rHM9`C|R#Z&% zy%NZC7V<7(Nwk&l>@3SyqCHad%SG-o`JpH4v01H zCEeP+x=QRJqWu~GjRZ$A^jDlS7Ws07Q71zb4feAD+vEaB0 zuo;_}?j9LFI5>{zevZ%gVK0lYGRxS1EEVX8-U(HhISn7!^ z6`_WBb+Xc_A&5w7ReAB$Zc9Bk!!XZMS4lXkeh^k#HZpei$fTXG+%>-YBY7J|IGIP! z;dT$-R{|%y6AN(TW9@L2Z?wT37@sPE`(iuX(7qD5pJ;=d9GWPB`$!wy)I_5MPMZE) zjyAo}&bsXfwLq&nLwt8q?a_<@6RLf(rYq){{(M?L(76B}W48QlHGTVIhk zZwHf|0MkGUFl&HRXJD;;LqGt`=+-uFqQ;EmA{?TV-{x!TO$IWhTrKYa^nYk5a<0DYI+uVSQdfTSV8Rdl^DPhh)Mvb|1B6Fe(o()_S`Yd0508IhJlm15% zytIl!xy8K=)1X|G0X_W`ER#aPi&AXYp1!fT;EBY$Q9}y*Af^u($xPPT&00hDshA7y zN^rPSB%39sL5qCnNH%I88F55LfeT)rxoy@h2St}M!&>XI zX@r}ZyhVlU{sVF@D5R5y?ihRRS0_dPxC*oVSy{7w5w-`g-ms?Raw=2vv27ykW|;=f z=m9FAH!^Kdp=!Y3C{^2}6}->b_Vr)QRkIn$dIjlOy+4{-+3j(2n%O{T&R-irX9%hXT}9I%7sXa?;T-~| zbE%V5jzg(4Z`Lk_vC|cM`?wRu+8Q}($dUjeeyavr@@f@iPTCp4ULMw@0X?KM4Va{0 zzZSg03jQc%Rd$_Z|LFJ>NdhP-IiNkiRaTO*o)i8t9^BTL7{Z}eEe*i5v^refO0RIb ztgkni0dJ*|YXb_q(qQk*TQYXZFVPXw%CRl6q4PSg7@CYh5wIKj>_)Mj)-Mr0=UkzF6t% zsp|zD)hmp#8CPsaZ*G) zAt4JaB#SS}=89&P2u?ngiRw8CpYIIopiG3%0Lwe8zI#kIYaqckp9K$5bjYdhdWFO* zVPS*?6}@gw6IvRwiC!6V0MM#kH3n9GrKZHK%W$dFr`*9KsnW~h6fX+CSk{-Yc+`US zas)&R*JA2PW9&51sy*}^khnm;gHF2cpmx3NjVx@>lpCy=CFkBq0P4=9`30t`-_PHF z-=ys3pR_%W??Tzd1O2-OwywEu*TBYI+waIZMt1ksJ9hPLyM^gsLzS7J>^_Lg7Y2t7 zp&a_3M}*tfwV_%BR3F@S+fAD{t+}=YpEK?~x9%N0-eeg<_+*Dq?W=Fw}uJFt^18M zt!T~+{hOn+0evS>nnX{}C5OJ+w3wY6@YP=x<*#C1*Lq0JQ3ZdrK~b3{%>Yw~iWT*QG6aOI#D&YfIibVlbcRsE*Q>ymib- z()@by&ubFN{{!XLu=4-kNFKT)GyOb`8}lX-Q!3Jl?$0mZThkw=-?I zln}9+L{VetA?@wVDYP@Mu&dE>)NuBKZ>R|p<*5f1x0owMxWBdX+7_eN+&)7kl`ZLF z6k2&jZ>>CjXv35U1cu1%E1;0}q@Y!zZ0||sIcZNS@4UeRdd7Sa&zM)<7>;7EEOZ+X z3|7SfpIr23=h7=bO%b38D12q`IYYQNW>%l5Qgm-S^+qvimPCV|dZC+dmF%On^W}6# z%zu>Sfw9$v$wO|0UpS4XlJle!|Q3b zj7(0&dupI4*w5}k3~p_L=_Q$GX@&OTgTdQf0pS z{GHY1m+>cL27SBFAk-CRfwct0EnvEQlg;u2OKVCmg!|R)9a@-pkrZZLQ8RGF46VcQ*1UsYjtJ)kaGt zh>Hv*h12l_dj(M6xpE=EIr3+j{8=i0mdKyQdWY^s#1m{whwP5l5sBumH@D+n^||Zw z5-u%eucnZQArjwn*Tb)lkin+rVc<&Xuc*_*K56NIQyiB5+2wW1fs(SEXO`E=pDOQT zG86nw3`v;=|0OK8%vcJ#0?X^<+1pR8pt}6~qKud`X?xCBzAnw>R2^zl`n*+)IFfQsJ7iF;>p`7Cy0 z+GTZs0QbTO_9{9bTTvYCljU7X@y#K~Y?pqK^vb)hT~KO_38F4ROQ z9>3zNKE@e67BeOOsurl-*YHn6ZjV`pPnxkdp-%|#kC>m$QA)-73E^}-5(r+lk3iP~7G+iqp8jP%+$#|V(TB8A^HrFx|A)Vk?xL_1Ok!9& zHT7z=(A0zPgbbL10PRhEV3tIIg5OhAgvG~aGDI1OH}#6W*woL2+nRdVI$<)$ZB4!6 zE^F#%!f#Feb2H$#re5)9E%Qu>tz|wk17d6P6U5%i%>wb!84+uQd)0AHS?b(cmh*?2 z%?e3BJYLElLEsIxrUI8y=e2?H4L~qgs$ehO>$G2CXO)nMQQy=R*ucEUCRiNP2E!zK zZ;6RJ^kj0K0p_JrOe6*u6ZUnTqS|Yb;xY4dsGCqv+xK~mVsqBn%MhoetX5&dfggU| zRT&*B)+=)V;DH+y!I=&j4W2bT5XkWL z@cW4UzF%2iulsrqQ|wLw{&6CH`y8^Xm*HWhPN(09w8%7#GBZdbIz**ePP#?0)S)vI zhe-I3Rb*AdMf$_VgL9Arn3iAYfZvBzyrp*&=kv}b>4d4dR_i<8uz)*5xQ1n*R(t+M z{yk%R7{XWCIUV6$cTLA3J5P=3lhU2Q|(y8U!{SZos_$%%0id5H!=zk)mF z%1)EZN)yZ_Yjs?f^1XT>#Pf|rb0VUVg)P2n5U=k)9&^DVbF=f+whTosd{bs}u3A>W z$bmAMAMUZc$kFsTh%*q+nzT^wk-N^MEIVV;dd?7d71HL!PVIb&si=%}E1kGT!~xE) z+gTyek}0%DCYNfTR_j}YPA`dh+D%D=>U{SHEwU>Y76C0P7cuMeCpbSsW@f-levTPm z&ipb@wf^yqs80X3;_|JQanE8T{Zz#!NmKmbPMwh8P`MW)CyE)VhWS0j>}tqBSCE2d z8GL6-C#B_-30B*(DCc*UY9|=3r7W4U07^=5NPgiuG{-qktW9aTP^b@Wq?Rcupv*`C zlq8%aG)+>Yvm}KoosqhZ*x()hwF%$OdVyQBm++)<_8c1|owhwpUS)YMj{i#O@ zIQcb;c0eT|r}_!<6dWa~@+u`(h+YkYxkR=Wqq~{GCV6rW)M}lCaY<7h-vyS=zj<&3 zFSOLB#_L03ep?gJeq7FRqDogrRB2|7%14!NicE{K0OAL~&=TiaSMxaST!dei|7yZ;iHm#5Y+d07k4ThsPku1u# z;R6b=Vxt)J$qW4X&($LAD_t0^{Dl{f3!_Q^oG^>pMQ1TCj0&C1J#}I9|Dcg{l#>^Z zYm&t1hMDLfsV|q>q8n`12B=I$ykrM$8|_lM;UJ0`g96_}tQ=9k&3n8WIFr9_6;xp# z2Pd;x&46>qC-w>zZx$GsPaK1GJ3*5!N8E zO^zH^7>=Ie@gUjx2N*lWc$7cBUcIDR>49a$t8@;Jf^`P%il92U$w2i-hBaHR;^~T< zk*tVf&x({#f$6~R!h#YN5$`=+%7Guo$W(!zP!1zUS`2DTeBy-FkmGq8h?HVd-EmjO zLQ;rZZ;nx|7NUVRK?o=x?k`9dR{*n2( z1=P*}j@q<83EOJ@^e$TleaX?gtMjV@&bYZrSu8A~tzc=bmk(8K#CWSGdJ#5QI=TVx zlsri3Y%moyFHs|4sM_Q`%9gmu(uu~<_ymrq*C%D3L94TB_mJ)_sDf7W$Y}#|q)+ z?!nQKVMdp8@N*s}g(QJ0IL5ztnHpQ)B+x7afKQE}_J8tTjCa1(!PdyVu_;_0(0U@1NWCOnS=4$w=E@#-sZ{Z>ITiL;gy?t@ zz4d5R4795IXX3SQtw$n`8BT(?9*$UwQ^F51%VjKF*4Fw|hQHGVY^?_)82lo;%dPc5 z%nRP=H!rsCkD2g_!i|fqdztHAQF6wwHIV-a zOGsJ9zf+3sB|gCn9l2yB_Ax_8CCGp#dRQMUpnbUQd!pjif7I zP-fG+U*OQ0c0WaMr1D$TZahcI9)xN4M>1H~?qgZ1YxfITs%!VRvQ)b%sPact?Wsf` z!D$G;lm7I3T?G5R5-@e34D7QdU~0Au?0+o*Q4#( zrJ}n-9xbF|ngNcWTX#@>6L&yWr;dQf#y9WaZ+H~H8sjS1IjX$b#>Iey`csTqq zK`1rdrssc6r2@cStx1o|Y$>}v|Bkr402BZq%nnG6f&_^Q?=`XjH5KZCx0#FT1=~=B z8rbast5*oea{jK10Y0oO;Q1P658)B5zcCr+?9A^v)@3Yn}s@qzS34{~mB16I_X>eX^#D zPB4c!=faEWN${P-la8ZI*Owo_g=>17%{9sFs5>_tg?MGI_=JWuKQ@Wt?*IHcs5r+7 z%{mgfBFI^5opp<$(1&Mj+_dPjZXK)S`BK`v#}>l0^*9;{gVf(?I6W++BoOODiU6}@QhIm0CWm(MA3!``5x*per7l{J;0GzmDWoQzUAd)TyH#op!U6-o z(5cvB!C1i=7|yP~rcywG#m35VJi5uUU=lyAlk&Wlj$o26eMx$A%guk+B6t(lyWHi(wA3gkIw!Y^etCaR}(ZFcS| z?e>wPh%k4{wrxA~>H#<;xRJ?Qd=Bfb>cEVS>Zt+{0>D*lc)H}a#f4*h4n91*tGX#J z5V#tZv^7o-MU2$}ZB~OE%z||SvC2Cg$1162HW8X&*ipd1)>V6p5Tt}tXb0GB3z4>- zZT3&^`z_oiY%``D(5GO9TZGf8hZL-EdvKT9YU^=3^1Aeqs z&roFv4%7PAdS2=$ipG2*pmEUDh3F^$7jquKQL>{MM|NzHU`Oaq8|T2M z-ldW0EZwdf9l3i3_bDseOwsvnfd(16&M5Q8zhpwoacg(}5+@ z#NRwT*xEuHy1B)pM?`m>p*v>rwCprnlpYi*4^sGj#=g&y84HcaU0DP{^t?=}uFa6r zuvpH*JuqMQe?#JrajW`en9d#@u8)mR)%T2y4cDb*s{8#)^$*3k1#ZEL#4UU;_;7vC z_(YvOi~1dd_Z=7?8Jnuht~+GTOCEuV_1B>rifVm`KSC*(7TEmM} zbRY+!l~bp=G3l|vzQAw2A^xbEOX7#3r29Ri|8^oif7&)Hr2(~j z<(E);u&j1uI`Hs|SZDc>mGZ4l+-~|cooG02rGW)9uBZ|5N&bb0+GM*-xXpxBoP%J@>m`ep63maE-)gDaShn~mh&nZwJ#o_<+)iv7!#7 zi-2^?#(^DzIKdmtD*0PC?JVX~5?xv3`Rm{a>JDl?(|K(n>ualJJ1_J`0Ipqktx^_Y zm<2L4X&2Etm$@gyU$mS>!vy1;|6)S5F>RPamF*;au{#U6B~ZflO*?MizIFSy+jndV zdNR=52TlufGB{M`YM-QS;K0tZ+iJDAq>jYl(9FejsP+r0|H`45?m_(jWNNUiiEqaV z>3KOXV(ZTAoBKFA%z5R`%dW!Z)>Q~lE6Sk$C_<4%*vpvvxBTtmLqOKMx{5`5p#w>J zyL@BW_bN`Ul+iYEib7}Xy54mk0aQ>BPQ^f{0_F~mRj#%f>3CE2LE?u(P$7UdL(42U zmw!!@y4|Y02>Tm)z69K5o^%6$Nkl}&lj_O?05^|M3^nYY>EPvdu5i*!EdH%=qpgbh z5e>2kiu}U2*{zC`xffAG`6P)2`0swP4xXx)YcEaDCQ5+OrDomNg6nbF3Od&%k^fnZ z{QujWB=XxHf}>f$K1NmB5cdl5t4Y?R=2m6y0yKGMrc2^0#?68Y2YYD5g6ZB zGj*8tSy{8)fH2@vKiM7TN*NoqVyGK(d+>j&vckx5F0OBoAoBS=LJvM)`;f4T%THA6 z!W`obMDa#13Vw+C&!jiLuxgc#xv;*rUpAHYyCD@zj<$Hs75XGV6v(VmCJ-jhOABm2 zI5vhWHe(SD`*2?JRIxtD8m7Vq{-uHN=Y^_u z-9t4^Aii2H@S?9K!35x@Lr=;?EEL52s&o;oSVGbv=cEdf3PkgzSGLkZnjrfhtrh@GJ*v|2#d;buk%3sRg;lnt1L z8Fs`H&n@3^p`6;(0HA4&juZSUNbKwpdWH%93|`ztBC4;T&Srw&5l|cI0KVIsg5$Iy z?tjzd=hpLMva! z=uuH3jtt~gh#>&=_c0EEvZ=ix1U`C5iqp4 zcLD+G;6#JhLOUr)@DB9cgkkG;oKPiv?py8-J&0}jhB(y%Ysv*_W^sZZtN}?oTycip zs}7(ue8nkxt>ALBlUww^V?6zVt^lNhLIgCn#-3^WDsqA4*x^^Lw~s{* z8G_#ifIPpa^*<0dsKCfT`2_Ip{ZrY|CU z>Sw=L5Gs2N**0F9IUqUX{vUzxxu{6`Mu6OJh25)r8?1n=K<13Fy|8EmA5u0x`wW$k zP(}Mzz{E_b1CX|r1Tx@9wn;zP`rjF}i!2aSH|0Aho$?F`Jq;M^@Ke0F?NE0wYis>P zr3W1Rn77vO3H$Z ziVgovcUloa$K5<93cGm}+II6ua7~51s=#=*VIgBwx^>BJi8<^12n-oSF27Pc=>E2W z@8_~qjN4X2C6%YMRNvP3FAo4_lQkS|{d0c+P-8&HyT0W!chK6`rvy($F7&EL@ZxKYEJ5=voP{>sbV$jlb~L?*(;~%jhB#JlkP7#1_gb zw}TXS&1Zmcpa6(X`u3JcyaP;u*};q1eT~t<`^b?RjMIy&_<6tqeK=T zBU<0`(n-bu#dCsm!l+cOJE~N9e-JF|S(k)>TZFlIt!iZdLES136+tX!%Yz5JcttSu zHzr2Lhew8p;}HX5_on15;zJRMp9a#CinrPADxc~IVCQ%qYzNplI=T^0gAS>0JP-kJ zCWd?}i3H~U2!jrA8;m{DWk)S2a^WVNsfYk_l-z`KAOf`AgfklRa9XMKCY*f+BJn{? z?FvtC!nre|aZQ7fP5Sy=YiG=LP3Je^?1%uUfYd>H6Hb53Ztq`jiJ2uQRBmN1PpC-I zycgRSi+1R2ZivO9_5NNy;YsgWAIpMe%ZcuNL(FDDJVk3Yf1Tw}nL!*m$3?tX$AYED zzpjY+C|o%HwaRfXFLw-LYLwSGRvs84dp)sy+d-oFp)5g9 z+ps|POD?D4&;$)k9US_oBArAP<`iRbsnZ+{`1?l(hZ=*sM_HSiXCiIz9`bzicoPIY zD!?Sg18&VzF?(fF9Cwl9KFfU?I)w4&OA!z%rZ?U)F@Ep>Ghd9EU@)6dXr8n@wxps! zcvW9R&Mn@JOPGm>IF3aesB{TLIGxr!S`LytY~MT*L6+O%T05!3fhDlhb{+&=DR^X->bro&LH+$YqLLsWN)W7 zx5NzhHfX@!Qg9rZbnKA_t)+K(ljD^UC1g&so#EvXB6(M| zxhy85g-hNOZT46WsM-PU;xnJkN-PXPiqCtVjk#VK!vmgYVqW3s_w?zQ<;B7yoTp-* z8_u_ZiW;V0@_hEksTsr+9YWb+EbmmFe%@03Cc3|txEh-ONvS_RG?@1GK+uKbonG*L zq<+bF<)0JyP>ziuDB%oTJ5mMbi1u3Fl|4f- zCBa2+tb8N z46f7t5z|niOsjq9jms~~86fb9GtPp&M9#YUJy#<=!7mgw}eEa_(|9;+qi_TFtLc$AG zZVf=^?qn(|kl1S4u0TpE03vd5?1k3UTiX!g8{Ik93XIIteOb<+cB3Uw_%1a&8(Jt% z2&To#hwZX_+9JWl-bI{jpN31Zp~`o-O99#CgDhOq9~UbN_c!{Hzu53iA2WQ!fFRM8 z&ZP|jVTTjK(??lQ#~;lQnaKGw7Hg2&ej}v>h*;a3JEEb;0?Kechuf*7(RMRtxvyw* zQno!woh9et&JI+RhfW;6qRmS$%fr5c>f?>2(s5FS=^Bu9)Ws(1a2`k#3ObqEmn&>8C}j z2p3o#lizux^eSxfFa=>8p)NC|siLDMt8$r9*)}nv$|B2??vas7*tlNUO-QGb@o?@m zm8pViE=uh1lj;C_fGyUtGYd(D+M~EpGJ(P1ALKRh%TL_FZU8Ztf1A!1plAR9jf(0O|)}9)%nooBAdMr zQ!Y>u^lm+Rcv{j+KkRz4YV#iI(%lJdzjeLB$cSI@hLwH0u{{&ncEifOru5>;j1uOkqi;mTRqQpGGnKBMOESsQ z0Bao$%&`>uzbVj$BnoGkxXIpPt@R5|(P&rI^gP7UOKjBhnzg-flC-*3x$D^)l*nhs zqi`Ii!Mm}DH?gJDGp`q+8?h)-m{xX=-#eqQKe$FlMSsXy;Bi+Dc$OUtVA;GQ4CFM z<^2UzjH$my&cLBonnJg%lS|zb(fVL&wH?*CGiIUNuVyJ=P2DK+GPxwZ?2=W3)~BDQK?E_SM|JhQDzLc@-B)#kWS*uN zV;FZ%yKQKplfrj%W#m+ThryKga}jbt@QL;TrV6jw?}o=2jL5QR9TB1CW(dzExkHsM z8LX;ufV((Vb&?KaJGy{A)1uzls9JoHoavp7vi9nLPIEOlu|u%yWA41rnNRYeNH1NQ zpRl2aXlv{Twzf#Qq`iJGX-g_vdYgia>wUH$5Mw!@V&vr70ji2c&JB?zy2mOPi(ll* zS1?LH{MuiYUrn!^exl+>v|_*9-*_>D_sXdZ)iMHsP`FVJ_3L#FGKSO&-qp3?aqZ>U zoSw!|Sr1lqqRes8MX6uYe)go<^ohi;g9qx7NXSYJTuO;yDt=L#d_B%S<0@aFU>=b1 zYuZ^Gc4$j#z`l&X;2Pa^YoULbrC@BS$IlFg;nf<_Xy1h=Uhn(*Y>Ks89-UY;+@LjO zpB7Q7tNL@LBCJsO-+w;|ys8bo<3p;h+;K8(N1TNGy#HJ$NP4v8eXoNdpKZaLTpI z=JVLPzG-K68N{<{&JCw@xv2H|02_w5Vshd;#OQ`u20;qs39mqd`eNtLQ0+9Up#St# z8DLPrPn87+q_ciQ7e>+r-JQZfn0zM#k2n<|YQL&JhkZ1_#<_Wf1eI0P!j(Simx z6@I^Ec5&9ubr$Mc0oRto@9Ux9*+=JDk+`Nnf-_y>of7kYV^KK{n)Iwi`ke&~?=1XY zm9$S*vAiX`=4Z?C7cji$vHV9{1q#;{e!o7}2CG+pS1V^#>TmV9M*Dxn9!8s&zlObq zYvtHo(aUG&#jnU88PUwMp8A!{hc4~xBX9nA!8WhCH~h%ol~|k17FzZg{$;nsDzt~q zil#{$^mRR)hccOHY^`O_n|88%XQUIi$K+aW(&`AXs^pB7X(BaEHwWa zId*`|%_wQ~@)Ul^mUhxub*`_VoYEL_( zn=0Y%hhG$bZtOoWbszV8Ox8yx6&|!vN7~?@CbD&|GMlUV7+_bV=N9ZBM`PHD0T(uh zoB7yXzFED4ZS8UwRMTe0hKLGmHUR61#uZZ1d0s6(LesW@S26nKLS6s2@<62nR@EER zT4*Pu%3CXQIp4rP^KaRmJZZ>@N7~p$yjU zg13|44%@9f)b5n%TzgVVNH5*_a}3nHR*O}h8|G+kQogAhludNQ*^amaA%TM~6pnOn z5IW5(tX80|*nH#njJf)!xkNTWl1wMOJa<){S2ym&imw@W8{m=pCc(zNjWF4Jf{tq2 z$8*O*?Q+x5B)r~TX4z;cux7jMvQi-*sjmg=q$Qk`F@M}@8GGw@x%TBNG4Qn@Pt111 zKmR>$gXE6h7HenXfy>+jRiO~3<9729DJeO$2;gM{dOXMXrn3s>fNrePNn-J%*u2n~ zoY8B6FF{|neLh1kJwpLx3vU!8&x6NoXtVr`7%L~QoJX@1B?{s8AU%e9A z(IM7&}8Qd~?q8is$k-%@Pmj zXZ9=Lx$#L9er)KaUn6Rmx0}X>jWXWoFtV>n zDTkSr9W?JTtEbS2KVqd9!HP@1VvXGysZcMvyk#_;&nv$zjZSsK_Q2fbWo)@uw>}Mf zYMi*CJ};z<72_K87W=J`|6Ucww)14lyG%`bsb#s{h)p`v%-<;*w!H@fh3PczH1+Bl zBzbckY>Js-CUjY)MuXTYG#t|>Re7AZ`8ZoyJW4P-7OA>fF>nRmyO|9G|DGDhzGZmM zc^tgdcaM$_eH2fx?!K?SotLk=P;>ceQ5wGz7w=OSmz2;)NA;xoP+jg1p&^LeE;^q8nJGW3T6Dm+KWGIPSC#Vv=_+(mlQps~bdc8qKaLO?hZ|$X>-}}A` z>S7p4j}+RV-n>$wPG?Z~CGyQ(&uPv(waqz`f#6q0?)*}61*kozO39t2*j25&FDY%C zVihm2CCVA;@A>Mi=s)pV(%0G!SN)iT@o!c;aZrSt6%VlnRB!C80-|0&BjNR>j|)5oM*H|mu)NnHUN2E!(>b$w`ZxK90Q{ZbNqqGB44rvRe%VSQeu zc#)4n$_pz36rQ*SQ_zWQsK9s5mGU+V@h zD@XApmbpbxY$*$H2Wnqq_d$KhmI?>2mz!y|Xn^KD3mu??0|9!$kX_#y;!`x^-1_iH zW7rG{|B}c%{YAuOtqkaSWD#my%*h8S_4f zC8*iYwkg&rx#iIIvVnd!{FTGD-6{`p!FT|Eo9%}*57yTQ6thj<4)IyhUBiZ(`rX5h z+VYK~_YB@Qi7j`y+Z(rjOdObOBp1w3`gp6FUeG-As&5OF!Bn?CmXlt*ylCsDfq^Z9 zlX&NFi0nf{fcy;mv~v6&KWsBGemF$Wb!6g0{4ENBPK$`NMn9@YV+79eU@UHSn*kNhiB?)+r~oUigqP)*NfOIHk=MwsP946Qiw9LOto7|H?|* zqkV&zR1#_ue@kyNUt7F7dzHpLR~^6bQK@M^b9-Hz5LE-V+xZx=Ojqhy#;-lhRoBao zF$@WZ@NBh<=g=!kTt+GOe1+0eyV~1HXBpK=S^ACquZx%Gb@R@Rxe#@}+!TXV z9Ccu8RY$#MGwYZc!S4x3Cfa15n#BMirlIbzr?E63_ytbA6rpQ5h|d+`N*Um)&K0tS zQ~H2;tYT@z8kFkZ#aopv1S`uHGea;ciJ35km}bj&fZt*!tfhRH#7qbOD)~6!kj@9c zO50j0STXTg_@K4}J#6XbEMfum%>3Sf+V861q?2n>Z3@KPN=Xc;3#*~y$_oBsNW?M5 zIC;TLZU@)Un|M$A3~9V`-f`<(Q1vQMY`=+&)QUZU?*J5cvcyZvc%3fsL21x+JXg=v z2YZb!rgELZUW7y{2j492VM#0I45#f0t+t2}4Jy-PlcEQk(2Q^7-o+@OryHSCag4K% zSe;c&R%g|jkGpMY;ggA-QP}3szGXTa92*|rf5+hHN6A)EXG}yPhFP@})#RK0amc!` z;8p_Ee#}}oT*{y%9+ z`R!llFVshVsZu)+Akl)M{;(rywZ8j2!4Ms&mp_0i7fEbLE{STXS&E$_mV-XU(|Rsr z=^w+tyQDPp;6+)au-b~6m{<{&-Ft10FsVpct;OPpRU~ct50iFWw;jSRnu!s4nF8y! zF~0T_ugYNY6%kcgNa{bZC2T=cECxu8n$;yh$*8ILgg8U)YaccHIe#JTxY+ZS-(h$P z^?+=_ah19)i0GnaW^=oEMjpjW!`pi3Hy+iu&xVvF~oD;^6gH5dULC2 zA4&D5H@3)ID{{|n+C@;8gE&CWD?anS1C1&f6qfjrlvo`lNgWPi@BGTPv&5SLu7zL5 zn~6nTq;!-BZBYN0DmDk_7c^vMy>=-`UyvMt7(%@8YmEpenWKm3OU zZ0QijW<1b3`;nBiHpTza&(rozR zRyw_-ZVo9T5c7+8Ko7fszfkK?CFG$NYjOwi`%QNsTI5G2C;!NMAJ!`ED7*wA4_Y_F$!V5-E1A})rhIv)D-dgUA z10%q~3 z?+=~}JPY-5OSzQR23p`au@szvWs%D7VdIWJpbwy!zXQ9MMsZ_oDFSbhas+l&z9Q(c z$%(-!+!tGl#7&bUc~tGDNYpt?OT)?~GT43jN$C%imWFqCE)A91KuH$37jY)?=5WPj z>nOFw5l;K=E9w5iknOozeN@xT?QkEMb%bp~7E%^iFmayC4C>+_m0~?jCQKQMBWJY~ z%V{e;TP&{HoELa9d6)qUMTc6)HgOw*?4>Pb2xcrnmCd9ar(0`(Mm-0*&{o+xWH&&8 zzMnq1WEx;4!G-Z?iv?j(T-vo;hZ6A$-Iv8h*2NPAhtI2Ufn9oSS@_l-8n;Vv;!8@b z^$sP=uO&PzlvLw#EQNj^c)oxh>~TznPDv~SO6s94md#iSszE8nvx|~o#n!JaVu4Qp zOKhV`pm~W{ACL*y9*i@u+mo}RBs8gb9;3&sjac>7#Y$jf;PamJ>-F+3L|}U3WAcE|2^#DLGp_Av}_AG z)RH)c*Be+VJ+Wfb!kvo76D#6_uH_;D){rY=4RKD3a7+iD%+EPfYzuWd$$*E|YB~s0 zgRhilI_9O%d}u}0n+L2jsc(6d+(d2jT_gocoq1gUOUm6;SZ1vPc0uDpD_MN&%r!@4y$0D4y1=dK;|RAA0G zqSmfqmV1XsmUPB8cL#^`i!c5P+!hXDwIC1(#brR%kA%j?~DN4|^)89um)AaNB*8P|JH8_bt-du2P~b zMP93TNm&*{gTYyeKa+5UoY%y=ZN4EmZAb6^{(^T4N7LHuL40xx?;(fJ6NxrhCza>A zSir9>XZ`IxI5{=0Pp&`~nkR8Y5if0DQ+*+?pa_9m=!Vn=5Id z*5|4m94KwnN?BQ`HMeR{gWB3laAok9heVglWTD!d*IN(bIX^t%fuTt|62EhV+qR^!AQBz;2URdFjS}F4s1O4aA#y{r zUR?t|7Vg;Bm_XRV|5->?W&^i#>Mr199e4ZR-FOQ(f~-|#0hIV_779~eMVL@u@Sth*B+Zf2p3D29xC&n(p0;6pL2}`dO48BQh?Q?@?(IV@lh+Nw56C}Q{ z*j>Z3F1FZcFLO~QshL@`{V3~d>FZpN#4PWaCoS~D%;gZtpHRr&@n}610sIMuV%VC{QWVv{1uAy{iBYrP_(8p_R_mA=r0E{DrvUAvNReY z@Pt5kVuq#n#k{s>VOqm6)88JDJ~a#874!V<0e=*N`FF;AkG`JoeC_NEVvk0&c0>^8 zz#mO$^~XHtAbtHnE*a3^9*q;Eug*yDBkWTSU* zXrIQB^)XBKxk&m=cqYgmOu8ZFO21Nad&kFy@z&Y6?p|3J0kE`%Yz%7AouO{mSYGmj zkJEo$+wLoT=Nj`rZ?kCWur+bvtBK3z-=6T0z!v6m?P{hkd$OtrDB?dVK}a?b>F({? z1=jsOWm^K88`*U5 z6Rs#JR@-f3yT_uLgo*0kvLIkHba$DO;Foj-97)1l2Rs`d1|o?8_8CM~w@g&jS&-Vv zS+o^WgOc{c<_J&$e_tdH0ctH$%d64J$UR{@IT@a%VSd5Mwr&o~{_I`;qdD2#vzGF8 zxs>I6-}d7#<1pV(X-gfZ`&Sr7-2SuFVCA|FoXl%?$?k2We#q>%rv1n$qHy9e8*IGL z=c(#?RKx*KBg*HZTk1o`MFZQQizvTPU4h7w9ABCbT$ zI_AlFf=gvpMQiZ`B{&oQi1RvoAQOC1nkzI0_nc+f`(1LH%kDvLp}&>qvg8qu4Aqraqge+RbK!g$~oJQKSo$7znI5+H9g}=Aw*TzsrI^K(3#5v|@)%o3fkD zp5%OC^Yr;PNBls5<=BmQ5PlpV!pUFg9bk7lAhYhWNJDxXvMl%)Q_K7eRV5J^yl6nO zvrnHaS-saa{OoVrrCeZFG)u<1bUySid%?M0S0vZzD$%ZRxuJA#2tMp?1@PmV^i+YX zFV?gzg;pd$uD*lPjXF}IfyTWRrq8|AQ~7mbU_?13F*=;gXi>OQz*^)A9_h7;6jtF^ z&wueTP&P2W}YHSqV)jtUD)TWFI zOb39!pPMsCt!}->=Rr>yuz%Ov?*sO|%f2g><@dZR#|8@XC*`&a92FxIPz0tk{MyGB zeF7K6zQD{`>ZSi-LO*Pzudr_iE$;aJ#Je-?(GON8xu-?9wyb_NX+W#|y7)WnH?7-h zee7rGE$jGK&Na+6Z+Ovqk$*0OQ(^#R@&4*xQ9;0)_!%szcCvc>9_XkxuqBH-CyX-i z#FLijfj0lgLl%j^qvE6qad4&_3(M>*mPxb#3eGY7!=e{dqsS8y--ee2;nF~EAsb3i zw8?E&ac+<_AUVGP%|iCfMU#*X1XSor=dZKSe>?O&3hf+|;PXbXeab=>5oG_fZfNqM zJr=xhKb8v%#g=bgQa>OC*g=)8N@N=JqG?3rmV!6gCa14L`~|)HMn;DR@RVBSKwwx* z|2KHpny7+BiOL-vdIWE_(+mSNxGP23F$glKN-+Ujn-#QOOjc z{sn@|=Q}oX<8Ib|#!G6yPE_G9%N)}fP`yji1z~lB9N|y#7!Bc%T3x_*k*@u`-|_IP z`tPfre@Uhook;_+1Za~3IltV`Q~9b5rT`2kz8Mzn3T(9nCt^N=DynShk%-wMVP*Xi zQFv{iQIZ^}T@v~~m+orkAOKP4#16etD(9Bp!<8=67aS_7I!I^!b0Hs0CHde&ec+tB zel3Qv5EQf`O*V5L|DG|x{}LYXi{ya!d>trfDa+Ll;JZl~NXasgW~r8eB&(%{YWKxG z9p5FFST%i)B>?x&O=7y%5=wuHG9Wzii=g4Zm#Y?_L(f@`X=uEs$4c~KHrsW&(!h2_e-nFY0AGR2INoxp0LurYyh%;G1$-B(}vA zUOYj(W{!1wbwWa`WiXUYJpc>KK=smzUUDHR9(9V=;Ck%`6v(|$70~nktFp`DK)d1+ z1Aab7x%?M%ixYmf_M_aVT`Ib(ZUPFcTwthFw@1h-cP^EL6bJ}GY?tbBm)7a-|VPo@0UmcroAqz6bTIdK%nYr9Y_Kxo!9T}V4H9CHeak(qu(v`@nL;TqOam%)wwrt+Ikt%@4C6!2?Z~&J9=B6Ab zQOyF-ogCXeJ~^pWt8YWW#hWK@LW*r_b7*>0(W+$VX+DYGqvU#T-Ms1Mjf8`bNmV*m zm!^^k?pRn_kB*^=fj~TTXrt*eSx;oLzSU+qG{BWykZGs(d@F$(kqXK<&OJ#LUakv> z1y&uOs|RTdCm97rrKU|BWS0N_G1@mYAPg8b0wNn8?o^qfeFLaEhe&0OtH!z++BX!U z5`1G;U4Kzcpp$r;Z=-YS2&bhte}JSLUe#L~6ztC6%3EouEl}&Cp^0n#hy}?bA|>Rn zRFLau0I`t3LN6r-n}_Seumi)aRePP-ke4-V8XMO8pzTDV^^{x}&jPTAfY`w?F*OsY z-o_`+*!A7X|H-QNg2CatwT5f$u08ZGwHxy$b{j&c+Rd8)s<*38!&P@z-954(@Ubk_ zdj_GGPguKpyz;3G)~+6}gqMj3>tW<4Gg!NNyz#+iu#t zX^n=;P!);glK`0yciOsn=jKf%DE5eUk-u$wuZ~&r;=NRphAwiOz*G;%X*m#|J2Y|M z0SjT(&rsl3R_iO7l1z2gg+jKv`qfz@-ap9sE(R?UZla)Hp*;=753PQ zU@J-`xf_s+7W2Kj0}BPzY4bTqn=1}A$Auw#J_9tv3M1iBT4$xDc0Phs96#sq z{6e@+?1S<5RLMkOoJFL6)n$^s$7i~85LX>iZCUEoNY|}P1K33&N7Lt}=kCx00DITh ze8m^PY6BYmK}ptqt2P~&8<_&YQ2c^BTPK%xu){hzD9JkcA6{?kyUmH-O0B&sDD6tk_eeuO7?(5|nDY=Tp^iqi$DmBl;JaGQl~w7bX3knf{1c z*X=x`ml>{BlvpUo8j>R;zzPo6)d+{`j2~aGVmAn<5W`Df^$%rG-qL`RiBTVkTfB>=l zs=N$Ea0XWF+Q2Q;4T?!kn;xV*$D9oF;P1+=Ez4b9SP6PeEB!a_VcEbU%ZkrJ={A_$ zlB8ADs?R#|pbM*`>DKljB3oo%{DYn|zDi5PO<<%Q$nn=nv()4EebBxSsT0muZJ4UE92$NX>U@G+z@Rm&c8m@pyAnK( zYE?vJfYaLIwp3fsPQxs+yEfJ<0$L2VS{_U2=nwR+!QZy4{1oCHagqHTiPv`7UvklK z-~^cZ1rtdn5jh~jRFG^O7U}j(+%tJ#WD3yTg0){KUlPc<1O2-OZbp8O=IeE$R8<1C zkofk=$?t$l&wwXDJwVmJW$lg|*7UCx{uJZ2WucfSHSJs*`r-sf>u1g_G>og zRBvA}+}J-pChlO){*&LUvu}9(U!46FIJ=Bm`!?OSO|~Ae9=1EW)Whv}1V8NH-tCCm zd^@kuogBIyQJXgx5Or|jc0_IdTR>Fiv>u|-3k`czxF$kNU^Pw=*T3%X!l7CC;$?6xaPgO94PDyMSxUH$uSV5 z5g(`kpKbL!9=MO^MUGi73E$;6hSmMA=_VwIknkAVdh3wNYzW988fe4kT{PFDj#AjG zIO>SlYQ9rvKxQZ^8*l7bMkq>oj#)GOq#-<-G{eWp>&d!^+|4Z?lR+R~_V&RuxytQ@ zeho=L%Qi&*Q6QR2MA z^`dsPE7B@2>pQsrz|3Vh?B&tU>NDikb|O;Koj59xgzUDB66zwtM}&Anm;!ZR7^OSi zXEYNQTXBM-Nm1t?5VznjM29 z(I9$S_zko)6p^5yprD`t5s4HCQMhmsq!cMk%z5X|+npVcF%{VIJkNXgo_p`PA8)R< z+WxhdUR-)pse1g3!q1GaY|r)7*}bLia3}1BNje-wmUVP=^gy{!DXfPSn9T(?lfmZn z@g+s1#`B8e4}e&+J=>9AU_aIh2E$I;-`U-k_Fq>8&UXZqej@g zNtQ?Vv^Uyx?oCtPcm|5N9w?U_JW5aRf&oW30P2jkbai*ILCJj@Du-=51;G{t|ELtC zZHuu3Nz!9H;EF&R!rDF{J#BkzSd<_45$Olk{31~hT>%B!1>-q&2(BRVn{t^Hp}{iZ zT;YnL(81x)X9=I9WnKM`SiWL($O2w#5~?mZ-5*xH zNv1zHBIM|e650hplW61#YFkbT8Te0@GZLmzknN_?KjozMjqAb}ag%8?8JVgTtA1jd z9*&r@13vHTaf51SLzPr8=R=c~&S_g&h&DSd|q5D_Bs$i5;+W9`Y2 z`njrG1@LJ(8uu5x@ZL@a(R&kL%}5%zsgb#UTm}g#IEL8B+6px4z3#gaG97F5f?|0L zu{@VA>u8Uw01zydRfuLX^r_^pP%-E;N`N#df9B+qt1iW0&zVE62dd8XHie(Cpz(`n zjISb|!yIu?3KB4%_c%n)ar$H2wu29&t#%e<(TGYvR=Urba%fQD3!akeU*H_;;uEa|Fr)(UQ&d56=pb88so zgB$56WE%xVY3y?SKKHf&G1G|#!yWKZ34jDu0K6`p2*MFVeLWau>q!`7{UojgLH$>N zd{G3E0_+c1-(vr8YX`WNlE|baXpdzsvp4{9Oq`j0|c?cFXraWzVj~SsKJ) zw6@pJq&0=z)1{?Jzhf?rN$V?rZoS{rRS~c44f|=->F4eFEmbOe4J<)%wh%y02h0=- z!q9-zX%EYhR^j(uWNdxAo)rz`264o0Ak8_>XjI7@*60IDon_y7O^ literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_sc_death.ncs b/_module/ncs/spawn_sc_death.ncs new file mode 100644 index 0000000000000000000000000000000000000000..e7977121f992ca72614296ef86890f8a660d6f4d GIT binary patch literal 781 zcmZ`%-Alqy6hHeiYZxYjsHlz@*cW2>;Cn_SK}1GRkxX|>Nu6A0)F0O0&|lGek3IO{ zgRsudwscT~ad+?eeVwy=RcqkgNvV7apk;P|o-~4L=mun7%gtf0-E6yZI1-BD`~DR4 zEueMA05bx#+s{j3!7|Ju4M3dm3N~G0=>vv-hes5q^3xNnf13L9K literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_sc_hbeat.ncs b/_module/ncs/spawn_sc_hbeat.ncs new file mode 100644 index 0000000000000000000000000000000000000000..9da1da9b21bf218954e975d38046b4452f2f6ea2 GIT binary patch literal 2145 zcmb_dOHWfl6rQ;cs63>>Dn>;Hs}U6l4=@h#?Iy`cn zkce}dz+Z$B!?tYF`DA3Vl+P??T(7jkDXmm0d&D|PVBJSRy8@)$LOQ&Ckswp_5<&PL zFq**FmE?}+r@7;>w5@w_1chn~-rMeBKn!_K9VguvXexpTKoX*S+xA`l^Z$TMBW- zGU0^+;UdLHLv8e0mVjB-YJT^kbg!!SA-r_O%uhqu3Tu@}43!yvSs6>kV#w)>|F8wF_`NQOxCepyFl8 z`!#g<8)R)wZ4wgeN9qQ<(_4ge_M^rpq)=g`JdZYDs|oA}XelZMoDlmAJtkd%xhd#| z2JLE)^oTrQ!xg*$-!l_kz9TwetRVv4k`BGbt_ArY7nT1gPl0AK23asfgAD*j4ejHg zf>(o%I4e4DPg3+k%l~Hhyp3nEGojX0wby7+>r+Xmm}Ldd{3XX{o?GIBY|Sm_vuxd& z1n1|ab4_3?f?1=*CiE7;go8^4@%7ws%WRE%f{?Skv*NSz3ipOF3;@EZRij31P247l ztqsG*o7X*E_B?3AWVx8*Udng;YTGoseDN9yq>A7!vf%NoXIkyM`Z(sD5u zn8yt%iVVc0A>oL+B=@RTko#wsyyzSVV>8^zvPYgiElU5#_0C9O+OMK-}y| z5W<+~hk1Er#gy5x#OxqnhDgZmufx*qD7ZZ$1oGCIsN#a>uH_-6uvesbFeIdpU}Ogn zYS!RvYZ4clTY6Z1d^&VGCFhqOY(tU<;D@MXB{tO%qZ$u$13F>J6v5FKwfTXeP09Ma znl)H$mGxanr1K^;t4KNNluGO2d_&pjc|9h>lNrpZSgQ*6p*(g2HdOCBZb!9K-8%Jt z6H}0;_V`kcZBfx37-*1y+EdSJzN5Xtb1?TM%|oEsvQbpUh(8=y)A~l9FbAVR8-f20 z4F8-eYNM{7Fd59-1jApoRs-=*|1DkM|F0=wwP8d+QU)7{#q~R+exJtT!hB&k7KdeA j6%b7JEOQDBp)kb}MG-_kRVSBC{x(h~Oq@q*b~5q@Uz8tm literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_sc_patrol.ncs b/_module/ncs/spawn_sc_patrol.ncs new file mode 100644 index 0000000000000000000000000000000000000000..28490c7f9c24bd7023810ce2713b62f4a853c3dd GIT binary patch literal 833 zcmaJaAWs zyl*oWMbQLA4se|kz>NXT-d!_!ybh$~Z2-Y1sA!>LrrH?vd)=Vb?}P*4sA4w24o{K^ z>Q*o6mGV_BsGV2;Mmi{JBQmIFsmA`%DKmEtY7R>pW(vd0M3xAf> zqog^V^jp!ANvUT-_f8EDw@q#gbj^~1=z4+vjm$V{^GTe^O6vzkP&bPVlssTd($g-F sOeOr!{A?+yYcy8WB~P@?yc*zVLo@5IOzaKmy~RF9)QF4@N?)ApFV`RgIRF3v literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_sc_spawn.ncs b/_module/ncs/spawn_sc_spawn.ncs new file mode 100644 index 0000000000000000000000000000000000000000..66135680a61478180365a321e58545a609e121ab GIT binary patch literal 3735 zcmd5|Mh)|)6#OZgxbMKq`-n`eYgcdqC@7#0FJ>PeJ z?t4@9>Dqg*oERHdYVfl|3jfMA6_?aA*Tx#l3$u;crIqE?76er%m|6O8=0!!#p_kMF z)#-E|(xN)O-27;9dUj=gxgGaePbH;ZHP+W#t<~JUNLy}wZ`Wi6(6b z+K81uCubhSp98yH9lJG14YMaLt@hg8N@-}(&_5&AN_%N#_G)W&Vm<^xbp&=evLWa% z;>a!q>L;TF{;;;1A9wt5VB~#6W6Sa2!u;ITc5`N-b5vmSwv zA_-JunP~O}am3ojan{E{UmF%_Wt)G??+z`HvCwbj)3mg=Fe+cAG<;!v@^mD0xFDfF zJT{?XB?*BWd$6M~Xb9m6!u$ENVnKkoQ|Q4pKw!w*7xi#R?2g5Ea+ zb;trf1WFDc$D|;*gYyd==wdE5fu{OSbEUP|=1u3*0gKlRW6)KZ+52VW1`7X3B>)?= zZ}L)5Zn&rm$*?=+`r8g^8P!e`{ayD1TYU7HqBDSwBy9v3Aqz+nj5#C?nv&t%cBi`- zsChR<+P#!RQ%IVTMwgh^bPoO8(!a`9Ql&-U)^RS`aTmq6S;rjJJ=Qm%L0im8FEk+85by};bwdRffxXK;K?XI|=Yz(WrX z$Pyemy@j~!tcm{W1%VI~%QOg_%ky(UQZBA_xGR;L0zGP zygp`#C>Lopc|9`Ucq!Olv#%rN@ue%*Yvav1nM-D(t6)y28qXZ+Zt3atUE$uo^uJvd zxF;Y?^B`=*gXVPQn+%qs^1Yo&yOgh&`m`g5J!yw5N#0{`8NJn;`Go1Dd=V*;t-BQ! zkS$*{5wq-Ww^aGs_7B@o%GXOh4tVIn0a=10r+g8YEnj`C7X(5~ETw!s2%JkWIUvw2 z1QEUzq9T#9i;_(|h*x`S{-@mud}F3hDl0d>pIrEPb!$EEo~P&Ug*BX?`>`Z1%^1Fg zpG+qs`oRa6DFyLe)|lH!U}niE^B92nUx1`INM^U65SZG_1o(MCqM@mMa!(vjGmS~y(~%p$ zH;$bLUL!zoO$faw#74lQPuHq4KFXsiJ}5I84HA$)zpF8w4#U>h{|44QHGHC5G+U_K zFz3%kQQ?S*eOd_h(OWWBbt2OJ(U8_rh~M-MwM$b*t@sL&DK8b|E;|J4uli;#Nih74qXn8`kRFlt@Y z9eFq3%8zw%C{^{QP^s*xB9&FOpYL(gKlr8m*)98S-hrNN#mv!1EHAZfbS|)QIB*>+ c)=ob$Tp9KVQk_EGO`G>mSy#YthH)IwPj7Z>R{#J2 literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_smpl_onent.ncs b/_module/ncs/spawn_smpl_onent.ncs new file mode 100644 index 0000000000000000000000000000000000000000..2bafc7b10690eb74f64353f028820a480ce9f928 GIT binary patch literal 1007 zcmcIiO-sW-5S=EQT2N~dLB+2qir^QD2lb{F#fnHF;=xNu($yAX5;mzHM}LQZ#=qg+ zqo7C+JrwHftdX|Rg9iiIW#7JeJM(7FiDZsr&gux$z8{WFz*DF9ug;gMW(*(w(G-LZOxEe4LN6vj<$Ifl!bGz#P zKAbfGCZStR%d)JD?nZT)Py;0m7_+3>33o)|awoAoQHzrF9tHPwI(!m2Ph`6kBwXA% zeg|z=(XdF2dCknpC$E?;H$(={k1WeB`_3a5sT}flbWN89Db;c@E(HgII~}syT6f~a z&r1@;6vKL;lEwT`u$N9snA4&z>s9urSigtgNlB)bW=aM>%aY)Uus1Y=dXk?f^mMI& zcRBp0XC!NxSjyjgOx?mMs8_? zsq#wQ=M}0!xz+1C#Z8>?>m4e@b=vk9S275$Sy_36#Y22TphDhO))|Lt14!B+Q literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_smpl_onext.ncs b/_module/ncs/spawn_smpl_onext.ncs new file mode 100644 index 0000000000000000000000000000000000000000..97ea11d0a7d9d7e6aaff918b01a1acd8724bebf4 GIT binary patch literal 334 zcmeZs4ps;=)H85mU|{rb@&^|rmgmI>I2U{7ITocR5}{j} a8RSQZ4`C+aGU*N29p=ms)nM|A0s{b(?t38s literal 0 HcmV?d00001 diff --git a/_module/ncs/spawn_used_corps.ncs b/_module/ncs/spawn_used_corps.ncs new file mode 100644 index 0000000000000000000000000000000000000000..7b93683c6b9bb807170fc9ba44a358be74006373 GIT binary patch literal 104 zcmeZs4ps;=)H85mU|`6Q0}>1z3JgqatPG4^42+Eb|NsBNz#`26r2ps$fMkJyMHWQL ov#{9DoH+|fHUNc~fg(Jt3=A5~3JlC3ZGRY8fLt~vh+YK-08OPAJOBUy literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_cc_activ.ncs b/_module/ncs/spawnb_cc_activ.ncs new file mode 100644 index 0000000000000000000000000000000000000000..de4d1662e57a621adef6cef756bd631c3c2f091a GIT binary patch literal 180 zcmeZs4ps;=)H85mU|`t7#4HD-7&sIdnAliY8Mp%yi&FDSf(sJM^H|tGGOP>?W=xEX z|NsC0!N4NT0Hpr_)d_%AxTGc~mt>YDmZYXILsbBk8#A#m12r;oE69TkP=oNmMtp%9 Z@k16QqX#CHbQ!=Z7_g||fmo=(004=IFmM0> literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_cc_dactiv.ncs b/_module/ncs/spawnb_cc_dactiv.ncs new file mode 100644 index 0000000000000000000000000000000000000000..77e80d779e4145ed17643fa1cd184642a9a57798 GIT binary patch literal 164 zcmeZs4ps;=)H85mU|?9n#4HD-7&sIdSXddj0}_i;^GbpX63g>g*g)c}3=C#WKp6qB zm`iG6a!F=cVo7QWGvojN|9^lqF&HzkFoV=`E69T=H878n5v1S?1B)~RNTDo9Mh{FX R=`ujnV^P5aR{ckT0RSCwk4+WUKlRU^o1r}xy1y=h5rdAdq!-z$O4eSa5m(tt< b-~5!)oYdfg#PYmiRtAPo3_!w|3A-KurZzhk literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_cc_nodump.ncs b/_module/ncs/spawnb_cc_nodump.ncs new file mode 100644 index 0000000000000000000000000000000000000000..58bdbf95e637b4c2a649df0c9c5afd211df9be9a GIT binary patch literal 209 zcmeZs4ps;=)H85mU|_hHD-7&sIdSXdc&D-7Zba+2ed^NR|KQ-K29P=TcU+$1dq zs9HHj#{d8SzhPjJW&qNEv>Cwk4+WUKlRU^o1r}x?$p}{a1Ey9MAp?{G>PD4e1G_@N fr8Kv|H$SB`CpEYru{^Jsm4V?C1CTIg!mbAZrcgT; literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_cc_notrck.ncs b/_module/ncs/spawnb_cc_notrck.ncs new file mode 100644 index 0000000000000000000000000000000000000000..d044ddefd4c72a653b73eb4c38c7cec499476dfe GIT binary patch literal 210 zcmeZs4ps;=)H85mU|_h!#4HD-7&sIdSXdc&D-7Zba+2ed^NR|KQ-K29P=TcU+$1dq zs9HHj#{d8SzhPjJW&qNEv>Cwk4+WUKlRU^o1r}x?$p}{a1Ey9MAp?{G>PD4e1G_>n gq$n{t+c!U@G$%E?W=xEX z|NsC0!N4NT0Hpsgu`xsWKuHNkR7s#A{9x_Q`K5U!E~!bS=}4-LnOK;ChB9(1$b$@5 hgYdv6e1IDNMHVEZ2PTzt8NezSu&CexJLZQ10{}9lJUajY literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_cc_nsdlog.ncs b/_module/ncs/spawnb_cc_nsdlog.ncs new file mode 100644 index 0000000000000000000000000000000000000000..f5d87036dbf5268a5b4aee0578ace9ad2dc456bc GIT binary patch literal 208 zcmeZs4ps;=)H85mU|_hw#4HD-7&sIdnAliY8Mp%yi&FDSf(sJM^H|tGGOP>?W=xEX z|NsC0!N4NT0Hpsgu`xsWKuHNkR7s#A{9x@asX2+2E~!bS=}4-LnOK;ChB9(1$b$@5 hgYdv6e1IDNMHVEZ2PTzt8NezSu&CexJLZQ10{|!~JRtx8 literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_cc_sclog.ncs b/_module/ncs/spawnb_cc_sclog.ncs new file mode 100644 index 0000000000000000000000000000000000000000..08533e593f1aa89550e919e64351449100c27965 GIT binary patch literal 208 zcmeZs4ps;=)H85mU|_hw#4HD-7&sIdnAliY8Mp%yi&FDSf(sJM^H|tGGOP>?W=xEX z|NsC0!N4NT0Hpsgu`xsWKuHNkR7s#A{9x_Q`K5U!E~!bS=}4-LnOK-XrgAIDgD5pH h4`RXxsPSK9K{9$^Qc0Hqq8@AqstO*kV}2+w001&qJURdX literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_cc_sdlog.ncs b/_module/ncs/spawnb_cc_sdlog.ncs new file mode 100644 index 0000000000000000000000000000000000000000..718c9dcad8cd7327abb60b0e5ff925544a09db27 GIT binary patch literal 208 zcmeZs4ps;=)H85mU|_hw#4HD-7&sIdnAliY8Mp%yi&FDSf(sJM^H|tGGOP>?W=xEX z|NsC0!N4NT0Hpsgu`xsWKuHNkR7s#A{9x@asX2+2E~!bS=}4-LnOK-XrgAIDgD5pH h4`RXxsPSK9K{9$^Qc0Hqq8@AqstO*kV}2+w001Z4JRkr7 literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_cc_trck.ncs b/_module/ncs/spawnb_cc_trck.ncs new file mode 100644 index 0000000000000000000000000000000000000000..b616030cf98cb28b531401b6f8b35bed5ea76a8d GIT binary patch literal 210 zcmeZs4ps;=)H85mU|_h!#4HD-7&sIdSXdc&D-7Zba+2ed^NR|KQ-K29P=TcU+$1dq zs9HHj#{d8SzhPjJW&qNEv>Cwk4+WUKlRU^o1r}xy1y=h5rdAdq!-z$O4eScRkfOxo cY~TEp(wx-bg2eK?Vpax*PYgi9mq63d4{6)y;kl+CXnaNxMptcACbldz5(4=8zD2kmu_Y4 zF1MMq$E53a91oGE6gUz09se#^yq{_{RyWeMyrANmWyszzq||CW$ewR*q}}Y_s2_}4 zEc?>&n_uwv6%QbWcQ0fn_dYeA&?sW;P~XQO5x%Oik=0gt4EJ(LtV3?OP;y!iU(-5MEvCrh7p*I&TrCh3rj!K`v5MATC8mO>8P)%F1sEAgnyjg*_W5cNA`Er?Je z&PQ#Ds3##bk42!Y0psM@tJ<56F|hoK!&kdAWbXI>JR+?BfTz#ZCkngan6gW;Jq{uV znx&w{3V8JCl1{r<{6tayH#eTcNI#(wyfZVGd1PckFtQTpNc&|Oh!SOsHo_z}u#Xam{ zp-!f)SlJvBlKJMFnar*h(e3fk^b!!S2cWeRL29Kje4fVngN4BQ>sGW0FfuMPX@mF28y*WN_p%T z{*o+$3j8yppCB{dg!h-;9497?4HM@S`PN(fG~K^`*tKHUS-{Dn**Wme{4RGMUD)dW z(NykELynqXT19P3WF0eg?M#RLQJ)5U>Bbv1U)(195%xIwCM&F)7nyZs*~{+uA0Uy9 AtpET3 literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_sc_dactiv.ncs b/_module/ncs/spawnb_sc_dactiv.ncs new file mode 100644 index 0000000000000000000000000000000000000000..9859011f47ad0f01c64a0f3eeb5ad9f94ad69a19 GIT binary patch literal 487 zcmZ{gK}*9h7>3`ZNfCxa!P`J`R*-p7@FY$=j={idNwXXTZA)9!-{pVVZ`ehK;to3u zy5x&VDSlyqW^=|++JBGXV6u1-;`>*|^cr=O0%c8Q3HBGaG=)pZ# z1a!WEG=ECl;}ekS;1q-}oiUcc9BqupE~YcmrOoPbpH@2!;+nc~O DF=v>H literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_sc_disp.ncs b/_module/ncs/spawnb_sc_disp.ncs new file mode 100644 index 0000000000000000000000000000000000000000..7dc5ec1ff250e26d451b5cbfb257ed4df52c5df4 GIT binary patch literal 299 zcmeZs4ps;=)H85mU|`giV*mmU1qLQI7FGuCfW)HIyprI8#PU2AHjoS}1A`e8Bjf-7 z|9>#BNHYNGKTK?_42)h3Xo9Rj?d)msZaInR#mpe}9~gil45sLsLF%~D;zLq%3vv=m zQo%~!U{$Ik0CE5j2*`p+O%`S#$p|4~+F&#*0}~&M0s{*RNF~r(b|#{AgWU<$ZQlUZ K4fg2=1qJ|YmrdIM literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_sc_dump.ncs b/_module/ncs/spawnb_sc_dump.ncs new file mode 100644 index 0000000000000000000000000000000000000000..798338750bea94c0f895004463c483efa0e271de GIT binary patch literal 161 zcmeZs4ps;=)H85mU|?7%2P7Cc6c|`o8F(uU;tO(;2I^!4i>d(?iv|}Ymggy?l;##>=A|p7<|QWOq^7VkFc~u{FfcO$ m_55LA0jd*l0jluLPbtkw1?wngWnlQk03^(r!6yGvU;qH>Fe)zq literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_sc_nodump.ncs b/_module/ncs/spawnb_sc_nodump.ncs new file mode 100644 index 0000000000000000000000000000000000000000..668b2fe614fcc257fa4101daa5e146e6037ab4c4 GIT binary patch literal 162 zcmeZs4ps;=)H85mU|?7z2P7Cc6c|`o8F(uU;tO(;25AM0ssj~^1s5ci=P9I=<`!h;r7NUl7AGd25AM0Y5*0B2Nxuk=P8sFB_?NQ=A|p7WELkT<)o&tGB6o4DljlJ n0(JdiU;(NW3<0U}%}*)KNd;>vW@TXb!~i7BnZbttQD6W7c#JDy literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_sc_nsdlog.ncs b/_module/ncs/spawnb_sc_nsdlog.ncs new file mode 100644 index 0000000000000000000000000000000000000000..fdf1634856ac77b8de45638538ff893997ba8303 GIT binary patch literal 115 zcmeZs4ps;=)H85mU|=Yg0}>1z3Jff4AO5`gM zn$FDl|Ns9lAQ=X8W*{j8mRCptDNxACPfyRxOIJwAEKW?yNljs8U@~TuW&rB=qrd1z3Jff4AO1z3Jff4AO1z3Jff4AO%!0BZQ7zyJW_ CBpf^d literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnb_sc_trck.ncs b/_module/ncs/spawnb_sc_trck.ncs new file mode 100644 index 0000000000000000000000000000000000000000..ba787d5b26d344b0c7a8e14b8a8998a84a41a846 GIT binary patch literal 163 zcmeZs4ps;=)H85mU|?7*2P7Cc6c|`o8F(uU;tO(;2I^!4i>d<^iv<@Xmggyy6eT8SXXd3Vq~;|i<)o&tGB6o4DljlJ n0yX_%U;!!=3;`+e%}*)KNd@aEW@TXb!~i7BnZaiNQD6W7MdT{- literal 0 HcmV?d00001 diff --git a/_module/ncs/spawnbanner.ncs b/_module/ncs/spawnbanner.ncs new file mode 100644 index 0000000000000000000000000000000000000000..c318226019d9b9f53ba2c1d8e2c10f7a5d4847c6 GIT binary patch literal 1508 zcma)6O=}ZT6n*pF%qU5rp>$Eu>R?=2X)RW8WuqwwwMY{}L17r}v=(YwnqYr`;NHDI zK>P!K{05f_?(8CBg)Smy(M2$xckU!k#TF3VuXRD; zcQ#PkxCU>I#51LYvFRZyjZD*cdO-lVYyabsk*);?I|^{ zhZ#@XeIKR!42Yrun#w3ZQ=6vO4gmSeZnR%7MfG~TmoHL}uiCeU`_W!pZ_-SsLpm*F zk^<@EteoaM-p*@$pV+Si|xTACWj?9FX5fH&Fb9<|yCSBBzaEp3m5^@KhmHbEVnmAP!kk84G=s#4<5@ z2|>miPj>dV>YIU3Xn0D`JKAUukB?`9seGmqDZY?VHi6W|PND)~%cK|*uIOWdgX+9O zT8{w<2VfY^P`PoL>LQ)dG&ni4lf@A(FcKunJ#G&1EKH4 z(c|XUGw8g|ba3YMrX^KYQqZvtCkQdIlOJ?BjA*<03nGuAEg;aJuSlei4oEn zvtuu8ZyI7C`DKHHebCR`>-}D1SbLU6&($XqyJ6_kBH0cHan$`ZIJ!(H-Af-)l>g1J ze2j&VAkt2#y%(IZOFYA|>kgy@5^g^=f%sqros={7{y*Kcy+~h*&L`F^cSTb3v7}1< bx05q!SwptJx7=#ET3cKl+;B;NZlL}EjlBSs literal 0 HcmV?d00001 diff --git a/_module/nss/messagewarning.nss b/_module/nss/messagewarning.nss index 2c4146a..63e5e57 100644 --- a/_module/nss/messagewarning.nss +++ b/_module/nss/messagewarning.nss @@ -19,6 +19,6 @@ DelayCommand(4.0, FloatingTextStringOnCreature("Speak with the Master of the Voi DelayCommand(5.0, FloatingTextStringOnCreature("If you like playing here, play by the rules, or you won't be permitted to play here.", oPC)); -DelayCommand(6.0, FloatingTextStringOnCreature("WARNING! Promoting other Modules or Servers at anytime will get you banned, instantly!", oPC)); +//DelayCommand(6.0, FloatingTextStringOnCreature("WARNING! Promoting other Modules or Servers at anytime will get you banned, instantly!", oPC)); } diff --git a/_module/nss/spawn__history.nss b/_module/nss/spawn__history.nss new file mode 100644 index 0000000..81496a3 --- /dev/null +++ b/_module/nss/spawn__history.nss @@ -0,0 +1,544 @@ +// +// +// NESS +// Version 8.1.3 +// Spawn History +// +// +// Neshke Narovken (Original Author) +// +// Cereborn (Maintainer) +// +//******************************************************************* +// +// History: +// +// +++ Start Version 7.0 +// +// --/--/-- Neshke Created +// +// +// +++ Start Version 7.0.1 +// +// 12/03/02 Cereborn Added DanielleB's merchant-based loot tables +// 12/12/02 Cereborn Added area-wide count of currently spawned +// creatures +// 12/31/02 Cereborn Added LT subflags A, B, and C for specifying +// percentage chances of receiving 1, 2, or 3 +// loot items. +// 01/01/03 Cereborn Added SX flag for dim returns suppression. +// +// +++ Start Version 7.0.2 +// +// 01/07/03 Cereborn Added NESS_ActivateSpawn(), +// NESS_DeactivateSpawn, NESS_GetSpawnByID(), +// NESS_ActivateSpawnByID(), NESS_ForceProcess() +// NESS_DeactivateSpawnByID() and +// NESS_TrackModuleSpawns(). +// Modified so that an activated spawn is processed +// immediately instead of waiting for the next +// process tick when using SPxx +// Moved ReportSpawns and TrackModuleSpawns +// to spawn_functions from spawn_main; modified +// spawn_main to call TrackModuleSpawns() if +// enabled, removing the need for placing +// in each area heartbeat script +// +// 01/08/03 Cereborn Fixed bug preventing initial flag processing +// when using SPxx. +// Added new deactivate spawn (DS) condition +// (6) which deactivates a spawn whenever spawn +// count reaches spawn number. This is similar +// to DS1, except that DS1 is based on number +// of children *ever* spawned, so once +// deactivated can never be reactivated, while +// DS6 is based on current child count, allowing +// the spawn to be re-activated if 1 or more of +// it's children have been killed or despawned +// 01/10/03 Cereborn Prevent despawning creatures when possessed +// by a DM. (the code was attempting to do so +// already but due to a Bioware bug it wasn't +// working) +// 01/11/03 Cereborn Added I subflag to SU to check each child's +// location individually instead of the spawn's +// location +// 01/17/03 Cereborn Added force process of spawns when PCs +// re-arrive id deactivated by PC flag +// 01/18/03 Cereborn Added new type (3) to PL and subflag P +// Added P subflag to SD. +// 01/20/03 Cereborn Force process on deactivate +// Added NESS_IsModuleSpawnTracking() +// +// +++ Start Version 7.0.3 +// +// 01/22/03 Cereborn Bug fix: Initialize module spawn count to +// 0 to fix bug with loading from saved games +// 01/24/03 Cereborn Added NESS_DumpModuleSpawns() and +// NESS_IsModuleSpawnDumping(). When spawn +// dumping is enabled, each area with active +// spawns reports its spawn count each HB +// +// +// +++ Start Version ALFA 1.0 +// +// +// 02/05/03 - 03/21/03 +// +// Added NESS_ProcessDeadCreature(). This can be used to notify NESS that +// a spawned creature has died (typically from an onDeath event script). +// This is particularly useful when using larger SPxx values and the CD +// flag, since without notification it can take a long time for NESS to +// discover that the spawned creature has died and set up the lootable +// corpse. +// +// Added O(ffset) subflag to the SP flag. NESS now processes all spawns on +// the first heartbeat, and then spawns are be processed on heartbeat +// 1 + offset + (processRate * N). For example, SP3 gets processed on +// heartbeats 1, 4, 7, 10, etc.... while SP3O1 gets processed on heartbeats +// 1, 5, 8, 11..., and so on. This should be used to spread out heartbeats +// within an area. +// +// NESS no longer does any timing based on counted heartbeats. All timings +// are now based on the clock. A new file, spawn_timefuncs, contains +// functions for converting the game clock to real seconds for use in NESS +// timings. +// +// When spawns despawn due to using the PC flag (and if the R subflag is +// not specified) the despawning creature resrefs and their locations are +// recorded, and the spawn is restored to it previous state when PCs +// re-enter the area. This prevents exploits where players intentionally +// 'pop' a zone, then leave for the PC flag's duration, to effectively +// clear an area of all obstacles until the spawn delay timer (if any) +// expires. +// +// Fixed the bug causing corpses that had been fully looted to not decay. +// +// Fixed the bug that caused corpses to *never* decay if the decay timer +// went off when the inventory was open (now a new decay timer is set). +// +// Flag parsing code cleaned up; fixed a bug that caused the default value +// for a flag to always be 1 (ignoring what was set up in spawn_cfg_global) +// +// Items marked no-drop are no longer copied onto the lootable corpses +// +// All no-drop items are explicitly destroyed (whether the CD flag is used +// or not) to working around a current Bioware memory leak. +// +// Added NESS_ReturnHome(). Call to force a NESS spawn to it's home point. +// +// Added support for RH flag on spawn camps. +// +// +++ Start Version ALFA 1.0 Patch 1 (v1.0.1) +// +// 03/29/03 +// +// A bug where spawn delays were being applied to first time spawns that +// didn't happen right away (such as triggered spawns, day/night only, +// etc.) was fixed. +// +// If a spawn has the RH flag and is respawned after being despawned due +// to the PC flag, creatures will respawn at their home point instead of +// where they were when they despawned. +// +// An errant debug statement was removed. +// +// +++ Start Version ALFA 1.0 Patch 2 (v1.0.2) +// +// 03/30/03 +// +// Fixed a bug where the number of creatures in a spawn was getting +// confused due to spawns that use the M subflag of the SN flag +// recalculating their spawn numbers when spawns deactivated due to the +// PC flag. This bug fix should eliminate the overpopulating spawns +// problem. +// +// +++ Start Version ALFA 1.0 Patch 3 (v1.0.3) +// +// 03/31/03 +// +// Fixed a bug where spawn delays could be skipped. +// +// +++ Start Version ALFA 1.0 Patch 4 (v1.0.4) +// +// 04/04/03 +// +// Fixed a bug where spawn delays were ignored on placeables. +// Fixed P subflag of SD being ignored. +// Reset spawn delay after RS-failed spawn attempt +// Set up a new spawn delay when creature killed +// +// +++ Start Version ALFA 1.0 Patch 5 (v1.0.5) +// +// 04/07/03 +// +// Fixed bug in spawn_timefuncs that resulting in incorrect conversions +// in years other than the Epoch year. +// Changed the Epoch year to 1340 to conform to the lowest date in +// the NWN engine. +// +// +++ Start Version ALFA 1.0 Patch 6 (v1.0.6) +// +// 04/08/03 +// +// Fixed bug with corpse decay and death script flags not being available +// for camp spawns when onDeath notification occurs. +// +// +++ Start Version ALFA 1.0 Patch 7 (v1.0.7) +// +// 04/27/03 +// +// Added debugging for spawn delays and spawn counts that can be +// independently enabled/disabled for each area from the spawn banner +// rod. +// +// +++ Start Version ALFA 1.1 (v1.1) +// +// 04/28/03 +// +// Fixed bug in Loot Merchant code. The original code used +// GetNearestObjectByTag() to look up loot merchants, which according to +// the documentation should never have worked for merchants not in the same +// area as the creature spawned. In reality, it stopped working (at least +// in some cases) after Bioware released version 1.29 of the game. +// +// 05/03/03 +// +// Changed distribution method used for SR flag to evenly distribute +// spawns in the spawn circle instead. The old method made the spawns +// denser near the center and rarer near the circle's edge +// +// Made SF work (again?) for placeables +// +// When the SF flag is not specified for a multi-child spawn, a random +// SF is now calcualated independently for each child +// +// 05/08/03 +// +// Added NL (No Loot) flag. This suppresses looting of player corpses. +// Only applies when using ACR 1.14 and higher +// +// 05/25/03 +// +// Fixed overspawning bug caused by changing child counts on spawns that +// had been 'saved' with potentially different counts +// +// 05/27/03 +// +// Added C (Closest) subflag to the PR (Patrol Route) flag. If C is +// specified, the spawned creature will start at the closest waypoint +// rather than the first (does not apply to T2 flagged routes(random +// traverse)). +// +// 05/30/03 +// +// Added SB (Subdual) flag. Causes creatures to be spawned in in subdual +// mode. Only applies when using ACR 1.14 and higher. +// +// +// +++ Start Version ALFA 1.2 (v1.2) +// +// 08/24/03 +// +// Removed LocationToString() function from spawn_functions, as this is +// now a Bioware function +// +// 08/25/03 +// +// Modified the way the SX flag works. First, there is now a global flag, +// nGlobalSuppressDR, in spawn_cfg_global that can be set to determine +// whether or not creatures spawn in with DR on or off when no SX flag is +// specified. The current default is for DR to *not* be suppressed, i.e., +// it will be operational. Also, the SX flag can now take a value of 0 or 1. +// If 1, DR is suppressed, if 0 DR is enabled (useful if you've set +// nGlobalSuppressDR to 1). The default if no value is specified (just SX) +// is 1 (to suppress). You can also change this default in spawn_cfg_global. +// If nGlobalSuppressDR is 1 and nSuppressDR is 0, you will get the opposite +// of the v1.1 functionality; no DR on creatures, except when the SX flag is +// present. +// +// +++ Start Version ALFA 1.2.1 (v1.2.1) +// +// 09/01/03 +// +// Fixed bug where spawn number was always being set to the number of saved +// camp spawns on PC-flag restore instead of the sum of saved camp and +// regular spawn counts. +// +// +++ Start Version ALFA 1.2.2 (v1.2.2) +// +// 09/02/03 +// +// Fixed bug introduced by last bug fix that caused overspawning! +// +// +++ Start Version ALFA 1.2.3 (v1.2.3) +// +// 09/21/03 +// +// Added EL - E(ncounter) L(evel) flag +// +// +++ Start Version ALFA 1.2.4 (v1.2.4) +// +// 10/03/03 +// +// Added I subflag to SL flag. +// +// Modified ST behavior so that spawned creatures walk to their seats +// instead of running +// +// 10/18/03 +// +// Check night / day only, day, hour, lifespan and SU before restoring +// spawns +// +// Fixed recalculate random spawn number bug where the spawn number could +// change before a despawn due to the PC flag was restored, causing the +// number of creatures thought to exist to differ from what actually got +// restored +// +// 10/19/03 +// +// Fixed SD bug; under certain cases (such as a despawn due to CL flag) +// SD was being ignored. +// +// Fixed bug where SU|I only worked if RS or SL were in use +// +// +++ Start Version ALFA 1.2.5 (v1.2.5) +// +// 10/25/03 +// +// Do a ClearAllActions() before despawning creatures. This helps prevent +// 'broken' Bioware chairs caused by despawning creatures using the ST +// flag. +// +// 10/27/03 + +// Modified the spawn_cfg_camp example to use standard BW creatures / +// placeables for the benefit of non-ALFA users. +// +// +// 11/02/03 +// +// Added a scaled encounter example. This uses the same basic methodology +// as Sareena's random wilderness spawns - an SNxx flag is given large +// enough for the largest possible spawn and then the actual number (and +// types) of creatures is determined when the spawn actually takes place. +// +// +// +++ Start Version 8.0 +// +// Given that NESS is now being supported outside the ALFA umbrella, I've +// decided to begin version numbering from 8.0 from here out. Version 8.0 +// is the immediate successor to ALFA version 1.2.5. +// +// 01/19/04 +// +// Fixed problems with naked NPC corpses that had droppable armor / +// clothing. playable race characters (humans, dwarves, elves, etc.) +// now keep a copy of whatever is in the chest slot on the original +// corpse. +// +// +// 01/21/04 +// +// Added Rn subflag to CD to specify what type of remains are left after +// corpse decay. These correspond 1 to 1 to the treasure type field for +// placeables, except for R7, which causes no loot bag to be left (loot +// destroyed when corpse decays). See the specific flag documentation +// below for the values/types of each R subflag. +// +// Added D subflag to CD to cause corpse to drop wielded weapons on the +// ground. Note that droppable flag on weapon still takes precedence - +// non-droppable wielded weapons will not be dropped. +// +// Delete armor/clothing from corpse if looted. +// +// Added scripts for lootable corpse onOpen, onClosed, onUsed, and +// onDisturbed events (renamed with a spawn_ prefix). +// +// Added a lootable corpse placeable for each remains type; each has the +// correct event scripts attached. +// +// 01/22/04 +// +// Initialize global defaults and flags on first area heartbeat, not first +// heartbeat with PCs present. +// +// Use DelayCommand(0.0, ...) to give each spawn flag initialization +// function its own command queue (allowing many more spawn points before +// TMIs at initialization occur). +// +// 01/23/04 +// +// Fixed bug with EE flag. Spawned creature was not walking to spawn point +// after entrance. +// +// Fixed bug with spawn in effect when using EE. Spawn in effect now happens +// at the entrance point. +// +// Added support for ALFA-specific flags as Custom Flags (following the CF +// flag. Parsing and processing of custom flags can now be done by +// modifying spawn_cfg_cusflg. This file contains 2 functions: +// ParseCustomFlags() and SetupCustomFlags(). ParseCustomFlags is called +// with whatever flags follow the CF_ flag (when flags for the spawn are +// being initialized. Typically, flags are parsed and there values are +// written to the spawn object. SetupCustomFlags() is called when a +// creature is actually spawned (typically flags are copied from the spawn +// object to the creature (spawned) object. The processing of ALFA-specific +// flags are included in this file as an example. +// +// +// +++ Start Version 8.1 +// +// 1/29/04 +// +// Put better sounds for closing / opening corpses. Changed the names of +// the onOpen and onClose event scripts for corpses, and updated the corpse +// placeables to use those. +// +// 2/15/04 +// +// Fixed bugs in spawn_cfg_cusflag that caused flag values to be lost if +// specified as normal flags rather than custom flags (only affected the +// ALFA custom flags). +// +// 3/8/04 +// +// 'Home' is now either the place a creature spawned in, or the place it +// *would have spawned in* if there wasn't an alternate specified by the EE +// flag. Hopefully, this restores it to its original, correct behavior. +// +// The initial delay subflag of IS should now work correctly. +// +// The corpse remains type default value was using one variable name in +// spawn_defaults to set it and a different one in spawn_functions to +// retrieve the value, which resulted in the default not working. This has +// been fixed. +// +// Added 2 new Patrol Route flags at Danmar's request. They are RPn (for +// random pause and RRn for Random Route. These allow for some +// randomization of patrol routes. The RRn flag sets the percentage chance +// that the next stop in a route will actually be gone to (otherwise it's +// skipped. RPn specifies a range to randomly choose an additional pause +// amount which is added to the value specified by PSn. +// +// At EPOlson's request, NESS will now look for a local string variable on +// the spawn waypoint named "NESS" for spawn flags. If no string is found +// (or if it does not start with "SP") then the flags specified in the +// waypoint name are used (just like it used to). +// +// NESS now has full support for using pseudo-heartbeats as an alternative +// to the standard area heartbeats. For those who wish to use this, remove +// Spawn() from your area heartbeat script (or, if spawn_sample_hb is your +// area haertbeat script, just remove that script from your areas' On +// Heartbeat slots) and call Spawn_OnAreaEnter() and Spawn_OnAreaExit() +// from your area On Enter and On Exit scripts respectively. Again, if you +// do no currrent have On Enter and or On Exit scripts in use for your areas +// you can use spawn_smpl_onent and spawn_smpl_onext which are provided with +// this release. +// +// Spawn_OnAreaEnter() takes up to 3 optional arguments. The first is the +// name of the script you want called when the pseudo-heartbeat happens. +// By default, spawn_sample_hb is called (which in turn just calls Spawn(). +// You can put any script you like there, but remember that it will only be +// when PCs or NESS creatures are in the area. The second argument is the +// time between pseudo-heartbeats. The default is 6.0 seconds, which will +// result in Spawn() being called about as often as when you used regular +// area heartbeats. If you find you can get away with 10.0 seconds (that's +// what I'm currently using) you've reduced your NESS processing by 40%... +// The 3rd argument specifies a delay for the first heartbeat after a PC or +// PCs enter the area. In areas where there aren't a lot of spawns, and +// you are spawning in sight (like NPCs in a store) no delay is ideal. For +// outdoor areas with a lot of spawns that spawn away from the player, a +// delay helps prevent a spawn lag spike for the entering player. The +// default is 0.0 seconds (no delay). I'm currently delaying 3 seconds on +// all outdoor and underground areas, but no delay on indoor areas, by +// the following in my On Enter script: +// +// if ( GetIsAreaAboveGround( oCurrArea ) && +// ! GetIsAreaNatural( oCurrArea ) ) +// { +// // Indoors - no delay on the first HB +// Spawn_OnAreaEnter( "spawn_sample_hb", 10.0 ); +// } +// +// else +// { +// // Outdoors or underground - do a 3 second delay on the first HB +// Spawn_OnAreaEnter( "spawn_sample_hb", 10.0, 3.0 ); +// } +// +// Thanks to Mentha Arvensis who provided the starting scripts for pseudo- +// heartbeats. +// +// +// +++ Start Version 8.1.1 +// +// 2/1/04 - 5/28/04 +// +// +// NESS now allows you to specify the spawn tag by adding a variable, named +// "NESS_TAG", on the spawn waypoint. If this variable exists, it will use +// it's value as the spawn tag instead of waypoint's tag. +// +// Always retrieve spawn tag and spawn name from the variables written on +// the the spawn instead of using GetTag() an GetName(). This is necessary +// to support use of the "NESS" and "NESS_TAG" variables. +// +// Added a global flag, bLeftoversForceProcessing, to indicate whether or +// not spawned creatures in an area should cause NESS processing when no +// PCs are in the area. Default is TRUE (they do) which is how things +// worked before the flag was added. The flag essentially gives you the +// ability to suppress that behavior. To do so, set +// bLeftoversForceProcessing to FALSE in your spawn_cfg_global script. +// +// Added some bullet-proofing to check that spawn waypoints remain valid +// objects. +// +// Turned off ALL NESS processing of creatures that are DM possessed. +// +// Make sure a patrol waypoint actually exists before attempting to move to +// it. +// +// Normal Camp behavior is to despawn when all creatures in the camp have +// been destroyed. However, they were also despawning if there were never +// any creatures in the camp to begin with (a placeable-only camp). This +// was fixed. +// +// Loot/corpse decay was not working properly on camps, as the changes to +// this system to the regular spawns was never propagated to the camps. +// Fixed. +// +// +++ Start Version 8.1.2 +// +// 5/30/04 +// +// Advance routes to their next stop when patrol waypoints are missing +// +// +++ Start Version 8.1.3 +// +// 7/04/04 +// +// Write a local var onto entering PCs which can be checked on area exit +// to maintain a proper PC count. This is necessary because GetIsPC() does +// not work when a PC logs out. +// +// Don't call NESS_CleanInventory on camp placeables when a camp is +// destroyed, as the placeables may remain for a while. +// +// 7/05/04 +// +// Added code to detect stalled patrol routes and jump the creature to it's +// intended destination. This can be turned off by setting +// CheckForStuckPatrols global variable to FALSE. +// +// Write oSpawn onto the camp object "before" the call to SetCampSpawn() so +// it is available to that function. +// +// Added flag to turn off corpse destruction when CD is not specified. +// +// Added additional on area enter script with indoor/outdoor checking to +// determine if an initial delay should be used. +// +// 7/06/04 +// +// Added check to randomWalk for ACTION_CASTSPELL to avoid interruptions diff --git a/_module/nss/spawn__readme.nss b/_module/nss/spawn__readme.nss new file mode 100644 index 0000000..d2e4a46 --- /dev/null +++ b/_module/nss/spawn__readme.nss @@ -0,0 +1,694 @@ +// +// +// NESS +// Version 8.1.2 +// Spawn Readme +// +// +// Neshke Narovken (Original Author) +// +// Cereborn (Maintainer) +// +//******************************************************************* +// +// +// 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_ +// +// 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 SP1 to SP99 heartbeats +// : Default is SP1 Heartbeat : ~6 Seconds +// : SP00 Defaults to SP01 +// : Optional Flag: On +// : Offset processing spawn from first process by n heartbeats. +// : Used to stagger spawn processing within an area +// +// ISn|Dn +// : Initial State +// : Type 0 : Inactive +// : Type 1 : Default : Active +// : Optional Flag: D000 +// : Delay Initial Spawn D000 Minutes +// +// IDn +// : SpawnID +// : Sets LocalInt "SpawnID" to SpawnID +// : On Spawn Waypoint Object +// +// FTn +// : Flag Table +// : Use Flags from Table FT00 +// : Flags are Defined in 'spawn_cfg_flag' +// +// +// SNn|Mn +// : Spawn Number +// : Maintains a Spawn of SN00 to SN99 Children +// : Despawns Extra Children +// : Optional Flag: M00 +// : Minimum Children +// : Will Randomly Spawn between M00 and SN00 Children +// +// SA|n|Mn +// : Spawn All at Once +// : Default is Spawn One Child per Cycle +// : Optional Flag: 00 +// : Spawn 00 Children per Cycle +// : Optional Flag: M00 +// : Spawn Minimum M00 per Cycle +// +// SRn|Mn|P +// : Spawn Radius +// : Randomly Spawns Children in a +// : Location SR00 to SR99 Meters from Waypoint +// : Optional Flag: M00 +// : Minimum Radius, M00 to SR99 Meters +// : Optional Flag: P +// : Spawn Center is Near a Random PC in Area +// +// SDn|Mn|P +// : Spawn Delay +// : Delay SD00 to SD99 Minutes between Spawns +// : Optional Flag: M00 +// : Minimum Delay, M00 to SD99 Minutes +// : Optional Flag: P +// : This flag sets up a spawn period, whereas the default spawn delay +// : specifies a spacing between spawns. +// : This is particularly useful with PL3 (keep the times the same on +// : each) it will cause the placeable to refresh if alive or respawn +// : if not on a regular schedule. Note that if the P subflag is used, +// : the M subflag is ignored. +// +// +// CLn|Mn +// : Child Lifespan +// : Child will Despawn after CL00 Minutes +// : Optional Flag: M00 +// : Child will Despawn after M00 to CL00 Minutes +// +// DYn|Tn +// : Spawn Day +// : Spawn Only on Day DY00 to DY28 +// : Children are Despawned during Invalid Days +// : Optional Flag: T00 +// : Spawn from Day DY00 to Day T00 +// +// HRn|Tn +// : Spawn Hour +// : Spawn Only during Hour HR00 to HR24 +// : Children are Despawned during Invalid Hours +// : Optional Flag: T00 +// : Spawn from Hour HR00 to Hour T00 +// +// DO|D +// : Day Only +// : Only Spawns at Day +// : Optional Flag: D +// : Despawn Children at Nightfall +// +// NO|D +// : Night Only +// : Only Spawns at Night +// : Optional Flag: D +// : Despawn Children at Daybreak +// +// RW|Rn +// : Random Walk +// : Children Wander Randomly +// : Optional Flag: R00 +// : WARNING: This is Resource Intensive!! +// : Wander Range, R00 to R99 Meters +// +// PC|n|R +// : PC Check +// : Only Spawn Children if PCs are in Area +// : Children are Despawned if no PCs in Area +// : Optional Flag: PC00 +// : Depawn if no PCs in Area for PC00 Minutes +// : Optional Flag: R +// : Reset Spawn Point if no PCs are Present +// +// RGn|Mn|Cn +// : Random Gold +// : Generates Random Amount of Gold on Children +// : From RG000 to RG999 Gold +// : Optional Flag: M00 +// : Minimum Gold Amount +// : Optional Flag: C00 +// : Gold Chance C00% to C99% +// : Default 100% chance +// +// SF +// : Spawn Facing +// : Set Facing of Children to Match Waypoint +// : Default Random Facing +// +// SUn|In +// : Spawn Unseen +// : Only Spawn if PCs are not within SU00 to SU99 Meters +// : Optional flag: I00 +// : Use the location of each individual child to determine if that +// : child can spawn, instead of using to location of the spawn itself. +// : If using SR or SL|R, I00 to I99 additional random locations will be +// : attempted +// +// FXn|Dn +// : Spawn Effect +// : Spawn in with Effect FX001 to FX999 +// : Effects are Defined in 'spawn_cfg_fxsp' +// : Optional Flag: D000 +// : Despawn with Effect D001 to D999 +// +// PRn|Tn|C +// : Patrol Route +// : Assign Waypoints Route PR00 to PR99 +// : Optional Flag: T0 +// : Route Type +// : 0 - Sequential +// : 1 - Circular +// : 2 - Random +// : 3 - Walk Once/Despawn +// : Optional Flag C +// : Start at closest waypoint. Does not apply to T2 (random) +// : +// : Route Name: Variable +// : Route Tag: PR00_SN00_PS000_RN_FC_DO_NO_SC000 +// : +// : PR - Route Number 00 to 99 +// : SN - Stop Number 00 to 99 +// : PS - Pause 000 to maxint seconds at Stop +// : RP - Random additional amount (0 - maxint) added to PS +// : RN - Run to Stop +// : RR - Percentage chance a Stop will be visited (skipped otherwise) +// : SF - Face the Waypoint Direction +// : DO - Only Stop here during the Day +// : NO - Only Stop here during the Night +// : SC - Run script 000 to 999 +// : Scripts are Defined in 'spawn_sc_patrol' +// +// EEn|Rn +// : Entrance/Exit +// : Enter and Exit at Waypoint EE00 +// : Optional Flag: R +// : Choose Random Entrance Exit +// : from R00 to EE00 +// : +// : Entrance/Exit Name: Variable +// : Entrance/Exit Tag: EE00 +// +// EXn|Rn +// : Exit +// : Exit at Waypoint EX00 +// : Optional Flag: R +// : Choose Random Exit +// : from R00 to EX00 +// : +// : Exit Name: Variable +// : Exit Tag: EX00 +// +// PLn|Tn|Pn +// : Placeable Object +// : Spawns a Placeable Object with Behavior +// : Behavior 0: Default Behavior +// : Behavior 1: Despawn if Empty +// : Behavior 2: Refill if Empty (after spawn delay minutes!) +// : Behavior 3: Refresh (despawn/respawn) every P000 minutes; default +// : (if no Pn specified) is 60 minutes +// : Optional Flag: T00 +// : Trap Disabled Chance +// : 00% to 99% chance of Trap Disabled +// : Trap must already be part of Placeable's Template +// : Default 100% Chance Trap is Disabled +// : Optional Flag: P00 +// : Refresh period (in minutes) +// +// SG +// : Spawn Group +// : Spawn Children from Group +// : Waypoint Tag is Defined Group +// : Groups are Defined in 'spawn_cfg_group' +// +// CDn|Tn|Rn|D +// : Corpse Decay +// : Decay Corpse after CD000 to CD999 Seconds +// : Default No Corpse, Standard Loot Bag +// : Optional Flag: T +// : Corpse Inventory Type +// : Type 0: Inventory Items +// : Type 1: Inventory & Equipped Items +// : Type 2: Inventory Items, if PC Killed +// : Type 3: Inventory & Equipped Items, if PC Killed +// : Optional Flag: R +// : Remains Type +// : Type 0: Loot bag +// : Type 1: Body +// : Type 2: Bones +// : Type 3: Potion +// : Type 4: Pouch +// : Type 5: Scroll +// : Type 6: Treasure +// : Type 7: None (destroy loot on decay) +// : Optional Flag: D +// : Drop wielded weapons +// +// LTn|An|Bn|Cn +// : Loot Table +// : Spawn Loot on Children from Table LT000 to LT999 +// : Loot Tables are Defined in 'spawn_cfg_loot' +// : LT500 to LT999 currently reserved for merchant-based +// : loot tables +// : Optional Flag: A000 +// : When using merchant-based loot tables, the percentage chance that +// : only 1 item will spawn. Default is 50%. Values over 100% are truncated +// : to 100% +// : Optional Flag: B000 +// : When using merchant-based loot tables, the percentage chance that +// : 2 items will spawn. Default is 15%. Values over 100% are truncated +// : to 100% +// : Optional Flag: C000 +// : When using merchant-based loot tables, the percentage chance that +// : 3 items will spawn. Default is 05%. Values over 100% are truncated +// : to 100% +// +// DSn|Sn +// : Deactivate Spawn +// : Deactivate Spawn based on Condition +// : Type 0: Deactivate if all Children are Dead +// : Type 1: Deactivate if Spawn Number has been Spawned +// : Type 2: Deactive Spawn until all Children are Dead +// : Type 3: Deactivate Spawn after DI00 Children +// : Type 4: Deactivate Spawn after DI00 Minutes +// : Type 5: Deactivate Spawn after DI00 Cycles +// : Type 6: Deactivate when Spawn Count == Spawn Number +// : Optional Flag: S000 +// : Run Script 000 to 999 when Spawn Deactivated +// : Scripts are Defined in 'spawn_sc_deactiv' +// : +// : Can Reactivate by Manually Calling: +// : SetLocalInt(oSpawn, "SpawnDeactivated", FALSE); +// +// DIn +// : Deactivation Information +// +// CM|Dn +// : Spawn Camp +// : Spawns Camp of Creatures and Placeables +// : Waypoint Tag is Defined Camp +// : Despawns Camp when all Children Dead +// : Camps are Defined in 'spawn_cfg_camp' +// : Optional Flag: D000 +// : Placeables Decay 000 Seconds after Camp Despawn +// : +// : Camp Children Flags: +// : +// : RW : Random Walk +// : SF : Spawn Facing Camp +// : SG : Spawn Group +// : LT00 : Loot Table +// : CD000|T0 : Corpse Decay +// : PL0|T00 : Placeable Type +// : Placeable Trap Disabled +// +// SSn|Dn +// : Spawn Script +// : Run Script 001 to 999 on Spawn +// : Scripts are Defined in 'spawn_sc_spawn' +// : Optional Flag: D000 +// : Run Script 001 to 999 on Despawn +// +// DTn +// : Death Script +// : Run Script 001 to 999 on Death +// : Scripts are Defined in 'spawn_sc_death' +// +// CPn|Rn +// : Spawn Check PCs +// : Check Custom Code to see if Spawn Proceeds +// : Custom Code is Defined in 'spawn_chk_pcs' +// : Optional Flag: R00 +// : Check all PCs in Radius R00 +// : Default Check all PCs in Area +// +// CCn +// : Spawn Check Custom +// : Check Custom Code to see if Spawn Proceeds +// : Custom Code is Defined in 'spawn_chk_custom' +// +// TRn|Dn +// : Spawn Trigger +// : Only Spawns if PC is within 00 Meters +// : Optional Flag: D00 +// : Despawns if PC is not within D00 Meters +// +// AEn|Dn +// : Spawn Area Effect +// : Area Effects are Defined in 'spawn_cfg_fxae' +// : Waypoint Tag can be "AE" to Spawn only Area Effect +// : Optional Flag: D000 +// : Area Effect Duration of 000 to 999 Seconds +// : Duration of 000 means Permanent Area Effect +// : Default Duration is 005 Seconds +// +// OEn|Dn +// : Object Effect +// : Object Effects are Defined in 'spawn_cfg_fxobj' +// : Optional Flag: D000 +// : Object Effect Duration of 000 to 999 Seconds +// : Duration of 000 means Permanent Object Effect +// : Default Duration is Permanent +// +// RSn +// : Random Spawn +// : Percentage Chance Spawn will Occur +// : Default 100% Chance +// +// FCn +// : Spawn Faction +// : Change Faction of Children: +// : Faction 0: COMMONER +// : Faction 1: DEFENDER +// : Faction 2: MERCHANT +// : Faction 3: HOSTILE +// : Faction 4: CUSTOM +// : Change Faction to Same as Nearest +// : Object with Tag 'SpawnFaction' +// +// ALn|Sn +// : Spawn Alignment +// : Shift Alignment of Children +// : Alignment 0: Neutral +// : Alignment 1: Law +// : Alignment 2: Chaos +// : Alignment 3: Good +// : Alignment 4: Evil +// : Alignment 5: All +// : Optional Flag: S00 +// : Shift Alignment by S00 +// : Default Shift by 10 +// +// HBn +// : Heartbeat Script +// : Children will Run Script HB000 each Cycle +// : Scripts are Defined in 'spawn_sc_hbeat' +// +// SLn|Rn|I +// : Spawn Location +// : Spawn Children at Waypoint SL00 +// : Optional Flag: R +// : Choose Random Location +// : from R00 to SL00 +// : Optional Flag: I +// : When spawning multiple children, each child takes the next +// : waypoint, In order - (first child spawns at SL00, next at SL01, etc.) +// : +// : Location Name: Variable +// : Location Tag: SL00 +// +// RH|Dn +// : Return Home +// : Child will always Return to Home +// : Optional Flag: D00 +// : Child will Return to Home +// : Only if further than D00 Meters +// +// HL|n|E +// : Heal Children if Not in Combat +// : Optional Value: 00 +// : Heal 00% per Cycle +// +// IT +// : Spawn Item +// : Spawnpoint Tag is Item Template +// +// ST +// : Spawn Sit +// : Children will Sit in Nearest Unoccupied Sittable +// : Sittable's Tag must be 'Seat' +// +// PT +// : Spawn Plot +// : Sets Children as Plot +// +// SM +// : Spawn Merchant +// : Spawnpoint Tag is Merchant Template +// +// CF +// : Custom Flag +// : Everything in Spawn Name after CF +// : Is Stored in LocalString "CustomFlag" +// : On Each Spawned Child +// +// +// +// + +// +// Functions for external control. Please use these when possible instead +// of modifying variables directly in NESS. +// +// object NESS_GetSpawnByID(int nSpawnID, object oArea) +// : Returns the spawn waypoint in area oArea with ID nSpawnID +// +// void NESS_ActivateSpawnByID(int nSpawnID, object oArea) +// : Activates the spawn in area oArea with ID nSpawnID +// +// void NESS_DeactivateSpawnByID(int nSpawnID, object oArea) +// : Deactivates the spawn in area oArea with ID nSpawnID +// +// void NESS_ActivateSpawn(object oSpawn) +// : Activates spawn oSpawn +// +// void NESS_DeactivateSpawn(object oSpawn) +// : Deactivates spawn oSpawn +// +// void NESS_ForceProcess(object oSpawn) +// : Force spawn oSpawn to be processed next heartbeat (regardless of +// : SPxx value) +// +// void NESS_TrackModuleSpawns(int nFlag=TRUE) +// : Enable (nFlag == TRUE) or Disable (nFlag == FALSE) Spawn Tracking +// +// int NESS_IsModuleSpawnTracking() +// : Returns TRUE is spawn tracking is enabled, FALSE otherwise +// +// +// Some Tips and Pointers +// - with Thanks to Eliha for Creating this Section +// +// 1. The .erf script files we import for NWN usually contain .nss and +// .utp files. +// +// 1.1. The .nss files are the Nwn Source Scripts that are in plain text that +// we manipulate in the script editor. +// +// 1.2. The .utp file(s) are objects such as an invisible corpse object that +// automatically gets put in the right column of the toolset where you select +// the creatures, doors, placeables, etc. under the custom button. +// +// 2. After importing the .erf and ignoring that it couldn't find the .ncs files +// you'll need to save your module then reopen it for the new scripts to appear +// in the left column (due to the lack of a refresh button). +// +// 3. When working in the various configuration scripts you only need to save +// them, not compile them. They are just add-ons to the main spawn_sample_hb.nss +// script and attempts to compile them will result in errors. The spawn_sc_xxxx +// files will compile but even they should just be saved like all the other +// spawn_cfg_xxxx scripts. +// +// 4. When finished editing and saving the various configuration scripts you +// will then need to open the spawn_sample_hb script and compile it to integrate +// your new changes into the system. If you customized your scripts, saved them, +// saved the module, then loaded the game and find nothings working....chances are +// you forgot to compile the spawn_sample_hb script after making your changes. +// +// 5. You can usually tell which script needs to be compiled by noticing which +// one needs to be put in an area heartbeat or on an object somewhere, etc.. In +// this case, we are adding the spawn_sample_hb to the area heartbeat so it is the +// main file and requires compiling. +// + + +// +// Package Header +// +/* +NESS Version 8.1.1 + +Cereborn + +See 'spawn__readme' for Instructions +Ignore all 'Missing Resource' Errors +See the 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 + + +*/ diff --git a/_module/nss/spawn_cfg_camp.nss b/_module/nss/spawn_cfg_camp.nss new file mode 100644 index 0000000..034d56b --- /dev/null +++ b/_module/nss/spawn_cfg_camp.nss @@ -0,0 +1,134 @@ +// +// Spawn Camp +// +// +// CampNumP +// CampNumC +// CampRadius +// CampTrigger +// CampTriggerScript +// +// RW : Random Walk +// SF : Spawn Facing Camp +// SG : Spawn Group +// LT00 : Loot Table +// CD000|T0 : Corpse Decay +// PL0|T00 : Placeable Trap Disabled +// DT000 : Death Script +// RH000 : Return Home +// +// +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +void SetCampSpawn(object oCamp, string sCamp, location lCamp) +{ + +// +// Place Custom Camps Here +// ------------------------------------------- + + + // Example Camp + // One Campfire and 4 Goblins + if (sCamp == "goblincamp") + { + + // Set Number of Placeables + SetLocalInt(oCamp, "CampNumP", 2); + // Set Number of Creatures + SetLocalInt(oCamp, "CampNumC", 4); + // Set Radius of Camp + SetLocalFloat(oCamp, "CampRadius", 10.0); + + // Set Creature 0 to be Trigger + // Script 00 : Kill him and the Camp Despawns + SetLocalString(oCamp, "CampTrigger", "C0"); + SetLocalInt(oCamp, "CampTriggerScript", 0); + + // Set Placeable 0 to be Camp Center + SetLocalString(oCamp, "CampCenter", "P0"); + + // Set Placeable 0 and Spawn Flags + // First Placeable always Spawns at Center of Camp + // If CampCenter Is Not Set + SetLocalString(oCamp, "CampP0", "plc_campfrwspit"); + SetLocalString(oCamp, "CampP0_Flags", "SP_SF"); + + // Set Placeable 1 and Spawn Flags + SetLocalString(oCamp, "CampP1", "plc_chest1"); + SetLocalString(oCamp, "CampP1_Flags", "SP_PL3T80P30"); + + // Set Creature 0 and Spawn Flags + SetLocalString(oCamp, "CampC0", "NW_GOBCHIEFB"); + SetLocalString(oCamp, "CampC0_Flags", "SP_RW_CD60_RH30"); + + // Set Creature 1 and Spawn Flags + SetLocalString(oCamp, "CampC1", "goblins_low"); + SetLocalString(oCamp, "CampC1_Flags", "SP_SF_SG_CD60_RH"); + + // Set Creature 2 and Spawn Flags + SetLocalString(oCamp, "CampC2", "goblins_low"); + SetLocalString(oCamp, "CampC2_Flags", "SP_SF_SG_CD60_RH"); + + // Set Creature 3 and Spawn Flags + SetLocalString(oCamp, "CampC3", "goblins_low"); + SetLocalString(oCamp, "CampC3_Flags", "SP_SF_SG_CD60_RH"); + } + else if (sCamp == "demoncamp") + { + + // Set Number of Placeables + SetLocalInt(oCamp, "CampNumP", 2); + // Set Number of Creatures + SetLocalInt(oCamp, "CampNumC", 4); + // Set Radius of Camp + SetLocalFloat(oCamp, "CampRadius", 5.0); + + // Set Creature 0 to be Trigger + // Script 00 : Kill him and the Camp Despawns + SetLocalString(oCamp, "CampTrigger", "C0"); + SetLocalInt(oCamp, "CampTriggerScript", 0); + + // Set Placeable 0 to be Camp Center + SetLocalString(oCamp, "CampCenter", "P0"); + + // Set Placeable 0 and Spawn Flags + // First Placeable always Spawns at Center of Camp + // If CampCenter Is Not Set + SetLocalString(oCamp, "CampP0", "plc_campfrwspit"); + SetLocalString(oCamp, "CampP0_Flags", "SP_SF"); + + // Set Placeable 1 and Spawn Flags + SetLocalString(oCamp, "CampP1", "plc_chest1"); + SetLocalString(oCamp, "CampP1_Flags", "SP_PL3T80P30"); + + // Set Creature 0 and Spawn Flags + SetLocalString(oCamp, "CampC0", "NW_DEMON"); + SetLocalString(oCamp, "CampC0_Flags", "SP_RW"); + + // Set Creature 1 and Spawn Flags + SetLocalString(oCamp, "CampC1", "NW_DEMON"); + SetLocalString(oCamp, "CampC1_Flags", "SP_SF"); + + // Set Creature 2 and Spawn Flags + SetLocalString(oCamp, "CampC2", "NW_DEMON"); + SetLocalString(oCamp, "CampC2_Flags", "SP_SF"); + + // Set Creature 3 and Spawn Flags + SetLocalString(oCamp, "CampC3", "NW_DEMON"); + SetLocalString(oCamp, "CampC3_Flags", "SP_SF"); + } + // + + +// ------------------------------------------- +// +} diff --git a/_module/nss/spawn_cfg_cusflg.nss b/_module/nss/spawn_cfg_cusflg.nss new file mode 100644 index 0000000..8ff8fd0 --- /dev/null +++ b/_module/nss/spawn_cfg_cusflg.nss @@ -0,0 +1,114 @@ +// +// NESS V8.1 +// Spawn Config Custom Flags +// +// This file is for the USER to to add support for custom flags. It will +// normally not be overwritten by UPDATE releases, so remerging can be avoided. +// +// ALFA and LoG Custom Flags (included here both as examples and to aid +// ALFA builders in switching over to the new methodology) +// +// SXn +// : Suppress XP +// : Suppress diminishing returns XP +// : SX1 turns suppression on (the default, you may just use SX) +// : SX0 turns suppression off for the spawn if it has been put on +// : globally (by setting nGlobalSuppressDR to TRUE in spawn_cfg_global) +// +// NL +// : No Loot +// : Suppress player corpse looting +// +// SB +// : SuBdual +// : Spawn creatures in in subdual mode +// +// ELn +// : Encounter Level +// : Set the encounter level for a spawn +// : This is used by the ALFA core rules in determining whether or not +// : an encounter should result in XP to a given level party. If not +// : specified, the CR of the creature killed is used as the EL. +// +// + +#include "spawn_flags" + +void ParseCustomFlags(object oSpawn, string sFlags) +{ + // Get Defaults. You can set defaults for your custom flags in + // spawn_cfg_global + object oModule = GetModule(); + + int dfSuppressDR = GetLocalInt(oModule, "df_SuppressDR"); + int dfGlobalSuppressDR = GetLocalInt(oModule, "df_GlobalSuppressDR"); + int dfEncounterLevel = GetLocalInt(oModule, "df_EncounterLevel"); + + + // NOTE: Because of the unique nature of these flags being present as both + // standard flags and custom flags (for back compatibility) only write flags + // if they're present!! + + // Initialize Dim Returns Suppression + int nSuppressDimReturns = IsFlagPresent(sFlags, "SX"); + + if (nSuppressDimReturns) + { + // If the flag is present, get suppression mode from its value + nSuppressDimReturns = GetFlagValue(sFlags, "SX", dfSuppressDR); + SetLocalInt(oSpawn, "f_SuppressDimReturns", nSuppressDimReturns); + } + + // Initialize Loot Suppression + int nSuppressLooting = IsFlagPresent(sFlags, "NL"); + + // Record Loot Suppression + if (nSuppressLooting) + { + SetLocalInt(oSpawn, "f_SuppressLooting", nSuppressLooting); + } + + // Initialize Subdual Mode + int nSubdualMode = IsFlagPresent(sFlags, "SB"); + + // Record Subdual Mode + if (nSubdualMode) + { + SetLocalInt(oSpawn, "f_SubdualMode", nSubdualMode); + } + + int nEncounterLevel; + + // Initialize Encounter Level + if (IsFlagPresent(sFlags, "EL")) + { + nEncounterLevel = GetFlagValue(sFlags, "EL", dfEncounterLevel); + SetLocalInt(oSpawn, "f_EncounterLevel", nEncounterLevel); + } +} + +void SetupCustomFlags(object oSpawn, object oSpawned) +{ + int nSuppressLooting = GetLocalInt(oSpawn, "f_SuppressLooting"); + int nSubdualMode = GetLocalInt(oSpawn, "f_SubdualMode"); + int nEncounterLevel = GetLocalInt(oSpawn, "f_EncounterLevel"); + + + // Set up loot suppression + if (nSuppressLooting) + { + SetLocalInt(oSpawned, "DoNotLoot", TRUE); + } + + // Set up subdual mode + if (nSubdualMode) + { + SetLocalInt(oSpawned, "SubdualMode", TRUE); + } + + // Set up encounter level + if (nEncounterLevel > 0) + { + SetLocalInt(oSpawned, "AlfaEncounterLevel", nEncounterLevel); + } +} diff --git a/_module/nss/spawn_cfg_flag.nss b/_module/nss/spawn_cfg_flag.nss new file mode 100644 index 0000000..d49484b --- /dev/null +++ b/_module/nss/spawn_cfg_flag.nss @@ -0,0 +1,77 @@ +// +// Spawn Flags +// +void SpawnFlags(object oSpawn, int nFlagTableNumber) +{ + // Initialize Values + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + string sSpawnTag = GetLocalString(oSpawn, "f_Template"); + string sFlags, sTemplate; + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Sample Complex Replacement + // Using FT without FT00 will + // Default to nFlagTableNumber 0 + if (nFlagTableNumber == 0) + { + // Old Method of using SpawnTag + if (sSpawnTag == "myspawns") + { + sFlags = "SP_SN02_SA_RW"; + sTemplate = "NW_DOG"; + } + + if (sSpawnTag == "undead") + { + sFlags = "SP_SNO4"; + sTemplate = "NW_ZOMBIE01"; + } + } + // + + // Sample Simple Replacement Flag + // Completely Replaces Flags + // On Spawnpoints with FT01 + if (nFlagTableNumber == 1) + { + sFlags = "SP_SN04_RW_DOD"; + sTemplate = "NW_DOG"; + } + // + + // Sample Template Flags + // These Flags Get Added + // To Spawnpoints with FT02 + if (nFlagTableNumber == 2) + { + sFlags = "_RW_PC05R"; + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + + // Record Values + if (sFlags != "") + { + SetLocalString(oSpawn, "f_Flags", sFlags); + } + else + { + SetLocalString(oSpawn, "f_Flags", sSpawnName); + } + if (sTemplate != "") + { + SetLocalString(oSpawn, "f_Template", sTemplate); + } + else + { + SetLocalString(oSpawn, "f_Template", sSpawnTag); + } +} diff --git a/_module/nss/spawn_cfg_fxae.nss b/_module/nss/spawn_cfg_fxae.nss new file mode 100644 index 0000000..72198bf --- /dev/null +++ b/_module/nss/spawn_cfg_fxae.nss @@ -0,0 +1,75 @@ +// +// Spawn AreaEffect +// +int ParseFlagValue(string sName, string sFlag, int nDigits, int nDefault); +int ParseSubFlagValue(string sName, string sFlag, int nDigits, string sSubFlag, int nSubDigits, int nDefault); +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +effect SpawnAreaEffect(object oSpawn) +{ + // Initialize Variables + effect eAreaEffect; + + // Initialize Values + int nSpawnAreaEffect = GetLocalInt(oSpawn, "f_SpawnAreaEffect"); + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + // AreaEffect 00 + // Dummy AreaEffect - Never Use + if (nSpawnAreaEffect == 0) + { + return eAreaEffect; + } + // + + // Web, only Visual + if (nSpawnAreaEffect == 1) + { + eAreaEffect = EffectAreaOfEffect(AOE_PER_WEB, "****", "****", "****"); + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + + // Return the AreaEffect + return eAreaEffect; +} + +/* +0 - AOE_PER_FOGACID +1 - AOE_PER_FOGFIRE +2 - AOE_PER_FOGSTINK +3 - AOE_PER_FOGKILL +4 - AOE_PER_FOGMIND +18 - AOE_MOB_UNEARTHLY +19 - AOE_MOB_MENACE +20 - AOE_MOB_UNNATURAL +21 - AOE_MOB_STUN +22 - AOE_MOB_PROTECTION +23 - AOE_MOB_FIRE +24 - AOE_MOB_FROST +25 - AOE_MOB_ELECTRICAL +26 - AOE_PER_FOGGHOUL +27 - AOE_MOB_TYRANT_FOG +28 - AOE_PER_STORM +29 - AOE_PER_INVIS_SPHERE +30 - AOE_MOB_SILENCE +31 - AOE_PER_DELAY_BLAST_FIREBALL +32 - AOE_PER_GREASE +33 - AOE_PER_CREEPING_DOOM +35 - AOE_MOB_INVISIBILITY_PURGE +*/ diff --git a/_module/nss/spawn_cfg_fxobj.nss b/_module/nss/spawn_cfg_fxobj.nss new file mode 100644 index 0000000..4b7809d --- /dev/null +++ b/_module/nss/spawn_cfg_fxobj.nss @@ -0,0 +1,55 @@ +// +// Spawn ObjectEffect +// +int ParseFlagValue(string sName, string sFlag, int nDigits, int nDefault); +int ParseSubFlagValue(string sName, string sFlag, int nDigits, string sSubFlag, int nSubDigits, int nDefault); +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +effect ObjectEffect(object oSpawn) +{ + // Initialize Variables + effect eObjectEffect; + + // Initialize Values + int nObjectEffect = GetLocalInt(oSpawn, "f_ObjectEffect"); + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // ObjectEffect 00 + // Dummy ObjectEffect - Never Use + if (nObjectEffect == 0) + { + return eObjectEffect; + } + // + + // Bard's Song + if (nObjectEffect == 1) + { + eObjectEffect = EffectVisualEffect(VFX_DUR_BARD_SONG); + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + + // Return the ObjectEffect + return eObjectEffect; +} + +/* + +*/ diff --git a/_module/nss/spawn_cfg_fxsp.nss b/_module/nss/spawn_cfg_fxsp.nss new file mode 100644 index 0000000..f61776c --- /dev/null +++ b/_module/nss/spawn_cfg_fxsp.nss @@ -0,0 +1,243 @@ +// +// Spawn Effect +// +int ParseFlagValue(string sName, string sFlag, int nDigits, int nDefault); +int ParseSubFlagValue(string sName, string sFlag, int nDigits, string sSubFlag, int nSubDigits, int nDefault); +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +int SpawnEffect(object oSpawn, int nSpawnEffect, int nDespawnEffect) +{ + // Initialize + int nEffect; + int nEffectNumber; + + // Initialize Values + if (nSpawnEffect == TRUE) + { + nEffectNumber = GetLocalInt(oSpawn, "f_SpawnEffect"); + } + else if (nDespawnEffect == TRUE) + { + nEffectNumber = GetLocalInt(oSpawn, "f_DespawnEffect"); + } + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Effect 00 + // Dummy Effect - Never Use + if (nEffectNumber == 0) + { + return nEffect; + } + // + + // Rotting Corpse Spawn/Despawn + if (nEffectNumber == 51) + { + nEffect = VFX_IMP_DISEASE_S; + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + + // Return the Effect + return nEffect; +} + +/* +18 - VFX_FNF_BLINDDEAF +19 - VFX_FNF_DISPEL +20 - VFX_FNF_DISPEL_DISJUNCTION +21 - VFX_FNF_DISPEL_GREATER +22 - VFX_FNF_FIREBALL +23 - VFX_FNF_FIRESTORM +24 - VFX_FNF_IMPLOSION +26 - VFX_FNF_MASS_HEAL +27 - VFX_FNF_MASS_MIND_AFFECTING +28 - VFX_FNF_METEOR_SWARM +29 - VFX_FNF_NATURES_BALANCE +30 - VFX_FNF_PWKILL +31 - VFX_FNF_PWSTUN +32 - VFX_FNF_SUMMON_GATE +33 - VFX_FNF_SUMMON_MONSTER_1 +34 - VFX_FNF_SUMMON_MONSTER_2 +35 - VFX_FNF_SUMMON_MONSTER_3 +36 - VFX_FNF_SUMMON_UNDEAD +37 - VFX_FNF_SUNBEAM +38 - VFX_FNF_TIME_STOP +39 - VFX_FNF_WAIL_O_BANSHEES +40 - VFX_FNF_WEIRD +41 - VFX_FNF_WORD +42 - VFX_IMP_AC_BONUS +43 - VFX_IMP_ACID_L +44 - VFX_IMP_ACID_S +46 - VFX_IMP_BLIND_DEAF_M +47 - VFX_IMP_BREACH +48 - VFX_IMP_CONFUSION_S +49 - VFX_IMP_DAZED_S +50 - VFX_IMP_DEATH +51 - VFX_IMP_DISEASE_S +52 - VFX_IMP_DISPEL +53 - VFX_IMP_DISPEL_DISJUNCTION +54 - VFX_IMP_DIVINE_STRIKE_FIRE +55 - VFX_IMP_DIVINE_STRIKE_HOLY +56 - VFX_IMP_DOMINATE_S +57 - VFX_IMP_DOOM +58 - VFX_IMP_FEAR_S +60 - VFX_IMP_FLAME_M +61 - VFX_IMP_FLAME_S +62 - VFX_IMP_FROST_L +63 - VFX_IMP_FROST_S +64 - VFX_IMP_GREASE +65 - VFX_IMP_HASTE +66 - VFX_IMP_HEALING_G +67 - VFX_IMP_HEALING_L +68 - VFX_IMP_HEALING_M +69 - VFX_IMP_HEALING_S +70 - VFX_IMP_HEALING_X +71 - VFX_IMP_HOLY_AID +72 - VFX_IMP_KNOCK +74 - VFX_IMP_LIGHTNING_M +75 - VFX_IMP_LIGHTNING_S +76 - VFX_IMP_MAGBLUE +81 - VFX_IMP_NEGATIVE_ENERGY +83 - VFX_IMP_POISON_L +84 - VFX_IMP_POISON_S +85 - VFX_IMP_POLYMORPH +86 - VFX_IMP_PULSE_COLD +87 - VFX_IMP_PULSE_FIRE +88 - VFX_IMP_PULSE_HOLY +89 - VFX_IMP_PULSE_NEGATIVE +90 - VFX_IMP_RAISE_DEAD +91 - VFX_IMP_REDUCE_ABILITY_SCORE +92 - VFX_IMP_REMOVE_CONDITION +93 - VFX_IMP_SILENCE +94 - VFX_IMP_SLEEP +95 - VFX_IMP_SLOW +96 - VFX_IMP_SONIC +97 - VFX_IMP_STUN +98 - VFX_IMP_SUNSTRIKE +99 - VFX_IMP_UNSUMMON +100 - VFX_COM_SPECIAL_BLUE_RED +101 - VFX_COM_SPECIAL_PINK_ORANGE +102 - VFX_COM_SPECIAL_RED_WHITE +103 - VFX_COM_SPECIAL_RED_ORANGE +104 - VFX_COM_SPECIAL_WHITE_BLUE +105 - VFX_COM_SPECIAL_WHITE_ORANGE +106 - VFX_COM_BLOOD_REG_WIMP +107 - VFX_COM_BLOOD_LRG_WIMP +108 - VFX_COM_BLOOD_CRT_WIMP +109 - VFX_COM_BLOOD_REG_RED +110 - VFX_COM_BLOOD_REG_GREEN +111 - VFX_COM_BLOOD_REG_YELLOW +112 - VFX_COM_BLOOD_LRG_RED +113 - VFX_COM_BLOOD_LRG_GREEN +114 - VFX_COM_BLOOD_LRG_YELLOW +115 - VFX_COM_BLOOD_CRT_RED +116 - VFX_COM_BLOOD_CRT_GREEN +117 - VFX_COM_BLOOD_CRT_YELLOW +118 - FX_COM_SPARKS_PARRY +120 - VFX_COM_UNLOAD_MODEL +121 - VFX_COM_CHUNK_RED_SMALL +122 - VFX_COM_CHUNK_RED_MEDIUM +123 - VFX_COM_CHUNK_GREEN_SMALL +124 - VFX_COM_CHUNK_GREEN_MEDIUM +125 - VFX_COM_CHUNK_YELLOW_SMALL +126 - VFX_COM_CHUNK_YELLOW_MEDIUM +139 - VFX_IMP_IMPROVE_ABILITY_SCORE +140 - VFX_IMP_CHARM +141 - VFX_IMP_MAGICAL_VISION +144 - VFX_IMP_EVIL_HELP +145 - VFX_IMP_GOOD_HELP +146 - VFX_IMP_DEATH_WARD +149 - VFX_IMP_MAGIC_PROTECTION +150 - VFX_IMP_SUPER_HEROISM +151 - VFX_FNF_STORM +152 - VFX_IMP_ELEMENTAL_PROTECTION +181 - VFX_IMP_MIRV +183 - VFX_FNF_SOUND_BURST +184 - VFX_FNF_STRIKE_HOLY +185 - VFX_FNF_LOS_EVIL_10 +186 - VFX_FNF_LOS_EVIL_20 +187 - VFX_FNF_LOS_EVIL_30 +188 - VFX_FNF_LOS_HOLY_10 +189 - VFX_FNF_LOS_HOLY_20 +190 - VFX_FNF_LOS_HOLY_30 +191 - VFX_FNF_LOS_NORMAL_10 +192 - VFX_FNF_LOS_NORMAL_20 +193 - VFX_FNF_LOS_NORMAL_30 +194 - VFX_IMP_HEAD_ACID +195 - VFX_IMP_HEAD_FIRE +196 - VFX_IMP_HEAD_SONIC +197 - VFX_IMP_HEAD_ELECTRICITY +198 - VFX_IMP_HEAD_COLD +199 - VFX_IMP_HEAD_HOLY +200 - VFX_IMP_HEAD_NATURE +201 - VFX_IMP_HEAD_HEAL +202 - VFX_IMP_HEAD_MIND +203 - VFX_IMP_HEAD_EVIL +204 - VFX_IMP_HEAD_ODD +217 - VFX_IMP_DEATH_L +219 - VFX_FNF_SUMMON_CELESTIAL +221 - VFX_IMP_RESTORATION_LESSER +222 - VFX_IMP_RESTORATION +223 - VFX_IMP_RESTORATION_GREATER +231 - VFX_FNF_ICESTORM +233 - VFX_IMP_MIRV_FLAME +234 - VFX_IMP_DESTRUCTION +235 - VFX_COM_CHUNK_RED_LARGE +236 - VFX_COM_CHUNK_BONE_MEDIUM +237 - VFX_COM_BLOOD_SPARK_SMALL +238 - VFX_COM_BLOOD_SPARK_MEDIUM +239 - VFX_COM_BLOOD_SPARK_LARGE +241 - VFX_FNF_HORRID_WILTING +246 - VFX_IMP_HARM +250 - VFX_IMP_MAGIC_RESISTANCE_USE +251 - VFX_IMP_GLOBE_USE +252 - VFX_IMP_WILL_SAVING_THROW_USE +253 - VFX_IMP_SPIKE_TRAP +254 - VFX_IMP_SPELL_MANTLE_USE +255 - VFX_IMP_FORTITUDE_SAVING_THROW_USE +256 - VFX_IMP_REFLEX_SAVE_THROW_USE +257 - VFX_FNF_GAS_EXPLOSION_ACID +258 - VFX_FNF_GAS_EXPLOSION_EVIL +259 - VFX_FNF_GAS_EXPLOSION_NATURE +260 - VFX_FNF_GAS_EXPLOSION_FIRE +261 - VFX_FNF_GAS_EXPLOSION_GREASE +262 - VFX_FNF_GAS_EXPLOSION_MIND +263 - VFX_FNF_SMOKE_PUFF +264 - VFX_IMP_PULSE_WATER +265 - VFX_IMP_PULSE_WIND +266 - VFX_IMP_PULSE_NATURE +273 - VFX_IMP_AURA_HOLY +274 - VFX_IMP_AURA_UNEARTHLY +275 - VFX_IMP_AURA_FEAR +276 - VFX_IMP_AURA_NEGATIVE_ENERGY +278 - VFX_FNF_HOWL_MIND +279 - VFX_FNF_HOWL_ODD +280 - VFX_COM_HIT_FIRE +281 - VFX_COM_HIT_FROST +282 - VFX_COM_HIT_ELECTRICAL +283 - VFX_COM_HIT_ACID +284 - VFX_COM_HIT_SONIC +285 - VFX_FNF_HOWL_WAR_CRY +286 - VFX_FNF_SCREEN_SHAKE +287 - VFX_FNF_SCREEN_BUMP +288 - VFX_COM_HIT_NEGATIVE +289 - VFX_COM_HIT_DIVINE +290 - VFX_FNF_HOWL_WAR_CRY_FEMALE +*/ diff --git a/_module/nss/spawn_cfg_global.nss b/_module/nss/spawn_cfg_global.nss new file mode 100644 index 0000000..f1959fb --- /dev/null +++ b/_module/nss/spawn_cfg_global.nss @@ -0,0 +1,32 @@ +// +// ALFA NESS V1.2.3 +// Spawn Global Defaults +// +// History: +// 09/21/03 Cereborn Created +// +// This file is for the USER to make changes to NESS default values. It will +// normally not be overwritten by UPDATE releases, so remerging can be avoided. +// + +#include "spawn_defaults" + +void SetUserGlobalDefaults() +{ + // SXn + // Set this value to TRUE (or 1) to have dim returns suppression be the default + // when no SX flag is present. + // + // **** uncomment me to make DR off by default + // nGlobalSuppressDR = TRUE; + + // This is the default value for the SX flag when no value is specified. + // Set to FALSE (or 0) to make SX (without a value) enable dim returns. + // + // **** uncomment me to make the SX flag (without arguments) turn DR on for + // a spawn. Note that this is not strictly necessary, as you can also just use + // SX0 on the spawn. This was added for Albereth because he had already created + // spawn points using SX without the 0... + // nSuppressDR = FALSE; + +} diff --git a/_module/nss/spawn_cfg_group.nss b/_module/nss/spawn_cfg_group.nss new file mode 100644 index 0000000..d56f5b4 --- /dev/null +++ b/_module/nss/spawn_cfg_group.nss @@ -0,0 +1,541 @@ +// +// Spawn Groups +// +// +// nChildrenSpawned +// : Number of Total Children ever Spawned +// +// nSpawnCount +// : Number of Children currently Alive +// +// nSpawnNumber +// : Number of Children to Maintain at Spawn +// +// nRandomWalk +// : Walking Randomly? TRUE/FALSE +// +// nPlaceable +// : Spawning Placeables? TRUE/FALSE +// +// +int ParseFlagValue(string sName, string sFlag, int nDigits, int nDefault); +int ParseSubFlagValue(string sName, string sFlag, int nDigits, string sSubFlag, int nSubDigits, int nDefault); +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// + +string GetTemplateByCR(int nCR, string sGroupType) +{ + string sRetTemplate; + + if (sGroupType == "outdoor") + { + switch (nCR) + { + case 1: + switch(d6(1)) + { + case 1: sRetTemplate = "NW_SKELETON"; break; + case 2: sRetTemplate = "NW_ZOMBIE01"; break; + case 3: sRetTemplate = "NW_NIXIE"; break; + case 4: sRetTemplate = "NW_ORCA"; break; + case 5: sRetTemplate = "NW_ORCB"; break; + case 6: sRetTemplate = "NW_BTLFIRE"; break; + } + break; + case 2: + switch(d4(1)) + { + case 1: sRetTemplate = "NW_KOBOLD004"; break; + case 2: sRetTemplate = "NW_KOBOLD005"; break; + case 3: sRetTemplate = "NW_KOBOLD003"; break; + case 4: sRetTemplate = "NW_PIXIE"; break; + } + break; + case 3: + switch(d4(1)) + { + case 1: sRetTemplate = "NW_BTLBOMB"; break; + case 2: sRetTemplate = "NW_BTLFIRE002"; break; + case 3: sRetTemplate = "NW_BTLSTINK"; break; + case 4: sRetTemplate = "NW_NYMPH"; break; + } + break; + default: + sRetTemplate = ""; + break; + } + } + + else if (sGroupType == "crypt") + { + switch (nCR) + { + case 1: + switch(d4(1)) + { + case 1: + case 2: sRetTemplate = "NW_SKELETON"; break; + case 3: sRetTemplate = "NW_ZOMBIE01"; break; + case 4: sRetTemplate = "NW_ZOMBIE02"; break; + } + break; + case 2: + sRetTemplate = "NW_GHOUL"; + break; + case 3: + sRetTemplate = "NW_SHADOW"; + break; + default: + sRetTemplate = ""; + break; + } } + + else + { + // unknown group type + sRetTemplate = ""; + } + + return sRetTemplate; +} + + +// Convert a given EL equivalent and its encounter level, +// return the corresponding CR +float ConvertELEquivToCR(float fEquiv, float fEncounterLevel) +{ + float fCR, fEquivSq, fTemp; + + if (fEquiv == 0.0) + { + return 0.0; + } + + fEquivSq = fEquiv * fEquiv; + fTemp = log(fEquivSq); + fTemp /= log(2.0); + fCR = fEncounterLevel + fTemp; + + return fCR; +} + +// Convert a given CR to its encounter level equivalent per DMG page 101. +float ConvertCRToELEquiv(float fCR, float fEncounterLevel) +{ + if (fCR > fEncounterLevel || fCR < 1.0) + { + return 1.; + } + + float fEquiv, fExponent, fDenom; + + fExponent = fEncounterLevel - fCR; + fExponent *= 0.5; + fDenom = pow(2.0, fExponent); + fEquiv = 1.0 / fDenom; + + return fEquiv; +} + +string SpawnGroup(object oSpawn, string sTemplate) +{ + // Initialize + string sRetTemplate; + + // Initialize Values + int nSpawnNumber = GetLocalInt(oSpawn, "f_SpawnNumber"); + int nRandomWalk = GetLocalInt(oSpawn, "f_RandomWalk"); + int nPlaceable = GetLocalInt(oSpawn, "f_Placeable"); + int nChildrenSpawned = GetLocalInt(oSpawn, "ChildrenSpawned"); + int nSpawnCount = GetLocalInt(oSpawn, "SpawnCount"); + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + if (GetStringLeft(sTemplate, 7) == "scaled_") + { + float fEncounterLevel; + int nScaledInProgress = GetLocalInt(oSpawn, "ScaledInProgress"); + string sGroupType = GetStringRight(sTemplate, + GetStringLength(sTemplate) - 7); + + // First Time in for this encounter? + if (! nScaledInProgress) + { + + // First time in - find the party level + int nTotalPCs = 0; + int nTotalPCLevel = 0; + + object oArea = GetArea(OBJECT_SELF); + + object oPC = GetFirstObjectInArea(oArea); + while (oPC != OBJECT_INVALID) + { + if (GetIsPC(oPC) == TRUE) + { + nTotalPCs++; + nTotalPCLevel = nTotalPCLevel + GetHitDice(oPC); + } + oPC = GetNextObjectInArea(oArea); + } + if (nTotalPCs == 0) + { + fEncounterLevel = 0.0; + } + else + { + fEncounterLevel = IntToFloat(nTotalPCLevel) / IntToFloat(nTotalPCs); + } + + // Save this for subsequent calls + SetLocalFloat(oSpawn, "ScaledEncounterLevel", fEncounterLevel); + + // We're done when the CRs chosen add up to the + // desired encounter level + SetLocalInt(oSpawn, "ScaledCallCount", 0); + SetLocalInt(oSpawn, "ScaledInProgress", TRUE); + } + + + fEncounterLevel = GetLocalFloat(oSpawn, "ScaledEncounterLevel"); + int nScaledCallCount = GetLocalInt(oSpawn, "ScaledCallCount"); + + // For simplicity, I'm not supporting creatures with CR < 1.0) + if (fEncounterLevel < 1.0) + { + // We're done... No creatures have CR low enough to add to this encounter + sRetTemplate = ""; + } + + else + { + // randomly choose a CR at or below the remaining (uncovered) encounter + // level + int nCR = Random(FloatToInt(fEncounterLevel)) + 1; + + // cap to the largest CR we currently support in GetTemplateByCR + if (nCR > 3) + { + nCR = 3; + } + + sRetTemplate = GetTemplateByCR(nCR, sGroupType); + + + // Convert CR to Encounter Level equivalent so it can be correctly + // subtracted. This does the real scaling work + float fELEquiv = ConvertCRToELEquiv(IntToFloat(nCR), fEncounterLevel); + float fElRemaining = 1.0 - fELEquiv; + + fEncounterLevel = ConvertELEquivToCR(fElRemaining, fEncounterLevel); + SetLocalFloat(oSpawn, "ScaledEncounterLevel", fEncounterLevel); + } + + nScaledCallCount++; + SetLocalInt(oSpawn, "ScaledCallCount", nScaledCallCount); + + nSpawnNumber = GetLocalInt(oSpawn, "f_SpawnNumber"); + + if (nScaledCallCount >= nSpawnNumber) + { + // reset... + SetLocalInt(oSpawn, "ScaledInProgress", FALSE); + } + } + + // cr_militia + if (sTemplate == "cr_militia") + { + switch(d2(1)) + { + case 1: + sRetTemplate = "cr_militia_m"; + break; + case 2: + sRetTemplate = "cr_militia_f"; + break; + } + } + // + + // pg_guard + if (sTemplate == "pg_guard") + { + switch(d2(1)) + { + case 1: + sRetTemplate = "pg_guard_m"; + break; + case 2: + sRetTemplate = "pg_guard_f"; + break; + } + } + // + + // Goblins + if (sTemplate == "goblins_low") + { + if (d2(1) == 1) + { + sRetTemplate = "NW_GOBLINA"; + } + else + { + sRetTemplate = "NW_GOBLINB"; + } + } + // + + // Goblins and Boss + if (sTemplate == "gobsnboss") + { + int nIsBossSpawned = GetLocalInt(oSpawn, "IsBossSpawned"); + if (nIsBossSpawned == TRUE) + { + // Find the Boss + object oBoss = GetChildByTag(oSpawn, "NW_GOBCHIEFA"); + + // Check if Boss is Alive + if (oBoss != OBJECT_INVALID && GetIsDead(oBoss) == FALSE) + { + // He's alive, spawn a Peon to keep him Company + sRetTemplate = "NW_GOBLINA"; + } + else + { + // He's dead, Deactivate Camp! + SetLocalInt(oSpawn, "SpawnDeactivated", TRUE); + } + } + else + { + // No Boss, so Let's Spawn Him + sRetTemplate = "NW_GOBCHIEFA"; + SetLocalInt(oSpawn, "IsBossSpawned", TRUE); + } + } + // + + // Scaled Encounter + if (sTemplate == "scaledgobs") + { + // Initialize Variables + int nTotalPCs; + int nTotalPCLevel; + int nAveragePCLevel; + object oArea = GetArea(OBJECT_SELF); + + // Cycle through PCs in Area + object oPC = GetFirstObjectInArea(oArea); + while (oPC != OBJECT_INVALID) + { + if (GetIsPC(oPC) == TRUE) + { + nTotalPCs++; + nTotalPCLevel = nTotalPCLevel + GetHitDice(oPC); + } + oPC = GetNextObjectInArea(oArea); + } + if (nTotalPCs == 0) + { + nAveragePCLevel = 0; + } + else + { + nAveragePCLevel = nTotalPCLevel / nTotalPCs; + } + + // Select a Creature to Spawn + switch (nAveragePCLevel) + { + // Spawn Something with CR 1 + case 1: + sRetTemplate = "cr1creature"; + break; + // + + // Spawn Something with CR 5 + case 5: + sRetTemplate = "cr5creature"; + break; + // + } + } + // + + // Pirates and Boss + if (sTemplate == "pirates") + { + // Delay the Spawn for 45 Minutes + if (GetLocalInt(oSpawn, "DelayEnded") == FALSE) + { + if (GetLocalInt(oSpawn, "DelayStarted") == FALSE) + { + // Start the Delay + SetLocalInt(oSpawn, "DelayStarted", TRUE); + DelayCommand(20.0, SetLocalInt(oSpawn, "DelayEnded", TRUE)); + } + sRetTemplate = ""; + return sRetTemplate; + } + int nIsBossSpawned = GetLocalInt(oSpawn, "IsBossSpawned"); + if (nIsBossSpawned == TRUE) + { + // Find the Boss + object oBoss = GetChildByTag(oSpawn, "NW_GOBCHIEFA"); + + // Check if Boss is Alive + if (oBoss != OBJECT_INVALID && GetIsDead(oBoss) == FALSE) + { + // He's alive, spawn a Peon to keep him Company + sRetTemplate = "NW_GOBLINA"; + } + else + { + // He's dead, Deactivate Camp! + SetLocalInt(oSpawn, "SpawnDeactivated", TRUE); + } + } + else + { + // No Boss, so Let's Spawn Him + sRetTemplate = "NW_GOBCHIEFA"; + SetLocalInt(oSpawn, "IsBossSpawned", TRUE); + } + } + // + + // Advanced Scaled Encounter + if (sTemplate == "advscaled") + { + //Initalize Variables + int nTotalPCs; + int nTotalPCLevel; + int nAveragePCLevel; + object oArea = GetArea(OBJECT_SELF); + + //Cycle through PCs in area + object oPC = GetFirstObjectInArea(oArea); + while (oPC != OBJECT_INVALID) + { + if (GetIsPC(oPC) == TRUE) + { + nTotalPCs++; + nTotalPCLevel = nTotalPCLevel + GetHitDice(oPC); + } + oPC = GetNextObjectInArea(oArea); + } + if (nTotalPCs == 0) + { + nAveragePCLevel = 0; + } + else + { + nAveragePCLevel = nTotalPCLevel / nTotalPCs; + } + + //Select a Creature to Spawn + switch (nAveragePCLevel) + { + //Spawn Something with CR 1 + case 1: + switch (d6()) + { + case 1: sRetTemplate = "cr1example1"; + case 2: sRetTemplate = "cr1example2"; + case 3: sRetTemplate = "cr1example3"; + case 4: sRetTemplate = "cr1example4"; + case 5: sRetTemplate = "cr1example5"; + case 6: sRetTemplate = "cr1example6"; + } + break; + } + } + // + + // Encounters + if (sTemplate == "encounter") + { + // Declare Variables + int nCounter, nCounterMax; + string sCurrentTemplate; + + // Retreive and Increment Counter + nCounter = GetLocalInt(oSpawn, "GroupCounter"); + nCounterMax = GetLocalInt(oSpawn, "CounterMax"); + nCounter++; + + // Retreive CurrentTemplate + sCurrentTemplate = GetLocalString(oSpawn, "CurrentTemplate"); + + // Check CounterMax + if (nCounter > nCounterMax) + { + sCurrentTemplate = ""; + nCounter = 1; + } + + if (sCurrentTemplate != "") + { + // Spawn Another CurrentTemplate + sRetTemplate = sCurrentTemplate; + } + else + { + // Choose New CurrentTemplate and CounterMax + switch (Random(2)) + { + // Spawn 1-4 NW_DOGs + case 0: + sRetTemplate = "NW_DOG"; + nCounterMax = Random(4) + 1; + break; + } + // Record New CurrentTemplate and CounterMax + SetLocalString(oSpawn, "CurrentTemplate", sRetTemplate); + SetLocalInt(oSpawn, "CounterMax", nCounterMax); + } + + // Record Counter + SetLocalInt(oSpawn, "GroupCounter", nCounter); + } + // + + // + if (sTemplate == "kobolds") + { + int nKobold = Random(6) + 1; + sRetTemplate = "NW_KOBOLD00" + IntToString(nKobold); + } + // + //Sily's Groups + if (sTemplate == "sily_goblin_scout") + { + switch(d2(1)) + { + case 1: + sRetTemplate = "an_goblin"; + break; + case 2: + sRetTemplate = "an_goblin2"; + break; + } + } + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + return sRetTemplate; +} diff --git a/_module/nss/spawn_cfg_loot.nss b/_module/nss/spawn_cfg_loot.nss new file mode 100644 index 0000000..9930f3c --- /dev/null +++ b/_module/nss/spawn_cfg_loot.nss @@ -0,0 +1,162 @@ +// +// Spawn Loot +// +// History: +// --/--/-- Neshke Created +// 12/03/02 Cereborn Added DanielleB's merchant-based loot tables +// 12/31/02 Cereborn Use newly added flags for determining the +// probabilities of 1,2, or 3 item drops from +// merchant-based (LT500-LT999) loot tables. +// Fixed an off-by-one bug in the item choosing +// code for for merchant-based loot tables. The +// code was trying to take items 2 through n+1. +// +int ParseFlagValue(string sName, string sFlag, int nDigits, int nDefault); +int ParseSubFlagValue(string sName, string sFlag, int nDigits, string sSubFlag, int nSubDigits, int nDefault); +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +void CleanInventory(object oSpawned); +// +// +void LootTable(object oSpawn, object oSpawned, int nLootTable) +{ + // Initialize + object oItem; + string sTemplate; + int nStack = 1; + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + // Table 00 + if (nLootTable == 0) + { + // 50% Chance + if (d100(1) > 50) + { + // Created Custom Item with ResRef of magicsword + sTemplate = "magicsword"; + nStack = 1; + } + oItem = CreateItemOnObject(sTemplate, oSpawned, nStack); + } + // + + // Random Gold and *Nothing* Else + else if (nLootTable == 1) + { + CleanInventory(oSpawned); + // Add our Items: Gold for Example + nStack = Random(50) + 1; + oItem = CreateItemOnObject("nw_it_gold001", oSpawned, nStack); + } + // Merchant-based loot - from DanieleB NESS scripts + else if( nLootTable >= 500 ) + { + object oStore = OBJECT_INVALID; + oStore = GetObjectByTag( "LOOT_" + IntToString(nLootTable)); + + object oItem; + int nCount; + int nAmount; + if( GetIsObjectValid( oStore ) ) + { + // -- check if we already know item count + nCount = GetLocalInt( oStore , "nItemCount" ); + if( nCount <= 0 ) + { + // -- Count Items in Store Inventory + oItem = GetFirstItemInInventory( oStore ); + while( GetIsObjectValid( oItem ) ) + { + nCount++ ; + oItem = GetNextItemInInventory( oStore ); + } + SetLocalInt( oStore , "nItemCount" , nCount ); + } + // -- probability for multiple items + nAmount = d100(); + + // Cereborn: removed 12/31/02 + // Old: + // int nProbOneItem = 50; // 50% chance 1 item + // int nProbTwoItems = 15; // 15% chance 2 items + // int nProbThreeItems = 5; // 5% chance 3 items + // 30% chance no items ( implied ) + // New: + int nProbOneItem = GetLocalInt(oSpawn, "f_LootTable1ItemChance"); + int nProbTwoItems = GetLocalInt(oSpawn, "f_LootTable2ItemChance"); + int nProbThreeItems = GetLocalInt(oSpawn, "f_LootTable3ItemChance"); + + if( nAmount <= nProbThreeItems ) + nAmount = 3; + else + if( nAmount <= nProbThreeItems + nProbTwoItems ) + nAmount = 2; + else + if( nAmount <= nProbThreeItems + nProbTwoItems + nProbOneItem ) + nAmount = 1; + else + nAmount = 0; + // -- Generate nAmount items on oSpawned + while( nAmount > 0 ) + { + // -- Determine random item + int nSelected; + int nRand = Random( nCount ) + 1; + // -- Get the item + oItem = GetFirstItemInInventory( oStore ); + + for( nSelected = 1 ; nSelected < nRand ; nSelected++ ) + { + oItem = GetNextItemInInventory( oStore ); + } + // -- Grab item template + if (oItem != OBJECT_INVALID) + { + sTemplate = GetResRef( oItem ); + } + + // -- Checks to see if this it is a ammo or thrown item and creates more in the stack + string sRoot = GetStringLowerCase( GetSubString( sTemplate , 0 , 6 ) ); + if( sRoot == "nw_wam" || sRoot == "nw_wth" ) + { + nStack = Random( 30 ) + 1; + } + else + // -- Check if the item is Gold, and creates more in Stack + // small amount generated : gold placement should maybe be handled in some other way. + if( GetStringLowerCase( sTemplate ) == "nw_it_gold001" ) + nStack = Random( 30 ) + 5; + else + if( nStack < 1 ) + nStack = 1; + // -- create the item on oSpawned + oItem = CreateItemOnObject( sTemplate , oSpawned , nStack ); + // -- decerement the Item Amount counter + nAmount--; + } + } + else + { + // Write to log + PrintString( "Could not find Loot Merchant [" + + "LOOT_" + + IntToString( nLootTable ) + + "] for Spawn Waypoint : " + + GetLocalString(oSpawn, "f_Flags") ); + } + } + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + +} diff --git a/_module/nss/spawn_chk_custom.nss b/_module/nss/spawn_chk_custom.nss new file mode 100644 index 0000000..cfdb1de --- /dev/null +++ b/_module/nss/spawn_chk_custom.nss @@ -0,0 +1,103 @@ +// +// Spawn Check - Custom +// +int ParseFlagValue(string sName, string sFlag, int nDigits, int nDefault); +int ParseSubFlagValue(string sName, string sFlag, int nDigits, string sSubFlag, int nSubDigits, int nDefault); +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +int SpawnCheckCustom(object oSpawn) +{ + // Initialize Values + int nSpawnCheckCustom = GetLocalInt(oSpawn, "f_SpawnCheckCustom"); + + // Block Spawn by Default + int nProcessSpawn = FALSE; + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + // Check 00 + if (nSpawnCheckCustom == 0) + { + // Example, Allow Spawn + nProcessSpawn = TRUE; + } + // + + // + if (nSpawnCheckCustom == 1) + { + if (GetIsDawn() == TRUE || GetIsDay() == TRUE) + { + nProcessSpawn = TRUE; + SetLocalInt(oSpawn, "SpawnProcessed", FALSE); + } + else + { + int nSpawnProcessed = GetLocalInt(oSpawn, "SpawnProcessed"); + if (nSpawnProcessed == FALSE) + { + nProcessSpawn = TRUE; + SetLocalInt(oSpawn, "SpawnProcessed", TRUE); + } + } + } + // + + // Reproducing Predators + if (nSpawnCheckCustom == 10) + { + int nChildren = GetLocalInt(oSpawn, "ChildrenSpawned"); + if (nChildren >= 10) + { + int nHappy = 0; + int nPredators; + int nNth = 1; + object oPredator = GetNearestObject(OBJECT_TYPE_CREATURE, oSpawn, nNth); + while (oPredator != OBJECT_INVALID) + { + if (GetLocalInt(oPredator, "Predator") == TRUE) + { + nPredators++; + if (GetLocalInt(oPredator, "CurrentHungerState") > 0) + { + nHappy++; + } + } + nNth++; + oPredator = GetNearestObject(OBJECT_TYPE_CREATURE, oSpawn, nNth); + } + SendMessageToAllDMs("There are " + IntToString(nPredators) + " Predators Alive."); + if (nHappy >= 2) + { + nProcessSpawn = TRUE; + } + } + else + { + nProcessSpawn = TRUE; + } + if (nProcessSpawn == TRUE) + { + SendMessageToAllDMs("A Predator is Born!"); + } + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + + // Return whether Spawn can Proceed + return nProcessSpawn; +} diff --git a/_module/nss/spawn_chk_pcs.nss b/_module/nss/spawn_chk_pcs.nss new file mode 100644 index 0000000..06d35d8 --- /dev/null +++ b/_module/nss/spawn_chk_pcs.nss @@ -0,0 +1,132 @@ +// +// Spawn Check - PCs +// +int ParseFlagValue(string sName, string sFlag, int nDigits, int nDefault); +int ParseSubFlagValue(string sName, string sFlag, int nDigits, string sSubFlag, int nSubDigits, int nDefault); +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +int SpawnCheckPCs(object oSpawn) +{ + // Initialize Values + object oPC; + object oArea = GetArea(oSpawn); + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + location lSpawn = GetLocation(oSpawn); + int nCheckPCs = GetLocalInt(oSpawn, "f_SpawnCheckPCs"); + float fCheckPCsRadius = GetLocalFloat(oSpawn, "f_CheckPCsRadius"); + + // Block Spawn by Default + int nProcessSpawn = FALSE; + + // Cycle through PCs + if (fCheckPCsRadius > -1.0) + { + oPC = GetFirstObjectInShape(SHAPE_SPHERE, fCheckPCsRadius, lSpawn, FALSE, OBJECT_TYPE_CREATURE); + } + else + { + oPC = GetFirstObjectInArea(oArea); + } + while (oPC != OBJECT_INVALID) + { + if (GetIsPC(oPC) == TRUE) + { + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Check 00 + if (nCheckPCs == 0) + { + // Example, Allow Spawn + nProcessSpawn = TRUE; + } + // + + // Spawn with a Skill Check + if (nCheckPCs == 1) + { + // Get Current Number of Children + int nSpawnCount = GetLocalInt(oSpawn, "SpawnCount"); + + if (nSpawnCount == 0) + { + // DC of Hidden Placeable + int nItemDC = 20; + + // Player's Skill + int nSkill = GetSkillRank(SKILL_SEARCH, oPC); + + // Do Skill Check + int nDCCheck = d20() + nSkill; + if (nDCCheck >= nItemDC) + { + // Placeable Spotted! + string sSpotted = "You notice a thingamathingy!"; + FloatingTextStringOnCreature(sSpotted, oPC, TRUE); + //Spawn it! + nProcessSpawn = TRUE; + } + } + } + // + + // Spawn Based on Journal Quest Entry + if (nCheckPCs == 1) + { + // Check Journal Quest Entry + int nQuest = GetLocalInt(oPC, "NW_JOURNAL_ENTRYQuest1"); + if (nQuest == 1) + { + // Quest Entry is 1, Spawn! + nProcessSpawn = TRUE; + } + } + // + + // Spawn Based on Item in PC Inventory + if (nCheckPCs == 2) + { + // Check Player for Item + object oItem = GetFirstItemInInventory(oPC); + while (oItem != OBJECT_INVALID) + { + if (GetTag(oItem) == "MysticKey") + { + // Item Found, Spawn! + nProcessSpawn = TRUE; + } + oItem = GetNextItemInInventory(oPC); + } + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + } + // Retreive Next PC + if (fCheckPCsRadius > -1.0) + { + oPC = GetNextObjectInShape(SHAPE_SPHERE, fCheckPCsRadius, lSpawn, FALSE, OBJECT_TYPE_CREATURE); + } + else + { + oPC = GetNextObjectInArea(oArea); + } + } + + // Return whether Spawn can Proceed + return nProcessSpawn; +} diff --git a/_module/nss/spawn_corpse_dcy.nss b/_module/nss/spawn_corpse_dcy.nss new file mode 100644 index 0000000..c27063b --- /dev/null +++ b/_module/nss/spawn_corpse_dcy.nss @@ -0,0 +1,62 @@ +// +// NESS V8.0 +// Spawn: Corpse Decay Script +// +// +// Do NOT Modify this File +// See 'spawn__readme' for Instructions +// + +#include "spawn_functions" + +void main() +{ + object oHostBody = OBJECT_SELF; + object oLootCorpse = GetLocalObject(oHostBody, "Corpse"); + object oItem; + float fCorpseDecay; + + // Don't Decay while Someone is Looting + if (GetIsOpen(oLootCorpse) == TRUE) + { + // try again + fCorpseDecay = GetLocalFloat(oHostBody, "CorpseDecay"); + DelayCommand(fCorpseDecay, ExecuteScript("spawn_corpse_dcy", oHostBody)); + return; + } + + // Don't Decay if not Empty and Timer not Expired + oItem = GetFirstItemInInventory(oLootCorpse); + int nDecayTimerExpired = GetLocalInt(oHostBody, "DecayTimerExpired"); + + // Don't think this should ever happen, since nDecayTimerExpired should + // be set to try by the command immediately beforethe one invoking this + // script! + if (oItem != OBJECT_INVALID && nDecayTimerExpired == FALSE) + { + fCorpseDecay = GetLocalFloat(oHostBody, "CorpseDecay"); + DelayCommand(fCorpseDecay - 0.1, SetLocalInt(oHostBody, "DecayTimerExpired", TRUE)); + DelayCommand(fCorpseDecay, ExecuteScript("spawn_corpse_dcy", oHostBody)); + return; + } + + int bDeleteLootOnDecay = GetLocalInt(oHostBody, "CorpseDeleteLootOnDecay"); + + // To avoid potential memory leaks, we clean everything that might be left on the + // original creatures body + NESS_CleanCorpse(oHostBody); + + // Destroy all loot if indicated (R7 subflag) + if (bDeleteLootOnDecay) + { + NESS_CleanInventory(oLootCorpse); + } + + // Destroy the invis corpse and drop a loot bag (if any loot left) + SetPlotFlag(oLootCorpse, FALSE); + DestroyObject(oLootCorpse); + + // Destroy the visible corpse + SetObjectIsDestroyable(oHostBody, TRUE, FALSE, FALSE); + DestroyObject(oHostBody, 0.2); +} diff --git a/_module/nss/spawn_corpse_dth.nss b/_module/nss/spawn_corpse_dth.nss new file mode 100644 index 0000000..2489048 --- /dev/null +++ b/_module/nss/spawn_corpse_dth.nss @@ -0,0 +1,142 @@ +// +// NESS V8.0 +// Spawn : Corpse Death Script +// +// +// Do NOT Modify this File +// See 'spawn__readme' for Instructions +// + +#include "spawn_functions" + +void CopyItemVarsAndPlot(object oSource, object oInventory) +{ + int bWasPlot = GetPlotFlag(oSource); + object oNewItem = CopyItem(oSource, oInventory, TRUE); + if (bWasPlot == TRUE) + { + SetPlotFlag(oNewItem,TRUE); + } +} +// Strip everything droppable in the regular inventory, too. +void LootInventoryAndPreserveVars(object oVictim, object oCorpse) +{ + object oItem = GetFirstItemInInventory(oVictim); + while (GetIsObjectValid(oItem)) { + if (GetDroppableFlag(oItem)) { + // Copy to the corpse and destroy + CopyItemVarsAndPlot(oItem, oCorpse); + DestroyObject(oItem, 0.1); + } + oItem = GetNextItemInInventory(oVictim); + } +} + +void main() +{ + object oDeadNPC = OBJECT_SELF; + object oLootCorpse, oBlood; + location lCorpseLoc = GetLocation(oDeadNPC); + float fCorpseDecay = GetLocalFloat(oDeadNPC, "CorpseDecay"); + int nCorpseDecayType = GetLocalInt(oDeadNPC, "CorpseDecayType"); + int bDropWielded = GetLocalInt(oDeadNPC, "CorpseDropWielded"); + string sLootCorpseResRef = GetLocalString(oDeadNPC, "CorpseRemainsResRef"); + struct NESS_CorpseInfo stCorpseInfo; + + int nCorpseGold = FALSE, nCorpseInv = FALSE, nCorpseEquip = FALSE; + + object oKiller = GetLastDamager(); + if (oKiller == OBJECT_INVALID) + { + oKiller = GetLastKiller(); + } + + if (fCorpseDecay > 0.0) + { + //Protect our corpse from decaying + SetIsDestroyable(FALSE, FALSE, FALSE); + + // Create Corpse and Lootable Corpse + oLootCorpse = CreateObject(OBJECT_TYPE_PLACEABLE, sLootCorpseResRef, lCorpseLoc); + + SetLocalObject(oLootCorpse, "HostBody", oDeadNPC); + SetLocalObject(oDeadNPC, "Corpse", oLootCorpse); + + switch (nCorpseDecayType) + { + // Type 0: + // Inventory Items + case 0: + nCorpseGold = TRUE; + nCorpseInv = TRUE; + nCorpseEquip = FALSE; + break; + + // Type 1: + // Inventory & Equipped Items + case 1: + nCorpseGold = TRUE; + nCorpseInv = TRUE; + nCorpseEquip = TRUE; + break; + + // Type 2: + // Inventory Items, if PC Killed + case 2: + if (GetIsPC(oKiller) == TRUE || GetIsPC(GetMaster(oKiller)) == TRUE) + { + nCorpseGold = TRUE; + nCorpseInv = TRUE; + nCorpseEquip = FALSE; + } + break; + + // Type 3: + // Inventory & Equipped Items, if PC Killed + case 3: + if (GetIsPC(oKiller) == TRUE || GetIsPC(GetMaster(oKiller)) == TRUE) + { + nCorpseGold = TRUE; + nCorpseInv = TRUE; + nCorpseEquip = TRUE; + } + break; + } + + // Get Gold + if (nCorpseGold == TRUE) + { + int nAmtGold = GetGold(oDeadNPC); + if(nAmtGold) + { + object oGold = CreateItemOnObject("nw_it_gold001", oLootCorpse, nAmtGold); + AssignCommand(oLootCorpse, TakeGoldFromCreature(nAmtGold, oDeadNPC,TRUE)); + } + } + + // Get Inventory & Equipment + if (nCorpseEquip == TRUE) + { + stCorpseInfo = TransferAllInventorySlots(oDeadNPC, oLootCorpse, bDropWielded); + } + + if (nCorpseInv == TRUE) + { + LootInventoryAndPreserveVars(oDeadNPC, oLootCorpse); + } + + // Write a record of stuff left on the original corpse and its loot + // corpse counterpart. These are used to remove items from the visual corpse + // when the corresponding items are looted + SetLocalObject(oLootCorpse, "OrigArmor", stCorpseInfo.origArmor); + SetLocalObject(oLootCorpse, "LootArmor", stCorpseInfo.lootArmor); + SetLocalObject(oLootCorpse, "OrigRgtWpn", stCorpseInfo.origRgtWpn); + SetLocalObject(oLootCorpse, "LootRgtWpn", stCorpseInfo.lootRgtWpn); + SetLocalObject(oLootCorpse, "OrigLftWpn", stCorpseInfo.origLftWpn); + SetLocalObject(oLootCorpse, "LootLftWpn", stCorpseInfo.lootLftWpn); + + // Set Corpse to Decay + DelayCommand(fCorpseDecay - 0.1, SetLocalInt(oDeadNPC, "DecayTimerExpired", TRUE)); + DelayCommand(fCorpseDecay, ExecuteScript("spawn_corpse_dcy", oDeadNPC)); + } +} diff --git a/_module/nss/spawn_defaults.nss b/_module/nss/spawn_defaults.nss new file mode 100644 index 0000000..febcbc7 --- /dev/null +++ b/_module/nss/spawn_defaults.nss @@ -0,0 +1,306 @@ +// +// NESS V8.1.3 +// +// Spawn Global Defaults +// +// + +// SXn +// Set this value to 1 to have dim returns suppression be the default +// when no SX flag is present. +int nGlobalSuppressDR = 0; + +// This is the default value for the SX flag when no value is specified. +// Set to 0 to make SX (without a value) enable dim returns. +int nSuppressDR = 1; + +// SPnOn +int nProcessFrequency = 1; +int nProcessOffset = 0; + +// ISnDn +// InitialState +int nInitialState = 1; +int nInitialDelay = -1; + +// FTn +// FlagTable +int nFlagTableNumber = 0; + +// SDn|Mn +// SpawnDelay +int nSpawnDelay = 0; +int nDelayMinimum = 0; + +// SNn|Mn SA|n|Mn +// SpawnNumber +int nSpawnNumber = 1; +int nSpawnNumberMin = -1; +int nSpawnNumberAtOnce = 0; +int nSpawnNumberAtOnceMin = 0; + +// DYn|Tn +// SpawnDay +int nSpawnDayStart = -1; +int nSpawnDayEnd = -1; + +// HRn|Tn +// SpawnHour +int nSpawnHourStart = -1; +int nSpawnHourEnd = -1; + +// RW|Rn +// RandomWalk +int nWanderRange = 0; + +// RH|Dn +// ReturnHome +int nReturnHomeRange = 1; + +// PC|n|R +// PCCheck +int nPCCheckDelay = 0; + +// RGn|Mn|Cn +// RandomGold +int nRandomGold = 0; +int nRandomGoldMin = 0; +int nGoldChance = 100; + +// FXn|Dn +// SpawnEffects +int nSpawnEffect = 0; +int nDespawnEffect = 0; + +// PRn|Tn +// PatrolRoutes +int nPatrolRoute = -1; +int nRouteType = 0; + +// PLn|Tn|Pn +// Placeables +int nPlaceableType = 0; +int nPlaceableRefreshPeriod = 60; +int nTrapDisabled = 100; + +// LTn|An|Bn|Cn +// LootTable +int nLootTable = -1; + +// Cereborn: added 12/31/02 +int nLootTable1ItemChance = 50; +int nLootTable2ItemChance = 15; +int nLootTable3ItemChance = 5; + +// DSn|Sn +// SpawnDeactivation +int nDeactivateSpawn = -1; +int nDeactivateScript = -1; + +// DIn +// DeactivationInfo +int nDeactivationInfo = -1; + +// CLn|Mn +// ChildLifespan +int nChildLifespanMax = -1; +int nChildLifespanMin = -1; + +// SRn|Mn|P +// SpawnRadius +int nSpawnRadius = 0; +int nSpawnRadiusMin = 0; + +// SUn|In +// SpawnUnseen +int nSpawnUnseen = 0; +int nUnseenRetryCount = -1; + +// CDn|Tn|Rn|D +// CorpseDecay +int nCorpseDecay = 0; +int nCorpseDecayType = 0; +int nCorpseRemainsType = 0; + +// CM|Dn +// SpawnCamp +int nCampDecay = 0; + +// SSn|Dn +// SpawnScript +int nSpawnScript = -1; +int nDespawnScript = -1; + +// DTn +// DeathScript +int nDeathScript = -1; + +// CCn +// SpawnCheckCustom +int nSpawnCheckCustom = -1; + +// CPn|Rn +// SpawnCheckPCs +int nSpawnCheckPCs = -1; +int nCheckPCsRadius = -1; + +// TRn|Dn +// SpawnTrigger +int nSpawnTrigger = 0; +int nDespawnTrigger = 0; + +// AEn|Dn +// AreaEffect +int nSpawnAreaEffect = 0; +int nAreaEffectDuration = 5; + +// OEn|Dn +// ObjectEffect +int nObjectEffect = 0; +int nObjectEffectDuration = -1; + +// RSn +// RandomSpawn +int nRandomSpawn = 100; + +// FCn +// SpawnFaction +int nSpawnFaction = -1; + +// ALn|Sn +int nSpawnAlignment = -1; +int nAlignmentShift = 10; + +// HBn +// HeartbeatScript +int nHeartbeatScript = -1; + +// SLn|Rn +// SpawnLocation +int nSpawnLocation = -1; +int nSpawnLocationMin = -1; + +// EEn|Rn +// EntranceExit +int nEntranceExit = -1; +int nEntranceExitMin = -1; +int nExit = -1; +int nExitMin = -1; + +// HL|n|E +// HealChildren +int nHealChildren = 0; + +// Sittable Tag +string sSeatTag = "Seat"; + +int nEncounterLevel = 0; +int bLeftoversForceProcessing = 1; +int bCheckForStuckPatrols = 1; +int bAlwaysDestroyCorpses = 1; + +//CS|n|Cn|Tn +//Cache Spawn + +int nUseCache = 0; //if you set this to 1 then, by default all flags will assume to have basic caching. +int nCacheBucket = 0; +int nCacheCondition = 0; +int nCacheTiming = 0; + +void SetUserGlobalDefaults(); + +void SetGlobalDefaults() +{ + SetUserGlobalDefaults(); + + // Record Values + object oModule = GetModule(); + SetLocalInt(oModule, "df_GlobalSuppressDR", nGlobalSuppressDR); + SetLocalInt(oModule, "df_SuppressDR", nSuppressDR); + SetLocalInt(oModule, "df_processFrequency", nProcessFrequency); + SetLocalInt(oModule, "df_processOffset", nProcessOffset); + SetLocalInt(oModule, "df_InitialState", nInitialState); + SetLocalInt(oModule, "df_InitialDelay", nInitialDelay); + SetLocalInt(oModule, "df_FlagTableNumber", nFlagTableNumber); + SetLocalInt(oModule, "df_SpawnDelay", nSpawnDelay); + SetLocalInt(oModule, "df_DelayMinimum", nDelayMinimum); + SetLocalInt(oModule, "df_SpawnNumber", nSpawnNumber); + SetLocalInt(oModule, "df_SpawnNumberMin", nSpawnNumberMin); + SetLocalInt(oModule, "df_SpawnNumberAtOnce", nSpawnNumberAtOnce); + SetLocalInt(oModule, "df_SpawnNumberAtOnceMin", nSpawnNumberAtOnceMin); + SetLocalInt(oModule, "df_SpawnDayStart", nSpawnDayStart); + SetLocalInt(oModule, "df_SpawnDayEnd", nSpawnDayEnd); + SetLocalInt(oModule, "df_SpawnHourStart", nSpawnHourStart); + SetLocalInt(oModule, "df_SpawnHourEnd", nSpawnHourEnd); + SetLocalInt(oModule, "df_WanderRange", nWanderRange); + SetLocalInt(oModule, "df_ReturnHomeRange", nReturnHomeRange); + SetLocalInt(oModule, "df_PCCheckDelay", nPCCheckDelay); + SetLocalInt(oModule, "df_RandomGold", nRandomGold); + SetLocalInt(oModule, "df_RandomGoldMin", nRandomGoldMin); + SetLocalInt(oModule, "df_GoldChance", nGoldChance); + SetLocalInt(oModule, "df_SpawnEffect", nSpawnEffect); + SetLocalInt(oModule, "df_DespawnEffect", nDespawnEffect); + SetLocalInt(oModule, "df_PatrolRoute", nPatrolRoute); + SetLocalInt(oModule, "df_RouteType", nRouteType); + SetLocalInt(oModule, "df_PlaceableType", nPlaceableType); + SetLocalInt(oModule, "df_PlaceableRefreshPeriod", nPlaceableRefreshPeriod); + SetLocalInt(oModule, "df_TrapDisabled", nTrapDisabled); + SetLocalInt(oModule, "df_LootTable", nLootTable); + SetLocalInt(oModule, "df_LootTable1ItemChance", nLootTable1ItemChance); + SetLocalInt(oModule, "df_LootTable2ItemChance", nLootTable2ItemChance); + SetLocalInt(oModule, "df_LootTable3ItemChance", nLootTable3ItemChance); + SetLocalInt(oModule, "df_DeactivateSpawn", nDeactivateSpawn); + SetLocalInt(oModule, "df_DeactivateScript", nDeactivateScript); + SetLocalInt(oModule, "df_DeactivationInfo", nDeactivationInfo); + SetLocalInt(oModule, "df_ChildLifespanMax", nChildLifespanMax); + SetLocalInt(oModule, "df_ChildLifespanMin", nChildLifespanMin); + SetLocalInt(oModule, "df_SpawnRadius", nSpawnRadius); + SetLocalInt(oModule, "df_SpawnRadiusMin", nSpawnRadiusMin); + SetLocalInt(oModule, "df_SpawnUnseen", nSpawnUnseen); + SetLocalInt(oModule, "df_UnseenRetryCount", nUnseenRetryCount); + SetLocalInt(oModule, "df_CorpseDecay", nCorpseDecay); + SetLocalInt(oModule, "df_CorpseDecayType", nCorpseDecayType); + SetLocalInt(oModule, "df_CampDecay", nCampDecay); + SetLocalInt(oModule, "df_SpawnScript", nSpawnScript); + SetLocalInt(oModule, "df_DespawnScript", nDespawnScript); + SetLocalInt(oModule, "df_DeathScript", nDeathScript); + SetLocalInt(oModule, "df_SpawnCheckCustom", nSpawnCheckCustom); + SetLocalInt(oModule, "df_SpawnCheckPCs", nSpawnCheckPCs); + SetLocalInt(oModule, "f_CheckPCsRadius", nCheckPCsRadius); + SetLocalInt(oModule, "df_SpawnTrigger", nSpawnTrigger); + SetLocalInt(oModule, "df_DespawnTrigger", nDespawnTrigger); + SetLocalInt(oModule, "df_SpawnAreaEffect", nSpawnAreaEffect); + SetLocalInt(oModule, "df_AreaEffectDuration", nAreaEffectDuration); + SetLocalInt(oModule, "df_ObjectEffect", nObjectEffect); + SetLocalInt(oModule, "df_ObjectEffectDuration", nObjectEffectDuration); + SetLocalInt(oModule, "df_RandomSpawn", nRandomSpawn); + SetLocalInt(oModule, "df_SpawnFaction", nSpawnFaction); + SetLocalInt(oModule, "df_SpawnAlignment", nSpawnAlignment); + SetLocalInt(oModule, "df_AlignmentShift", nAlignmentShift); + SetLocalInt(oModule, "df_HeartbeatScript", nHeartbeatScript); + SetLocalInt(oModule, "df_SpawnLocation", nSpawnLocation); + SetLocalInt(oModule, "df_SpawnLocationMin", nSpawnLocationMin); + SetLocalInt(oModule, "df_EntranceExit", nEntranceExit); + SetLocalInt(oModule, "df_EntranceExitMin", nEntranceExitMin); + SetLocalInt(oModule, "df_Exit", nExit); + SetLocalInt(oModule, "df_ExitMin", nExitMin); + SetLocalInt(oModule, "df_HealChildren", nHealChildren); + SetLocalInt(oModule, "df_EncounterLevel", nEncounterLevel); + SetLocalInt(oModule, "df_CorpseRemainsType", nCorpseRemainsType); + + + SetLocalInt(oModule, "df_UseCache", nUseCache); + SetLocalInt(oModule, "df_CacheBucket", nCacheBucket); + SetLocalInt(oModule, "df_CacheCondition", nCacheCondition); + SetLocalInt(oModule, "df_CacheTiming", nCacheTiming); + + SetLocalInt(oModule, "ModuleSpawnCount", 0); + + SetLocalString(oModule, "df_SeatTag", sSeatTag); + SetLocalInt(oModule, "LeftoversForceProcessing", bLeftoversForceProcessing); + SetLocalInt(oModule, "CheckForStuckPatrols", bCheckForStuckPatrols); + SetLocalInt(oModule, "AlwaysDestroyCorpses", bAlwaysDestroyCorpses); + + // Record Initialization + SetLocalInt(oModule, "GlobalDefaultsInitialized", TRUE); +} diff --git a/_module/nss/spawn_dist_corps.nss b/_module/nss/spawn_dist_corps.nss new file mode 100644 index 0000000..fa0fde3 --- /dev/null +++ b/_module/nss/spawn_dist_corps.nss @@ -0,0 +1,127 @@ +// +// NESS V8.0 +// Spawn Disturbed Corpse +// +// Brought into the NESS distribution for Version 8.0 and beyond. Original +// header below. This file has been modified from its original form. +// + +//////////////////////////////////////////////////////////////////////////////// +// // // +// _kb_ondist_loot // VERSION 1.1 // +// // // +// by Keron Blackfeld on 07/17/2002 //////////////////////////// +// // +// email Questions and Comments to: keron@broadswordgaming.com or catch me // +// in Bioware's NWN Community - Builder's NWN Scripting Forum // +// // +//////////////////////////////////////////////////////////////////////////////// +// // +// This is an OnDisturbed Script to go with my _kb_loot_corpse script for // +// LOOTABLE MONSTER/NPC CORPSES. If you were using my _kb_ohb_lootable, be // +// sure to remove that script from the onHeartbeat of your lootable, the // +// "invis_corpse_obj" placeable. // +// // +// PLACE THIS SCRIPT IN THE ONDISTURBED EVENT OF YOUR "invis_corpse_obj" // +// BLUEPRINT. This script checks the inventory of OBJECT_SELF, and when it // +// is empty, it checks the LocalInt to see if the now empty corpse should // +// be Destroyed along with the Lootable Corpse Object. This script will also // +// checks to see if it should clear its own inventory prior to fading in // +// order to prevent a lootbag from appearing. If the inventory is NOT empty, // +// it checks to see if the ARMOUR is removed from itself, and if so, it // +// destroys the Original Armour on the corpse. // +// // +// The _kb_loot_corpse script must have this line: // +// int nKeepEmpties = FALSE; // +// in order for the Empty Corpse to Destroy itself in this script. // +// // +//////////////////////////////////////////////////////////////////////////////// + +// +// ALFA NESS +// Spawn : Loot Corpse Disturbed Script v1.2 +// +// +// Do NOT Modify this File +// See 'spawn__readme' for Instructions +// + +#include "spawn_functions" + +/******************************************* + ** Here is our main script, which is ** + ** fired if the Inventory is disturbed. ** + ** It then checks to see if it needs to ** + ** either clean up the corpse or Destroy ** + ** the original suit of armor still on ** + ** the corpse. ** + *******************************************/ +void main() +{ + //** Get all of our required information + + //Get item that was disturbed to trigger event + object oInvDisturbed = GetInventoryDisturbItem(); + + //Get type of inventory disturbance + int nInvDistType = GetInventoryDisturbType(); + + // Get Values set by spawn_corpse_dth at creation + object oHostCorpse = GetLocalObject(OBJECT_SELF, "HostBody"); + object oOrigArmor = GetLocalObject(OBJECT_SELF, "OrigArmor"); + object oLootArmor = GetLocalObject(OBJECT_SELF, "LootArmor"); + object oOrigRgtWpn = GetLocalObject(OBJECT_SELF, "OrigRgtWpn"); + object oLootRgtWpn = GetLocalObject(OBJECT_SELF, "LootRgtWpn"); + object oOrigLftWpn = GetLocalObject(OBJECT_SELF, "OrigLftWpn"); + object oLootLftWpn = GetLocalObject(OBJECT_SELF, "LootLftWpn"); + + object oPC = GetLastDisturbed(); + AssignCommand(oPC, ActionPlayAnimation(ANIMATION_LOOPING_GET_LOW, 1.0f, 1.2f)); + + object oHasInventory = GetFirstItemInInventory(OBJECT_SELF); //Check for inventory + if (oHasInventory == OBJECT_INVALID) //If no inventory found + { + /******************************************* + ** Delete empty. ** + *******************************************/ + NESS_CleanCorpse(oHostCorpse); + AssignCommand(oHostCorpse,SetIsDestroyable(TRUE,FALSE,FALSE)); //Set actual corpse to destroyable + DestroyObject(oHostCorpse); //Delete the actual Creature Corpse + + DelayCommand(1.0f,DestroyObject(OBJECT_SELF)); //Delete Lootable Object (Self) + + } + + else + { + /******************************************* + ** If not empty, check to see if armor, ** + ** left or right weapons have been ** + ** removed from corpse. ** + *******************************************/ + if (nInvDistType == INVENTORY_DISTURB_TYPE_REMOVED) + { + if (oInvDisturbed == oLootArmor) + { + /******************************************* + ** The Armor is gone - destroy original ** + ** armor still showing on corpse. ** + *******************************************/ + DestroyObject(oOrigArmor); + } + + // We don't do these for now, as the unequip animations look too + // damn silly + //else if (oInvDisturbed == oLootRgtWpn) + //{ + // DestroyObject(oOrigRgtWpn); + //} + + //else if (oInvDisturbed == oLootLftWpn) + //{ + // DestroyObject(oOrigLftWpn); + //} + } + } + +} diff --git a/_module/nss/spawn_flags.nss b/_module/nss/spawn_flags.nss new file mode 100644 index 0000000..7fa45b0 --- /dev/null +++ b/_module/nss/spawn_flags.nss @@ -0,0 +1,154 @@ +// +// NESS V8.0 +// Spawn Flags +// +// Do NOT Modify this File +// See 'spawn__readme' for Instructions +// + +int IsFlagPresent(string sName, string sFlag) +{ + int nPos = FindSubString(sName, sFlag); + if (nPos >= 0) // flag found + { + //debug("flag " + sFlag + " present"); + return TRUE; + } + return FALSE; +} + +// This Function parses a String for Flags +// When nGetValue is FALSE, this returns TRUE if the flag exists, FALSE otherwise. +// nDefault is unused when nGetValue is FALSE. +// When nGetValue is TRUE, it returns the value of the flag if it +// exists, or nDefault otherwise. +int GetFlagValue(string sName, string sFlag, int nDefault) +{ + int nRetValue; + int nPos; + + nPos = FindSubString(sName, sFlag); + if (nPos >= 0) // flag found + { + // Trim to the start of the flag + sName = GetStringRight(sName, GetStringLength(sName) - + (nPos + GetStringLength(sFlag))); + + // find the end of the flag + nPos = FindSubString(sName, "_"); + if (nPos >= 0) + { + sName = GetStringLeft(sName, nPos); + } + + // Retreive Flag + if (TestStringAgainstPattern("*n", GetStringLeft(sName, 1)) == FALSE) + { + // No value specified, use default + nRetValue = nDefault; + //debug("flag " + sFlag + " - def val = " + IntToString(nRetValue)); + + + } + else + { + // Retrieve Value + nRetValue = StringToInt(sName); + //debug("flag " + sFlag + " - val = " + IntToString(nRetValue)); + } + } + + else // flag not found at all + { + nRetValue = nDefault; + + } + + // Return Value + return nRetValue; +} +// + +int IsSubFlagPresent(string sName, string sFlag, string sSubFlag) +{ + int nPos = FindSubString(sName, sFlag); + if (nPos >= 0) + { + // Trim Flag + sName = GetStringRight(sName, GetStringLength(sName) - + (nPos + GetStringLength(sFlag))); + + nPos = FindSubString(sName, "_"); + if (nPos >= 0) + { + sName = GetStringLeft(sName, nPos); + } + + // Retreive SubFlag + nPos = FindSubString(sName, sSubFlag); + if (nPos >= 0) + { + //debug("flag " + sFlag + "subflag " + sSubFlag + " present"); + return TRUE; + } + } + + return FALSE; +} + +// This Function parses a String for a Subvalue from Flags +int GetSubFlagValue(string sName, string sFlag, string sSubFlag, int nDefault) +{ + int nRetValue; + int nPos; + + nPos = FindSubString(sName, sFlag); + if (nPos >= 0) + { + // Trim Flag + sName = GetStringRight(sName, GetStringLength(sName) - + (nPos + GetStringLength(sFlag))); + + nPos = FindSubString(sName, "_"); + + if (nPos >= 0) + { + sName = GetStringLeft(sName, nPos); + } + + // Retreive SubFlag + nPos = FindSubString(sName, sSubFlag); + if (nPos >= 0) + { + sName = GetStringRight(sName, GetStringLength(sName) - + (nPos + GetStringLength(sSubFlag))); + + if (TestStringAgainstPattern("*n", GetStringLeft(sName, 1)) == FALSE) + { + nRetValue = nDefault; // SubFlag found but no value + //debug("flag " + sFlag + " subflag " + sSubFlag + " - def val = " + + // IntToString(nRetValue)); + } + else + { + // Retrieve Value + nRetValue = StringToInt(sName); // Subflag (with value) found + //debug("flag " + sFlag + " subflag " + sSubFlag + " - val = " + + // IntToString(nRetValue)); + } + } + else + { + nRetValue = nDefault; // subflag not found + } + } + else + { + nRetValue = nDefault; // Main flag not found + } + + // Return Value + return nRetValue; +} +// + diff --git a/_module/nss/spawn_functions.nss b/_module/nss/spawn_functions.nss new file mode 100644 index 0000000..d0e1b95 --- /dev/null +++ b/_module/nss/spawn_functions.nss @@ -0,0 +1,3702 @@ +// +// NESS V8.1.3 +// Spawn Functions +// +// Do NOT Modify this File +// See 'spawn__readme' for Instructions +// + +#include "spawn_timefuncs" +#include "spawn_flags" +#include "spawn_cfg_cusflg" +#include "x0_i0_corpses" + +void InitFlags(object oSpawn, string sSpawnName, string sSpawnTag); +int SetSpawns(location lBase); +string PadIntToString(int nInt, int nDigits); + +void ResetSpawn(object oSpawn, int nTimeNow); +int IsRestoreBlocked(object oSpawn, location lChildLoc, int iExpireTime, + int nTimeNow); + +void SetupSpawned(object oSpawn, object oSpawned, location lHome, int nTimeNow, + int nWalkToHome = FALSE); + +void SetupCampSpawned(object oSpawn, object oSpawned, vector vCampPosition, + location lHome, string sFlags); + +// Returns new nNextSpawnTime +int SetupSpawnDelay(int nSpawnDelay, int nDelayMinimum, int nDelayRandom, + int nTimeNow); + +// Writes all the necessary info onto a spawn and its child after spawning +void RecordSpawned(object oSpawn, object oSpawned, location lHome, + location lEntranceExit, float fSpawnedFacing); + +// Saves the state of one child onto the spawn (or a camp object) for respawning +void SaveStateOnDespawn(object oSpawned, object oSpawn, int nCamp=FALSE); + +// Saves a camp object onto the spawn for respawning +void SaveCampStateOnDespawn(object oCamp, object oSpawn); + +// Respawns all saved children/camps +void RestorePCDespawns(object oSpawn, int nTimeNow); + +void ReturnHome(location lHome); +int FindNextEmptyChildSlot(object oSpawn); + +//creates a Ness object by either copying or creating and copying +object CreateNessObject(object oSpawn, int nObjectType, string sTemplate, location lLocation + , int nCacheCondition = 0, int nCacheBucket = 0); + +//creates a cached object from oSpawned +void CreateCachedObject(object oSpawn, object oSpawned, int nCacheBucket = 0, int nCachedCondtion = 0); + +// refcounting support + +const string REFCOUNT = "RefCount"; +const int bUseRefCount = TRUE; + +//adds to the refcount of oCachedSpawn if not already referencd by oCounter +int AddRef(object oCachedSpawn, object oCounter); + +//Reduces the refcount of oCachedSpawn(if referenced by oCounter). +//If the count drops to zero the cached spawn is destroyed +int Release(object oCachedSpawn, object oCounter); + +//returns the current count of oCachedSpawn +int RefCount(object oCachedSpawn); + +//hard sets the refcount, should only be used to transfer reffed counts whe +//using forced caching. +void SetRefOverride(object oCachedSpawn, int nRefCount); + +//adds to a running list of templates for caches the spawn point. This +//list is used to release cached spawns when no longer in use. +void AddRefCountList(object oCounter, string sTemplate); + +//returns TRUE if the template is already in the refcountlist +int TemplateInRefCountList(object oCounter, string sTemplate); + +//releases all refed objects in oCounter; +void ReleaseAll(object oCounter); + +//calls releaseall on every spawn in oArea +void ReleaseAreaRefs(object oArea); +// +// Pseudo-heartbeat support +// + +const string SPAWN_INTERVAL = "Spawn_Interval"; +const string SPAWN_PCS_IN_AREA = "Spawn_PCsInArea"; +const string SPAWN_AREA_COUNT = "AreaSpawnCount"; +const string SPAWN_HEARTBEAT_SCRIPT = "SpawnHeartbeatScript"; +const string SPAWN_HEARTBEAT_SCHEDULED = "SpawnHeartbeatScheduled"; + +// This checks conditions to determine if a pseudo-heartbeat should be called +int NeedPseudoHeartbeat( object oArea ); +// ... and if it should, this schedules it. +void ScheduleNextPseudoHeartbeat( object oArea ); + +// Pseudo-heartbeat area enter and exit functions +void Spawn_OnAreaEnter( string sHeartbeatScript = "spawn_sample_hb", + float fHeartbeatInterval = 6.0, float fFirstDelay = 0.0 ); +void Spawn_OnAreaExit(); + +// Externals +void LootTable(object oSpawn, object oSpawned, int nLootTable); +effect ObjectEffect(object oSpawn); + + + +int SPAWN_DELAY_DEBUG = FALSE; +int SPAWN_COUNT_DEBUG = FALSE; +int CONSOLE_DEBUG = TRUE; + +void SpawnDelayDebug(object oSpawn, string str) +{ + if (SPAWN_DELAY_DEBUG) + { + WriteTimestampedLogEntry("[sd " + GetName(GetArea(oSpawn)) + "] " + + GetLocalString(oSpawn, "f_Template") + " (" + ObjectToString(oSpawn) + "): " + str); + + if (CONSOLE_DEBUG) + { + SendMessageToAllDMs("[sd " + GetName(GetArea(oSpawn)) + "] " + + GetLocalString(oSpawn, "f_Template") + " (" + ObjectToString(oSpawn) + "): " + str); + } + /* + object oPC = GetFirstPC(); + if (! GetIsDM(oPC)) + SendMessageToPC(oPC, str); + */ + } +} + +void SpawnCountDebug(object oSpawn, string str) +{ + if (SPAWN_COUNT_DEBUG) + { + WriteTimestampedLogEntry("[sc " + GetName(GetArea(oSpawn)) + "] " + + GetLocalString(oSpawn, "f_Template") + " (" +ObjectToString(oSpawn) + "): " + str); + + if (CONSOLE_DEBUG) + { + SendMessageToAllDMs("[sc " + GetName(GetArea(oSpawn)) + "] " + + GetLocalString(oSpawn, "f_Template") + " (" +ObjectToString(oSpawn) + "): " + str); + } + /* + object oPC = GetFirstPC(); + if (! GetIsDM(oPC)) + SendMessageToPC(oPC, str); + */ + } +} + +// +// Custom Functions +// +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +void AddChild(object oSpawn, object oSpawned); +void ReportSpawns(int nAreaSpawns, int nModuleSpawns); +void TrackModuleSpawns(int nAreaSpawnCount, int nTrackModuleSpawns); +void DumpModuleSpawns(); +void DumpModuleSpawns(); + +// +// PC and NPC Functions +// +int CountPCsInArea(object oArea = OBJECT_INVALID, int nDM = FALSE); +int CountPCsInRadius(location lCenter, float fRadius, int nDM = FALSE); +object GetRandomPCInArea(object oArea, object oSpawn); + +// This struct is returned by TransferAllInventorySlots() to return back the +// object ids of the armor, right hand weapon, and left hand weapons (if any) +// both left on the (original) corpse and copied to the lootable corpse +struct NESS_CorpseInfo +{ + object origLftWpn; + object origRgtWpn; + object origArmor; + object lootLftWpn; + object lootRgtWpn; + object lootArmor; +}; + +// This is equivalent to (and adapted from) the Bioware LootInventorySlots() function. +// However, it does not schedule deletions for a hardcoded +// corpse decay time later (the corpse decay script handles those). +struct NESS_CorpseInfo TransferAllInventorySlots(object oCreature, object oTarget, + int bDropWielded=FALSE); + +int IsCreatureItem(object oItem); +void RandomWalk(object oSpawn, float fWalkingRadius, int nRun); +void FindSeat(object oSpawn, object oSpawned); + +void NESS_CleanInventory(object oSpawned); +// for back compatibility (grr) will remove at some point +void CleanInventory(object oSpawned) +{ + NESS_CleanInventory(oSpawned); +} +void NESS_CleanEquipped(object oSpawned); +void NESS_CleanCorpse(object oSpawned); +object NESS_CopyCorpseItem(object oSource, object oInventory); +void StripNonDroppables(object oSpawned); +void DestroyIfNonDrop(object oItem); + +// +// Date and Time Functions +// +int IsBetweenDays(int nCheckDay, int nDayStart, int nDayEnd); +int IsBetweenHours(int nCheckHour, int nHourStart, int nHourEnd); +// +// Patrol Route Functions +// +void SetPatrolRoute(int nPatrolRoute, int nStartClosest=FALSE); +void DoPatrolRoute(int nPatrolRoute, int nRouteType); +void AddPatrolStop(int nPatrolRoute, int nStopNumber, int bJump=FALSE); +void CheckForStuckPatrol(object oCreature, int nPatrolRoute, int nRouteType); + +// +// Camp Functions +// +int ProcessCamp(object oCamp); +void DestroyCamp(object oCamp, float fCampDecay, int nSaveState); +// +// Outside Functions +// +void SpawnFlags(object oSpawn, int nFlagTableNumber); +// +// + +// Functions for External Use. +object NESS_GetSpawnByID(int nSpawnID, object oArea); +void NESS_ActivateSpawnByID(int nSpawnID, object oAreaD); +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 flag=TRUE); +int NESS_IsModuleSpawnTracking(); +void NESS_DumpModuleSpawns(int flag=TRUE); +int NESS_IsModuleSpawnDumping(); +void NESS_ReturnHome(object oCreature, int bRun=FALSE); +void NESS_ProcessDeadCreature(object oCreature, object oSpawn=OBJECT_INVALID); + +// This Function Initializes the Flags +void InitFlags(object oSpawn, string sSpawnName, string sSpawnTag) +{ + // These are true when certain flags are present, false otherwise + + // Retreive Defaults + object oModule = GetModule(); + + // These have values associated with them, although in some cases value + // of 0 is treated as a non-existent flag + int dfProcessFrequency = GetLocalInt(oModule, "df_processFrequency"); + int dfProcessOffset = GetLocalInt(oModule, "df_processOffest"); + int dfInitialState = GetLocalInt(oModule, "df_InitialState"); + int dfInitialDelay = GetLocalInt(oModule, "df_InitialDelay"); + int dfFlagTableNumber = GetLocalInt(oModule, "df_FlagTableNumber"); + int dfSpawnDelay = GetLocalInt(oModule, "df_SpawnDelay"); + int dfDelayMinimum = GetLocalInt(oModule, "df_DelayMinimum"); + int dfSpawnNumber = GetLocalInt(oModule, "df_SpawnNumber"); + int dfSpawnNumberMin = GetLocalInt(oModule, "df_SpawnNumberMin"); + int dfSpawnNumberAtOnce = GetLocalInt(oModule, "df_SpawnNumberAtOnce"); + int dfSpawnNumberAtOnceMin = GetLocalInt(oModule, "df_SpawnNumberAtOnceMin"); + int dfSpawnDayStart = GetLocalInt(oModule, "df_SpawnDayStart"); + int dfSpawnDayEnd = GetLocalInt(oModule, "df_SpawnDayEnd"); + int dfSpawnHourStart = GetLocalInt(oModule, "df_SpawnHourStart"); + int dfSpawnHourEnd = GetLocalInt(oModule, "df_SpawnHourEnd"); + int dfWanderRange = GetLocalInt(oModule, "df_WanderRange"); + int dfReturnHomeRange = GetLocalInt(oModule, "df_ReturnHomeRange"); + int dfPCCheckDelay = GetLocalInt(oModule, "df_PCCheckDelay"); + int dfRandomGold = GetLocalInt(oModule, "df_RandomGold"); + int dfRandomGoldMin = GetLocalInt(oModule, "df_RandomGoldMin"); + int dfGoldChance = GetLocalInt(oModule, "df_GoldChance"); + int dfSpawnEffect = GetLocalInt(oModule, "df_SpawnEffect"); + int dfDespawnEffect = GetLocalInt(oModule, "df_DespawnEffect"); + int dfPatrolRoute = GetLocalInt(oModule, "df_PatrolRoute"); + int dfRouteType = GetLocalInt(oModule, "df_RouteType"); + int dfPlaceableType = GetLocalInt(oModule, "df_PlaceableType"); + int dfTrapDisabled = GetLocalInt(oModule, "df_TrapDisabled"); + int dfPlaceableRefreshPeriod = GetLocalInt(oModule, "df_PlaceableRefreshPeriod"); + int dfLootTable = GetLocalInt(oModule, "df_LootTable"); + int dfLootTable1ItemChance = GetLocalInt(oModule, "df_LootTable1ItemChance"); + int dfLootTable2ItemChance = GetLocalInt(oModule, "df_LootTable2ItemChance"); + int dfLootTable3ItemChance = GetLocalInt(oModule, "df_LootTable3ItemChance"); + int dfDeactivateSpawn = GetLocalInt(oModule, "df_DeactivateSpawn"); + int dfDeactivateScript = GetLocalInt(oModule, "df_DeactivateScript"); + int dfDeactivationInfo = GetLocalInt(oModule, "df_DeactivationInfo"); + int dfChildLifespanMax = GetLocalInt(oModule, "df_ChildLifespanMax"); + int dfChildLifespanMin = GetLocalInt(oModule, "df_ChildLifespanMin"); + int dfSpawnRadius = GetLocalInt(oModule, "df_SpawnRadius"); + int dfSpawnRadiusMin = GetLocalInt(oModule, "df_SpawnRadiusMin"); + int dfSpawnUnseen = GetLocalInt(oModule, "df_SpawnUnseen"); + int dfUnseenRetryCount = GetLocalInt(oModule, "df_dfUnseenRetryCount"); + int dfCorpseDecay = GetLocalInt(oModule, "df_CorpseDecay"); + int dfCorpseDecayType = GetLocalInt(oModule, "df_CorpseDecayType"); + int dfCorpseRemainsType = GetLocalInt(oModule, "df_CorpseRemainsType"); + int dfCampDecay = GetLocalInt(oModule, "df_CampDecay"); + int dfSpawnScript = GetLocalInt(oModule, "df_SpawnScript"); + int dfDespawnScript = GetLocalInt(oModule, "df_DespawnScript"); + int dfDeathScript = GetLocalInt(oModule, "df_DeathScript"); + int dfSpawnCheckCustom = GetLocalInt(oModule, "df_SpawnCheckCustom"); + int dfSpawnCheckPCs = GetLocalInt(oModule, "df_SpawnCheckPCs"); + int dfCheckPCsRadius = GetLocalInt(oModule, "f_CheckPCsRadius"); + int dfSpawnTrigger = GetLocalInt(oModule, "df_SpawnTrigger"); + int dfDespawnTrigger = GetLocalInt(oModule, "df_DespawnTrigger"); + int dfSpawnAreaEffect = GetLocalInt(oModule, "df_SpawnAreaEffect"); + int dfAreaEffectDuration = GetLocalInt(oModule, "df_AreaEffectDuration"); + int dfObjectEffect = GetLocalInt(oModule, "df_ObjectEffect"); + int dfObjectEffectDuration = GetLocalInt(oModule, "df_ObjectEffectDuration"); + int dfRandomSpawn = GetLocalInt(oModule, "df_RandomSpawn"); + int dfSpawnFaction = GetLocalInt(oModule, "df_SpawnFaction"); + int dfSpawnAlignment = GetLocalInt(oModule, "df_SpawnAlignment"); + int dfAlignmentShift = GetLocalInt(oModule, "df_AlignmentShift"); + int dfHeartbeatScript = GetLocalInt(oModule, "df_HeartbeatScript"); + int dfSpawnLocation = GetLocalInt(oModule, "df_SpawnLocation"); + int dfSpawnLocationMin = GetLocalInt(oModule, "df_SpawnLocationMin"); + int dfSpawnFacing = GetLocalInt(oModule, "df_SpawnFacing"); + int dfEntranceExit = GetLocalInt(oModule, "df_EntranceExit"); + int dfEntranceExitMin = GetLocalInt(oModule, "df_EntranceExitMin"); + int dfExit = GetLocalInt(oModule, "df_Exit"); + int dfExitMin = GetLocalInt(oModule, "df_ExitMin"); + int dfHealChildren = GetLocalInt(oModule, "df_HealChildren"); + int dfGlobalSuppressDR = GetLocalInt(oModule, "df_GlobalSuppressDR"); + int dfSuppressDR = GetLocalInt(oModule, "df_SuppressDR"); + int dfEncounterLevel = GetLocalInt(oModule, "df_EncounterLevel"); + int dfUseCache = GetLocalInt(oModule, "df_UseCache"); + int dfCacheBucket = GetLocalInt(oModule, "df_CacheBucket"); + int dfCacheCondition = GetLocalInt(oModule, "df_CacheCondition"); + int dfCacheTiming = GetLocalInt(oModule, "df_CacheTiming"); + + //debug("init flags: " + sSpawnName); + SetLocalString(oSpawn, "f_Flags", sSpawnName); + SetLocalString(oSpawn, "f_Template", sSpawnTag); + + // Initialize FlagTable + int nFlagTable = IsFlagPresent(sSpawnName, "_FT"); + int nFlagTableNumber = GetFlagValue(sSpawnName, "_FT", dfFlagTableNumber); + + if (nFlagTable == TRUE) + { + SpawnFlags(oSpawn, nFlagTableNumber); + if (GetStringLeft(GetLocalString(oSpawn, "f_Flags"), 2) == "SP") + { + sSpawnName = GetLocalString(oSpawn, "f_Flags"); + } + else if (GetStringLeft(GetLocalString(oSpawn, "f_Flags"), 1) == "_") + { + sSpawnName = sSpawnName + GetLocalString(oSpawn, "f_Flags"); + } + + SetLocalString(oSpawn, "f_Flags", sSpawnName); + sSpawnTag = GetLocalString(oSpawn, "f_Template"); + } + + // Initialize CustomFlag + string sCustomFlag; + int nCustomFlag = IsFlagPresent(sSpawnName, "CF"); + + if (nCustomFlag == TRUE) + { + sCustomFlag = GetStringRight(sSpawnName, GetStringLength(sSpawnName) - + (FindSubString(sSpawnName, "CF") + 2)); + sSpawnName = GetStringLeft(sSpawnName, GetStringLength(sSpawnName) - + (GetStringLength(sCustomFlag) + 3)); + SetLocalString(oSpawn, "f_Flags", sSpawnName); + + } + + // Record CustomFlag + SetLocalString(oSpawn, "f_CustomFlag", sCustomFlag); + ParseCustomFlags(oSpawn, sCustomFlag); + + // Initialize Process Frequency + int nProcessFrequency = GetFlagValue(sSpawnName, "SP", dfProcessFrequency); + int nProcessOffset = GetSubFlagValue(sSpawnName, "SP", "O", dfProcessOffset); + if (nProcessFrequency <= 0) + { + nProcessFrequency = 1; + } + + // Record Process Frequency + SetLocalInt(oSpawn, "f_ProcessFrequency", nProcessFrequency); + SetLocalInt(oSpawn, "f_ProcessOffset", nProcessOffset); + + // Initialize InitialState + int nInitialState = GetFlagValue(sSpawnName, "IS", dfInitialState); + int nInitialDelay = GetSubFlagValue(sSpawnName, "IS", "D", dfInitialDelay); + nInitialDelay *= 60; // convert to seconds + + // Record InitialState + SetLocalInt(oSpawn, "f_InitialState", nInitialState); + SetLocalInt(oSpawn, "f_InitialDelay", nInitialDelay); + + // Initialize SpawnID + int nSpawnID = GetFlagValue(sSpawnName, "ID", 0); + + // Record SpawnID + if (nSpawnID > 0) + { + SetLocalInt(oSpawn, "SpawnID", nSpawnID); + } + + // Initialize SpawnDelay + int nSpawnDelay = GetFlagValue(sSpawnName, "SD", dfSpawnDelay); + nSpawnDelay *= 60; // convert to seconds + int nDelayRandom = IsSubFlagPresent(sSpawnName, "SD", "M"); + int nDelayMinimum = GetSubFlagValue(sSpawnName, "SD", "M", dfDelayMinimum); + nDelayMinimum *= 60; // convert to seconds + int nSpawnDelayPeriodic = IsSubFlagPresent(sSpawnName, "SD", "P"); + + if (nDelayMinimum > nSpawnDelay) + { + nDelayRandom = FALSE; + nDelayMinimum = 0; + } + + // Record SpawnDelay + SetLocalInt(oSpawn, "f_SpawnDelay", nSpawnDelay); + SetLocalInt(oSpawn, "f_DelayRandom", nDelayRandom); + SetLocalInt(oSpawn, "f_DelayMinimum", nDelayMinimum); + SetLocalInt(oSpawn, "f_SpawnDelayPeriodic", nSpawnDelayPeriodic); + + // Initialize SpawnNumber + int nSpawnNumber = GetFlagValue(sSpawnName, "SN", dfSpawnNumber); + int nSpawnNumberMax = nSpawnNumber; + int nSpawnNumberMin = GetSubFlagValue(sSpawnName, "SN", "M", dfSpawnNumberMin); + int nSpawnAllAtOnce = IsFlagPresent(sSpawnName, "SA"); + int nSpawnNumberAtOnce = GetFlagValue(sSpawnName, "SA", dfSpawnNumberAtOnce); + int nSpawnNumberAtOnceMin = GetSubFlagValue(sSpawnName, "SA", "M", + dfSpawnNumberAtOnceMin); + + if (nSpawnNumberMin > nSpawnNumber) + { + nSpawnNumberMin = -1; + } + if (nSpawnNumberMin > -1) + { + int nRndSpawnNumber = Random(nSpawnNumberMax + 1); + while (nRndSpawnNumber < nSpawnNumberMin) + { + nRndSpawnNumber = Random(nSpawnNumberMax + 1); + } + nSpawnNumber = nRndSpawnNumber; + } + + if (nSpawnNumberAtOnce == 1) + { + nSpawnAllAtOnce = FALSE; + } + if (nSpawnNumberAtOnceMin > nSpawnNumberAtOnce) + { + nSpawnNumberAtOnceMin = 0; + } + + // Record SpawnNumber + SetLocalInt(oSpawn, "f_SpawnNumber", nSpawnNumber); + SetLocalInt(oSpawn, "f_SpawnNumberMin", nSpawnNumberMin); + SetLocalInt(oSpawn, "f_SpawnNumberMax", nSpawnNumberMax); + SetLocalInt(oSpawn, "f_SpawnAllAtOnce", nSpawnAllAtOnce); + SetLocalInt(oSpawn, "f_SpawnNumberAtOnce", nSpawnNumberAtOnce); + SetLocalInt(oSpawn, "f_SpawnNumberAtOnceMin", nSpawnNumberAtOnceMin); + + // Initialize Day/Night Only + int nDayOnly = IsFlagPresent(sSpawnName, "DO"); + int nDayOnlyDespawn = IsSubFlagPresent(sSpawnName, "DO", "D"); + int nNightOnly = IsFlagPresent(sSpawnName, "NO"); + int nNightOnlyDespawn = IsSubFlagPresent(sSpawnName, "NO", "D"); + + // Record Day/Night Only + SetLocalInt(oSpawn, "f_DayOnly", nDayOnly); + SetLocalInt(oSpawn, "f_DayOnlyDespawn", nDayOnlyDespawn); + SetLocalInt(oSpawn, "f_NightOnly", nNightOnly); + SetLocalInt(oSpawn, "f_NightOnlyDespawn", nNightOnlyDespawn); + + // Initialize Day/Hour Spawns + int nSpawnDayStart = GetFlagValue(sSpawnName, "DY", dfSpawnDayStart); + int nSpawnDayEnd = GetSubFlagValue(sSpawnName, "DY", "T", dfSpawnDayEnd); + if (nSpawnDayEnd > nSpawnDayStart) + { + nSpawnDayEnd = -1; + } + int nSpawnHourStart = GetFlagValue(sSpawnName, "HR", dfSpawnHourStart); + int nSpawnHourEnd = GetSubFlagValue(sSpawnName, "HR", "T", dfSpawnHourEnd); + if (nSpawnHourStart > nSpawnHourEnd) + { + nSpawnHourEnd = -1; + } + + // Record Day/Hour Spawns + SetLocalInt(oSpawn, "f_SpawnDayStart", nSpawnDayStart); + SetLocalInt(oSpawn, "f_SpawnDayEnd", nSpawnDayEnd); + SetLocalInt(oSpawn, "f_SpawnHourStart", nSpawnHourStart); + SetLocalInt(oSpawn, "f_SpawnHourEnd", nSpawnHourEnd); + + // Initialize RandomWalk + int nRandomWalk = IsFlagPresent(sSpawnName, "RW"); + float fWanderRange = IntToFloat(GetSubFlagValue(sSpawnName, "RW", "R", dfWanderRange)); + + // Record RandomWalk + SetLocalInt(oSpawn, "f_RandomWalk", nRandomWalk); + SetLocalFloat(oSpawn, "f_WanderRange", fWanderRange); + + // Initialize ReturnHome + int nReturnHome = IsFlagPresent(sSpawnName, "RH"); + float fReturnHomeRange = IntToFloat(GetFlagValue(sSpawnName, "RH", dfReturnHomeRange)); + + // Record ReturnHome + SetLocalInt(oSpawn, "f_ReturnHome", nReturnHome); + SetLocalFloat(oSpawn, "f_ReturnHomeRange", fReturnHomeRange); + + // Initialize PCCheck + int nPCCheck = IsFlagPresent(sSpawnName, "PC"); + int nPCCheckDelay = GetFlagValue(sSpawnName, "PC", dfPCCheckDelay); + nPCCheckDelay *= 60; // convert to seconds + int nPCReset = IsSubFlagPresent(sSpawnName, "PC", "R"); + + // Record PCCheck + SetLocalInt(oSpawn, "f_PCCheck", nPCCheck); + SetLocalInt(oSpawn, "f_PCCheckDelay", nPCCheckDelay); + SetLocalInt(oSpawn, "f_PCReset", nPCReset); + + // Initialize RandomGold + int nRandomGold = GetFlagValue(sSpawnName, "RG", dfRandomGold); + int nRandomGoldMin = GetSubFlagValue(sSpawnName, "RG", "M", dfRandomGoldMin); + int nGoldChance = GetSubFlagValue(sSpawnName, "RG", "C", dfGoldChance); + + // Record RandomGold + SetLocalInt(oSpawn, "f_RandomGold", nRandomGold); + SetLocalInt(oSpawn, "f_RandomGoldMin", nRandomGoldMin); + SetLocalInt(oSpawn, "f_GoldChance", nGoldChance); + + // Initialize SpawnEffects + int nSpawnEffect = GetFlagValue(sSpawnName, "FX", dfSpawnEffect); + int nDespawnEffect = GetSubFlagValue(sSpawnName, "FX", "D", dfDespawnEffect); + + // Record SpawnEffects + SetLocalInt(oSpawn, "f_SpawnEffect", nSpawnEffect); + SetLocalInt(oSpawn, "f_DespawnEffect", nDespawnEffect); + + // Initialize PatrolRoutes + int nPatrolRoute = GetFlagValue(sSpawnName, "PR", dfPatrolRoute); + int nRouteType = GetSubFlagValue(sSpawnName, "PR", "T", dfRouteType); + int nStartAtClosest = IsSubFlagPresent(sSpawnName, "PR", "C"); + + // Record PatrolRoutes + SetLocalInt(oSpawn, "f_PatrolRoute", nPatrolRoute); + SetLocalInt(oSpawn, "f_RouteType", nRouteType); + SetLocalInt(oSpawn, "f_PatrolStartAtClosest", nStartAtClosest); + + // Initialize Placeables + int nPlaceable = IsFlagPresent(sSpawnName, "PL"); + int nPlaceableType = GetFlagValue(sSpawnName, "PL", dfPlaceableType); + int nTrapDisabled = GetSubFlagValue(sSpawnName, "PL", "T", dfTrapDisabled); + int nPlaceableRefreshPeriod = GetSubFlagValue(sSpawnName, "PL", "P", dfPlaceableRefreshPeriod); + nPlaceableRefreshPeriod *= 60; // convert to seconds + + // Record Placeables + SetLocalInt(oSpawn, "f_Placeable", nPlaceable); + SetLocalInt(oSpawn, "f_PlaceableType", nPlaceableType); + SetLocalInt(oSpawn, "f_TrapDisabled", nTrapDisabled); + SetLocalInt(oSpawn, "f_PlaceableRefreshPeriod", nPlaceableRefreshPeriod); + + // Initialize SpawnGroups + int nSpawnGroup = IsFlagPresent(sSpawnName, "SG"); + + // Record SpawnGroups + SetLocalInt(oSpawn, "f_SpawnGroup", nSpawnGroup); + + // Initialize LootTable + int nLootTable = GetFlagValue(sSpawnName, "LT", dfLootTable); + int nLootTable1ItemChance = GetSubFlagValue(sSpawnName, "LT", "A", dfLootTable1ItemChance); + int nLootTable2ItemChance = GetSubFlagValue(sSpawnName, "LT", "B", dfLootTable2ItemChance); + int nLootTable3ItemChance = GetSubFlagValue(sSpawnName, "LT", "C", dfLootTable3ItemChance); + + if (nLootTable1ItemChance > 100) nLootTable1ItemChance = 100; + if (nLootTable2ItemChance > 100) nLootTable2ItemChance = 100; + if (nLootTable3ItemChance > 100) nLootTable3ItemChance = 100; + + // Record LootTable + SetLocalInt(oSpawn, "f_LootTable", nLootTable); + SetLocalInt(oSpawn, "f_LootTable1ItemChance", nLootTable1ItemChance); + SetLocalInt(oSpawn, "f_LootTable2ItemChance", nLootTable2ItemChance); + SetLocalInt(oSpawn, "f_LootTable3ItemChance", nLootTable3ItemChance); + + // Initialize SpawnDeactivation + int nDeactivateSpawn = GetFlagValue(sSpawnName, "DS", dfDeactivateSpawn); + int nDeactivateScript = GetSubFlagValue(sSpawnName, "DS", "S", dfDeactivateScript); + int nDeactivationInfo = GetFlagValue(sSpawnName, "DI", dfDeactivationInfo); + + // Record SpawnDeactivations + SetLocalInt(oSpawn, "f_DeactivateSpawn", nDeactivateSpawn); + SetLocalInt(oSpawn, "f_DeactivateScript", nDeactivateScript); + + if (nDeactivateSpawn == 4) + { + nDeactivationInfo *= 60; // convert minutes to seconds + } + else if (nDeactivateSpawn == 5) + { + nDeactivationInfo *= 6; // convert cycles to seconds + } + + SetLocalInt(oSpawn, "f_DeactivationInfo", nDeactivationInfo); + + // Initialize ChildLifespan + int nChildLifespanMax = GetFlagValue(sSpawnName, "CL", dfChildLifespanMax); + nChildLifespanMax *= 60; // convert to seconds + int nChildLifespanMin = GetSubFlagValue(sSpawnName, "CL", "M", dfChildLifespanMin); + nChildLifespanMin *= 60; // convert to seconds + if (nChildLifespanMin > nChildLifespanMax) + { + nChildLifespanMin = -1; + } + + // Record ChildLifespan + SetLocalInt(oSpawn, "f_ChildLifespanMax", nChildLifespanMax); + SetLocalInt(oSpawn, "f_ChildLifespanMin", nChildLifespanMin); + + // Initialize SpawnRadius + float fSpawnRadius = IntToFloat(GetFlagValue(sSpawnName, "SR", dfSpawnRadius)); + float fSpawnRadiusMin = IntToFloat(GetSubFlagValue(sSpawnName, "SR", "M", dfSpawnRadiusMin)); + int nSpawnNearPCs = IsSubFlagPresent(sSpawnName, "SR", "P"); + if (fSpawnRadiusMin > fSpawnRadius) + { + fSpawnRadiusMin = 0.0; + } + + // Record SpawnRadius + SetLocalFloat(oSpawn, "f_SpawnRadius", fSpawnRadius); + SetLocalFloat(oSpawn, "f_SpawnRadiusMin", fSpawnRadiusMin); + SetLocalInt(oSpawn, "f_SpawnNearPCs", nSpawnNearPCs); + + // Initialize SpawnUnseen + float fSpawnUnseen = IntToFloat(GetFlagValue(sSpawnName, "SU", dfSpawnUnseen)); + + int nUnseenIndividual = IsSubFlagPresent(sSpawnName, "SU", "I"); + int nUnseenRetryCount = GetSubFlagValue(sSpawnName, "SU", "I", dfUnseenRetryCount); + + // Record SpawnUnseen + SetLocalFloat(oSpawn, "f_SpawnUnseen", fSpawnUnseen); + SetLocalInt(oSpawn, "f_UnseenIndividual", nUnseenIndividual); + SetLocalInt(oSpawn, "f_UnseenRetryCount", nUnseenRetryCount); + + // Initialize CorpseDecay + float fCorpseDecay = IntToFloat(GetFlagValue(sSpawnName, "CD", dfCorpseDecay)); + int nCorpseDecayType = GetSubFlagValue(sSpawnName, "CD", "T", dfCorpseDecayType); + int nCorpseRemainsType = GetSubFlagValue(sSpawnName, "CD", "R", dfCorpseRemainsType); + int bDropWielded = IsSubFlagPresent(sSpawnName, "CD", "D"); + + string sCorpseRemainsResRef; + int bDeleteLootOnDecay = FALSE; + + switch (nCorpseRemainsType) + { + case 0: sCorpseRemainsResRef = "invis_corpse_obj"; break; + case 1: sCorpseRemainsResRef = "invis_corpse_bdy"; break; + case 2: sCorpseRemainsResRef = "invis_corpse_bon"; break; + case 3: sCorpseRemainsResRef = "invis_corpse_pot"; break; + case 4: sCorpseRemainsResRef = "invis_corpse_pch"; break; + case 5: sCorpseRemainsResRef = "invis_corpse_scr"; break; + case 6: sCorpseRemainsResRef = "invis_corpse_tre"; break; + case 7: + sCorpseRemainsResRef = "invis_corpse_obj"; + bDeleteLootOnDecay = TRUE; + break; + } + + // Record CorpseDecay + SetLocalFloat(oSpawn, "f_CorpseDecay", fCorpseDecay); + SetLocalInt(oSpawn, "f_CorpseDecayType", nCorpseDecayType); + SetLocalString(oSpawn, "f_CorpseRemainsResRef", sCorpseRemainsResRef); + SetLocalInt(oSpawn, "f_CorpseDropWielded", bDropWielded); + SetLocalInt(oSpawn, "f_CorpseDeleteLootOnDecay", bDeleteLootOnDecay); + + // Initialize SpawnCamp + int nSpawnCamp = IsFlagPresent(sSpawnName, "CM"); + float fCampDecay = IntToFloat(GetSubFlagValue(sSpawnName, "CM", "D", dfCampDecay)); + + // Record SpawnCamp + SetLocalInt(oSpawn, "f_SpawnCamp", nSpawnCamp); + SetLocalFloat(oSpawn, "f_CampDecay", fCampDecay); + + // Initialize Spawn Scripts + int nSpawnScript = GetFlagValue(sSpawnName, "SS", dfSpawnScript); + int nDespawnScript = GetSubFlagValue(sSpawnName, "SS", "D", dfDespawnScript); + + // Record Spawn Scripts + SetLocalInt(oSpawn, "f_SpawnScript", nSpawnScript); + SetLocalInt(oSpawn, "f_DespawnScript", nDespawnScript); + + // Initialize Death Scripts + int nDeathScript = GetFlagValue(sSpawnName, "DT", dfDeathScript); + + // Record Death Scripts + SetLocalInt(oSpawn, "f_DeathScript", nDeathScript); + + // Initialize SpawnCheckCustom + int nSpawnCheckCustom = GetFlagValue(sSpawnName, "CC", dfSpawnCheckCustom); + + // Record SpawnCheckCustom + SetLocalInt(oSpawn, "f_SpawnCheckCustom", nSpawnCheckCustom); + + // Initialize SpawnCheckPCs + int nSpawnCheckPCs = GetFlagValue(sSpawnName, "CP", dfSpawnCheckPCs); + float fCheckPCsRadius = IntToFloat(GetSubFlagValue(sSpawnName, "CP", "R", dfCheckPCsRadius)); + + // Record SpawnCheckPCs + SetLocalInt(oSpawn, "f_SpawnCheckPCs", nSpawnCheckPCs); + SetLocalFloat(oSpawn, "f_CheckPCsRadius", fCheckPCsRadius); + + // Intialize SpawnTrigger + float fSpawnTrigger = IntToFloat(GetFlagValue(sSpawnName, "TR", dfSpawnTrigger)); + float fDespawnTrigger = IntToFloat(GetSubFlagValue(sSpawnName, "TR", "D", dfDespawnTrigger)); + + // Record SpawnTrigger + SetLocalFloat(oSpawn, "f_SpawnTrigger", fSpawnTrigger); + SetLocalFloat(oSpawn, "f_DespawnTrigger", fDespawnTrigger); + + // Initialize AreaEffect + int nSpawnAreaEffect = GetFlagValue(sSpawnName, "AE", dfSpawnAreaEffect); + float fAreaEffectDuration = IntToFloat(GetSubFlagValue(sSpawnName, "AE", "D", dfAreaEffectDuration)); + + // Record AreaEffect + SetLocalInt(oSpawn, "f_SpawnAreaEffect", nSpawnAreaEffect); + SetLocalFloat(oSpawn, "f_AreaEffectDuration", fAreaEffectDuration); + + // Initialize ObjectEffect + int nObjectEffect = GetFlagValue(sSpawnName, "OE", dfObjectEffect); + float fObjectEffectDuration = IntToFloat(GetSubFlagValue(sSpawnName, "OE", "D", dfObjectEffectDuration)); + if (fObjectEffectDuration == 0.0) + { + fObjectEffectDuration = -1.0; + } + + // Record ObjectEffect + SetLocalInt(oSpawn, "f_ObjectEffect", nObjectEffect); + SetLocalFloat(oSpawn, "f_ObjectEffectDuration", fObjectEffectDuration); + + // Initialize RandomSpawn + int nRandomSpawn = GetFlagValue(sSpawnName, "RS", dfRandomSpawn); + + // Record RandomSpawn + SetLocalInt(oSpawn, "f_RandomSpawn", nRandomSpawn); + + // Initialize SpawnFaction + int nSpawnFaction = GetFlagValue(sSpawnName, "FC", dfSpawnFaction); + + // Record SpawnFaction + SetLocalInt(oSpawn, "f_SpawnFaction", nSpawnFaction); + + // Initialize SpawnAlignment + int nSpawnAlignment = GetFlagValue(sSpawnName, "AL", dfSpawnAlignment); + int nAlignmentShift = GetSubFlagValue(sSpawnName, "AL", "S", dfAlignmentShift); + + // Record SpawnAlignment + SetLocalInt(oSpawn, "f_SpawnAlignment", nSpawnAlignment); + SetLocalInt(oSpawn, "f_AlignmentShift", nAlignmentShift); + + // Initialize Heartbeat + int nHeartbeatScript = GetFlagValue(sSpawnName, "HB", dfHeartbeatScript); + + // Record HeartBeat + SetLocalInt(oSpawn, "f_HeartbeatScript", nHeartbeatScript); + + // Initialize SpawnLocation + int nSpawnLocation = GetFlagValue(sSpawnName, "SL", dfSpawnLocation); + int nSpawnLocationMin = GetSubFlagValue(sSpawnName, "SL", "R", dfSpawnLocationMin); + int nSpawnLocationInd = IsSubFlagPresent(sSpawnName, "SL", "I"); + if (nSpawnLocationMin > nSpawnLocation) + { + nSpawnLocationMin = -1; + } + + // Record SpawnLocation + SetLocalInt(oSpawn, "f_SpawnLocation", nSpawnLocation); + SetLocalInt(oSpawn, "f_SpawnLocationMin", nSpawnLocationMin); + SetLocalInt(oSpawn, "f_SpawnLocationInd", nSpawnLocationInd); + + // Initialize SpawnFacing + float fSpawnFacing; + int nSpawnFacing = IsFlagPresent(sSpawnName, "SF"); + if (nSpawnFacing == TRUE) + { + fSpawnFacing = GetFacingFromLocation(GetLocation(oSpawn)); + } + else + { + // If f_Facing is false, fSpawnFacing is now calculated for + // each individual creature + fSpawnFacing = 0.0; + // fSpawnFacing = IntToFloat(Random(360)); + } + + // Record SpawnFacing + SetLocalInt(oSpawn, "f_Facing", nSpawnFacing); + SetLocalFloat(oSpawn, "f_SpawnFacing", fSpawnFacing); + + // Initialize EntranceExit + int nEntranceExit = GetFlagValue(sSpawnName, "EE", dfEntranceExit); + int nEntranceExitMin = GetSubFlagValue(sSpawnName, "EE", "R", dfEntranceExitMin); + if (nEntranceExitMin > nEntranceExit) + { + nEntranceExitMin = -1; + } + int nExit = GetFlagValue(sSpawnName, "EX", dfExit); + int nExitMin = GetSubFlagValue(sSpawnName, "EX", "R", dfExitMin); + if (nExitMin > nExit) + { + nExitMin = -1; + } + + // Record EntranceExit + SetLocalInt(oSpawn, "f_EntranceExit", nEntranceExit); + SetLocalInt(oSpawn, "f_EntranceExitMin", nEntranceExitMin); + SetLocalInt(oSpawn, "f_Exit", nExit); + SetLocalInt(oSpawn, "f_ExitMin", nExitMin); + + // Initialize HealChildren + int nHealChildren = GetFlagValue(sSpawnName, "HL", dfHealChildren); + int nHealEffects = IsSubFlagPresent(sSpawnName, "HL", "E"); + if (nHealChildren == 1) + { + nHealChildren == 100; + } + + // Record HealChildren + SetLocalInt(oSpawn, "f_HealChildren", nHealChildren); + SetLocalInt(oSpawn, "f_HealEffects", nHealEffects); + + // Initialize SpawnItem + int nSpawnItem = IsFlagPresent(sSpawnName, "IT"); + + // Record SpawnItem + SetLocalInt(oSpawn, "f_SpawnItem", nSpawnItem); + + // Initialize SpawnSit + int nSpawnSit = IsFlagPresent(sSpawnName, "ST"); + + // Record SpawnSit + SetLocalInt(oSpawn, "f_SpawnSit", nSpawnSit); + + // Initialize SpawnPlot + int nSpawnPlot = IsFlagPresent(sSpawnName, "PT"); + + // Record SpawnPlot + SetLocalInt(oSpawn, "f_SpawnPlot", nSpawnPlot); + + // Initialize SpawnMerchant + int nSpawnMerchant = IsFlagPresent(sSpawnName, "SM"); + + // Record SpawnMerchant + SetLocalInt(oSpawn, "f_SpawnMerchant", nSpawnMerchant); + + // Initialize Dim Returns Suppression + int nSuppressDimReturns = IsFlagPresent(sSpawnName, "SX"); + + if (nSuppressDimReturns) + { + // If the flag is present, get suppression mode from its value + nSuppressDimReturns = GetFlagValue(sSpawnName, "SX", dfSuppressDR); + } + + else + { + // Use the global setting + nSuppressDimReturns = dfGlobalSuppressDR; + } + + // Record Dim Returns Suppression + SetLocalInt(oSpawn, "f_SuppressDimReturns", nSuppressDimReturns); + + // Initialize Loot Suppression + int nSuppressLooting = IsFlagPresent(sSpawnName, "NL"); + + // Record Loot Suppression + SetLocalInt(oSpawn, "f_SuppressLooting", nSuppressLooting); + + // Initialize Subdual Mode + int nSubdualMode = IsFlagPresent(sSpawnName, "SB"); + + // Record Subdual Mode + SetLocalInt(oSpawn, "f_SubdualMode", nSubdualMode); + + int nEncounterLevel; + + // Initialize Encounter Level + if (IsFlagPresent(sSpawnName, "EL")) + { + nEncounterLevel = GetFlagValue(sSpawnName, "EL", dfEncounterLevel); + SetLocalInt(oSpawn, "f_EncounterLevel", nEncounterLevel); + } + + int nUseCache; + int nCacheBucket; + int nCacheCondition; + int nCacheTiming; + + //iniitialize Cached Spawning + if(IsFlagPresent(sSpawnName, "CS") || 0 != nUseCache) + { + nCacheBucket = GetFlagValue(sSpawnName, "CS", dfCacheBucket); + nCacheCondition = GetSubFlagValue(sSpawnName, "CS", "C", dfCacheCondition); + nCacheTiming = GetSubFlagValue(sSpawnName, "CS", "T", dfCacheTiming); + + SetLocalInt(oSpawn, "f_UseCache", TRUE); + SetLocalInt(oSpawn, "f_CacheBucket", nCacheBucket); + SetLocalInt(oSpawn, "f_CacheCondition", nCacheCondition); + SetLocalInt(oSpawn, "CacheTiming", nCacheTiming); + } + + // Record Flags Initialized + SetLocalInt(oSpawn, "FlagsInitialized", TRUE); +} +// + +// This Function Sets the Spawns +int SetSpawns(location lBase) +{ + string sSpawnName, sSpawnNum, sSpawnTag; + int nNth = 1; + int nSpawnNum = 0; + + // Enumerate Waypoints in the Area + object oSpawn = GetFirstObjectInArea(OBJECT_SELF); + while (oSpawn != OBJECT_INVALID) + { + // Check for a local string called "NESS" on the waypoint + // first. If it exists, use it instead of the name + sSpawnName = GetLocalString(oSpawn, "NESS"); + + if (GetStringLeft(sSpawnName, 2) != "SP") + { + // Retrieve Name + sSpawnName = GetName(oSpawn); + } + + // Check if Waypoint is a Spawn Controller + if (GetStringLeft(sSpawnName, 2) == "SP") + { + // Set Spawn + nSpawnNum++; + sSpawnNum = "Spawn" + PadIntToString(nSpawnNum, 2); + SetLocalObject(OBJECT_SELF, sSpawnNum, oSpawn); + + + sSpawnTag = GetLocalString(oSpawn, "NESS_TAG"); + if (sSpawnTag == "") + { + sSpawnTag = GetTag(oSpawn); + } + + DelayCommand(0.0, InitFlags(oSpawn, sSpawnName, sSpawnTag)); + } + nNth++; + oSpawn = GetNextObjectInArea(OBJECT_SELF); + } + SetLocalInt(OBJECT_SELF, "Spawns", nSpawnNum); + return nSpawnNum; +} +// + +// This Function returns the Number of PCs in an Area +int CountPCsInArea(object oArea = OBJECT_INVALID, int nDM = FALSE) + { + int retVal = 0; + if (oArea == OBJECT_INVALID) + { + oArea = GetArea(OBJECT_SELF); + } + object oPC = GetFirstPC(); + while (oPC != OBJECT_INVALID) + { + if (GetArea(oPC) == oArea) + { + if (GetIsDM(oPC) == TRUE) + { + if (nDM == TRUE) + { + retVal++; + } + } + else + { + retVal++; + } + } + oPC = GetNextPC(); + } + return retVal; +} +// + +// This Function Returns the Number of PCs in a Radius +int CountPCsInRadius(location lCenter, float fRadius, int nDM = FALSE) +{ + int nPCs = 0; + object oPC = GetFirstObjectInShape(SHAPE_SPHERE, fRadius, lCenter, FALSE, + OBJECT_TYPE_ALL); + + while (oPC != OBJECT_INVALID) + { + if (GetIsPC(oPC)) + { + if (GetIsDM(oPC)) + { + //debug(GetName(oPC) + " is a DM "); + if (nDM == TRUE) + { + nPCs++; + } + } + else + { + //debug("found a real PC"); + nPCs++; + } + } + + oPC = GetNextObjectInShape(SHAPE_SPHERE, fRadius, lCenter, FALSE, + OBJECT_TYPE_ALL); + } + return nPCs; +} +// + +int IsCreatureItem(object oItem) +{ + if (GetBaseItemType(oItem) == BASE_ITEM_CREATUREITEM || + GetBaseItemType(oItem) == BASE_ITEM_CBLUDGWEAPON || + GetBaseItemType(oItem) == BASE_ITEM_CPIERCWEAPON || + GetBaseItemType(oItem) == BASE_ITEM_CSLASHWEAPON || + GetBaseItemType(oItem) == BASE_ITEM_CSLSHPRCWEAP) + { + return TRUE; + } + + return FALSE; +} + +// This Function Returns a Random PC from Area +object GetRandomPCInArea(object oArea, object oSpawn) +{ + int nPCsInArea = CountPCsInArea(oArea, TRUE); + int nNth = Random(nPCsInArea) + 1; + object oRandomPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC, oSpawn, nNth); + return oRandomPC; +} + +object NESS_CopyCorpseItem(object oSource, object oInventory) +{ + int bWasPlot = GetPlotFlag(oSource); + object oNewItem = CopyItem(oSource, oInventory); + if (bWasPlot == TRUE) + { + SetPlotFlag(oNewItem,TRUE); + } + + return oNewItem; +} + +// +struct NESS_CorpseInfo TransferAllInventorySlots(object oVictim, + object oCorpse, int bDropWielded=FALSE) +{ + int i=0; + object oItem = OBJECT_INVALID; + location locItem; + struct NESS_CorpseInfo stCorpseInfo; + + // Initialize + stCorpseInfo.origRgtWpn = OBJECT_INVALID; + stCorpseInfo.origLftWpn = OBJECT_INVALID; + stCorpseInfo.origArmor = OBJECT_INVALID; + stCorpseInfo.lootRgtWpn = OBJECT_INVALID; + stCorpseInfo.lootLftWpn = OBJECT_INVALID; + stCorpseInfo.lootArmor = OBJECT_INVALID; + + for (i=0; i < NUM_INVENTORY_SLOTS; i++) + { + oItem = GetItemInSlot(i, oVictim); + + // See if we're going to allow looting of this item. + if (GetIsObjectValid(oItem) && GetDroppableFlag(oItem)) + { + // Handle different items slightly differently. + + if (i == INVENTORY_SLOT_CHEST && GetIsVictimDressed(oVictim)) + { + // The victim is wearing the armor. We don't want to destroy + // it while the corpse is around, since that would leave the + // body naked. + stCorpseInfo.origArmor = oItem; + stCorpseInfo.lootArmor = NESS_CopyCorpseItem(oItem, oCorpse); + } + + else if (i == INVENTORY_SLOT_RIGHTHAND) + { + if (bDropWielded) + { + // This is a wielded item. Drop it nearby. + locItem = GetStepRightLocation(oVictim); + CreateObject(OBJECT_TYPE_ITEM, GetResRef(oItem), locItem); + DestroyObject(oItem, 0.1); + } + + else + { + stCorpseInfo.origRgtWpn = oItem; + stCorpseInfo.lootRgtWpn = NESS_CopyCorpseItem(oItem, oCorpse); + } + + } + + else if (i == INVENTORY_SLOT_LEFTHAND) + { + if(bDropWielded) + { + // This is a wielded item. Drop it nearby. + locItem = GetStepLeftLocation(oVictim); + CreateObject(OBJECT_TYPE_ITEM, GetResRef(oItem), locItem); + DestroyObject(oItem, 0.1); + } + + else + { + stCorpseInfo.origLftWpn = oItem; + stCorpseInfo.lootLftWpn = NESS_CopyCorpseItem(oItem, oCorpse); + } + } + + else + { + NESS_CopyCorpseItem(oItem, oCorpse); + DestroyObject(oItem, 0.1); + } + } + } + return stCorpseInfo; +} + +// + +// This Function Checks if the Party is within fDistance Meters of Each Other +int IsPartyTogether(object oPC, float fDistance) +{ + int nTogether = TRUE; + object oMember = GetFirstFactionMember(oPC, TRUE); + while (oMember != OBJECT_INVALID) + { + if (GetIsDead(oMember) == FALSE) + { + if (GetDistanceBetween(oPC, oMember) > fDistance) + { + nTogether = FALSE; + oMember = OBJECT_INVALID; + } + } + oMember = GetNextFactionMember(oPC, TRUE); + } + return nTogether; +} +// + +// This Function Returns the Number of PCs in a Party +int CountMembersInParty(object oPC, int bPCOnly = TRUE) +{ + int nCount; + object oMember = GetFirstFactionMember(oPC, bPCOnly); + while (oMember != OBJECT_INVALID) + { + nCount++; + oMember = GetNextFactionMember(oPC, bPCOnly); + } + return nCount; +} +// + +// This Function Checks if nCheckDay is Between Days +int IsBetweenDays(int nCheckDay, int nDayStart, int nDayEnd) +{ + if (nDayEnd > -1) + { + if (nCheckDay >= nDayStart && nCheckDay <= nDayEnd) + { + return TRUE; + } + } + else + { + if (nCheckDay == nDayStart) + { + return TRUE; + } + } + + return FALSE; +} +// + +// This Function Checks if nCheckHour is Between Hours +int IsBetweenHours(int nCheckHour, int nHourStart, int nHourEnd) +{ + if (nHourEnd > -1) + { + if (nCheckHour >= nHourStart && nCheckHour <= nHourEnd) + { + return TRUE; + } + } + else + { + if (nCheckHour == nHourStart) + { + return TRUE; + } + } + + return FALSE; +} +// + +// This Function Pads an IntToString with 0s +string PadIntToString(int nInt, int nDigits) +{ + string sRetString; + string sTempInt = IntToString(nInt); + int iCount; + + sRetString = ""; + for (iCount = 1; iCount <= (nDigits - GetStringLength(sTempInt)); iCount++) + { + sRetString = sRetString + "0"; + } + sRetString = sRetString + sTempInt; + return sRetString; +} +// + +// This Function returns a Child Object by Tag +object GetChildByTag(object oSpawn, string sChildTag) +{ + object oChild; + object oRetChild = OBJECT_INVALID; + string sChildSlot; + int nChildSlot; + + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + int nSpawnNumber = GetFlagValue(sSpawnName, "SN", 1); + + // Cycle through Children + for (nChildSlot = 1; nChildSlot <= nSpawnNumber; nChildSlot++) + { + // Retrieve Child + + sChildSlot = "ChildSlot" + PadIntToString(nChildSlot, 2); + oChild = GetLocalObject(oSpawn, sChildSlot); + if (GetTag(oChild) == sChildTag) + { + oRetChild = oChild; + } + } + + return oRetChild; +} +// + +// This Function returns a Child Object by Slot Number +object GetChildByNumber(object oSpawn, int nChildNum) +{ + object oRetChild = OBJECT_INVALID; + string sChildSlot; + + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + int nSpawnNumber = GetFlagValue(sSpawnName, "SN", 1); + + // Check if Valid Number + if (nChildNum > nSpawnNumber) + { + return oRetChild; + } + + // Retrieve Child + sChildSlot = "ChildSlot" + PadIntToString(nChildNum, 2); + oRetChild = GetLocalObject(oSpawn, sChildSlot); + + // Return Child + return oRetChild; +} +// +object NESS_GetSpawnByID(int nSpawnID, object oArea) +{ + string sSpawnName; + object oRetSpawn; + + // Enumerate Waypoints in the Area + object oSpawn = GetFirstObjectInArea(oArea); + while (oSpawn != OBJECT_INVALID) + { + // Retrieve Name + sSpawnName = GetLocalString(oSpawn, "f_Flags"); + + // Check if Waypoint is a Spawn Controller + if (GetStringLeft(sSpawnName, 2) == "SP") + { + if (GetLocalInt(oSpawn, "SpawnID") == nSpawnID) + { + oRetSpawn = oSpawn; + } + } + oSpawn = GetNextObjectInArea(oArea); + } + return oRetSpawn; +} +// + +// This Function returns a Spawn Object by ID +object GetSpawnByID(int nSpawnID) +{ + return NESS_GetSpawnByID(nSpawnID, OBJECT_SELF); +} +// + +// This Function Sets Children to Despawn +void DespawnChildren(object oSpawn) +{ + object oChild; + string sChildSlot; + int nChildSlot; + + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + int nSpawnNumber = GetFlagValue(sSpawnName, "SN", 1); + + // Cycle through Children + for (nChildSlot = 1; nChildSlot <= nSpawnNumber; nChildSlot++) + { + // Retrieve Child + + sChildSlot = "ChildSlot" + PadIntToString(nChildSlot, 2); + oChild = GetLocalObject(oSpawn, sChildSlot); + SetLocalInt(oChild, "ForceDespawn", TRUE); + } +} +// + +// This Function Sets Children to Despawn by Tag +void DespawnChildrenByTag(object oSpawn, string sChildTag) +{ + object oChild; + string sChildSlot; + int nChildSlot; + + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + int nSpawnNumber = GetFlagValue(sSpawnName, "SN", 1); + + // Cycle through Children + for (nChildSlot = 1; nChildSlot <= nSpawnNumber; nChildSlot++) + { + // Retrieve Child + + sChildSlot = "ChildSlot" + PadIntToString(nChildSlot, 2); + oChild = GetLocalObject(oSpawn, sChildSlot); + if (GetTag(oChild) == sChildTag) + { + SetLocalInt(oChild, "ForceDespawn", TRUE); + } + } +} +// + +// This Function Adds a Child to a Spawn +void AddChild(object oSpawn, object oSpawned) +{ + // Declare Variables + int nEmptyChildSlot, nChildSlot; + int nSpawnNumber, nSpawnCount, nChildrenSpawned; + string sChildSlot, sEmptyChildSlot; + object oChild; + + // Retreive Values + nSpawnNumber = GetLocalInt(oSpawn, "f_SpawnNumber"); + nChildrenSpawned = GetLocalInt(oSpawn, "ChildrenSpawned"); + nSpawnCount = GetLocalInt(oSpawn, "SpawnCount"); + + // Find Empty Child Slot + nEmptyChildSlot = 0; + for (nChildSlot = 1; nChildSlot <= nSpawnNumber; nChildSlot++) + { + // Retrieve Child + sChildSlot = "ChildSlot" + PadIntToString(nChildSlot, 2); + oChild = GetLocalObject(oSpawn, sChildSlot); + + // Check if this is Child Slot is Valid + if (GetIsObjectValid(oChild) == FALSE || GetIsDead(oChild)) + { + // Empty Slot + if (nEmptyChildSlot == 0) + { + nEmptyChildSlot = nChildSlot; + sEmptyChildSlot = sChildSlot; + } + } + } + + if (nEmptyChildSlot != 0) + { + // Assign Values to oSpawned + SetLocalObject(oSpawned, "ParentSpawn", oSpawn); + SetLocalFloat(oSpawned, "HomeX", GetPositionFromLocation(GetLocation(oSpawned)).x); + SetLocalFloat(oSpawned, "HomeY", GetPositionFromLocation(GetLocation(oSpawned)).y); + + // Assign Child Slot + SetLocalObject(oSpawn, sEmptyChildSlot, oSpawned); + SetLocalString(oSpawned, "ParentChildSlot", sEmptyChildSlot); + + // Assign Values to oSpawn + nChildrenSpawned++; + SetLocalInt(oSpawn, "ChildrenSpawned", nChildrenSpawned); + nSpawnCount++; + SetLocalInt(oSpawn, "SpawnCount", nSpawnCount); + } +} +// + +void NESS_DeactivateSpawnByID(int nSpawnID, object oArea) +{ + object oSpawn = NESS_GetSpawnByID(nSpawnID, oArea); + NESS_DeactivateSpawn(oSpawn); +} +// Identical to DeactivateSpawn, but included for interface consistency +void NESS_DeactivateSpawn(object oSpawn) +{ + DeactivateSpawn(oSpawn); +} +// This Function Sets a Spawn to Deactivate +void DeactivateSpawn(object oSpawn) +{ + SetLocalInt(oSpawn, "ForceDeactivateSpawn", TRUE); + NESS_ForceProcess(oSpawn); +} + +void NESS_ActivateSpawnByID(int nSpawnID, object oArea) +{ + object oSpawn = NESS_GetSpawnByID(nSpawnID, oArea); + NESS_ActivateSpawn(oSpawn); +} + +// This Function Sets a Spawn to Activate +void NESS_ActivateSpawn(object oSpawn) +{ + SetLocalInt(oSpawn, "SpawnDeactivated", FALSE); + NESS_ForceProcess(oSpawn); +} + +void NESS_ForceProcess(object oSpawn) +{ + SetLocalInt(oSpawn, "SpawnForceProcess", TRUE); +} + +void NESS_TrackModuleSpawns(int flag=TRUE) +{ + SetLocalInt(GetModule(), "TrackModuleSpawns", flag); +} + +int NESS_IsModuleSpawnTracking() +{ + return GetLocalInt(GetModule(), "TrackModuleSpawns"); +} + +// + +void NESS_DumpModuleSpawns(int flag=TRUE) +{ + SetLocalInt(GetModule(), "DumpModuleSpawns", flag); +} + +int NESS_IsModuleSpawnDumping() +{ + return GetLocalInt(GetModule(), "DumpModuleSpawns"); +} +// +// This Function Sets all Spawns by Tag to Deactivate +void DeactivateSpawnsByTag(string sSpawnTag) +{ + int nNth; + object oSpawn; + string sSpawnNum; + + int nSpawns = GetLocalInt(GetArea(OBJECT_SELF), "Spawns"); + + for (nNth = 1; nNth <= nSpawns; nNth++) + { + // Retrieve Spawn + sSpawnNum = "Spawn" + PadIntToString(nNth, 2); + oSpawn = GetLocalObject(OBJECT_SELF, sSpawnNum); + if (GetTag(oSpawn) == sSpawnTag) + { + SetLocalInt(oSpawn, "ForceDeactivateSpawn", TRUE); + } + } +} +// + +// This Function Sets all Spawns to Deactivate +void DeactivateAllSpawns() +{ + int nNth; + object oSpawn; + string sSpawnNum; + + int nSpawns = GetLocalInt(GetArea(OBJECT_SELF), "Spawns"); + + for (nNth = 1; nNth <= nSpawns; nNth++) + { + // Retrieve Spawn + sSpawnNum = "Spawn" + PadIntToString(nNth, 2); + oSpawn = GetLocalObject(OBJECT_SELF, sSpawnNum); + SetLocalInt(oSpawn, "ForceDeactivateSpawn", TRUE); + } +} +// +location GetRandomLocationInRadius(object oSpawn, float fWalkingRadius) +{ + vector vCurrentLocation, vTargetLocation; + float fRadiusX, fRadiusY; + location lTargetLocation; + + // Create our Random Location + fRadiusX = IntToFloat(Random(FloatToInt(fWalkingRadius))); + fRadiusY = IntToFloat(Random(FloatToInt(fWalkingRadius))); + if (d2() == 2) + { + fRadiusX = -fRadiusX; + } + if (d2() == 2) + { + fRadiusY = -fRadiusY; + } + vTargetLocation = Vector(fRadiusX, fRadiusY); + vCurrentLocation = GetPositionFromLocation(GetLocation(oSpawn)); + lTargetLocation = Location(OBJECT_SELF, vCurrentLocation + vTargetLocation, + 0.0); + + return lTargetLocation; +} + +// Random Walking with Range +void RandomWalk(object oSpawn, float fWalkingRadius, int nRun) +{ + // Walk to the New Location + float fRadiusX, fRadiusY; + + // Create our Random Location + fRadiusX = IntToFloat(Random(FloatToInt(fWalkingRadius))); + fRadiusY = IntToFloat(Random(FloatToInt(fWalkingRadius))); + if (d2() == 2) + { + fRadiusX = -fRadiusX; + } + if (d2() == 2) + { + fRadiusY = -fRadiusY; + } + + location lSpawnLocation = GetLocation(oSpawn); + vector vNewPosition = GetPositionFromLocation(lSpawnLocation); + + vNewPosition.x += fRadiusX; + vNewPosition.y += fRadiusY; + + location lRandomWalkLocation = Location(GetArea(OBJECT_SELF), vNewPosition, + 0.0); + ActionMoveToLocation(lRandomWalkLocation, nRun); +} +// + +// This Function Finds aaSeatnd Sits in It +void FindSeat(object oSpawn, object oSpawned) +{ + object oSeat; + string sSeatTag = GetLocalString(GetModule(), "df_SeatTag"); + location lSeatLocation; + + int nNth = 1; + object oSittable = GetNearestObjectByTag(sSeatTag, oSpawned, nNth); + while (oSittable != OBJECT_INVALID && oSeat == OBJECT_INVALID) + { + if (GetSittingCreature(oSittable) == OBJECT_INVALID) + { + oSeat = oSittable; + } + nNth++; + oSittable = GetNearestObjectByTag(sSeatTag, oSpawned, nNth); + } + + if (GetIsObjectValid(oSeat)) + { + lSeatLocation = GetLocation(oSeat); + AssignCommand(oSpawned, ClearAllActions()); + AssignCommand(oSpawned, ActionMoveToLocation(lSeatLocation)); + AssignCommand(oSpawned, ActionSit(oSeat)); + } +} +// + +// This Function Cleans an Object's Inventory + +void NESS_CleanCorpse(object oSpawned) +{ + NESS_CleanEquipped(oSpawned); + NESS_CleanInventory(oSpawned); +} + +void NESS_CleanEquipped(object oSpawned) +{ + int i = 0; + object oItem = OBJECT_INVALID; + + for (i=0; i < NUM_INVENTORY_SLOTS; i++) + { + oItem = GetItemInSlot(i, oSpawned); + + if (GetIsObjectValid(oItem)) + { + // Why the delay? This is used to remove equipped items from corpses. If the + // corpse is still around, it do it's unequip animation... + SetDroppableFlag( oItem, FALSE ); + DestroyObject(oItem, 1.0); + } + } +} + +void NESS_CleanInventory(object oSpawned) +{ + // Clean out oSpawned's Inventory + //debug("in clean inventory"); + object oItem = GetFirstItemInInventory(oSpawned); + while (oItem != OBJECT_INVALID) + { + //debug("destroying " + GetName(oItem)); + DestroyObject(oItem); + oItem = GetNextItemInInventory(oSpawned); + } +} + +// + +// This Functions Sets up the Patrol Route +void SetPatrolRoute(int nPatrolRoute, int nStartClosest=FALSE) +{ + object oStop; + int nRouteNumber, nStopNumber, iCount, nNumStops; + string sStop; + + // These 3 vars only used if nStartClosest is TRUE; + float fLeastDistance = 9999999.0;// any distance returned should be smaller + float fCurrentDistance; + int nClosestStopNum; + + // Cycle through Available Patrol Route Stops + iCount = 0; + nNumStops = 0; + oStop = GetNearestObject(OBJECT_TYPE_WAYPOINT, OBJECT_SELF, iCount); + while (oStop != OBJECT_INVALID) + { + sStop = GetTag(oStop); + // Check Route Number + nRouteNumber = GetFlagValue(sStop, "PR", -1); + if (nRouteNumber == nPatrolRoute) + { + // Identical Route Number, Add this Stop to oSpawned + nNumStops++; + nStopNumber = GetFlagValue(sStop, "SN", 0); + SetLocalObject(OBJECT_SELF, "PR_SN" + PadIntToString(nStopNumber, 2), oStop); + if (nStartClosest) + { + fCurrentDistance = GetDistanceToObject(oStop); + if (fCurrentDistance < fLeastDistance) + { + nClosestStopNum = nStopNumber; + fLeastDistance = fCurrentDistance; + } + } + + } + iCount++; + oStop = GetNearestObject(OBJECT_TYPE_WAYPOINT, OBJECT_SELF, iCount); + } + SetLocalInt(OBJECT_SELF, "PR_STOPS", nNumStops); + if (nStartClosest && (nClosestStopNum > 0)) + { + SetLocalInt(OBJECT_SELF, "PR_LASTSTOP", nClosestStopNum - 1); + + // Force it to go to a new waypoint + SetLocalInt(OBJECT_SELF, "PR_NEXTSTOP", -1); + + } +} +// + +// This Function Performs the Patrol Route +void DoPatrolRoute(int nPatrolRoute, int nRouteType) +{ + int nNumStops, nDespawn; + int nNextPatrolStop = -1; + int nLastPatrolStop = -1; + int nReturnRoute = FALSE; + + if (GetCurrentAction() != ACTION_INVALID) + return; + + ClearAllActions(); + + // Retreive Stop Information + nNumStops = GetLocalInt(OBJECT_SELF, "PR_STOPS"); + if ( nNumStops == 0 ) return; + nNextPatrolStop = GetLocalInt(OBJECT_SELF, "PR_NEXTSTOP"); + nLastPatrolStop = GetLocalInt(OBJECT_SELF, "PR_LASTSTOP"); + nReturnRoute = GetLocalInt(OBJECT_SELF, "PR_RETURNROUTE"); + + // Add New Stop to Route + if (nNextPatrolStop == -1) + { + // Sequential Route + if (nRouteType == 0 || nRouteType == 3) + { + if (nReturnRoute == TRUE) + { + if (nLastPatrolStop == 0) + { + nReturnRoute = FALSE; + SetLocalInt(OBJECT_SELF, "PR_RETURNROUTE", nReturnRoute); + nNextPatrolStop = nLastPatrolStop + 1; + } + else + { + nNextPatrolStop = nLastPatrolStop - 1; + } + } + else + { + if (nLastPatrolStop == nNumStops) + { + if (nRouteType == 3) + { + // End of Line, Despawn + nDespawn = TRUE; + } + else + { + nReturnRoute = TRUE; + SetLocalInt(OBJECT_SELF, "PR_RETURNROUTE", nReturnRoute); + nNextPatrolStop = nLastPatrolStop - 2; + } + } + else + { + nNextPatrolStop = nLastPatrolStop + 1; + } + } + } + + // Circular Route + if (nRouteType == 1) + { + if (nLastPatrolStop == nNumStops) + { + nNextPatrolStop = 0; + } + else + { + nNextPatrolStop = nLastPatrolStop + 1; + } + } + + // Random Route + if (nRouteType == 2) + { + nNextPatrolStop = Random(nNumStops); + while (nNextPatrolStop == nLastPatrolStop) + { + nNextPatrolStop = Random(nNumStops); + } + } + } + + if (nDespawn == TRUE) + { + ClearAllActions(); + SetLocalInt(OBJECT_SELF, "ForceDespawn", TRUE); + } + else + { + // Set Next Stop + SetLocalInt(OBJECT_SELF, "PR_NEXTSTOP", nNextPatrolStop); + + // Add Stop to Patrol + AddPatrolStop(nPatrolRoute, nNextPatrolStop); + + // Repeat the Process + ActionDoCommand(DoPatrolRoute(nPatrolRoute, nRouteType)); + } +} +// + +// This Function adds a Stop to the Patrol Route +void AddPatrolStop(int nPatrolRoute, int nStopNumber, int bJump=FALSE) +{ + object oStop; + int nRun, nScript, nFacing; + int nDayOnly, nNightOnly; + float fPause; + // Danmar: Added below for random pause setup + int nRandomPause; + int nRandomRoute; + // End Danmar changes + string sStop; + int nValid = TRUE; + + // Gather Stop Information + oStop = GetLocalObject(OBJECT_SELF, "PR_SN" + + PadIntToString(nStopNumber, 2)); + + if (GetIsObjectValid( oStop ) ) + { + sStop = GetTag(oStop); + nRun = IsFlagPresent(sStop, "RN"); + fPause = IntToFloat(GetFlagValue(sStop, "PS", 1)); + + // Danmar: Added RP###/RR### flag to patrol points to allow randomization + // of the pause time and stops. + nRandomPause = GetFlagValue(sStop, "RP", 0); + nRandomRoute = GetFlagValue(sStop, "RR", 0); + // End Danmar changes. + + nScript = GetFlagValue(sStop, "SC", -1); + nFacing = IsFlagPresent(sStop, "SF"); + nDayOnly = IsFlagPresent(sStop, "DO"); + nNightOnly = IsFlagPresent(sStop, "NO"); + + // Day Only + if (nDayOnly == TRUE && (GetIsDay() == FALSE && GetIsDawn() == FALSE)) + { + nValid = FALSE; + } + + // Night Only + if (nNightOnly == TRUE && (GetIsNight() == FALSE && GetIsDusk() == FALSE)) + { + nValid = FALSE; + } + + // Check if Valid + if (nValid == TRUE) + { + // Move to Stop + // Modified by Danmar + // ActionMoveToObject(oStop, nRun); // Original NESS line. + // if d% is less than nRandomRoute (RRxxx) then we move to the next stop. + // If its not then we skip that one and move to the next. + if ((nRandomRoute == 0) || ((Random(100) + 1) < nRandomRoute)) + { + if (bJump) + { + ActionJumpToLocation(GetLocation(oStop)); + } + else + { + ActionMoveToObject(oStop, nRun); + } + } + // End Danmar Changes + if (nFacing == TRUE) + { + ActionDoCommand(SetFacing(GetFacingFromLocation(GetLocation(oStop)))); + } + + // Execute Script + if (nScript > -1) + { + SetLocalInt(OBJECT_SELF, "PatrolScript", nScript); + ActionDoCommand(SetLocalInt(OBJECT_SELF, "PatrolScriptRunning", TRUE)); + ExecuteScript("spawn_sc_patrol", OBJECT_SELF); + ActionDoCommand(SetLocalInt(OBJECT_SELF, "PatrolScriptRunning", FALSE)); + } + + // Pause + /* Danmar: If fRandomPause!=0 then let's pick a random pause length and + add it to the existing fpause. This way you can use PS to set the + minimum pause and RP to set the maximum pause. + Example: PR01_SN01_PS010_RR011 would cause the creature to pause between + 10 to 20 seconds. */ + if (nRandomPause != 0) + { + fPause = fPause + IntToFloat(Random(nRandomPause)); + } + // End Danmar Changes + ActionWait(fPause); + } + } + + // Record this Stop and Clear Next Stop + ActionDoCommand(SetLocalInt(OBJECT_SELF, "PR_LASTSTOP", nStopNumber)); + ActionDoCommand(SetLocalInt(OBJECT_SELF, "PR_NEXTSTOP", -1)); +} + +void CheckForStuckPatrol(object oCreature, int nPatrolRoute, int nRouteType) +{ + // are we at the same location as last time? + location lLast = GetLocalLocation(oCreature, "NESSLastLoc"); + location lCurrent = GetLocation(oCreature); + if (lLast != lCurrent) + { + SetLocalLocation(oCreature, "NESSLastLoc", lCurrent); + SetLocalInt(oCreature, "NESSStuckCount", 0); + return; + } + + int nStuckCount = GetLocalInt(oCreature, "NESSStuckCount"); + nStuckCount += 1; + + if (nStuckCount < 3) + { + SetLocalInt(oCreature, "NESSStuckCount", nStuckCount); + return; + } + + AssignCommand(oCreature, ClearAllActions()); + + // unstuck 'im + int nLastStop = GetLocalInt(OBJECT_SELF, "PR_LASTSTOP"); + + // force a move + AssignCommand(oCreature, AddPatrolStop(nPatrolRoute, nLastStop, TRUE)); + + // reset + SetLocalInt(oCreature, "NESSStuckCount", 0); + +} +// + +// This Function Checks Camp State +int ProcessCamp(object oCamp) +{ + int iCount; + int nIsAlive = FALSE; + int nCampNumC, nCampNumP, nPlaceableType, nDeathScript; + float fCorpseDecay; + object oSpawned, oCampTrigger, oItem; + string sObject, sFlags, sCampTrigger; + + // Check Creatures + nCampNumC = GetLocalInt(oCamp, "CampNumC"); + + // Suppress despawning on creatureless camps + if ( nCampNumC == 0 ) + { + nIsAlive = TRUE; + } + + for (iCount = 1; iCount <= nCampNumC; iCount++) + { + sObject = "CampC" + IntToString(iCount - 1); + sFlags = GetLocalString(oCamp, sObject + "_Flags"); + fCorpseDecay = IntToFloat(GetFlagValue(sFlags, "CD", 0)); + nDeathScript = GetFlagValue(sFlags, "DT", -1); + oSpawned = GetLocalObject(oCamp, sObject); + if (oSpawned != OBJECT_INVALID) + { + if (GetIsDead(oSpawned) == FALSE) + { + nIsAlive = TRUE; + int nIsBusy = FALSE; + if (GetIsInCombat(oSpawned) || IsInConversation(oSpawned) || + (GetCurrentAction(oSpawned) != ACTION_INVALID)) + { + nIsBusy = TRUE; + } + if (! nIsBusy) + { + // Do return home processing + int nReturnHome = GetLocalInt(oSpawned, "f_ReturnHome"); + if (nReturnHome) + { + // retrieve lHome and fReturnRange + float fReturnHomeRange = GetLocalFloat(oSpawned, + "f_ReturnHomeRange"); + float fHomeX = GetLocalFloat(oSpawned, "HomeX"); + float fHomeY = GetLocalFloat(oSpawned, "HomeY"); + vector vHome = Vector(fHomeX, fHomeY, 0.0); + location lHome = Location(OBJECT_SELF, vHome, 0.0); + + if (GetDistanceBetweenLocations(lHome, GetLocation(oSpawned)) + > fReturnHomeRange) + { + AssignCommand(oSpawned, ReturnHome(lHome)); + nIsBusy = TRUE; + } + + } + } + + // Do random walk + if (! nIsBusy) + { + int nRandomWalk = GetLocalInt(oSpawned, "f_RandomWalk"); + if (nRandomWalk && + GetCurrentAction(oSpawned) != ACTION_WAIT && + GetCurrentAction(oSpawned) != ACTION_CASTSPELL && + (d2(1) == 2)) + { + AssignCommand(oSpawned, ClearAllActions()); + AssignCommand(oSpawned, ActionRandomWalk()); + } + } + } + else + { + NESS_ProcessDeadCreature(oSpawned); + DeleteLocalObject(oCamp, sObject); + } + } + } + + // Check Camp Trigger + if (nIsAlive) + { + sCampTrigger = GetLocalString(oCamp, "CampTrigger"); + if (sCampTrigger != "") + { + oCampTrigger = GetLocalObject(oCamp, "Camp" + sCampTrigger); + if (oCampTrigger == OBJECT_INVALID || GetIsDead(oCampTrigger) == TRUE) + { + // Run Trigger Script + ExecuteScript("spawn_sc_cmptrig", oCamp); + } + } + } + + // Check Placeable + nCampNumP = GetLocalInt(oCamp, "CampNumP"); + for (iCount = 1; iCount <= nCampNumP; iCount++) + { + sObject = "CampP" + IntToString(iCount - 1); + sFlags = GetLocalString(oCamp, sObject + "_Flags"); + nPlaceableType = GetFlagValue(sFlags, "PL", 0); + if (nPlaceableType == 1) + { + // Despawn if Empty + oSpawned = GetLocalObject(oCamp, sObject); + if (GetFirstItemInInventory(oSpawned) == OBJECT_INVALID) + { + DestroyObject(oSpawned); + } + } + } + + return nIsAlive; +} +// + +// This Function will Despawn a Camp +void DestroyCamp(object oCamp, float fCampDecay, int nSaveState) +{ + int iCount; + object oSpawned; + string sObject; + + int nCampNumP = GetLocalInt(oCamp, "CampNumP"); + int nCampNumC = GetLocalInt(oCamp, "CampNumC"); + + // Destroy Placeables + for (iCount = 1; iCount <= nCampNumP; iCount++) + { + sObject = "CampP" + IntToString(iCount - 1); + oSpawned = GetLocalObject(oCamp, sObject); + + if (nSaveState) + { + //debug("Saving " + sObject); + SaveStateOnDespawn(oSpawned, oCamp, TRUE); + } + SpawnCountDebug(oCamp, "despawning camp object " + ObjectToString(oSpawned)); + DestroyObject(oSpawned, fCampDecay); + } + + // Destroy Creatures + for (iCount = 1; iCount <= nCampNumC; iCount++) + { + sObject = "CampC" + IntToString(iCount - 1); + oSpawned = GetLocalObject(oCamp, sObject); + + if (nSaveState) + { + //debug("Saving " + sObject); + SaveStateOnDespawn(oSpawned, oCamp, TRUE); + } + AssignCommand(oSpawned, ClearAllActions()); + if (oSpawned != OBJECT_INVALID) + { + + NESS_CleanInventory(oSpawned); + AssignCommand(oSpawned, SetIsDestroyable(TRUE)); + SpawnCountDebug(oCamp, "despawning camp creature " + ObjectToString(oSpawned)); + + DestroyObject(oSpawned); + } + // remove from camp object + DeleteLocalObject(oCamp, sObject); + } +} +// + +object GetSpawnLocationObject(object oSpawn, int nSpawnLocationMin, + int nSpawnLocation, int nSpawnLocationInd) +{ + string sSpawnLocation; + object oSpawnLocation; + + if (nSpawnLocationInd) + { + int nNextEmptySlot; + + nNextEmptySlot = FindNextEmptyChildSlot(oSpawn); + + if (nNextEmptySlot > 0) + { + sSpawnLocation = "SL" + PadIntToString(nSpawnLocation + nNextEmptySlot - 1, + 2); + } + + else + { + // no empty slots? Just use base, I guess + sSpawnLocation = "SL" + PadIntToString(nSpawnLocation, 2); + } + + oSpawnLocation = GetNearestObjectByTag(sSpawnLocation, oSpawn); + } + + else + { + int nRndSpawnLocation; + + if (nSpawnLocationMin > -1) + { + nRndSpawnLocation = Random(nSpawnLocation + 1); + while (nRndSpawnLocation < nSpawnLocationMin) + { + nRndSpawnLocation = Random(nSpawnLocation + 1); + } + nSpawnLocation = nRndSpawnLocation; + } + sSpawnLocation = "SL" + PadIntToString(nSpawnLocation, 2); + oSpawnLocation = GetNearestObjectByTag(sSpawnLocation, oSpawn); + } + + return oSpawnLocation; +} + +vector GetSpawnRadiusPosition(vector vSpawnPos, float fSpawnRadius, + float fSpawnRadiusMin, int nRadialDistribution=FALSE) +{ + float fX, fY; + vector vRadius; + + if (nRadialDistribution) + { + float fSpawnAngle, fRadius; + + fSpawnAngle = IntToFloat(Random(361)); + if (fSpawnRadiusMin == fSpawnRadius) + { + fX = fSpawnRadius * cos(fSpawnAngle); + fY = fSpawnRadius * sin(fSpawnAngle); + } + else + { + fRadius = IntToFloat(Random(FloatToInt(fSpawnRadius) + 1)); + while (fRadius < fSpawnRadiusMin) + { + fRadius = IntToFloat(Random(FloatToInt(fSpawnRadius) + 1)); + } + fX = fRadius * cos(fSpawnAngle); + fY = fRadius * sin(fSpawnAngle); + } + } + + else + { + float fTestDistSquared, fMaxRadiusSquared, fMinRadiusSquared; + int nSpawnRadius = FloatToInt(fSpawnRadius); + + // Set up comparators + fMaxRadiusSquared = fSpawnRadius * fSpawnRadius; + fMinRadiusSquared = fSpawnRadiusMin * fSpawnRadiusMin; + + // Calculate first attempt + fX = IntToFloat(Random((2 * nSpawnRadius) + 1) - + nSpawnRadius + 1); + fY = IntToFloat(Random((2 * nSpawnRadius) + 1) - + nSpawnRadius + 1); + fTestDistSquared = (fX * fX) + (fY * fY); + + while (fTestDistSquared < fMinRadiusSquared || + fTestDistSquared > fMaxRadiusSquared) + { + fX = IntToFloat(Random((2 * nSpawnRadius) + 1) - + nSpawnRadius + 1); + fY = IntToFloat(Random((2 * nSpawnRadius) + 1) - + nSpawnRadius + 1); + fTestDistSquared = (fX * fX) + (fY * fY); + } + } + vRadius = Vector(vSpawnPos.x + fX, vSpawnPos.y + fY, vSpawnPos.z); + return vRadius; +} + +int CheckPositionUnseen(vector vSpawnPos, float fUnseenRadius) +{ + location lSpawn = Location(OBJECT_SELF, vSpawnPos, 0.0); + + object oCreature = GetFirstObjectInShape(SHAPE_SPHERE, fUnseenRadius, + lSpawn, FALSE, OBJECT_TYPE_CREATURE); + + while (oCreature != OBJECT_INVALID) + { + if (GetIsPC(oCreature) == TRUE) + { + return FALSE; + } + oCreature = GetNextObjectInShape(SHAPE_SPHERE, fUnseenRadius, + lSpawn, FALSE, OBJECT_TYPE_CREATURE); + } + + return TRUE; + +} + +void ReportSpawns(int nAreaSpawns, int nModuleSpawns) +{ + SendMessageToAllDMs("New creature count in " + + GetName(OBJECT_SELF) + ": " + IntToString(nAreaSpawns) + + " Module spawn count: " + IntToString(nModuleSpawns) + + (SPAWN_DELAY_DEBUG ? " (sd+)" : " (sd-)") + + (SPAWN_COUNT_DEBUG ? " (sc+)" : " (sc-)")); +} + +void TrackModuleSpawns(int nAreaSpawnCount, int nTrackModuleSpawns) +{ + int nNewAreaSpawnCount = GetLocalInt(OBJECT_SELF, SPAWN_AREA_COUNT ); + int nSpawnDifference = nNewAreaSpawnCount - nAreaSpawnCount; + + if (nSpawnDifference) + { + int nModuleSpawns = GetLocalInt(GetModule(), "ModuleSpawnCount"); + nModuleSpawns += nSpawnDifference; + SetLocalInt(GetModule(), "ModuleSpawnCount", nModuleSpawns); + if (nTrackModuleSpawns) + { + ReportSpawns(nNewAreaSpawnCount, nModuleSpawns); + } + } +} + +void DumpModuleSpawns() +{ + int nAreaSpawnCount = GetLocalInt(OBJECT_SELF, SPAWN_AREA_COUNT ); + if (nAreaSpawnCount > 0) + { + SendMessageToAllDMs("Area " + GetName(OBJECT_SELF) + ": " + + IntToString(nAreaSpawnCount) + + (SPAWN_DELAY_DEBUG ? " (sd+)" : " (sd-)") + + (SPAWN_COUNT_DEBUG ? " (sc+)" : " (sc-)")); + } +} + +void NESS_ReturnHome(object oCreature, int bRun=FALSE) +{ + float fHomeX = GetLocalFloat(oCreature, "HomeX"); + float fHomeY = GetLocalFloat(oCreature, "HomeY"); + vector vHome = Vector(fHomeX, fHomeY, 0.0); + location lHome = Location(GetArea(oCreature), vHome, 0.0); + + ClearAllActions(); + ActionMoveToLocation(lHome, bRun); +} + +void ReturnHome(location lHome) +{ + if (GetCurrentAction() != ACTION_INVALID) + return; + + ClearAllActions(); + ActionMoveToLocation(lHome); +} + +void DestroyIfNonDrop(object oItem) +{ + if(GetIsObjectValid(oItem)) + { + if (! GetDroppableFlag(oItem)) + { + //debug("Destroying non-drop item named " + GetName(oItem)); + DestroyObject(oItem); + } + } +} + +void StripNonDroppables(object oSpawned) +{ + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_ARMS, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_ARROWS, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_BELT, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_BOLTS, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_BOOTS, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_BULLETS, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_CHEST, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_CLOAK, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_HEAD, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_LEFTRING, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_NECK, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oSpawned)); + DestroyIfNonDrop(GetItemInSlot(INVENTORY_SLOT_RIGHTRING, oSpawned)); + + object oItem = GetFirstItemInInventory(oSpawned); + while (oItem != OBJECT_INVALID) + { + DestroyIfNonDrop(oItem); + oItem = GetNextItemInInventory(oSpawned); + } +} + +void NESS_ProcessDeadCreature(object oCreature, object oSpawn=OBJECT_INVALID) +{ + int nCampCreature; + + // Only do once per creature. Since this may be called from onDeath + // or within a NESS HB, check/mark for having been processed + int nProcessedDeath = GetLocalInt(oCreature, "ProcessedDeath"); + if (nProcessedDeath) + { + return; + } + + + SetLocalInt(oCreature, "ProcessedDeath", TRUE); + + // Find parent if not passed in + if (oSpawn == OBJECT_INVALID) + { + oSpawn = GetLocalObject(oCreature, "ParentSpawn"); + } + + object oArea = GetArea(oCreature); + SPAWN_DELAY_DEBUG = GetLocalInt(oArea, "SpawnDelayDebug"); + SPAWN_COUNT_DEBUG = GetLocalInt(oArea, "SpawnCountDebug"); + SpawnDelayDebug(oSpawn, "creature " + ObjectToString(oCreature) + " died"); + + // Remove non-drop items + // StripNonDroppables(oCreature); + + // Initialize DeathScripts + int nDeathScript; + float fCorpseDecay; + if (oSpawn == OBJECT_INVALID) + { + //debug("camp creature died"); + string sCampFlags; + nCampCreature = TRUE; + sCampFlags = GetLocalString(oCreature, "CreatureFlags"); + //debug("in process dead with flags " + sCampFlags); + fCorpseDecay = IntToFloat(GetFlagValue(sCampFlags, "CD", 0)); + nDeathScript = GetFlagValue(sCampFlags, "DT", -1); + //debug("camp creature: cd = " + FloatToString(fCorpseDecay)); + } + + else + { + //debug("non-camp creature died"); + nCampCreature = FALSE; + nDeathScript = GetLocalInt(oSpawn, "f_DeathScript"); + fCorpseDecay = GetLocalFloat(oSpawn, "f_CorpseDecay"); + //debug("not a camp creature: cd = " + FloatToString(fCorpseDecay)); + } + + // Run Death Script + if (nDeathScript > -1 && GetLocalInt(oCreature, "DeathScriptRan") == FALSE) + { + SetLocalInt(oCreature, "DeathScript", nDeathScript); + ExecuteScript("spawn_sc_death", oCreature); + } + + // Spawn Corpse if Dead and No Corpse + if (fCorpseDecay > 0.0) + { + if (GetLocalObject(oCreature, "Corpse") == OBJECT_INVALID) + { + //debug("calling spawn_corpse_dth"); + ExecuteScript("spawn_corpse_dth", oCreature); + } + } + + else + { + if (GetLocalInt(GetModule(), "AlwaysDestroyCorpses")) + { + AssignCommand(oCreature, SetIsDestroyable(TRUE, FALSE, FALSE)); + } + } +} + +void ResetSpawn(object oSpawn, int nTimeNow) +{ + // Reset the Spawn + SetLocalInt(oSpawn, "NextSpawnTime", nTimeNow); + //debug("set next spawn time on reset: " + IntToString(nTimeNow)); + SetLocalInt(oSpawn, "SpawnDeactivated", FALSE); + SetLocalInt(oSpawn, "ChildrenSpawned", 0); + SetLocalInt(oSpawn, "CurrentProcessTick", 0); + SetLocalInt(oSpawn, "SpawnAgeTime", 0); + //debug("PC reset"); + +} + +// + +void SaveStateOnDespawn(object oSpawned, object oSpawn, int nCamp=FALSE) +{ + string sSaveVarName; + + // These are the values needed to recreate the spawned object where + // it was when it despawned + int nObjectType = 0; + string sTemplate; + location lLastLocation; + float fLastFacing; + float fHomeX; + float fHomeY; + int nReturnHome; + + if (nCamp && !GetIsObjectValid(oSpawned)) + { + SpawnCountDebug(oSpawn, "creating slot for dead camp object" + + ObjectToString(oSpawned)); + sTemplate = ""; + } + + else + { + nObjectType = GetObjectType(oSpawned); + sTemplate = GetResRef(oSpawned); + lLastLocation = GetLocation(oSpawned); + fLastFacing = GetFacing(oSpawned); + fHomeX = GetLocalFloat(oSpawned, "HomeX"); + fHomeY = GetLocalFloat(oSpawned, "HomeY"); + + // if the return home flag is on, respawn at the home point + if (nCamp) + { + nReturnHome = GetLocalInt(oSpawned, "f_ReturnHome"); + } + + else + { + nReturnHome = GetLocalInt(oSpawn, "f_ReturnHome"); + } + + if (nReturnHome) + { + vector vHome = Vector(fHomeX, fHomeY, 0.0); + location lHome = Location(GetArea(oSpawned), vHome, fLastFacing); + lLastLocation = lHome; + } + } + + int nNumberSaveStates = GetLocalInt(oSpawn, "SpawnNumSavedStates"); + SetLocalInt(oSpawn, "SpawnNumSavedStates", ++nNumberSaveStates); + string sSaveVarNameBase = "SpawnedSaveState" + IntToString(nNumberSaveStates); + SpawnCountDebug(oSpawn, "PC despawn save count: " + IntToString(nNumberSaveStates)); + + + // Save the stuff needed to respawn + sSaveVarName = sSaveVarNameBase + "ObjectType"; + SetLocalInt(oSpawn, sSaveVarName, nObjectType); + + sSaveVarName = sSaveVarNameBase + "Template"; + SetLocalString(oSpawn, sSaveVarName, sTemplate); + + sSaveVarName = sSaveVarNameBase + "LastLocation"; + SetLocalLocation(oSpawn, sSaveVarName, lLastLocation); + + sSaveVarName = sSaveVarNameBase + "HomeX"; + SetLocalFloat(oSpawn, sSaveVarName, fHomeX); + + sSaveVarName = sSaveVarNameBase + "HomeY"; + SetLocalFloat(oSpawn, sSaveVarName, fHomeY); + + // These need to be preserved so they can be rewritten to the respawned + // object; they may be used in ProcessSpawn + if (! nCamp) + { + float fSpawnFacing = GetLocalFloat(oSpawned, "SpawnFacing"); + float fEntranceExitX = GetLocalFloat(oSpawned, "EntranceExitX"); + float fEntranceExitY = GetLocalFloat(oSpawned, "EntranceExitY"); + int iExpireTime = GetLocalInt(oSpawned, "LifespanExpireTime"); + + // Save the stuff we need to rewrite onto the spawn + sSaveVarName = sSaveVarNameBase + "SpawnFacing"; + SetLocalFloat(oSpawn, sSaveVarName, fSpawnFacing); + + sSaveVarName = sSaveVarNameBase + "EntranceExitX"; + SetLocalFloat(oSpawn, sSaveVarName, fEntranceExitX); + + sSaveVarName = sSaveVarNameBase + "EntranceExitY"; + SetLocalFloat(oSpawn, sSaveVarName, fEntranceExitY); + + sSaveVarName = sSaveVarNameBase + "LifeSpanExpireTime"; + SetLocalInt(oSpawn, sSaveVarName, iExpireTime); + } +} + +// + +void SaveCampStateOnDespawn(object oCamp, object oSpawn) +{ + // Note that most of what needs to be saved is on the camp object itself. + // This saves the camp object onto oSpawn + int nNumSavedCampStates = GetLocalInt(oSpawn,"SpawnNumSavedCampStates"); + SetLocalInt(oSpawn, "SpawnNumSavedCampStates",++nNumSavedCampStates); + + SpawnCountDebug(oSpawn, "PC despawn camp save count: " + IntToString(nNumSavedCampStates)); + + string sSaveCampVarName = "SpawnedSaveCampState" + + IntToString(nNumSavedCampStates); + SetLocalObject(oSpawn, sSaveCampVarName, oCamp); +} + +// + +void RestorePCDespawns(object oSpawn, int nTimeNow) +{ + int nSpawnNumSavedStates = GetLocalInt(oSpawn, "SpawnNumSavedStates"); + string sSaveVarNameBase; + string sSaveVarName; + int nChildNum; + + object oSpawned; + int nObjectType; + string sTemplate; + location lLastLocation; + location lEntranceExit; + float fHomeX; + float fHomeY; + location lHome; + int iExpireTime; + int i; + + SpawnCountDebug(oSpawn, "restoring " + IntToString(nSpawnNumSavedStates) + " objects"); + + for (i = 0; i < nSpawnNumSavedStates; i++) + { + nChildNum = i + 1; + sSaveVarNameBase = "SpawnedSaveState" + IntToString(nChildNum); + + sSaveVarName = sSaveVarNameBase + "ObjectType"; + nObjectType = GetLocalInt(oSpawn, sSaveVarName); + DeleteLocalInt(oSpawn, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "Template"; + sTemplate = GetLocalString(oSpawn, sSaveVarName); + DeleteLocalString (oSpawn, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "LastLocation"; + lLastLocation = GetLocalLocation(oSpawn, sSaveVarName); + DeleteLocalLocation(oSpawn, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "SpawnFacing"; + float fSpawnFacing = GetLocalFloat(oSpawn, sSaveVarName); + DeleteLocalFloat(oSpawn, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "HomeX"; + fHomeX = GetLocalFloat(oSpawn, sSaveVarName); + DeleteLocalFloat(oSpawn, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "HomeY"; + fHomeY = GetLocalFloat(oSpawn, sSaveVarName); + DeleteLocalFloat(oSpawn, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "EntranceExitX"; + float fEntranceExitX = GetLocalFloat(oSpawn, sSaveVarName); + DeleteLocalFloat(oSpawn, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "EntranceExitY"; + float fEntranceExitY = GetLocalFloat(oSpawn, sSaveVarName); + DeleteLocalFloat(oSpawn, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "LifeSpanExpireTime"; + iExpireTime = GetLocalInt(oSpawn, sSaveVarName); + DeleteLocalInt(oSpawn, sSaveVarName); + + //Initialize Cached Spawning + int nUseCache = GetLocalInt(oSpawn, "f_UseCache"); + int nCacheBucket = GetLocalInt(oSpawn, "f_CacheBucket"); + int nCacheCondition = GetLocalInt(oSpawn, "f_CacheCondition"); + int nCacheTiming = GetLocalInt(oSpawn, "CacheTiming"); + + if (! IsRestoreBlocked(oSpawn, lLastLocation, iExpireTime, nTimeNow)) + { + if(FALSE == nUseCache || nCacheTiming == 1) + { + //**FLAG standard create + oSpawned = CreateObject(nObjectType, sTemplate, lLastLocation); + } + else + { + oSpawned = CreateNessObject(oSpawn, nObjectType, sTemplate, lLastLocation, nCacheCondition, nCacheBucket); + } + + SpawnCountDebug(oSpawn, "restored " + sSaveVarNameBase + "object id: " + + ObjectToString(oSpawned)); + + lHome = Location(OBJECT_SELF, Vector(fHomeX, fHomeY, 0.), fSpawnFacing); + lEntranceExit = Location(OBJECT_SELF, Vector(fEntranceExitX, + fEntranceExitY, 0.), fSpawnFacing); + + RecordSpawned(oSpawn, oSpawned, lHome, lEntranceExit, fSpawnFacing); + SetupSpawned(oSpawn, oSpawned, lHome, nTimeNow, FALSE); + if(TRUE == nUseCache && 1 == nCacheTiming) + { + CreateCachedObject(oSpawn, oSpawned, nCacheBucket, nCacheCondition); + } + + // Lifespan expire time needs to be rewritten the the spawned object, + // since SetupSpawned generated a new one based on the current time... + SetLocalInt(oSpawned, "LifespanExpireTime", iExpireTime); + } + + else + { + SpawnCountDebug(oSpawn, "restore blocked: " + sSaveVarNameBase); + } + } + + int nNumSavedCampStates = GetLocalInt(oSpawn, "SpawnNumSavedCampStates"); + + // restore camps + for (i = 0; i < nNumSavedCampStates; i++) + { + int j; + int nCampNum = i + 1; + + string sSaveCampVarName = "SpawnedSaveCampState" + + IntToString(nCampNum); + object oCamp = GetLocalObject(oSpawn, sSaveCampVarName); + DeleteLocalObject(oSpawn, sSaveCampVarName); + + // respawn camp objects + //debug("restoring " + sSaveCampVarName); + nSpawnNumSavedStates = GetLocalInt(oCamp, "SpawnNumSavedStates"); + int nPlaceableCount = 0; + int nCreatureCount = 0; + for (j = 0; j < nSpawnNumSavedStates; j++) + { + nChildNum = j + 1; + sSaveVarNameBase = "SpawnedSaveState" + IntToString(nChildNum); + //debug("restoring " + sSaveVarNameBase); + + sSaveVarName = sSaveVarNameBase + "ObjectType"; + //debug("Getting objtype with var name " + sSaveVarName); + nObjectType = GetLocalInt(oCamp, sSaveVarName); + DeleteLocalInt(oCamp, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "Template"; + sTemplate = GetLocalString(oCamp, sSaveVarName); + //debug("template: " + sTemplate); + DeleteLocalString (oCamp, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "LastLocation"; + lLastLocation = GetLocalLocation(oCamp, sSaveVarName); + DeleteLocalLocation(oCamp, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "HomeX"; + fHomeX = GetLocalFloat(oCamp, sSaveVarName); + DeleteLocalFloat(oCamp, sSaveVarName); + + sSaveVarName = sSaveVarNameBase + "HomeY"; + fHomeY = GetLocalFloat(oCamp, sSaveVarName); + DeleteLocalFloat(oCamp, sSaveVarName); + lHome = Location(OBJECT_SELF, Vector(fHomeX, fHomeY, 0.), 0.); + + sSaveVarName = sSaveVarNameBase + "LifeSpanExpireTime"; + iExpireTime = GetLocalInt(oSpawn, sSaveVarName); + DeleteLocalInt(oSpawn, sSaveVarName); + + string sObject; + + if (nObjectType == OBJECT_TYPE_CREATURE) + { + sObject = "CampC" + IntToString(nCreatureCount++); + } + + else if (nObjectType == OBJECT_TYPE_PLACEABLE) + { + sObject = "CampP"+ IntToString(nPlaceableCount++); + } + + if (sTemplate != "") + { + if (! IsRestoreBlocked(oCamp, lLastLocation, iExpireTime, nTimeNow)) + { + oSpawned = CreateObject(nObjectType, sTemplate, lLastLocation); + + SetLocalObject(oCamp, sObject, oSpawned); + + vector vCamp = GetPositionFromLocation(GetLocation(oSpawn)); + string sFlags = GetLocalString(oCamp, sObject + "_Flags"); + + SetupCampSpawned(oSpawn, oSpawned, vCamp, lHome, sFlags); + + // Lifespan expire time needs to be rewritten the the spawned object, + // since SetupSpawned generated a new one based on the current time... + SetLocalInt(oSpawned, "LifespanExpireTime", iExpireTime); + + } + + else + { + SetLocalObject(oCamp, sObject, OBJECT_INVALID); + } + } + + else + { + SetLocalObject(oCamp, sObject, OBJECT_INVALID); + } + } + location lCampLocation = GetLocation(oSpawn); + float fCampFacing = GetFacing(oSpawn); + RecordSpawned(oSpawn, oCamp, lCampLocation, lCampLocation, fCampFacing); + } + + SetLocalInt(oSpawn, "SpawnNumSavedStates", 0); + SetLocalInt(oSpawn, "SpawnNumSavedCampStates", 0); +} + +// + +void RecordSpawned(object oSpawn, object oSpawned, location lHome, + location lEntranceExit, float fSpawnedFacing) +{ + int nChildrenSpawned; + int nSpawnCount; + int nChildSlot; + int nEmptyChildSlot; + object oChild; + string sChildSlot, sEmptyChildSlot; + + string sCustomFlag = GetLocalString(oSpawn, "f_CustomFlag"); + int nSpawnNumber = GetLocalInt(oSpawn, "f_SpawnNumber"); + + // Assign Values to oSpawned + SetLocalObject(oSpawned, "ParentSpawn", oSpawn); + SetLocalFloat(oSpawned, "SpawnFacing", fSpawnedFacing); + SetLocalFloat(oSpawned, "HomeX", GetPositionFromLocation(lHome).x); + SetLocalFloat(oSpawned, "HomeY", GetPositionFromLocation(lHome).y); + SetLocalFloat(oSpawned, "EntranceExitX", GetPositionFromLocation(lEntranceExit).x); + SetLocalFloat(oSpawned, "EntranceExitY", GetPositionFromLocation(lEntranceExit).y); + SetLocalString(oSpawned, "CustomFlag", sCustomFlag); + + // Assign Values to oSpawn + nChildrenSpawned = GetLocalInt(oSpawn, "ChildrenSpawned"); + nChildrenSpawned++; + SetLocalInt(oSpawn, "ChildrenSpawned", nChildrenSpawned); + nSpawnCount = GetLocalInt(oSpawn, "SpawnCount"); + nSpawnCount++; + SetLocalInt(oSpawn, "SpawnCount", nSpawnCount); + + // Find Empty Child Slot + nChildSlot = 1; + nEmptyChildSlot = 0; + for (nChildSlot = 1; nChildSlot <= nSpawnNumber; nChildSlot++) + { + // Retrieve Child + sChildSlot = "ChildSlot" + PadIntToString(nChildSlot, 2); + oChild = GetLocalObject(oSpawn, sChildSlot); + + // Check if this is Child Slot is Valid + if (GetIsObjectValid(oChild) == FALSE || GetIsDead(oChild)) + { + // Empty Slot + if (nEmptyChildSlot == 0) + { + nEmptyChildSlot = nChildSlot; + sEmptyChildSlot = sChildSlot; + } + } + } + + // Assign Child Slot + SpawnCountDebug(oSpawn, "recorded spawn " + GetTag(oSpawned) + " (" + + ObjectToString(oSpawned) + ") as " + sEmptyChildSlot); + SetLocalObject(oSpawn, sEmptyChildSlot, oSpawned); + SetLocalString(oSpawned, "ParentChildSlot", sEmptyChildSlot); + object oIdiot = GetLocalObject(oSpawn, sEmptyChildSlot); + string sValid = GetIsObjectValid(oIdiot) ? "valid" : "invalid"; +} + +// + +// Returns 0 if no empty slots +int FindNextEmptyChildSlot(object oSpawn) +{ + int nChildSlot; + int nEmptyChildSlot; + object oChild; + string sChildSlot; + int nSpawnNumber = GetLocalInt(oSpawn, "f_SpawnNumber"); + + nChildSlot = 1; + nEmptyChildSlot = 0; + for (nChildSlot = 1; nChildSlot <= nSpawnNumber; nChildSlot++) + { + // Retrieve Child + sChildSlot = "ChildSlot" + PadIntToString(nChildSlot, 2); + oChild = GetLocalObject(oSpawn, sChildSlot); + + // Check if this is Child Slot is Valid + if (GetIsObjectValid(oChild) == FALSE || GetIsDead(oChild)) + { + // Empty Slot + nEmptyChildSlot = nChildSlot; + break; + + } + } + + return nEmptyChildSlot; +} + +void SetupSpawned(object oSpawn, object oSpawned, location lHome, + int nTimeNow, int nWalkToHome = FALSE) +{ + object oFaction; + int nChildLifespanExpireTime; + int nGoldAmount; + effect eObject; + + int nSpawnFaction = GetLocalInt(oSpawn, "f_SpawnFaction"); + int nSpawnSit = GetLocalInt(oSpawn, "f_SpawnSit"); + int nSpawnPlot = GetLocalInt(oSpawn, "f_SpawnPlot"); + int nSpawnAlignment = GetLocalInt(oSpawn, "f_SpawnAlignment"); + int nAlignmentShift = GetLocalInt(oSpawn, "f_AlignmentShift"); + int nChildLifespanMax = GetLocalInt(oSpawn, "f_ChildLifespanMax"); + int nChildLifespanMin = GetLocalInt(oSpawn, "f_ChildLifespanMin"); + int nRandomGold = GetLocalInt(oSpawn, "f_RandomGold"); + int nRandomGoldMin = GetLocalInt(oSpawn, "f_RandomGoldMin"); + int nGoldChance = GetLocalInt(oSpawn, "f_GoldChance"); + int nLootTable = GetLocalInt(oSpawn, "f_LootTable"); + int nTrapDisabled = GetLocalInt(oSpawn, "f_TrapDisabled"); + float fCorpseDecay = GetLocalFloat(oSpawn, "f_CorpseDecay"); + int nCorpseDecayType = GetLocalInt(oSpawn, "f_CorpseDecayType"); + int bDropWielded = GetLocalInt(oSpawn, "f_CorpseDropWielded"); + int bDeleteLootOnDecay = GetLocalInt(oSpawn, "f_CorpseDeleteLootOnDecay"); + string sCorpseRemainsResRef = GetLocalString(oSpawn, "f_CorpseRemainsResRef"); + int nDeathScript = GetLocalInt(oSpawn, "f_DeathScript"); + int nSpawnScript = GetLocalInt(oSpawn, "f_SpawnScript"); + int nSpawnAreaEffect = GetLocalInt(oSpawn, "f_SpawnAreaEffect"); + float fAreaEffectDuration = GetLocalFloat(oSpawn, "f_AreaEffectDuration"); + int nObjectEffect = GetLocalInt(oSpawn, "f_ObjectEffect"); + float fObjectEffectDuration = GetLocalFloat(oSpawn, "f_ObjectEffectDuration"); + string sSpawnTag = GetLocalString(oSpawn, "f_Template"); + int nPatrolRoute = GetLocalInt(oSpawn, "f_PatrolRoute"); + int nPatrolStartAtClosest = GetLocalInt(oSpawn, "f_PatrolStartAtClosest"); + int nRouteType = GetLocalInt(oSpawn, "f_RouteType"); + int nRandomWalk = GetLocalInt(oSpawn, "f_RandomWalk"); + float fWanderRange = GetLocalFloat(oSpawn, "f_WanderRange"); + int nSuppressLooting = GetLocalInt(oSpawn, "f_SuppressLooting"); + int nSubdualMode = GetLocalInt(oSpawn, "f_SubdualMode"); + int nEncounterLevel = GetLocalInt(oSpawn, "f_EncounterLevel"); + + + if (nWalkToHome) + { + AssignCommand(oSpawned, ActionMoveToLocation(lHome)); + } + + // Spawn it in with the right facing, and you don't need this; and + // then it works for placeables as well! + // AssignCommand(oSpawned, ActionDoCommand(SetFacing(fSpawnedFacing))); + + // Set up SpawnPlot + if (nSpawnPlot == TRUE) + { + SetPlotFlag(oSpawned, TRUE); + } + + // Set up Faction + if (nSpawnFaction > -1) + { + switch (nSpawnFaction) + { + case 0: + ChangeToStandardFaction(oSpawned, STANDARD_FACTION_COMMONER); + break; + case 1: + ChangeToStandardFaction(oSpawned, STANDARD_FACTION_DEFENDER); + break; + case 2: + ChangeToStandardFaction(oSpawned, STANDARD_FACTION_MERCHANT); + break; + case 3: + ChangeToStandardFaction(oSpawned, STANDARD_FACTION_HOSTILE); + break; + case 4: + oFaction = GetNearestObjectByTag("SpawnFaction", oSpawned); + if (oFaction != OBJECT_INVALID) + { + ChangeFaction(oSpawned, oFaction); + } + break; + } + } + + // Set up Alignment + if (nSpawnAlignment > -1) + { + switch (nSpawnAlignment) + { + case 0: + AdjustAlignment(oSpawned, ALIGNMENT_NEUTRAL, nAlignmentShift); + break; + case 1: + AdjustAlignment(oSpawned, ALIGNMENT_LAWFUL, nAlignmentShift); + break; + case 2: + AdjustAlignment(oSpawned, ALIGNMENT_CHAOTIC, nAlignmentShift); + break; + case 3: + AdjustAlignment(oSpawned, ALIGNMENT_GOOD, nAlignmentShift); + break; + case 4: + AdjustAlignment(oSpawned, ALIGNMENT_EVIL, nAlignmentShift); + break; + case 5: + AdjustAlignment(oSpawned, ALIGNMENT_ALL, nAlignmentShift); + break; + } + } + + // Set up Lifespan + if (nChildLifespanMax > -1) + { + if (nChildLifespanMin > -1) + { + nChildLifespanExpireTime = -1; + while (nChildLifespanExpireTime < nChildLifespanMin) + { + nChildLifespanExpireTime = nTimeNow + Random(nChildLifespanMax) + 1; + } + } + else + { + nChildLifespanExpireTime = nTimeNow + nChildLifespanMax; + } + SetLocalInt(oSpawned, "LifespanExpireTime", nChildLifespanExpireTime); + } + + // Give Creature Loot + if (nLootTable > -1) + { + DelayCommand(1.0, LootTable(oSpawn, oSpawned, nLootTable)); + } + + // Give RandomGold + if (nRandomGold > 0) + { + // One in Four Creatures give Gold + if (d100(1) <= nGoldChance) + { + // Calculate Gold to Drop + nGoldAmount = Random(nRandomGold + 1); + while (nGoldAmount < nRandomGoldMin) + { + nGoldAmount = Random(nRandomGold + 1); + } + + // Give Gold + CreateItemOnObject("nw_it_gold001", oSpawned, nGoldAmount); + } + } + + // Set up Trap on Placeable + if (GetIsTrapped(oSpawned)) + { + if (d100(1) <= nTrapDisabled) + { + SetTrapDisabled(oSpawned); + } + } + + // Set up Corpse Decay + if (fCorpseDecay > 0.0) + { + SetLocalFloat(oSpawned, "CorpseDecay", fCorpseDecay); + SetLocalInt(oSpawned, "CorpseDecayType", nCorpseDecayType); + SetLocalString(oSpawned, "CorpseRemainsResRef", sCorpseRemainsResRef); + SetLocalInt(oSpawned, "CorpseDropWielded", bDropWielded); + SetLocalInt(oSpawned, "CorpseDeleteLootOnDecay", bDeleteLootOnDecay); + AssignCommand(oSpawned, SetIsDestroyable(FALSE, FALSE, FALSE)); + } + + // Set up Death Script + if (nDeathScript > -1) + { + AssignCommand(oSpawned, SetIsDestroyable(FALSE, FALSE, FALSE)); + } + + // Set up Object Effects + if (nObjectEffect > 0) + { + eObject = ObjectEffect(oSpawn); + if (fObjectEffectDuration == -1.0) + { + ApplyEffectToObject(DURATION_TYPE_PERMANENT, eObject, oSpawned, 0.0); + } + else + { + ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eObject, oSpawned, fObjectEffectDuration); + } + } + + // Set up Area Effect + if (nSpawnAreaEffect > 0 && sSpawnTag == "AE" && fAreaEffectDuration > 0.0) + { + DestroyObject(oSpawned, fAreaEffectDuration); + } + + // Run the Spawn Script + if (nSpawnScript > -1) + { + SetLocalInt(oSpawned, "SpawnScript", nSpawnScript); + ExecuteScript("spawn_sc_spawn", oSpawned); + } + + // Set up Random Walking + if (nRandomWalk == TRUE) + { + if (fWanderRange > 0.0) + { + AssignCommand(oSpawned, RandomWalk(oSpawn, fWanderRange, FALSE)); + } + else + { + AssignCommand(oSpawned, ActionRandomWalk()); + } + } + + // Set up the Patrol Route + if (nPatrolRoute > -1) + { + AssignCommand(oSpawned, SetPatrolRoute(nPatrolRoute, + nPatrolStartAtClosest)); + AssignCommand(oSpawned, DoPatrolRoute(nPatrolRoute, nRouteType)); + } + + // Set up Spawn Sit + if (nSpawnSit == TRUE) + { + FindSeat(oSpawn, oSpawned); + } + + // Set up loot suppression + if (nSuppressLooting) + { + SetLocalInt(oSpawned, "DoNotLoot", TRUE); + } + + // Set up subdual mode + if (nSubdualMode) + { + SetLocalInt(oSpawned, "SubdualMode", TRUE); + } + + // Set up encounter level + if (nEncounterLevel > 0) + { + SetLocalInt(oSpawned, "AlfaEncounterLevel", nEncounterLevel); + } + + SetupCustomFlags(oSpawn, oSpawned); +} + +// + +void SetupCampSpawned(object oSpawn, object oSpawned, vector vCampPosition, + location lHome, string sFlags) +{ + //debug("in setupCampSpawned"); + + // This is the closest we get to an "InitFlags" call for camp creatures + // write the flags onto the spawned creature + SetLocalString(oSpawned, "CreatureFlags", sFlags); + int nSpawnFacing = IsFlagPresent(sFlags, "SF"); + + object oModule = GetModule(); + int dfLootTable = GetLocalInt(oModule, "df_LootTable"); + int dfLootTable1ItemChance = GetLocalInt(oModule, "df_LootTable1ItemChance"); + int dfLootTable2ItemChance = GetLocalInt(oModule, "df_LootTable2ItemChance"); + int dfLootTable3ItemChance = GetLocalInt(oModule, "df_LootTable3ItemChance"); + int nLootTable = GetFlagValue(sFlags, "LT", dfLootTable); + int nLootTable1ItemChance = GetSubFlagValue(sFlags, "LT", "A", dfLootTable1ItemChance); + int nLootTable2ItemChance = GetSubFlagValue(sFlags, "LT", "B", dfLootTable2ItemChance); + int nLootTable3ItemChance = GetSubFlagValue(sFlags, "LT", "C", dfLootTable3ItemChance); + if (nLootTable1ItemChance > 100) nLootTable1ItemChance = 100; + if (nLootTable2ItemChance > 100) nLootTable2ItemChance = 100; + if (nLootTable3ItemChance > 100) nLootTable3ItemChance = 100; + // Make %'s available to spawn_cfg_loot + SetLocalInt(oSpawn, "f_LootTable1ItemChance", nLootTable1ItemChance); + SetLocalInt(oSpawn, "f_LootTable2ItemChance", nLootTable2ItemChance); + SetLocalInt(oSpawn, "f_LootTable3ItemChance", nLootTable3ItemChance); + + int nTrapDisabled = GetSubFlagValue(sFlags, "PL", "T", 100); + int nRandomWalk = IsFlagPresent(sFlags, "RW"); + SetLocalInt(oSpawned, "f_RandomWalk", nRandomWalk); + + float fCorpseDecay = IntToFloat(GetFlagValue(sFlags, "CD", 0)); + int nCorpseDecayType = GetSubFlagValue(sFlags, "CD", "T", 0); + int nCorpseRemainsType = GetSubFlagValue(sFlags, "CD", "R", 0); + int bDropWielded = IsSubFlagPresent(sFlags, "CD", "D"); + + int nDeathScript = GetFlagValue(sFlags, "DT", -1); + int nReturnHome = IsFlagPresent(sFlags, "RH"); + SetLocalInt(oSpawned, "f_ReturnHome", nReturnHome); + + + if (nReturnHome) + { + int dfReturnHomeRange = GetLocalInt(GetModule(), "df_ReturnHomeRange"); + float fReturnHomeRange = IntToFloat(GetFlagValue(sFlags, "RH", + dfReturnHomeRange)); + SetLocalFloat(oSpawned, "f_ReturnHomeRange", fReturnHomeRange); + SetLocalFloat(oSpawned, "HomeX", GetPositionFromLocation(lHome).x); + SetLocalFloat(oSpawned, "HomeY", GetPositionFromLocation(lHome).y); + } + + // Spawn Facing + if (nSpawnFacing == TRUE) + { + AssignCommand(oSpawned, SetFacingPoint(vCampPosition)); + } + else + { + AssignCommand(oSpawned, SetFacing(IntToFloat(Random(360)))); + } + + // Loot Table + if (nLootTable > -1) + { + LootTable(oSpawn, oSpawned, nLootTable); + } + + // Trap Disabled + if (GetIsTrapped(oSpawned)) + { + if (d100(1) <= nTrapDisabled) + { + SetTrapDisabled(oSpawned); + } + } + + // RandomWalk + if (nRandomWalk == TRUE) + { + AssignCommand(oSpawned, ActionRandomWalk()); + } + + // Corpse Decay + if (fCorpseDecay > 0.0) + { + string sCorpseRemainsResRef; + int bDeleteLootOnDecay = FALSE; + + switch (nCorpseRemainsType) + { + case 0: sCorpseRemainsResRef = "invis_corpse_obj"; break; + case 1: sCorpseRemainsResRef = "invis_corpse_bdy"; break; + case 2: sCorpseRemainsResRef = "invis_corpse_bon"; break; + case 3: sCorpseRemainsResRef = "invis_corpse_pot"; break; + case 4: sCorpseRemainsResRef = "invis_corpse_pch"; break; + case 5: sCorpseRemainsResRef = "invis_corpse_scr"; break; + case 6: sCorpseRemainsResRef = "invis_corpse_tre"; break; + case 7: + sCorpseRemainsResRef = "invis_corpse_obj"; + bDeleteLootOnDecay = TRUE; + break; + } + + // Record CorpseDecay + SetLocalString(oSpawned, "CorpseRemainsResRef", sCorpseRemainsResRef); + SetLocalInt(oSpawned, "CorpseDropWielded", bDropWielded); + SetLocalInt(oSpawned, "CorpseDeleteLootOnDecay", bDeleteLootOnDecay); + SetLocalFloat(oSpawned, "CorpseDecay", fCorpseDecay); + SetLocalInt(oSpawned, "CorpseDecayType", nCorpseDecayType); + AssignCommand(oSpawned, SetIsDestroyable(FALSE, FALSE, FALSE)); + } + + // Death Script + if (nDeathScript > -1) + { + AssignCommand(oSpawned, SetIsDestroyable(FALSE, FALSE, FALSE)); + } +} + +int SetupSpawnDelay(int nSpawnDelay, int nDelayRandom, int nDelayMinimum, + int nTimeNow) +{ + int nNextSpawnTime; + + if (nDelayRandom == TRUE) + { + // Setup Next Spawn Randomly + nNextSpawnTime = Random(nSpawnDelay) + 1; + while (nNextSpawnTime < nDelayMinimum) + { + nNextSpawnTime = Random(nSpawnDelay) + 1; + } + nNextSpawnTime += nTimeNow; + } + else + { + // Setup Next Spawn + nNextSpawnTime = nTimeNow + nSpawnDelay; + } + return nNextSpawnTime; +} + +int IsRestoreBlocked(object oSpawn, location lChildLoc, int iExpireTime, + int nTimeNow) +{ + int nSpawnBlock = FALSE; + + if(GetResRef(oSpawn) == "plc_invisobj") oSpawn = GetLocalObject(oSpawn, "ParentSpawn"); + + // Initialize Day/Night Only + int nDayOnly = GetLocalInt(oSpawn, "f_DayOnly"); + int nDayOnlyDespawn = GetLocalInt(oSpawn, "f_DayOnlyDespawn"); + int nNightOnly = GetLocalInt(oSpawn, "f_NightOnly"); + int nNightOnlyDespawn = GetLocalInt(oSpawn, "f_NightOnlyDespawn"); + + // Initialize Day/Hour Spawns + int nDay, nHour; + int nSpawnDayStart = GetLocalInt(oSpawn, "f_SpawnDayStart"); + int nSpawnDayEnd = GetLocalInt(oSpawn, "f_SpawnDayEnd"); + int nSpawnHourStart = GetLocalInt(oSpawn, "f_SpawnHourStart"); + int nSpawnHourEnd = GetLocalInt(oSpawn, "f_SpawnHourEnd"); + + // Initialize Child Lifespan + int nChildLifespanMax = GetLocalInt(oSpawn, "f_ChildLifespanMax"); + + // Initialize SpawnUnseen + float fSpawnUnseen = GetLocalFloat(oSpawn, "f_SpawnUnseen"); + int nUnseenIndividual = GetLocalInt(oSpawn, "f_UnseenIndividual"); + + + // Check Against Spawn Unseen (_SUnn|I_) + if (fSpawnUnseen > 0.0) + { + if (nUnseenIndividual) + { + vector vChildPos = GetPositionFromLocation(lChildLoc); + + if (CheckPositionUnseen(vChildPos, fSpawnUnseen) == FALSE) + { + nSpawnBlock = TRUE; + } + } + + else + { + vector vSpawnPos = GetPositionFromLocation(GetLocation(oSpawn)); + + if (CheckPositionUnseen(vSpawnPos, fSpawnUnseen) == FALSE) + { + nSpawnBlock = TRUE; + } + } + } + + // Check Against Night Only. Since this is a restore of something already + // spawned, it should only be blocked if despawn has been specified for the + // creature (_NOD_) + if (nNightOnly && nNightOnlyDespawn) + { + if (GetIsDay() || GetIsDawn()) + { + nSpawnBlock = TRUE; + } + } + + // Check Against Day Only (_DOD_) + if (nDayOnly && nDayOnlyDespawn) + { + if (GetIsDay() == FALSE && GetIsDawn() == FALSE) + { + nSpawnBlock = TRUE; + } + } + + // Check Against Specific Day(s) (_DYnn_) + if (nSpawnDayStart > -1) + { + nDay = GetCalendarDay(); + if (IsBetweenDays(nDay, nSpawnDayStart, nSpawnDayEnd) == FALSE) + { + nSpawnBlock = TRUE; + } + } + + // Check Against Specific Hour(s) (_HRnn_) + if (nSpawnHourStart > -1) + { + nHour = GetTimeHour(); + if (IsBetweenHours(nHour, nSpawnHourStart, nSpawnHourEnd) == FALSE) + { + nSpawnBlock = TRUE; + } + } + + // Check Lifespan (_CLnn_) + if (nChildLifespanMax > -1) + { + if (nTimeNow >= iExpireTime) + { + //debug("restore: lifespawn exceeded"); + nSpawnBlock = TRUE; + } + } + + return nSpawnBlock; +} + +int NeedPseudoHeartbeat( object oArea ) +{ + int bPCsInArea = GetLocalInt( oArea, SPAWN_PCS_IN_AREA ); + int nAreaSpawnCount = GetLocalInt( oArea, SPAWN_AREA_COUNT ); + int bHeartbeatScheduled = GetLocalInt( oArea, SPAWN_HEARTBEAT_SCHEDULED ); + int bLeftoversForceProcessing = GetLocalInt( GetModule(), + "LeftoversForceProcessing"); + + // Do a heartbeat if there are PCs in the area or any spawns up, and we + // don't already have a heartbeat scheduled + + if (bLeftoversForceProcessing) + { + return ( (bPCsInArea || nAreaSpawnCount) && ! bHeartbeatScheduled ); + } + + return ( bPCsInArea && ! bHeartbeatScheduled ); +} + +void Spawn_OnAreaEnter( string sHeartbeatScript = "spawn_sample_hb", + float fHeartbeatInterval = 6.0, float fFirstDelay = 0.0 ) +{ + object oPC = GetEnteringObject(); + object oArea = OBJECT_SELF; + + SetLocalString( oArea, SPAWN_HEARTBEAT_SCRIPT, sHeartbeatScript ); + SetLocalFloat( oArea, SPAWN_INTERVAL, fHeartbeatInterval ); + + if ( GetIsPC( oPC ) ) + { + SetLocalInt(oPC, "NESS_Player", TRUE); + int nPCsInArea = GetLocalInt( oArea, SPAWN_PCS_IN_AREA ); + int nAreaSpawnCount = GetLocalInt( oArea, SPAWN_AREA_COUNT ); + + nPCsInArea++; + SetLocalInt( oArea, SPAWN_PCS_IN_AREA, nPCsInArea ); + + if ( NeedPseudoHeartbeat( oArea ) ) + { + if ( fFirstDelay > 0.0 ) + { + DelayCommand( fFirstDelay, ExecuteScript( "spawn_pseudohb", oArea ) ); + } + + else + { + ExecuteScript( "spawn_pseudohb", oArea ); + } + } + } +} + +void Spawn_OnAreaExit() +{ + object oPC = GetExitingObject(); + object oArea = OBJECT_SELF; + int bIsPC = GetLocalInt(oPC, "NESS_Player"); + + if ( bIsPC ) + { + int nPCsInArea = GetLocalInt( oArea, SPAWN_PCS_IN_AREA ); + nPCsInArea--; + SetLocalInt( oArea, SPAWN_PCS_IN_AREA, nPCsInArea ); + } +} + +void ScheduleNextPseudoHeartbeat( object oArea ) +{ + float fInterval = GetLocalFloat( oArea, SPAWN_INTERVAL ); + + if ( fInterval == 0.0 ) + { + fInterval = 6.0; + } + + DelayCommand( fInterval, ExecuteScript( "spawn_pseudohb", oArea ) ); + SetLocalInt( oArea, SPAWN_HEARTBEAT_SCHEDULED, TRUE ); +} + +void CountAndTrackModuleSpawns( int nAreaSpawnCount ) +{ + int nSpawns = GetLocalInt(OBJECT_SELF, "Spawns"); + int nNewAreaSpawnCount = 0; + // First we count the spawns in the area + int nNth; + for (nNth = 1; nNth <= nSpawns; nNth++) + { + string sSpawnNum = "Spawn" + PadIntToString(nNth, 2); + object oSpawn = GetLocalObject(OBJECT_SELF, sSpawnNum); + nNewAreaSpawnCount += GetLocalInt(oSpawn, "SpawnCount"); + } + SetLocalInt(OBJECT_SELF, SPAWN_AREA_COUNT, nNewAreaSpawnCount); + // Do spawn tracking + int nTrackModuleSpawns = GetLocalInt(GetModule(), "TrackModuleSpawns"); + // call with old count + TrackModuleSpawns(nAreaSpawnCount, nTrackModuleSpawns); + // Do Spawn dumping + int nDumpModuleSpawns = GetLocalInt(GetModule(), "DumpModuleSpawns"); + if (nDumpModuleSpawns) + { + DumpModuleSpawns(); + } +} + +//creates a Ness object by either copying or creating and copying +object CreateNessObject(object oSpawn, int nObjectType, string sTemplate, location lLocation + , int nCacheCondition = 0, int nCacheBucket = 0) +{ + string sBucketWPTag = "wpNessCachedLoc"; + if(nCacheBucket != 0) + { + sBucketWPTag += IntToString(nCacheBucket); + } + + int nRefCount; + location lCachedLocation = GetLocation(GetObjectByTag(sBucketWPTag)); +; + object oModule = GetModule(); + object oCachedObject = GetLocalObject(oModule, sTemplate); + + if(!GetIsObjectValid(oCachedObject)) + { + if(2 == nCacheCondition) + { + return OBJECT_INVALID; + } + + oCachedObject = CreateObject(nObjectType, sTemplate, lCachedLocation); + SetLocalObject(oModule, sTemplate, oCachedObject); + } + else + if(1 == nCacheCondition)//if object valid and force cache is true + { + // get cached object RefCount + nRefCount = RefCount(oCachedObject); + + DestroyObject(oCachedObject); + oCachedObject = CreateObject(nObjectType, sTemplate, lCachedLocation); + + //do refcounting + if(0 < nRefCount) SetRefOverride(oCachedObject, nRefCount); + + SetLocalObject(oModule, sTemplate, oCachedObject); + } + + if(!GetIsObjectValid(oCachedObject)) + { + WriteTimestampedLogEntry("Failed to cache object"); + return CreateObject(nObjectType, sTemplate, lLocation); + } + object oSpawned = CopyObject(oCachedObject, lLocation); + AddRef(oCachedObject, oSpawn); + return oSpawned; +} + +//creates a cached object from oSpawned +void CreateCachedObject(object oSpawn, object oSpawned, int nCacheBucket = 0, int nCacheCondition = 0) +{ + string sTemplate = GetResRef(oSpawned); + object oModule = GetModule(); + string sBucketWPTag = "wpNessCachedLoc"; + int nRefCount = -1; + + if(!GetIsObjectValid(oSpawned)) return; + if(nCacheBucket != 0) + { + sBucketWPTag += IntToString(nCacheBucket); + } + location lCachedLocation = GetLocation(GetObjectByTag(sBucketWPTag)); + + object oCachedObject = GetLocalObject(oModule, sTemplate); + + if(GetIsObjectValid(oCachedObject)) + { + if(0 == nCacheCondition) + { + AddRef(oCachedObject, oSpawn); + return; + } + + //get cached object refcount + nRefCount = RefCount(oCachedObject); + DestroyObject(oCachedObject); + } + + //create cached by copying spawned + oCachedObject = CopyObject(oSpawned, lCachedLocation); + SetLocalObject(oModule, sTemplate, oCachedObject); + + //do refcounting + if(0 < nRefCount) + { + SetRefOverride(oCachedObject, nRefCount); + } + AddRef(oCachedObject, oSpawn); +} + +//adds to the refcount of oCachedSpawn +int AddRef(object oCachedSpawn, object oCounter) +{ + if(FALSE == bUseRefCount) return -1; + if(!GetIsObjectValid(oCachedSpawn) || !GetIsObjectValid(oCounter)) + { + return -1; + } + string sResRef = GetResRef(oCachedSpawn); + + if(0 != GetLocalInt(oCounter, sResRef)) + { + return 0; + } + SetLocalInt(oCounter, sResRef, 1); + AddRefCountList(oCounter, sResRef); + + int nRefCount = GetLocalInt(oCachedSpawn, REFCOUNT) + 1; + SetLocalInt(oCachedSpawn, REFCOUNT, nRefCount); + + return nRefCount; +} + +//reduces the refcount of oCachedSpawn. If the count drops to zero the cached spawn +//is destroyed +int Release(object oCachedSpawn, object oCounter) +{ + if(FALSE == bUseRefCount) return -1; + + if(!GetIsObjectValid(oCachedSpawn) || !GetIsObjectValid(oCounter)) + { + return -1; + } + + string sResRef = GetResRef(oCachedSpawn); + if(1 != GetLocalInt(oCounter, sResRef)) + { + return -1; + } + SetLocalInt(oCounter, sResRef, 0); + + int nRefCount = GetLocalInt(oCachedSpawn, REFCOUNT) - 1; + if(0 >= nRefCount) + { + DestroyObject(oCachedSpawn); + return 0; + } + + SetLocalInt(oCachedSpawn, REFCOUNT, nRefCount); + return nRefCount; +} + +int RefCount(object oCachedSpawn) +{ + if(!GetIsObjectValid(oCachedSpawn)) return -1; + return GetLocalInt(oCachedSpawn, REFCOUNT); +} + +void SetRefOverride(object oCachedSpawn, int nRefCount) +{ + if(GetIsObjectValid(oCachedSpawn)) + { + SetLocalInt(oCachedSpawn, REFCOUNT, nRefCount); + } +} + +//adds to a running list of templates for caches the spawn point. This +//list is used to release cached spawns when no longer in use. +void AddRefCountList(object oCounter, string sTemplate) +{ + if(!GetIsObjectValid(oCounter)) return; + if(TRUE == TemplateInRefCountList(oCounter, sTemplate)) return; + + int nRefCountListCount = GetLocalInt(oCounter, "RefCountListCount"); + SetLocalString(oCounter, "RefCountList" + IntToString(nRefCountListCount), sTemplate); + nRefCountListCount++; + SetLocalInt(oCounter, "RefCountListCount", nRefCountListCount); +} + +int TemplateInRefCountList(object oCounter, string sTemplate) +{ + int nRet = FALSE; + int nRefCountListCount = GetLocalInt(oCounter, "RefCountListCount"); + if(nRefCountListCount <= 0) return FALSE; + + int nth; + string sVarTemplate; + for(nth = 0; nth < nRefCountListCount; nth++) + { + sVarTemplate = GetLocalString(oCounter, "RefCountList" + IntToString(nth)); + if(sTemplate == sVarTemplate) + { + nRet = TRUE; + break; + } + + } + + return nRet; +} + +void ReleaseAll(object oCounter) +{ + int nRefCountListCount = GetLocalInt(oCounter, "RefCountListCount"); + if(nRefCountListCount <= 0) return; + + int nth; + string sVarTemplate; + object oCachedObject; + for(nth = 0; nth < nRefCountListCount; nth++) + { + sVarTemplate = GetLocalString(oCounter, "RefCountList" + IntToString(nth)); + + if(GetLocalInt(oCounter, sVarTemplate) == 1) + { + oCachedObject = GetLocalObject(GetModule(), sVarTemplate); + Release(oCachedObject, oCounter); + } + } +} + +void ReleaseAreaRefs(object oArea) +{ + + // Declare Variables + object oSpawn; + string sSpawnName, sSpawnNum; + int nNth; + + int nSpawns = GetLocalInt(OBJECT_SELF, "Spawns"); + + // Enumerate Waypoints in the Area + for (nNth = 1; nNth <= nSpawns; nNth++) + { + // Retrieve Spawn + sSpawnNum = "Spawn" + PadIntToString(nNth, 2); + oSpawn = GetLocalObject(OBJECT_SELF, sSpawnNum); + + // Validate spawn + if (! GetIsObjectValid( oSpawn ) ) + { + continue; + } + + ReleaseAll(oSpawn); + } +} + + + + + diff --git a/_module/nss/spawn_main.nss b/_module/nss/spawn_main.nss new file mode 100644 index 0000000..b8ebecb --- /dev/null +++ b/_module/nss/spawn_main.nss @@ -0,0 +1,1906 @@ +// +// +// NESS +// Spawn Main v8.1.3 +// +// +// Do NOT Modify this File +// See 'spawn__readme' for Instructions +// + +// Function Includes +#include "spawn_functions" + +// + +// Configuration Includes +#include "spawn_cfg_flag" +#include "spawn_cfg_group" +#include "spawn_cfg_global" +#include "spawn_cfg_loot" +#include "spawn_cfg_camp" +#include "spawn_cfg_fxsp" +#include "spawn_cfg_fxae" +#include "spawn_cfg_fxobj" +// + +// Check Includes +#include "spawn_chk_pcs" +#include "spawn_chk_custom" +// + +// Declare external functions +int GetCurrentRealSeconds(); + +// Declare Function Includes +void SetGlobalDefaults(); +int SetSpawns(location lBase); +string PadIntToString(int nInt, int nDigits); +int CountPCsInArea(object oArea = OBJECT_INVALID, int nDM = FALSE); +int CountPCsInRadius(location lCenter, float fRadius, int nDM = FALSE); +object GetRandomPCInArea(object oArea, object oSpawn); +int IsBetweenDays(int nCheckDay, int nDayStart, int nDayEnd); +int IsBetweenHours(int nCheckHour, int nHourStart, int nHourEnd); +void RandomWalk(object oSpawn, float fWalkingRadius, int nRun); +void FindSeat(object oSpawn, object oSpawned); +void SetPatrolRoute(int nPatrolRoute, int nStartClosest=FALSE); +void DoPatrolRoute(int nPatrolRoute, int nRouteType); +int ProcessCamp(object oCamp); +void DestroyCamp(object oCamp, float fCampDecay, int nSaveState); +// + +// Declare Configuration Includes +void LootTable(object oSpawn, object oSpawned, int nLootTable); +string SpawnGroup(object oSpawn, string sTemplate); +int SpawnCheckCustom(object oSpawn); +int SpawnCheckPCs(object oSpawn); +effect SpawnAreaEffect(object oSpawn); +effect ObjectEffect(object oSpawn); +int SpawnEffect(object oSpawn, int nSpawnEffect, int nDespawnEffect); +void SetCampSpawn(object oCamp, string sCamp, location lCamp); +// + +//Declare Functions we Define after Main Function +void ProcessSpawn(object oSpawn, int nProcessFrequency, int nPCCount, int nTimeNow, + int nWaypointCount); +void DoSpawn(object oSpawn, int nTimeNow); +object CampSpawn(object oSpawn, string sCamp, location lCamp); +object DoCampSpawn(object oCamp, location lCamp, float fSpawnRadius, + string sTemplate, int nPlaceable, int nSpawnNumber, int nCampCenter); + +// + +// The Spawn Function +void Spawn() +{ + // Declare Variables + object oSpawn; + string sSpawnName, sSpawnNum; + int nSpawnDeactivated; + int nProcessSpawn; + int nCurrentProcessTick; + int nProcessFrequency; + int nProcessOffset; + int nNth; + + SPAWN_DELAY_DEBUG = GetLocalInt(OBJECT_SELF, "SpawnDelayDebug"); + SPAWN_COUNT_DEBUG = GetLocalInt(OBJECT_SELF, "SpawnCountDebug"); + + int bAreaInitialized = GetLocalInt(OBJECT_SELF, "NESS_AreaInitialized"); + + if (! bAreaInitialized) + { + + // Set Global Defaults + SetGlobalDefaults(); + + // Set Spawns + location lBase = Location(OBJECT_SELF, Vector(), 0.0); + SetSpawns(lBase); + SetLocalInt(OBJECT_SELF, SPAWN_AREA_COUNT, 0); + SetLocalInt(OBJECT_SELF, "NESS_AreaInitialized", TRUE); + + // Recall ourselves after flags have been initialized + DelayCommand(0.1, Spawn()); + return; + } + + // Check Area State + if (GetLocalInt(OBJECT_SELF, "AreaSpawnsDeactivated") == TRUE) + { + return; + } + + int nPCCount = CountPCsInArea(OBJECT_SELF, TRUE); + + int nAreaSpawnCount = GetLocalInt(OBJECT_SELF, SPAWN_AREA_COUNT ); + int bLeftoversForceProcessing = GetLocalInt( GetModule(), + "LeftoversForceProcessing"); + + if (nPCCount == 0 && (nAreaSpawnCount == 0 || ! bLeftoversForceProcessing)) + { + ReleaseAreaRefs(OBJECT_SELF); + return; + } + + int nSpawns = GetLocalInt(OBJECT_SELF, "Spawns"); + + // What time is it? Used to compare all times + int nTimeNow = GetCurrentRealSeconds(); + + // Enumerate Waypoints in the Area + for (nNth = 1; nNth <= nSpawns; nNth++) + { + // Retrieve Spawn + sSpawnNum = "Spawn" + PadIntToString(nNth, 2); + oSpawn = GetLocalObject(OBJECT_SELF, sSpawnNum); + + // Validate spawn + if (! GetIsObjectValid( oSpawn ) ) + { + continue; + } + sSpawnName = GetLocalString(oSpawn, "f_Flags"); + + // Check for spawns that need to be processed because they despawned + // due to a PCxx flag and PCs have returned + if (nPCCount > 0) + { + int nSpawnNumSaveStates = GetLocalInt(oSpawn, "SpawnNumSavedStates"); + int nSpawnNumSaveCampStates = GetLocalInt(oSpawn, "SpawnNumSavedCampStates"); + if (nSpawnNumSaveStates > 0 || nSpawnNumSaveCampStates > 0) + { + //debug("forcing respawns"); + RestorePCDespawns(oSpawn, nTimeNow); + NESS_ForceProcess(oSpawn); + } + } + + // Only Process every nProcessFrequency Seconds + nProcessSpawn = FALSE; + nProcessFrequency = GetLocalInt(oSpawn, "f_ProcessFrequency"); + nProcessOffset = GetLocalInt(oSpawn, "f_ProcessOffset"); + nCurrentProcessTick = GetLocalInt(oSpawn, "CurrentProcessTick"); + + if (nProcessFrequency == 1) + { + // Don't even need to bother with CurrentProcessTick or offset + nProcessSpawn = TRUE; + } + + else if (nCurrentProcessTick == 0) + { + // First time in. Always process the first time + nProcessSpawn = TRUE; + SetLocalInt(oSpawn, "CurrentProcessTick", 2-nProcessOffset); + //debug("Tick 1"); + //debug("+"); + } + + else + { + int nForceProcess = GetLocalInt(oSpawn, "SpawnForceProcess"); + if (nForceProcess) + { + SetLocalInt(oSpawn, "SpawnForceProcess", FALSE); + } + + if (nCurrentProcessTick > nProcessFrequency) + { + // Roll over Counter Tick + nCurrentProcessTick = 1; + //debug("Tick " + IntToString(nCurrentProcessTick)); + //debug("+"); + + nProcessSpawn = TRUE; + } + + else + { + //debug("Tick " + IntToString(nCurrentProcessTick)); + + if (nForceProcess) + { + //debug("+ (forced)"); + nProcessSpawn = TRUE; + } + + } + // Increment Counter Tick + nCurrentProcessTick++; + SetLocalInt(oSpawn, "CurrentProcessTick", nCurrentProcessTick); + } + + // Check if Deactivated + nSpawnDeactivated = GetLocalInt(oSpawn, "SpawnDeactivated"); + if (nSpawnDeactivated == TRUE) + { + nProcessSpawn = FALSE; + } + + // Process the Spawn + if (nProcessSpawn == TRUE) + { + DelayCommand(0.0, ProcessSpawn(oSpawn, nProcessFrequency, + nPCCount, nTimeNow, nNth)); + } + } + + // New in 8.1.4 + DelayCommand(0.1, CountAndTrackModuleSpawns( nAreaSpawnCount ) ); +} +// + +// This Function Processes a Spawn +void ProcessSpawn(object oSpawn, int nProcessFrequency, int nPCCount, + int nTimeNow, int nWaypoint) +{ + // Initialize Miscellaneous + int iCount; + int jCount; + + // Initialize Spawn and Spawned + object oCreature, oChild; + int nSpawnChild, nSpawnCount, nCurrentChildren; + int nChildSlot, nEmptyChildSlots; + string sChildSlot, sChild; + int nSpawnBlock, nSpawnDespawn, nDespawning; + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + string sSpawnTag = GetLocalString(oSpawn, "f_Template"); + location lSpawn = GetLocation(oSpawn); + int nChildrenSpawned = GetLocalInt(oSpawn, "ChildrenSpawned"); + int nProcessesPerMinute = 60 / (nProcessFrequency * 6); + + // Get New Name and Tag + sSpawnName = GetLocalString(oSpawn, "f_Flags"); + sSpawnTag = GetLocalString(oSpawn, "f_Template"); + + // Initialize InitialState + int nInitialState = GetLocalInt(oSpawn, "f_InitialState"); + int nInitialDelay = GetLocalInt(oSpawn, "f_InitialDelay"); + int nNextSpawnTime = GetLocalInt(oSpawn, "NextSpawnTime"); + + // Set Initial Delay + if (nInitialDelay > 0) + { + if (GetLocalInt(oSpawn, "InitialDelaySet") == FALSE) + { + nNextSpawnTime = nTimeNow + nInitialDelay; + SpawnDelayDebug(oSpawn, "setting NextSpawnTime for initial delay " + + IntToString(nNextSpawnTime) + " [" + RealSecondsToString(nNextSpawnTime) + + "]"); + SetLocalInt(oSpawn, "NextSpawnTime", nNextSpawnTime); + SetLocalInt(oSpawn, "InitialDelaySet", TRUE); + } + } + + // Initialize SpawnDelay + int nSpawnDelay = GetLocalInt(oSpawn, "f_SpawnDelay"); + int nDelayRandom = GetLocalInt(oSpawn, "f_DelayRandom"); + int nDelayMinimum = GetLocalInt(oSpawn, "f_DelayMinimum"); + int nSpawnDelayPeriodic = GetLocalInt(oSpawn, "f_SpawnDelayPeriodic"); + + // Initialize SpawnNumber + int nRndSpawnNumber; + int nSpawnNumber = GetLocalInt(oSpawn, "f_SpawnNumber"); + int nSpawnNumberMax = GetLocalInt(oSpawn, "f_SpawnNumberMax"); + int nSpawnNumberMin = GetLocalInt(oSpawn, "f_SpawnNumberMin"); + int nSpawnAllAtOnce = GetLocalInt(oSpawn, "f_SpawnAllAtOnce"); + int nSpawnNumberAtOnce = GetLocalInt(oSpawn, "f_SpawnNumberAtOnce"); + int nSpawnNumberAtOnceMin = GetLocalInt(oSpawn, "f_SpawnNumberAtOnceMin"); + + // Initialize Day/Night Only + int nDayOnly = GetLocalInt(oSpawn, "f_DayOnly"); + int nDayOnlyDespawn = GetLocalInt(oSpawn, "f_DayOnlyDespawn"); + int nNightOnly = GetLocalInt(oSpawn, "f_NightOnly"); + int nNightOnlyDespawn = GetLocalInt(oSpawn, "f_NightOnlyDespawn"); + + // Initialize Day/Hour Spawns + int nDay, nHour; + int nSpawnDayStart = GetLocalInt(oSpawn, "f_SpawnDayStart"); + int nSpawnDayEnd = GetLocalInt(oSpawn, "f_SpawnDayEnd"); + int nSpawnHourStart = GetLocalInt(oSpawn, "f_SpawnHourStart"); + int nSpawnHourEnd = GetLocalInt(oSpawn, "f_SpawnHourEnd"); + + // Initialize RandomWalk + int nRandomWalk = GetLocalInt(oSpawn, "f_RandomWalk"); + float fWanderRange = GetLocalFloat(oSpawn, "f_WanderRange"); + + // Initialize ReturnHome + int nReturnHome = GetLocalInt(oSpawn, "f_ReturnHome"); + float fReturnHomeRange = GetLocalFloat(oSpawn, "f_ReturnHomeRange"); + + // Initialize PCCheck + int nPCCheck = GetLocalInt(oSpawn, "f_PCCheck"); + int nPCCheckDelay = GetLocalInt(oSpawn, "f_PCCheckDelay"); + int nPCReset = GetLocalInt(oSpawn, "f_PCReset"); + + // Initialize RandomGold + int nGoldAmount; + int nRandomGold = GetLocalInt(oSpawn, "f_RandomGold"); + int nRandomGoldMin = GetLocalInt(oSpawn, "f_RandomGoldMin"); + int nGoldChance = GetLocalInt(oSpawn, "f_GoldChance"); + + // Initialize Spawn Effects + effect sSpawn, eDespawn; + int nSpawnEffect = GetLocalInt(oSpawn, "f_SpawnEffect"); + int nDespawnEffect = GetLocalInt(oSpawn, "f_DespawnEffect"); + + // Initialize Patrol Routes + int nPatrolScriptRunning; + int nPatrolRoute = GetLocalInt(oSpawn, "f_PatrolRoute"); + int nRouteType = GetLocalInt(oSpawn, "f_RouteType"); + int bCheckForStuckPatrols; + if (nPatrolRoute) + { + bCheckForStuckPatrols = GetLocalInt(GetModule(), "CheckForStuckPatrols"); + } + + // Initialize Placeables + int nLootTime; + int nRefreshTime; + int nPlaceable = GetLocalInt(oSpawn, "f_Placeable"); + int nPlaceableType = GetLocalInt(oSpawn, "f_PlaceableType"); + int nTrapDisabled = GetLocalInt(oSpawn, "f_TrapDisabled"); + int nPlaceableRefreshPeriod = GetLocalInt(oSpawn, "f_PlaceableRefreshPeriod"); + + // Initialize SpawnGroups + int nSpawnGroup = GetLocalInt(oSpawn, "f_SpawnGroup"); + + // Initialize LootTable + int nLootTable = GetLocalInt(oSpawn, "f_LootTable"); + + // Initialize Spawn Deactivation + int nSpawnDeactivated, nRunDeactivateScript, nSpawnAgeTime; + int nDeactivateSpawn = GetLocalInt(oSpawn, "f_DeactivateSpawn"); + int nDeactivateScript = GetLocalInt(oSpawn, "f_DeactivateScript"); + int nDeactivationInfo = GetLocalInt(oSpawn, "f_DeactivationInfo"); + int nForceDeactivateSpawn = GetLocalInt(oSpawn, "ForceDeactivateSpawn"); + + // Initialize Child Lifespan + int nChildLifespanExpireTime; + int nChildLifespanMax = GetLocalInt(oSpawn, "f_ChildLifespanMax"); + int nChildLifespanMin = GetLocalInt(oSpawn, "f_ChildLifespanMin"); + + // Initialize SpawnRadius + float fSpawnRadius = GetLocalFloat(oSpawn, "f_SpawnRadius"); + float fSpawnRadiusMin = GetLocalFloat(oSpawn, "f_SpawnRadiusMin"); + int nSpawnNearPCs = GetLocalInt(oSpawn, "f_SpawnNearPCs"); + + // Initialize SpawnUnseen + float fSpawnUnseen = GetLocalFloat(oSpawn, "f_SpawnUnseen"); + int nUnseenIndividual = GetLocalInt(oSpawn, "f_UnseenIndividual"); + int nUnseenRetryCount = GetLocalInt(oSpawn, "f_UnseenRetryCount"); + + // Initialize CorpseDecay + float fCorpseDecay = GetLocalFloat(oSpawn, "f_CorpseDecay"); + + // Initialize SpawnCamp + int nSpawnCamp = GetLocalInt(oSpawn, "f_SpawnCamp"); + float fCampDecay = GetLocalFloat(oSpawn, "f_CampDecay"); + + // Initialize SpawnScripts + int nSpawnScript = GetLocalInt(oSpawn, "f_SpawnScript"); + int nDespawnScript = GetLocalInt(oSpawn, "f_DespawnScript"); + + // Initialize SpawnCheckCustom + int nSpawnCheckCustom = GetLocalInt(oSpawn, "f_SpawnCheckCustom"); + + // Initialize SpawnCheckPCs + int nSpawnCheckPCs = GetLocalInt(oSpawn, "f_SpawnCheckPCs"); + + // Intialize SpawnTrigger + float fSpawnTrigger = GetLocalFloat(oSpawn, "f_SpawnTrigger"); + float fDespawnTrigger = GetLocalFloat(oSpawn, "f_DespawnTrigger"); + + // Initialize AreaEffect + int nSpawnAreaEffect = GetLocalInt(oSpawn, "f_SpawnAreaEffect"); + float fAreaEffectDuration = GetLocalFloat(oSpawn, "f_AreaEffectDuration"); + + // Initialize ObjectEffect + int nObjectEffect = GetLocalInt(oSpawn, "f_ObjectEffect"); + float fObjectEffectDuration = GetLocalFloat(oSpawn, "f_ObjectEffectDuration"); + + // Initialize RandomSpawn + int nRandomSpawn = GetLocalInt(oSpawn, "f_RandomSpawn"); + + // Initialize SpawnFaction + int nSpawnFaction = GetLocalInt(oSpawn, "f_SpawnFaction"); + + // Initialize SpawnAlignment + int nSpawnAlignment = GetLocalInt(oSpawn, "f_SpawnAlignment"); + int nAlignmentShift = GetLocalInt(oSpawn, "f_AlignmentShift"); + + // Initialize Heartbeat Script + int nHeartbeatScript = GetLocalInt(oSpawn, "f_HeartbeatScript"); + + // Initialize SpawnLocation + int nSpawnLocation = GetLocalInt(oSpawn, "f_SpawnLocation"); + int nSpawnLocationMin = GetLocalInt(oSpawn, "f_SpawnLocationMin"); + int nSpawnLocationInd = GetLocalInt(oSpawn, "f_SpawnLocationInd"); + + // Initialize SpawnFacing + int nFacing = GetLocalInt(oSpawn, "f_Facing"); + float fSpawnFacing = GetLocalFloat(oSpawn, "f_SpawnFacing"); + + // Initialize EntranceExit + float fEntranceExitX, fEntranceExitY; + vector vEntranceExit; + string sEntranceExit, sExit; + location lEntranceExit, lExit; + int nRndExit; + object oExit; + int nEntranceExit = GetLocalInt(oSpawn, "f_EntranceExit"); + int nEntranceExitMin = GetLocalInt(oSpawn, "f_EntranceExitMin"); + int nExit = GetLocalInt(oSpawn, "f_Exit"); + int nExitMin = GetLocalInt(oSpawn, "f_ExitMin"); + + // Initialize HealChildren + int nHealAmount; + effect eEffect; + int nHealChildren = GetLocalInt(oSpawn, "f_HealChildren"); + int nHealEffects = GetLocalInt(oSpawn, "f_HealEffects"); + + // Initialize SpawnItem + int nSpawnItem = GetLocalInt(oSpawn, "f_SpawnItem"); + + // Initialize SpawnSit + int nSpawnSit = GetLocalInt(oSpawn, "f_SpawnSit"); + + // Initialize SpawnPlot + int nSpawnPlot = GetLocalInt(oSpawn, "f_SpawnPlot"); + + // Initialize SpawnMerchant + int nSpawnMerchant = GetLocalInt(oSpawn, "f_SpawnMerchant"); + + int nPCCheckDespawn = FALSE; + + // decide if we'll despawn this HB due to PC Check + if (nPCCheck == TRUE) + { + //debug("Pc check"); + // Check for PCs + if (nPCCount == 0) + { + int nPCCheckDespawnTime = GetLocalInt(oSpawn, "PCCheckDespawnTime"); + //debug("despawn time = " + IntToString(nPCCheckDespawnTime)); + //debug("time now = " + IntToString(nTimeNow)); + if (nPCCheckDespawnTime == 0) + { + nPCCheckDespawnTime = nTimeNow + nPCCheckDelay; + SetLocalInt(oSpawn, "PCCheckDespawnTime", nPCCheckDespawnTime); + } + if (nTimeNow >= nPCCheckDespawnTime) + { + nPCCheckDespawn = TRUE; + SetLocalInt(oSpawn, "PCCheckDespawnTime", 0); + } + } + else + { + SetLocalInt(oSpawn, "PCCheckDespawnTime", 0); + } + } + + // Enumerate oSpawned Children + nChildSlot = 1; + nSpawnCount = 0; + nEmptyChildSlots = 0; + int nSpawnDelayTimerExpired = FALSE; + + for (nChildSlot = 1; nChildSlot <= nSpawnNumber; nChildSlot++) + { + // Starting Conditional + nSpawnDespawn = FALSE; + nDespawning = FALSE; + nSpawnChild = FALSE; + + // Retrieve Child + sChildSlot = "ChildSlot" + PadIntToString(nChildSlot, 2); + oCreature = GetLocalObject(oSpawn, sChildSlot); + //debug("checking " + sChildSlot + " of " + IntToString(nSpawnNumber)); + + + // Check if this is Child Slot is Valid + if (GetIsObjectValid(oCreature) == FALSE) + { + // Empty Slot + SpawnDelayDebug(oSpawn, "invalid in slot " + sChildSlot + ": object " + + ObjectToString(oCreature)); + SpawnCountDebug(oSpawn, "invalid in slot " + sChildSlot + ": object " + + ObjectToString(oCreature)); + nEmptyChildSlots++; + + } + else + { + if (nPlaceable == FALSE && nSpawnCamp == FALSE && nSpawnItem == FALSE) + { + // Don't process DM possessed creatures + + if (GetIsDMPossessed( oCreature ) ) + { + continue; + } + + // Check for Corpses + if (GetIsDead(oCreature) == FALSE) + { + //debug("alive"); + nSpawnChild = TRUE; + } + else + { + // Empty Slot + SpawnDelayDebug(oSpawn, "dead in slot " + sChildSlot + ": object " + + ObjectToString(oCreature)); + SpawnCountDebug(oSpawn, "dead in slot " + sChildSlot + ": object " + + ObjectToString(oCreature)); + nEmptyChildSlots++; + NESS_ProcessDeadCreature(oCreature, oSpawn); + } + } + else + { + nSpawnChild = TRUE; + } + } + + if (nSpawnChild == TRUE) + { + // Add to Count Total + nSpawnCount++; + //SpawnCountDebug("+ spawn count to " + IntToString(nSpawnCount)); + nSpawnBlock = FALSE; + + // Check Despawning + nDespawning = GetLocalInt(oCreature, "Despawning"); + + // Check Force Despawn + if (GetLocalInt(oCreature, "ForceDespawn") == TRUE) + { + //debug("force despawn"); + nDespawning = TRUE; + nSpawnDespawn = TRUE; + } + + // Get Creature Home + float fHomeX = GetLocalFloat(oCreature, "HomeX"); + float fHomeY = GetLocalFloat(oCreature, "HomeY"); + vector vHome = Vector(fHomeX, fHomeY, 0.0); + location lHome = Location(OBJECT_SELF, vHome, 0.0); + + // Check Facing + float fChildFacing = GetLocalFloat(oCreature, "SpawnFacing"); + + // Check Lifespan + if (nChildLifespanMax > -1) + { + nChildLifespanExpireTime = GetLocalInt(oCreature, "LifespanExpireTime"); + if (nTimeNow >= nChildLifespanExpireTime) + { + //debug("despawn: lifespawn exceeded"); + nSpawnDespawn = TRUE; + } + } + + // Day Only + if (nDayOnlyDespawn == TRUE && (nDayOnly == TRUE && (GetIsDay() == FALSE && GetIsDawn() == FALSE))) + { + //debug("despawn: night time for DO spawn"); + nSpawnDespawn = TRUE; + } + + // Night Only + if (nNightOnlyDespawn == TRUE && (nNightOnly == TRUE && (GetIsNight() == FALSE && GetIsDusk() == FALSE))) + { + //debug("despawn: day for NO spawn"); + nSpawnDespawn = TRUE; + } + + // Check Against Day + if (nSpawnDayStart > -1) + { + nDay = GetCalendarDay(); + if (IsBetweenDays(nDay, nSpawnDayStart, nSpawnDayEnd) == FALSE) + { + //debug("despawn: not right day"); + nSpawnDespawn = TRUE; + } + } + + // Check Against Hour + if (nSpawnHourStart > -1) + { + nHour = GetTimeHour(); + if (IsBetweenHours(nHour, nSpawnHourStart, nSpawnHourEnd) == FALSE) + { + //debug("despawn: not right hour"); + nSpawnDespawn = TRUE; + } + } + + // Random Walk + if (nRandomWalk == TRUE && nDespawning == FALSE && nSpawnDespawn == FALSE) + { + if (GetCurrentAction(oCreature) != ACTION_WAIT && + GetCurrentAction(oCreature) != ACTION_CASTSPELL && + !GetIsInCombat(oCreature) && !IsInConversation(oCreature)) + { + if (d2(1) == 2) + { + if (fWanderRange > 0.0) + { + //AssignCommand(oCreature, ClearAllActions()); + //RandomWalk(oSpawn, oCreature, fWanderRange, FALSE); + AssignCommand(oCreature, RandomWalk(oSpawn, + fWanderRange, FALSE)); + } + else + { + AssignCommand(oCreature, ClearAllActions()); + AssignCommand(oCreature, ActionRandomWalk()); + } + } + } + } + + // Patrol + if (nPatrolRoute > -1 && nDespawning == FALSE && nSpawnDespawn == FALSE) + { + if (!GetIsInCombat(oCreature) && !IsInConversation(oCreature)) + { + + nPatrolScriptRunning = GetLocalInt(oCreature, "PatrolScriptRunning"); + if (GetCurrentAction(oCreature) == ACTION_INVALID && nPatrolScriptRunning == FALSE) + { + // He's Slacking! Send him back to work! + //AssignCommand(oCreature, ClearAllActions()); + AssignCommand(oCreature, SetPatrolRoute(nPatrolRoute)); + AssignCommand(oCreature, DoPatrolRoute(nPatrolRoute, nRouteType)); + } + + else if (bCheckForStuckPatrols) + { + CheckForStuckPatrol(oCreature, nPatrolRoute, nRouteType); + } + } + else if (IsInConversation(oCreature) == TRUE) + { + // Reset Script State + SetLocalInt(oCreature, "PatrolScriptRunning", FALSE); + } + } + + // ReturnHome + if (nReturnHome == TRUE && nDespawning == FALSE && nSpawnDespawn == FALSE) + { + if (GetDistanceBetweenLocations(lHome, GetLocation(oCreature)) > fReturnHomeRange) + { + if (GetCurrentAction(oCreature) == ACTION_INVALID && !GetIsInCombat(oCreature) && !IsInConversation(oCreature)) + { + // Send them back to Home + //AssignCommand(oCreature,ClearAllActions()); + //AssignCommand(oCreature,ActionMoveToLocation(lHome)); + AssignCommand(oCreature, ReturnHome(lHome)); + + if (nFacing == TRUE) + { + AssignCommand(oCreature, ActionDoCommand(SetFacing(fChildFacing))); + } + } + } + } + + // PC Check + if (nPCCheckDespawn == TRUE) + { + //debug("despawn: PC Check"); + nSpawnDespawn = TRUE; + } + + // Check Camp + if (nSpawnCamp == TRUE) + { + if (ProcessCamp(oCreature) == 0) + { + //debug("despawn: camp state is 0"); + nSpawnDespawn = TRUE; + } + } + + // Check Trigger + if (fDespawnTrigger > 0.0) + { + if (CountPCsInRadius(lSpawn, fDespawnTrigger, TRUE) == 0) + { + //debug("despawn: PCs in despawn trigger"); + nSpawnDespawn = TRUE; + } + } + + // Check Placeable + if (nPlaceable == TRUE) + { + // Despawn if Empty + if (nPlaceableType == 1) + { + if (GetFirstItemInInventory(oCreature) == OBJECT_INVALID) + { + //debug("despawn: empty placeable"); + nSpawnDespawn = TRUE; + } + } + // Generate Loot if Empty + else if (nPlaceableType == 2) + { + if (GetFirstItemInInventory(oCreature) == OBJECT_INVALID && GetIsOpen(oCreature) == FALSE) + { + // Check Delay Timer + if (nSpawnDelay > 0) + { + nLootTime = GetLocalInt(oCreature, "LootTime"); + if (nLootTime == 0) + { + // first time + if (nDelayRandom == TRUE) + { + nLootTime = -1; + while (nLootTime < nDelayMinimum) + { + nLootTime = Random(nSpawnDelay) + 1; + } + } + else + { + // Setup Next Spawn + nLootTime = nSpawnDelay; + } + nLootTime += nTimeNow; + SetLocalInt(oCreature, "LootTime", nLootTime); + } + } + else + { + nLootTime = nTimeNow; + } + + if (nTimeNow >= nLootTime) + { + // Give Random Gold + if (nRandomGold > 0) + { + if (d100(1) <= nGoldChance) + { + // Calculate Gold to Drop + nGoldAmount = Random(nRandomGold + 1); + while (nGoldAmount < nRandomGoldMin) + { + nGoldAmount = Random(nRandomGold + 1); + } + // Give Gold + CreateItemOnObject("nw_it_gold001", oCreature, + nGoldAmount); + } + } + // Generate New Loot + if (nLootTable > -1) + { + LootTable(oSpawn, oCreature, nLootTable); + } + + if (nSpawnDelay > 0) + { + // Set up Delay for next time + if (nDelayRandom == TRUE) + { + nLootTime = -1; + while (nLootTime < nDelayMinimum) + { + nLootTime = Random(nSpawnDelay) + 1; + } + } + else + { + // Setup Next Spawn + nLootTime = nSpawnDelay; + } + nLootTime += nTimeNow; + SetLocalInt(oCreature, "LootTime", nLootTime); + } + } // end if time to refill + } // end if empty + } // end if placeable-type == 2 + + else if (nPlaceableType == 3) + { + nRefreshTime = GetLocalInt(oCreature, "RefreshTime"); + if (nRefreshTime == 0) + { + nRefreshTime = nTimeNow + nPlaceableRefreshPeriod; + SetLocalInt(oCreature, "RefreshTime", nRefreshTime); + } + //debug("time now: " + IntToString(nTimeNow)); + //debug("refesh at: " + IntToString(nRefreshTime)); + if (nTimeNow >= nRefreshTime) + { + if (!GetIsOpen(oCreature)) + { + // Do the refresh + + // Despawn the current placeable + //debug("despawn: placeable refresh"); + nSpawnDespawn = TRUE; + + // Override SpawnDelay for respawn + SetLocalInt(oSpawn, "OverrideSpawnDelay", 1); + + // let the system know this is gone this frame + nEmptyChildSlots++; + } + } + } + } + + // Run Heartbeat Script + if (nHeartbeatScript > -1 && nDespawning == FALSE && nSpawnDespawn == FALSE) + { + SetLocalInt(oCreature, "HeartbeatScript", nHeartbeatScript); + ExecuteScript("spawn_sc_hbeat", oCreature); + } + + // Set Facing + if (nFacing == TRUE && nDespawning == FALSE) + { + if (GetFacing(oCreature) != fChildFacing && IsInConversation(oCreature) == FALSE && GetIsInCombat(oCreature) == FALSE && GetDistanceBetweenLocations(lHome, GetLocation(oCreature)) < 1.0) + { + AssignCommand(oCreature, ActionDoCommand(SetFacing(fChildFacing))); + } + } + + // Heal Children + if (nHealChildren > 0) + { + if (GetIsInCombat(oCreature) == FALSE && (GetMaxHitPoints(oCreature) != GetCurrentHitPoints(oCreature))) + { + nHealAmount = FloatToInt(IntToFloat(GetMaxHitPoints(oCreature)) * (IntToFloat(nHealChildren) / 100.0)); + ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(nHealAmount), oCreature, 0.0); + if (nHealEffects == TRUE) + { + eEffect = GetFirstEffect(oCreature); + while (GetIsEffectValid(eEffect) == TRUE) + { + RemoveEffect(oCreature, eEffect); + eEffect = GetNextEffect(oCreature); + } + } + } + } + + // Spawn Sit + if (nSpawnSit == TRUE && nDespawning == FALSE) + { + if (GetCurrentAction(oCreature) != ACTION_SIT) + { + if (GetIsInCombat(oCreature) == FALSE && IsInConversation(oCreature) == FALSE) + { + FindSeat(oSpawn, oCreature); + } + } + } + + // Check if Item is Possessed by Someone + if (nSpawnItem == TRUE) + { + if (GetItemPossessor(oCreature) != OBJECT_INVALID) + { + // Remove Child Status + DeleteLocalObject(oSpawn, GetLocalString(oCreature, "ParentChildSlot")); + } + } + + // Population Control + if (nSpawnCount > nSpawnNumber) + { + nSpawnDespawn = TRUE; + nSpawnBlock = TRUE; + } + } + + + // Despawn Creatures + //if (GetIsDM(object) == TRUE || GetIsDM(GetMaster(object)) == TRUE) + if (nSpawnDespawn == TRUE && ! GetIsDM(oCreature) && + ! GetIsDM(GetMaster(oCreature))) + { + int nSaveState = nPCCheckDespawn && ! nPCReset; + SetLocalInt(oCreature, "Despawning", TRUE); + if (nSpawnPlot == TRUE) + { + SetPlotFlag(oCreature, FALSE); + } + if (nPlaceable == TRUE || nSpawnCamp == TRUE || nSpawnItem == TRUE + || nSpawnMerchant == TRUE) + { + if (nDespawnScript > -1) + { + SetLocalInt(oCreature, "DespawnScript", nDespawnScript); + ExecuteScript("spawn_sc_spawn", oCreature); + } + if (nSpawnCamp == TRUE) + { + // Destroy camp will save info about what in the camp is + // still present on the camp object (oCreature in this + // case) if nSaveState is true + DestroyCamp(oCreature, fCampDecay, nSaveState); + //if (! nSaveState) + //{ + // // This isn't a PC despawn, so set up SD if needed + // if (nSpawnDelay && nNextSpawnTime == 0) + // { + // nNextSpawnTime = SetupSpawnDelay(nSpawnDelay, + // nDelayRandom, nDelayMinimum, nTimeNow); + // SetLocalInt(oSpawn, "NextSpawnTime", nNextSpawnTime); + // } + //} + } + + if (nDespawnEffect > 0) + { + eDespawn = EffectVisualEffect(SpawnEffect(oSpawn, FALSE, TRUE)); + ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eDespawn, + GetLocation(oCreature), 5.0); + } + + // remove the child object from the spawn + DeleteLocalObject(oSpawn, GetLocalString(oCreature, + "ParentChildSlot")); + + if (nSaveState) + { + if (nSpawnCamp) + { + SaveCampStateOnDespawn(oCreature, oSpawn); + } + else + { + SaveStateOnDespawn(oCreature, oSpawn); + } + + } + + // saved camp states don't get destroyed; but everything else + // (including unsaved camp states do + if (! (nSaveState && nSpawnCamp)) + { + NESS_CleanInventory(oCreature); + AssignCommand(oCreature, SetIsDestroyable(TRUE, FALSE, + FALSE)); + SpawnCountDebug(oSpawn, "despawning " + ObjectToString(oCreature)); + DestroyObject(oCreature); + } + nSpawnCount--; + //debug("- spawn count to " + IntToString(nSpawnCount)); + } + else // is not placeable, camp, item, or merchant + { + if ((!GetIsInCombat(oCreature) && !IsInConversation(oCreature)) + || (nPCCheck == TRUE && nPCCount == 0)) + { + AssignCommand(oCreature, ClearAllActions()); + AssignCommand(oCreature, ActionWait(1.0) ); + if (nEntranceExit > -1) + { + if (nExit > -1) + { + if (nExitMin > -1) + { + nRndExit = Random(nExit + 1); + while (nRndExit < nExitMin) + { + nRndExit = Random(nExit + 1); + } + nExit = nRndExit; + } + sExit = "EX" + PadIntToString(nExit, 2); + oExit = GetNearestObjectByTag(sExit, oSpawn); + lExit = GetLocation(oExit); + //AssignCommand(oCreature, ClearAllActions()); + AssignCommand(oCreature, ActionMoveToLocation(lExit)); + } + else + { + // Get Creature EntranceExit + fEntranceExitX = GetLocalFloat(oCreature, "EntranceExitX"); + fEntranceExitY = GetLocalFloat(oCreature, "EntranceExitY"); + vEntranceExit = Vector(fEntranceExitX, fEntranceExitY, 0.0); + lEntranceExit = Location(OBJECT_SELF, vEntranceExit, 0.0); + //AssignCommand(oCreature, ClearAllActions()); + AssignCommand(oCreature, ActionMoveToLocation(lEntranceExit)); + } + if (nDespawnScript > -1) + { + SetLocalInt(oCreature, "DespawnScript", nDespawnScript); + ExecuteScript("spawn_sc_spawn", oCreature); + } + if (nDespawnEffect > 0) + { + eDespawn = EffectVisualEffect(SpawnEffect(oSpawn, FALSE, TRUE)); + AssignCommand(oCreature, ActionDoCommand(ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eDespawn, GetLocation(oCreature), 5.0))); + } + AssignCommand(oCreature, ActionDoCommand(DeleteLocalObject(oSpawn, GetLocalString(oCreature, "ParentChildSlot")))); + AssignCommand(oCreature, ActionDoCommand(NESS_CleanInventory(oCreature))); + if (nSaveState) + { + AssignCommand(oCreature, ActionDoCommand( + SaveStateOnDespawn(oCreature, oSpawn))); + } + + AssignCommand(oCreature, SetIsDestroyable(TRUE, FALSE, FALSE)); + SpawnCountDebug(oSpawn, "despawning " + ObjectToString(oCreature)); + + AssignCommand(oCreature, ActionDoCommand(DestroyObject(oCreature))); + } + else // doesn't have to exit at a specific place + { + if (nDespawnScript > -1) + { + SetLocalInt(oCreature, "DespawnScript", nDespawnScript); + ExecuteScript("spawn_sc_spawn", oCreature); + } + if (nDespawnEffect > 0) + { + eDespawn = EffectVisualEffect(SpawnEffect(oSpawn, FALSE, TRUE)); + ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eDespawn, GetLocation(oCreature), 5.0); + } + DeleteLocalObject(oSpawn, GetLocalString(oCreature, "ParentChildSlot")); + NESS_CleanInventory(oCreature); + if (nSaveState) + { + SaveStateOnDespawn(oCreature, oSpawn); + } + + AssignCommand(oCreature, SetIsDestroyable(TRUE, FALSE, FALSE)); + SpawnCountDebug(oSpawn, "despawning " + ObjectToString(oCreature)); + + DestroyObject(oCreature); + } + nSpawnCount--; + //debug("- spawn count to " + IntToString(nSpawnCount)); + + } + } + } + } + + if (nPCCheckDespawn && (nPCReset == TRUE)) + { + //debug("reset"); + ResetSpawn(oSpawn, nTimeNow); + } + + //++ Done processing living children + + // Record SpawnCount + SetLocalInt(oSpawn, "SpawnCount", nSpawnCount); + //SpawnCountDebug("set spawn count to " + IntToString(nSpawnCount)); + + // Recalculate spawn number if random spawn number range in use... + if (nSpawnCount == 0 && (!nPCCheckDespawn) && nSpawnNumberMin > -1 && nPCCount > 0) + { + nRndSpawnNumber = Random(nSpawnNumberMax + 1); + while (nRndSpawnNumber < nSpawnNumberMin) + { + nRndSpawnNumber = Random(nSpawnNumberMax + 1); + } + nSpawnNumber = nRndSpawnNumber; + nEmptyChildSlots = nSpawnNumber; + SetLocalInt(oSpawn, "f_SpawnNumber", nSpawnNumber); + SpawnCountDebug(oSpawn, "spawn number set to " + IntToString(nSpawnNumber)); + SpawnCountDebug(oSpawn, "empty slots is " + IntToString(nEmptyChildSlots)); + } + + // Check InitialState + if (nInitialState == 0) + { + if (GetLocalInt(oSpawn, "InitialStateProcessed") == FALSE) + { + nForceDeactivateSpawn = TRUE; + SetLocalInt(oSpawn, "InitialStateProcessed", TRUE); + } + } + + // Check to Deactivate Spawn + if (nDeactivateSpawn > -1 || nForceDeactivateSpawn == TRUE) + { + nSpawnDeactivated = FALSE; + nRunDeactivateScript = FALSE; + if (nForceDeactivateSpawn == FALSE) + { + switch (nDeactivateSpawn) + { + // Deactivate if all Children are Dead + case 0: + if (nSpawnCount == 0 && nChildrenSpawned != 0) + { + nSpawnDeactivated = TRUE; + nRunDeactivateScript = TRUE; + nSpawnBlock = TRUE; + } + break; + // Deactivate if Spawned SpawnNumber Children + case 1: + if (nChildrenSpawned >= nSpawnNumber) + { + nSpawnDeactivated = TRUE; + nRunDeactivateScript = TRUE; + nSpawnBlock = TRUE; + } + break; + // Temporary Pause until all Children are Dead + case 2: + if (nSpawnCount != 0) + { + nRunDeactivateScript = TRUE; + nSpawnBlock = TRUE; + } + break; + // Deactivate after DI00 Children Spawned + case 3: + if (nChildrenSpawned >= nDeactivationInfo) + { + nSpawnDeactivated = TRUE; + nRunDeactivateScript = TRUE; + nSpawnBlock = TRUE; + } + break; + // Deactivate after DI00 Minutes (converted to seconds) + case 4: + // Deactivate after DI00 Cycles (converted to seconds + case 5: + nSpawnAgeTime = GetLocalInt(oSpawn, "SpawnAgeTime"); + if (nSpawnAgeTime == 0) + { + // first time + nSpawnAgeTime = nTimeNow + nDeactivationInfo; + } + + if (nTimeNow >= nSpawnAgeTime) + { + nSpawnDeactivated = TRUE; + nRunDeactivateScript = TRUE; + nSpawnBlock = TRUE; + } + SetLocalInt(oSpawn, "SpawnAgeTime", nSpawnAgeTime); + break; + // Deactivate when spawn count == spawn number + case 6: + if (nSpawnCount >= nSpawnNumber) + { + nSpawnDeactivated = TRUE; + nRunDeactivateScript = TRUE; + nSpawnBlock = TRUE; + } + break; + } + } + else + { + // Force Deactivate + nSpawnDeactivated = TRUE; + nRunDeactivateScript = TRUE; + nSpawnBlock = TRUE; + SetLocalInt(oSpawn, "ForceDeactivateSpawn", FALSE); + } + + // Record Deactivated State + SetLocalInt(oSpawn, "SpawnDeactivated", nSpawnDeactivated); + + // Run Deactivation Script + if (nRunDeactivateScript == TRUE && nDeactivateScript > -1) + { + SetLocalInt(oSpawn, "DeactivateScript", nDeactivateScript); + ExecuteScript("spawn_sc_deactiv", oSpawn); + SetLocalInt(oSpawn, "DeactivateScript", -1); + } + } + + //++ Done checking deactivation + + // Check Number of Creatures against nSpawnNumber + if (nEmptyChildSlots > 0) + { + // If there are empty slots and nSpawnDelay is true and nNextSpawnTime is 0 + // (which indicates no timer is currently set) and this isn't the first time + // we've ever spawned (as indicated by nNumberChildrenSpawned) and we're not + // despawning because PCs have left we should + // set up a timer + if (nSpawnDelay && (! nSpawnDelayPeriodic) && + nChildrenSpawned > 0 && nNextSpawnTime == 0 && nPCCount > 0 ) + { + nNextSpawnTime = SetupSpawnDelay(nSpawnDelay, + nDelayRandom, nDelayMinimum, nTimeNow); + SetLocalInt(oSpawn, "NextSpawnTime", nNextSpawnTime); + SpawnDelayDebug(oSpawn, "setup spawn delay: " + IntToString(nNextSpawnTime) + + " [" + RealSecondsToString(nNextSpawnTime) + "]"); + SpawnDelayDebug(oSpawn, "current time: " + IntToString(nTimeNow) + + " [" + RealSecondsToString(nTimeNow) + "]"); + } + + SpawnCountDebug(oSpawn, IntToString(nEmptyChildSlots) + " empty slots"); + + // Check Against Spawn Unseen + if (fSpawnUnseen > 0.0 && ! nUnseenIndividual) + { + if (nEntranceExit > -1) + { + fEntranceExitX = GetLocalFloat(oCreature, "EntranceExitX"); + fEntranceExitY = GetLocalFloat(oCreature, "EntranceExitY"); + vEntranceExit = Vector(fEntranceExitX, fEntranceExitY, 0.0); + lEntranceExit = Location(OBJECT_SELF, vEntranceExit, 0.0); + oCreature = GetFirstObjectInShape(SHAPE_SPHERE, fSpawnUnseen, + lEntranceExit, FALSE, OBJECT_TYPE_CREATURE); + } + else + { + oCreature = GetFirstObjectInShape(SHAPE_SPHERE, fSpawnUnseen, + lSpawn, FALSE, OBJECT_TYPE_CREATURE); + } + while (oCreature != OBJECT_INVALID) + { + if (GetIsPC(oCreature) == TRUE) + { + nSpawnBlock = TRUE; + oCreature = OBJECT_INVALID; + } + if (nEntranceExit > -1) + { + oCreature = GetNextObjectInShape(SHAPE_SPHERE, fSpawnUnseen, + lEntranceExit, FALSE, OBJECT_TYPE_CREATURE); + } + else + { + oCreature = GetNextObjectInShape(SHAPE_SPHERE, fSpawnUnseen, + lSpawn, FALSE, OBJECT_TYPE_CREATURE); + } + } + } + + // Check Against Day or Night Only + if ((nNightOnly == TRUE && (GetIsNight() == FALSE && GetIsDusk() == FALSE)) || (nDayOnly == TRUE && (GetIsDay() == FALSE && GetIsDawn() == FALSE))) + { + nSpawnBlock = TRUE; + } + + // Check Against Day + if (nSpawnDayStart > -1) + { + nDay = GetCalendarDay(); + if (IsBetweenDays(nDay, nSpawnDayStart, nSpawnDayEnd) == FALSE) + { + nSpawnBlock = TRUE; + } + } + + // Check Against Hour + if (nSpawnHourStart > -1) + { + nHour = GetTimeHour(); + if (IsBetweenHours(nHour, nSpawnHourStart, nSpawnHourEnd) == FALSE) + { + nSpawnBlock = TRUE; + } + } + + // Check Against PCCheck + if (nPCCheck == TRUE) + { + // Check for PCs + if (CountPCsInArea(OBJECT_SELF, TRUE) == 0) + { + nSpawnBlock = TRUE; + } + } + + // Check Trigger + if (fSpawnTrigger > 0.0) + { + //debug("checking trigger"); + if (CountPCsInRadius(lSpawn, fSpawnTrigger, TRUE) == 0) + { + //debug("no one close"); + nSpawnBlock = TRUE; + } + else + { + //debug("trigger tripped"); + } + } + + // Check Spawn Check PCs + if (nSpawnCheckPCs > -1) + { + // If Spawn Cannot Proceed, Block + if (SpawnCheckPCs(oSpawn) == FALSE) + { + nSpawnBlock = TRUE; + } + } + + // Check Spawn Check Custom + if (nSpawnCheckCustom > -1) + { + // If Spawn Cannot Proceed, Block + if (SpawnCheckCustom(oSpawn) == FALSE) + { + nSpawnBlock = TRUE; + } + } + + if (nSpawnBlock == FALSE) + { + + // Check the spawn delay timer + int nOverrideSpawnDelay = GetLocalInt(oSpawn, "OverrideSpawnDelay"); + if (nSpawnDelay || nInitialDelay) + { + // need to refetch, as the death of a child may have changed it + //nNextSpawnTime = GetLocalInt(oSpawn, "NextSpawnTime"); + //debug("next spawn time: " + IntToString(nNextSpawnTime)); + //debug("time now: " + IntToString(nTimeNow)); + if ((nTimeNow >= nNextSpawnTime) && (! nPCCheck || nPCCount > 0)) + { + nSpawnDelayTimerExpired = TRUE; + + if (nInitialDelay) + { + nInitialDelay = 0; + SetLocalInt(oSpawn, "f_InitialDelay", nInitialDelay ); + } + + if (! nSpawnDelayPeriodic) + { + SpawnDelayDebug(oSpawn, "SD timer expired: " + + IntToString(nNextSpawnTime) + + " [" + RealSecondsToString(nNextSpawnTime) + "]"); + SpawnDelayDebug(oSpawn, "current time: " + IntToString(nTimeNow) + + " [" + RealSecondsToString(nTimeNow) + "]"); + + nNextSpawnTime = 0; + SetLocalInt(oSpawn, "NextSpawnTime", nNextSpawnTime); + } + } + } + + + // Check Against spawn delay (SD flag) + //debug("SpawnDelayTimerExpired: " + IntToString(nSpawnDelayTimerExpired)); + + if ( ( (!nSpawnDelay || nOverrideSpawnDelay) && ! nInitialDelay ) || + nSpawnDelayTimerExpired ) + { + //debug("respawn after delay"); + SetLocalInt(oSpawn, "OverrideSpawnDelay", 0); + + // Check RandomSpawn + if (d100() <= nRandomSpawn) + { + SpawnDelayDebug(oSpawn, "spawn!"); + //debug("periodic: " + IntToString(nSpawnDelayPeriodic)); + //debug("nChildrenSpawned: " + IntToString(nChildrenSpawned)); + // Set up periodic spawn delay if first spawn + if (nSpawnDelayPeriodic && nChildrenSpawned == 0) + { + // little kludge here. Knock a second off so it + // won't roll over when we get to the bottom of this + // function. Avoids creating yet another special flag + nNextSpawnTime = nTimeNow + nSpawnDelay - 1; + SetLocalInt(oSpawn, "NextSpawnTime", nNextSpawnTime); + //debug("setup first periodic delay: " + IntToString(nNextSpawnTime)); + } + + if (nSpawnAllAtOnce == FALSE) + { + // Spawn another Creature + DoSpawn(oSpawn, nTimeNow); + } + else + { + if (nSpawnNumberAtOnce > 0) + { + if (nSpawnNumberAtOnceMin == 0 || nEmptyChildSlots >= nSpawnNumberAtOnceMin) + { + // Spawn Sets of Creatures + for (jCount = 1; (jCount <= nEmptyChildSlots) && (jCount <= nSpawnNumberAtOnce); jCount++) + { + DelayCommand(0.0, DoSpawn(oSpawn, nTimeNow)); + } + } + } + else + { + // Spawn All Creatures + for (jCount = 1; jCount <= nEmptyChildSlots; jCount++) + { + DelayCommand(0.0, DoSpawn(oSpawn, nTimeNow)); + } + } + } + } // end RS + + else + { + SpawnDelayDebug(oSpawn, "Spawn blocked by RS"); + if (nSpawnDelay && ! nSpawnDelayPeriodic) + { + // reset spawn delay timer + nNextSpawnTime = SetupSpawnDelay(nSpawnDelay, + nDelayRandom, nDelayMinimum, nTimeNow); + SetLocalInt(oSpawn, "NextSpawnTime", nNextSpawnTime); + SpawnDelayDebug(oSpawn, "setup spawn delay: " + + IntToString(nNextSpawnTime) + + " [" + RealSecondsToString(nNextSpawnTime) + "]"); + SpawnDelayDebug(oSpawn, "current time: " + IntToString(nTimeNow) + + " [" + RealSecondsToString(nTimeNow) + "]"); + + + } + } + + } // end spawn delay test + } // end if not spawn blocked (PC check or spawn unseen, for instance) + } // end if empty slots + + // If the SD is periodic, check for rollover + if (nSpawnDelayPeriodic) + { + // if next spawn time is zero, there is no timer in play + if (nNextSpawnTime > 0 && nTimeNow >= nNextSpawnTime) + { + // Setup Next Spawn + //debug("rollover - timeNow: " + IntToString(nTimeNow) + " nNextSpawnTime: " + // + IntToString(nNextSpawnTime)); + nNextSpawnTime += nSpawnDelay; + //debug("setup new periodic delay: " + IntToString(nNextSpawnTime)); + SetLocalInt(oSpawn, "NextSpawnTime", nNextSpawnTime); + } + } +} +// + +// This Function Performs the Spawn +void DoSpawn(object oSpawn, int nTimeNow) +{ + vector vSpawnPos; + // lHome is the location of the actual spawn waypoint + location lHome; + // The location of an entrance waypoint to spawn in at instead of lHome + location lEntranceExit; + // lSpawnLocation is where we actually spawn in + location lSpawnLocation; + float fRadius, fRadiusX, fRadiusY, fSpawnAngle; + object oSpawned, oEntranceExit, oSpawnLocation, oPC; + effect eSpawn, eArea; + int nObjectType, nRadiusValid; + int nRndEntranceExit; + string sTemplate, sEntranceExit; + int nUnseenTryCount, nUnseen; + int nWalkToHome = FALSE; + + // Initialize Variables + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + string sSpawnTag = GetLocalString(oSpawn, "f_Template"); + // location lSpawn = GetLocation(oSpawn); + float fSpawnRadius = GetLocalFloat(oSpawn, "f_SpawnRadius"); + float fSpawnRadiusMin = GetLocalFloat(oSpawn, "f_SpawnRadiusMin"); + int nSpawnNearPCs = GetLocalInt(oSpawn, "f_SpawnNearPCs"); + float fSpawnFacing; + int nFacing = GetLocalInt(oSpawn, "f_Facing"); + + + int nSpawnEffect = GetLocalInt(oSpawn, "f_SpawnEffect"); + int nSpawnAreaEffect = GetLocalInt(oSpawn, "f_SpawnAreaEffect"); + float fAreaEffectDuration = GetLocalFloat(oSpawn, "f_AreaEffectDuration"); + + int nEntranceExit = GetLocalInt(oSpawn, "f_EntranceExit"); + int nEntranceExitMin = GetLocalInt(oSpawn, "f_EntranceExitMin"); + int nPlaceable = GetLocalInt(oSpawn, "f_Placeable"); + int nSpawnGroup = GetLocalInt(oSpawn, "f_SpawnGroup"); + int nSpawnCamp = GetLocalInt(oSpawn, "f_SpawnCamp"); + int nSpawnLocation = GetLocalInt(oSpawn, "f_SpawnLocation"); + int nSpawnLocationMin = GetLocalInt(oSpawn, "f_SpawnLocationMin"); + int nSpawnLocationInd = GetLocalInt(oSpawn, "f_SpawnLocationInd"); + int nSpawnItem = GetLocalInt(oSpawn, "f_SpawnItem"); + int nSpawnMerchant = GetLocalInt(oSpawn, "f_SpawnMerchant"); + + float fSpawnUnseen = GetLocalFloat(oSpawn, "f_SpawnUnseen"); + int nUnseenIndividual = GetLocalInt(oSpawn, "f_UnseenIndividual"); + int nUnseenRetryCount = GetLocalInt(oSpawn, "f_UnseenRetryCount"); + + //Initialize Cached Spawning + int nUseCache = GetLocalInt(oSpawn, "f_UseCache"); + int nCacheBucket = GetLocalInt(oSpawn, "f_CacheBucket"); + int nCacheCondition = GetLocalInt(oSpawn, "f_CacheCondition"); + int nCacheTiming = GetLocalInt(oSpawn, "CacheTiming"); + + // Start with this position for this spawn at the spawn waypoint + vSpawnPos = GetPositionFromLocation(GetLocation(oSpawn)); + + // Find facing for this spawn + if (nFacing) + { + fSpawnFacing = GetLocalFloat(oSpawn, "f_SpawnFacing"); + } + + else + { + fSpawnFacing = IntToFloat(Random(360)); + } + + // Check Spawn Location + if (nSpawnLocation > -1) + { + // Get SpawnLocation + oSpawnLocation = GetSpawnLocationObject(oSpawn, nSpawnLocationMin, + nSpawnLocation, nSpawnLocationInd); + + if (oSpawnLocation != OBJECT_INVALID) + { + vSpawnPos = GetPositionFromLocation(GetLocation(oSpawnLocation)); + } + + // kick out spawn unseen is true and SL location is in radius + if (fSpawnUnseen > 0.0 && nUnseenIndividual) + { + if (!CheckPositionUnseen(vSpawnPos, fSpawnUnseen)) + { + nUnseenTryCount = 0; + nUnseen = FALSE; + + while(nUnseenTryCount++ < nUnseenRetryCount && ! nUnseen) + { + oSpawnLocation = GetSpawnLocationObject(oSpawn, + nSpawnLocationMin, nSpawnLocation, nSpawnLocationInd); + + if (oSpawnLocation != OBJECT_INVALID) + { + vSpawnPos = GetPositionFromLocation(GetLocation( + oSpawnLocation)); + } + + if (CheckPositionUnseen(vSpawnPos, fSpawnUnseen)) + { + nUnseen = TRUE; + } + } + if (! nUnseen) + { + // do not spawn this child + return; + } + } + } + + // Adjust for New SpawnFacing + if (nFacing == TRUE) + { + fSpawnFacing = GetFacing(oSpawnLocation); + } + } + + else if (fSpawnRadius > 0.0) + { + // Check SpawnNearPCs + if (nSpawnNearPCs == TRUE) + { + oPC = GetRandomPCInArea(OBJECT_SELF, oSpawn); + if (oPC != OBJECT_INVALID) + { + vSpawnPos = GetPositionFromLocation(GetLocation(oPC)); + } + } + + vSpawnPos = GetSpawnRadiusPosition(vSpawnPos, fSpawnRadius, + fSpawnRadiusMin); + + // kick out spawn unseen is true and vSpawnPos is in range of PC + if (fSpawnUnseen > 0.0 && nUnseenIndividual) + { + if (!CheckPositionUnseen(vSpawnPos, fSpawnUnseen)) + { + nUnseenTryCount = 0; + nUnseen = FALSE; + + while(nUnseenTryCount++ < nUnseenRetryCount && ! nUnseen) + { + vSpawnPos = GetSpawnRadiusPosition(vSpawnPos, fSpawnRadius, + fSpawnRadiusMin); + + if (CheckPositionUnseen(vSpawnPos, fSpawnUnseen)) + { + nUnseen = TRUE; + } + } + + if (! nUnseen) + { + // do not spawn this child + return; + } + } + } + } // end else if SR + + else // Not SL or SR + { + if (fSpawnUnseen > 0.0 && nUnseenIndividual) + { + if (!CheckPositionUnseen(vSpawnPos, fSpawnUnseen)) + { + // do not spawn this child + return; + } + } + } + + // Home is where we spawn in OR where we WOULD spawn in if there were no + // Alternate entrance specified. + lHome = Location(OBJECT_SELF, vSpawnPos, fSpawnFacing); + + // If there's an entrance/exit, lSpawnLocation may still change to that + lSpawnLocation = lHome; + + + // Check Spawn Type + nObjectType = OBJECT_TYPE_CREATURE; + if (nPlaceable == TRUE || nSpawnCamp == TRUE || sSpawnTag == "AE") + { + nObjectType = OBJECT_TYPE_PLACEABLE; + } + if (nSpawnItem == TRUE) + { + nObjectType = OBJECT_TYPE_ITEM; + } + if (nSpawnMerchant == TRUE) + { + nObjectType = OBJECT_TYPE_STORE; + } + + // Check Spawn Group + if (nSpawnGroup == TRUE) + { + // Pull a Creature from the Group + sTemplate = SpawnGroup(oSpawn, sSpawnTag); + } + else + { + sTemplate = sSpawnTag; + } + + // Set up alternate Entrance/Exit + if (!nSpawnCamp) + { + // EntranceExit + if (nEntranceExit > -1) + { + // Get ExitEntrance + if (nEntranceExitMin > -1) + { + nRndEntranceExit = Random(nEntranceExit + 1); + while (nRndEntranceExit < nEntranceExitMin) + { + nRndEntranceExit = Random(nEntranceExit + 1); + } + nEntranceExit = nRndEntranceExit; + } + sEntranceExit = "EE" + PadIntToString(nEntranceExit, 2); + oEntranceExit = GetNearestObjectByTag(sEntranceExit, oSpawn); + lEntranceExit = GetLocation(oEntranceExit); + + lSpawnLocation = lEntranceExit; + nWalkToHome = TRUE; + } + } + + // Create Effect + if (nSpawnEffect > 0) + { + eSpawn = EffectVisualEffect(SpawnEffect(oSpawn, TRUE, FALSE)); + ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eSpawn, lSpawnLocation, + 5.0); + } + + // Check Area Effect + if (nSpawnAreaEffect > 0) + { + eArea = SpawnAreaEffect(oSpawn); + if (fAreaEffectDuration > 0.0) + { + ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eArea, lSpawnLocation, + fAreaEffectDuration); + } + else + { + ApplyEffectAtLocation(DURATION_TYPE_PERMANENT, eArea, lSpawnLocation, + 0.0); + } + + // Check Template + if (sSpawnTag == "AE") + { + sTemplate = "plc_invisobj"; + } + } + + // Validate sSpawnTag + if (sTemplate != "") + { + // Spawn + if (nSpawnCamp == TRUE) + { + oSpawned = CampSpawn(oSpawn, sTemplate, lSpawnLocation); + RecordSpawned(oSpawn, oSpawned, lHome, lEntranceExit, fSpawnFacing); + } + else + { + + //if the cache is not to be used OR the timing is after setup + if(FALSE == nUseCache || nCacheTiming == 1) + { + //**FLAG standard create + oSpawned = CreateObject(nObjectType, sTemplate, lSpawnLocation); + } + else + { + oSpawned = CreateNessObject(oSpawn, nObjectType, sTemplate, lSpawnLocation, nCacheCondition, nCacheBucket); + } + SpawnDelayDebug(oSpawn, "spawned " + ObjectToString(oSpawned)); + RecordSpawned(oSpawn, oSpawned, lHome, lEntranceExit, + fSpawnFacing); + SetupSpawned(oSpawn, oSpawned, lHome, nTimeNow, nWalkToHome); + if(TRUE == nUseCache && 1 == nCacheTiming) + { + CreateCachedObject(oSpawn, oSpawned, nCacheBucket, nCacheCondition); + } + } + } +} +// + +// This Function Spawns a Camp +object CampSpawn(object oSpawn, string sCamp, location lCamp) +{ + // Spawn in Camp Placeholder + object oCamp = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_invisobj", lCamp, FALSE); + SetPlotFlag(oCamp, TRUE); + SetLocalObject(oCamp, "ParentSpawn", oSpawn); + SetCampSpawn(oCamp, sCamp, lCamp); + + // Initialize + int nCampNumP = GetLocalInt(oCamp, "CampNumP"); + int nCampNumC = GetLocalInt(oCamp, "CampNumC"); + float fSpawnRadius = GetLocalFloat(oCamp, "CampRadius"); + vector vCamp = GetPositionFromLocation(lCamp); + + object oSpawned; + int iCount; + int nRandomWalk, nSpawnFacing; + int nLootTable, nSpawnGroup, nTrapDisabled, nDeathScript; + float fCorpseDecay; + int nCorpseDecayType, nCampCenter; + string sObject, sTemplate, sFlags, sCampCenter; + + // Get Camp Center + sCampCenter = GetLocalString(oCamp, "CampCenter"); + + // Spawn Placeables + for (iCount = 1; iCount <= nCampNumP; iCount++) + { + // Initialize Values + sObject = "CampP" + IntToString(iCount - 1); + sTemplate = GetLocalString(oCamp, sObject); + nCampCenter = FALSE; + + // Check Flags + sFlags = GetLocalString(oCamp, sObject + "_Flags"); + nSpawnGroup = IsFlagPresent(sFlags, "SG"); + + // Spawn Group + if (nSpawnGroup == TRUE) + { + sTemplate = SpawnGroup(oSpawn, sTemplate); + } + + // Check Camp Center + if (sCampCenter != "") + { + if (sCampCenter == "P" + IntToString(iCount - 1)) + { + nCampCenter = TRUE; + } + } + // If no CampCenter set, Use first Placeable + else if (iCount == 1) + { + nCampCenter = TRUE; + } + + oSpawned = DoCampSpawn(oCamp, lCamp, fSpawnRadius, sTemplate, TRUE, iCount, nCampCenter); + SetLocalObject(oCamp, sObject, oSpawned); + SetupCampSpawned(oSpawn, oSpawned, vCamp, GetLocation(oSpawned), sFlags); + + } + + // Spawn Creatures + for (iCount = 1; iCount <= nCampNumC; iCount++) + { + // Initialize Values + sObject = "CampC" + IntToString(iCount - 1); + sTemplate = GetLocalString(oCamp, sObject); + + // Check Flags + sFlags = GetLocalString(oCamp, sObject + "_Flags"); + nSpawnGroup = IsFlagPresent(sFlags, "SG"); + + // Spawn Group + if (nSpawnGroup == TRUE) + { + sTemplate = SpawnGroup(oSpawn, sTemplate); + } + + // Check Camp Center + if (sCampCenter != "") + { + if (sCampCenter == "C" + IntToString(iCount - 1)) + { + nCampCenter = TRUE; + } + } + + oSpawned = DoCampSpawn(oCamp, lCamp, fSpawnRadius, sTemplate, FALSE, iCount, nCampCenter); + SetLocalObject(oCamp, sObject, oSpawned); + SetupCampSpawned(oSpawn, oSpawned, vCamp, GetLocation(oSpawned), sFlags); + } + + // Return Placeholder + return oCamp; +} +// + +// This Function Spawns the Camp Members +object DoCampSpawn(object oCamp, location lCamp, float fSpawnRadius, + string sTemplate, int nPlaceable, int nSpawnNumber, int nCampCenter) +{ + object oCampSpawned; + vector vCamp, vRadius; + float fRadius, fRadiusX, fRadiusY, fAngle; + + // Set up Location + if (nCampCenter == FALSE) + { + vCamp = GetPositionFromLocation(lCamp); + fAngle = IntToFloat(Random(361)); + fRadius = IntToFloat(Random(FloatToInt(fSpawnRadius)) + 1); + fRadiusX = fRadius * cos(fAngle); + fRadiusY = fRadius * sin(fAngle); + vRadius = Vector(fRadiusX, fRadiusY); + lCamp = Location(OBJECT_SELF, vCamp + vRadius, 0.0); + } + + // Spawn Camp Object + if (nPlaceable == TRUE) + { + oCampSpawned = CreateObject(OBJECT_TYPE_PLACEABLE, sTemplate, lCamp, FALSE); + //debug("created placeable at " + LocationToString(lCamp)); + } + else + { + +//**FLAG oCampSpawned = CreateNessObject(oCamp, OBJECT_TYPE_CREATURE, sTemplate, lCamp); + oCampSpawned = CreateObject(OBJECT_TYPE_CREATURE, sTemplate, lCamp); + } + + // Return Camp Object + return oCampSpawned; +} + diff --git a/_module/nss/spawn_oncloscrp.nss b/_module/nss/spawn_oncloscrp.nss new file mode 100644 index 0000000..5982831 --- /dev/null +++ b/_module/nss/spawn_oncloscrp.nss @@ -0,0 +1,50 @@ +// +// NESS V8.1 +// Spawn On Close Corpse +// +// Brought into the NESS distribution for Version 8.0 and beyond. Original +// header below. Added code to cause immediate decay when emptied. +// + +//////////////////////////////////////////////////////////////////////////////// +// // // +// _kb_corpse_sound // VERSION 1.0 // +// // // +// by Keron Blackfeld on 07/17/2002 //////////////////////////// +// // +// email Questions and Comments to: keron@broadswordgaming.com or catch me // +// in Bioware's NWN Community - Builder's NWN Scripting Forum // +// // +//////////////////////////////////////////////////////////////////////////////// +// // +// This script is a simple, albeit weak, attempt to mask the default DOOR // +// sounds tied to the invisible lootable object. Please this in both the // +// onOpened and onClosed Events of the "invis_corpse_obj" described in my // +// _kb_lootable_corpse script. // +// // +//////////////////////////////////////////////////////////////////////////////// + +#include "spawn_functions" + +void main() +{ + effect eQuiet = EffectSilence(); + ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eQuiet, OBJECT_SELF, 120.0f); + PlaySound("as_sw_chestcl1"); + + + object oHasInventory = GetFirstItemInInventory(OBJECT_SELF); //Check for inventory + if (oHasInventory == OBJECT_INVALID) //If no inventory found + { + /******************************************* + ** Delete empty. ** + *******************************************/ + object oHostCorpse = GetLocalObject(OBJECT_SELF, "HostBody"); + NESS_CleanCorpse(oHostCorpse); + AssignCommand(oHostCorpse,SetIsDestroyable(TRUE,FALSE,FALSE)); //Set actual corpse to destroyable + DestroyObject(oHostCorpse); //Delete the actual Creature Corpse + + DelayCommand(1.0f,DestroyObject(OBJECT_SELF)); //Delete Lootable Object (Self) + + } +} diff --git a/_module/nss/spawn_onopencrp.nss b/_module/nss/spawn_onopencrp.nss new file mode 100644 index 0000000..69a8e02 --- /dev/null +++ b/_module/nss/spawn_onopencrp.nss @@ -0,0 +1,33 @@ +// +// NESS V8.1 +// Spawn On Open Corpse +// +// Brought into the NESS distribution for Version 8.0 and beyond. Original +// header below. +// + +//////////////////////////////////////////////////////////////////////////////// +// // // +// _kb_corpse_sound // VERSION 1.0 // +// // // +// by Keron Blackfeld on 07/17/2002 //////////////////////////// +// // +// email Questions and Comments to: keron@broadswordgaming.com or catch me // +// in Bioware's NWN Community - Builder's NWN Scripting Forum // +// // +//////////////////////////////////////////////////////////////////////////////// +// // +// This script is a simple, albeit weak, attempt to mask the default DOOR // +// sounds tied to the invisible lootable object. Please this in both the // +// onOpened and onClosed Events of the "invis_corpse_obj" described in my // +// _kb_lootable_corpse script. // +// // +//////////////////////////////////////////////////////////////////////////////// + +void main() +{ + effect eQuiet = EffectSilence(); + ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eQuiet, OBJECT_SELF, 120.0f); + PlaySound("as_sw_clothop1"); + AssignCommand(GetLastOpenedBy(), ActionPlayAnimation(ANIMATION_LOOPING_GET_LOW, 1.0f, 1.5f)); +} diff --git a/_module/nss/spawn_orig_hb.nss b/_module/nss/spawn_orig_hb.nss new file mode 100644 index 0000000..8dc98f4 --- /dev/null +++ b/_module/nss/spawn_orig_hb.nss @@ -0,0 +1,8 @@ + +#include "spawn_main" + +void main() +{ + Spawn(); +} + diff --git a/_module/nss/spawn_pseudohb.nss b/_module/nss/spawn_pseudohb.nss new file mode 100644 index 0000000..a51c3fc --- /dev/null +++ b/_module/nss/spawn_pseudohb.nss @@ -0,0 +1,40 @@ +// +// NESS V8.1 +// +// Spawn Pseudo-heartbeat +// +// This script is executed when a PC enters an otherwise empty area +// + +#include "spawn_functions" + +void main() +{ + + object oArea = OBJECT_SELF; + + // No pseudo-heartbeats scheduled, since we just fired this one + SetLocalInt( oArea, SPAWN_HEARTBEAT_SCHEDULED, FALSE ); + + // Do a heartbeat if there are PCs in the area or any spawns up + if ( NeedPseudoHeartbeat( oArea ) ) + { + // This defaults to spawn_sample_hb. You can pass the name of any script + // to use in the function Spawn_OnAreaEnter() + string sHeartbeatFunc = GetLocalString( oArea, SPAWN_HEARTBEAT_SCRIPT ); + + // start actual heartbeat code + ExecuteScript( sHeartbeatFunc, oArea ); + // end actual heartbeat code + + // This function sets SPAWN_HEARTBEAT_SCHEDULED to TRUE + ScheduleNextPseudoHeartbeat( oArea ); + } + else + { + ReleaseAreaRefs(OBJECT_SELF); + } + + +//**FLAG else here to remove refcounts +} diff --git a/_module/nss/spawn_sample_hb.nss b/_module/nss/spawn_sample_hb.nss new file mode 100644 index 0000000..8dc98f4 --- /dev/null +++ b/_module/nss/spawn_sample_hb.nss @@ -0,0 +1,8 @@ + +#include "spawn_main" + +void main() +{ + Spawn(); +} + diff --git a/_module/nss/spawn_sc_cmptrig.nss b/_module/nss/spawn_sc_cmptrig.nss new file mode 100644 index 0000000..feb9455 --- /dev/null +++ b/_module/nss/spawn_sc_cmptrig.nss @@ -0,0 +1,55 @@ +// +// NESS +// Camp Trigger Scripts v8.1.3 +// +// +#include "spawn_functions" +// +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +void DestroyCamp(object oCamp, float fCampDecay, int nSaveState); +// +// +void main() +{ + // Initialize Variables + object oSpawned; + string sObject; + int iCount, nCampNumP, nCampNumC; + + // Retrieve Script + int nCampTriggerScript = GetLocalInt(OBJECT_SELF, "CampTriggerScript"); + + // Invalid Script + if (nCampTriggerScript == -1) + { + return; + } + + object oCamp = OBJECT_SELF; + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + float fCampDecay = GetLocalFloat(oSpawn, "f_CampDecay"); + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Destroy Camp + if (nCampTriggerScript == 0) + { + DestroyCamp(oCamp, fCampDecay, FALSE); + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// +} diff --git a/_module/nss/spawn_sc_deactiv.nss b/_module/nss/spawn_sc_deactiv.nss new file mode 100644 index 0000000..7b551aa --- /dev/null +++ b/_module/nss/spawn_sc_deactiv.nss @@ -0,0 +1,46 @@ +// +// Deactivation Scripts +// +#include "spawn_functions" +// +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +void main() +{ + // Retrieve Script + int nDeactivateScript = GetLocalInt(OBJECT_SELF, "DeactivateScript"); + + // Invalid Script + if (nDeactivateScript == -1) + { + return; + } + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Script 00 + if (nDeactivateScript == 0) + { + // Explode with Gore when Deactivated + effect eVisual = EffectVisualEffect(VFX_COM_CHUNK_RED_LARGE); + ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eVisual, GetLocation(OBJECT_SELF), 0.0); + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + +} diff --git a/_module/nss/spawn_sc_death.nss b/_module/nss/spawn_sc_death.nss new file mode 100644 index 0000000..69712d0 --- /dev/null +++ b/_module/nss/spawn_sc_death.nss @@ -0,0 +1,67 @@ +// +// Death Scripts +// +#include "spawn_functions" +// +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +void main() +{ + // Initialize Variables + + // Retrieve Script Number + int nDeathScript = GetLocalInt(OBJECT_SELF, "DeathScript"); + + // Invalid Script + if (nDeathScript == -1) + { + return; + } + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Script 00 + if (nDeathScript == 0) + { + } + // + + // Scared Prey + if (nDeathScript == 10) + { + object oKiller = GetLastKiller(); + if (GetLocalInt(oKiller, "Predator") == TRUE) + { + // Feed the Predator + int nCurrentHungerState = GetLocalInt(oKiller, "CurrentHungerState"); + int nKills = GetLocalInt(oKiller, "Kills"); + nKills++; + int nFed = 5 + (nKills / 25); + nCurrentHungerState = nCurrentHungerState + 1 + nFed; + SendMessageToAllDMs("Predator is Fed (" + IntToString(nFed) + ")."); + AssignCommand(oKiller, SpeakString("That's " + IntToString(nKills) + " prey I've killed! I get " + IntToString(nFed) + " more food!")); + SetLocalInt(oKiller, "Kills", nKills); + SetLocalInt(oKiller, "CurrentHungerState", nCurrentHungerState); + } + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + + // Record that we Ran Script + SetLocalInt(OBJECT_SELF, "DeathScriptRan", TRUE); +} diff --git a/_module/nss/spawn_sc_hbeat.nss b/_module/nss/spawn_sc_hbeat.nss new file mode 100644 index 0000000..55b43cd --- /dev/null +++ b/_module/nss/spawn_sc_hbeat.nss @@ -0,0 +1,180 @@ +// +// Heartbeat Scripts +// +#include "spawn_functions" +// +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +void main() +{ + // Retrieve Script Number + int nHeartbeatScript = GetLocalInt(OBJECT_SELF, "HeartbeatScript"); + + // Invalid Script + if (nHeartbeatScript == -1) + { + return; + } + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Script 00 + if (nHeartbeatScript == 0) + { + if (d2() == 2) + { + ActionPlayAnimation(ANIMATION_FIREFORGET_PAUSE_BORED); + } + } + // + + // + if (nHeartbeatScript == 2) + { + object oCentralObject; + location lCentralObject, lLocation; + vector vCentralObject, vLocation; + float fAngle, fRadius, fLocationX, fLocationY; + + // Add Multiple Actions per HeartbeatScript + int nNth; + for (nNth = 1; nNth <= 10; nNth++) + { + // Central Object + oCentralObject = GetObjectByTag("CentralObject"); + lCentralObject = GetLocation(oCentralObject); + vCentralObject = GetPositionFromLocation(lCentralObject); + + // Retreive and Increment Angle by 10 Degrees + fAngle = GetLocalFloat(OBJECT_SELF, "Angle"); + fAngle = fAngle + 5.0; + if (fAngle >= 360.0) + { + fAngle = 0.0; + } + + // Create New Location + fRadius = 5.0; + fLocationX = fRadius * cos(fAngle); + fLocationY = fRadius * sin(fAngle); + vLocation = Vector(fLocationX, fLocationY, 0.0); + lLocation = Location(GetArea(OBJECT_SELF), vCentralObject + vLocation, 0.0); + + // Move to New Location + ActionMoveToLocation(lLocation, TRUE); + + // Record New Angle + SetLocalFloat(OBJECT_SELF, "Angle", fAngle); + } + } + // + + // Script 001 - Flavor text for dockworkers + if (nHeartbeatScript == 1) + { + ActionSpeakString("Hand me that rope, would ya?"); + } + // + + // Check if a Placeable was Used + if (nHeartbeatScript == 5) + { + object oPC = GetLastUsedBy(); + SendMessageToPC(oPC, "You were the last user."); + } + // + + // Prowling Predator + if (nHeartbeatScript == 10) + { + string sState; + int nCurrentHungerState = GetLocalInt(OBJECT_SELF, "CurrentHungerState"); + nCurrentHungerState--; + SetLocalInt(OBJECT_SELF, "Predator", TRUE); + + if (GetLocalInt(OBJECT_SELF, "Sleeping") == FALSE) + { + // Hungry Yet? + if (nCurrentHungerState <= 0) + { + if (nCurrentHungerState < -10) + { + // Death Comes to Those who Cannot Hunt + sState = "Dead from Starvation"; + ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(GetMaxHitPoints(OBJECT_SELF)), OBJECT_SELF); + } + else + { + if (nCurrentHungerState > -5) + { + // Hungry! + sState = "Hungry and Prowling"; + } + else + { + // Dying of Starvation! + sState = "Starving"; + ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(GetMaxHitPoints(OBJECT_SELF)/6), OBJECT_SELF); + } + // Prowl + if (GetIsInCombat(OBJECT_SELF) == FALSE) + { + ClearAllActions(); + ActionMoveAwayFromLocation(GetLocation(OBJECT_SELF), TRUE, 20.0); + } + } + } + else + { + if (nCurrentHungerState < 10) + { + if (nCurrentHungerState > 5) + { + // Happy and Healing. + sState = "Fat and Happy"; + ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(GetMaxHitPoints(OBJECT_SELF)/6), OBJECT_SELF, 0.0); + } + else + { + // Happy + sState = "Happy"; + } + } + else + { + sState = "Fat and Sleeping"; + ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectSleep(), OBJECT_SELF, 12.0); + ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_IMP_SLEEP), OBJECT_SELF, 0.0); + SetLocalInt(OBJECT_SELF, "Sleeping", TRUE); + DelayCommand(10.0, SetLocalInt(OBJECT_SELF, "Sleeping", FALSE)); + } + } + } + else + { + sState = "Fat and Sleeping"; + ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_IMP_SLEEP), OBJECT_SELF, 0.0); + } + SendMessageToAllDMs(sState + " (" + IntToString(nCurrentHungerState) + ")."); + SpeakString("I am " + sState + "."); + SetLocalInt(OBJECT_SELF, "CurrentHungerState", nCurrentHungerState); + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + +} diff --git a/_module/nss/spawn_sc_patrol.nss b/_module/nss/spawn_sc_patrol.nss new file mode 100644 index 0000000..c539261 --- /dev/null +++ b/_module/nss/spawn_sc_patrol.nss @@ -0,0 +1,62 @@ +// +// NESS +// Patrol Scripts v8.1.3 +// +// +#include "spawn_functions" +// +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +void main() +{ + // Retrieve Script Number + int nPatrolScript = GetLocalInt(OBJECT_SELF, "PatrolScript"); + + // Retrieve Stop Information + int nStopNumber = GetLocalInt(OBJECT_SELF, "PR_NEXTSTOP"); + object oStop = GetLocalObject(OBJECT_SELF, "PR_SN" + PadIntToString(nStopNumber, 2)); + + // Invalid Script + if (nPatrolScript == -1) + { + return; + } + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Script 00 + if (nPatrolScript == 0) + { + ActionDoCommand(SpeakString("Example!")); + } + // + + // Turn Off Lights + if (nPatrolScript == 7) + { + object oLight = GetNearestObjectByTag("Light", oStop); + if ((GetIsDay() == TRUE && GetPlaceableIllumination(oLight) == TRUE) + || (GetIsNight() == TRUE && GetPlaceableIllumination(oLight) == FALSE)) + { + ActionDoCommand(DoPlaceableObjectAction(oLight, PLACEABLE_ACTION_USE)); + } + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + +} diff --git a/_module/nss/spawn_sc_spawn.nss b/_module/nss/spawn_sc_spawn.nss new file mode 100644 index 0000000..76044f1 --- /dev/null +++ b/_module/nss/spawn_sc_spawn.nss @@ -0,0 +1,309 @@ +// +// Spawn and Despawn Scripts +// +#include "spawn_functions" +// +object GetChildByTag(object oSpawn, string sChildTag); +object GetChildByNumber(object oSpawn, int nChildNum); +object GetSpawnByID(int nSpawnID); +void DeactivateSpawn(object oSpawn); +void DeactivateSpawnsByTag(string sSpawnTag); +void DeactivateAllSpawns(); +void DespawnChildren(object oSpawn); +void DespawnChildrenByTag(object oSpawn, string sSpawnTag); +// +// +void main() +{ + // Retrieve Script Number + int nSpawnScript = GetLocalInt(OBJECT_SELF, "SpawnScript"); + int nDespawnScript = GetLocalInt(OBJECT_SELF, "DespawnScript"); + + // Invalid Script + if (nSpawnScript == -1 || nDespawnScript == -1) + { + return; + } + + if (nSpawnScript > 0) + { + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Script 00 + // Dummy Script - Never Use + if (nSpawnScript == 0) + { + return; + } + // + + if (nSpawnScript == 1) + { + // lamplighter + int nLit = GetLocalInt(OBJECT_SELF, "torchesLit"); + if (! nLit) + { + //SendMessageToPC(GetFirstPC(), "lighting torches"); + SetLocalInt(OBJECT_SELF, "torchesLit", 1); + + // find all objects in area with tag lightableTorch + object oArea = GetArea(OBJECT_SELF); + object oTorch = GetFirstObjectInArea(oArea); + int nCount = 0; + string sTorchTag = "lightableTorch"; + + while (oTorch != OBJECT_INVALID) + { + if (GetTag(oTorch) == sTorchTag) + { + nCount++; + AssignCommand(oTorch, PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE)); + DelayCommand(0.4, SetPlaceableIllumination(oTorch, TRUE)); + SetLocalInt(oTorch,"NW_L_AMION",1); + } + + oTorch = GetNextObjectInArea(oArea); + } + + if (nCount > 0) + { + DelayCommand(0.1,RecomputeStaticLighting(oArea)); + } + + return; + } + }// end spawn script 1 + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + + } + + if (nDespawnScript > 0) + { + +// +// Only Make Modifications Between These Lines +// ------------------------------------------- + + + // Script 00 + // Dummy Script - Never Use + if (nDespawnScript == 0) + { + return; + } + // + + if (nDespawnScript == 1) + { + + // lampdouser + //SendMessageToPC(GetFirstPC(), "dousing torches"); + + // find all objects in area with tag lightableTorch + object oArea = GetArea(OBJECT_SELF); + object oTorch = GetFirstObjectInArea(oArea); + int nCount = 0; + string sTorchTag = "lightableTorch"; + + while (oTorch != OBJECT_INVALID) + { + if (GetTag(oTorch) == sTorchTag) + { + nCount++; + AssignCommand(oTorch,PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE)); + DelayCommand(0.4, SetPlaceableIllumination(oTorch, FALSE)); + SetLocalInt(oTorch,"NW_L_AMION",0); + } + + oTorch = GetNextObjectInArea(oArea); + } + + if (nCount > 0) + { + DelayCommand(0.1,RecomputeStaticLighting(oArea)); + } + + return; + } + + // Area Cleanup Example + if (nDespawnScript == 999) + { + // Settings + int nMerchantPrefixLetters = 3; + string sMerchantPrefix = "MC_"; + int nChestPrefixLetters = 3; + string sChestPrefix = "CH_"; + + // Create an Area Merchant List + int nMerchantNum; + string sMerchantNum; + int nNth = 1; + object oMerchant = GetNearestObject(OBJECT_TYPE_STORE, OBJECT_SELF, nNth); + while (oMerchant != OBJECT_INVALID) + { + if (GetStringLeft(GetTag(oMerchant), nMerchantPrefixLetters) == sMerchantPrefix) + { + nMerchantNum++; + sMerchantNum = "Merchant" + PadIntToString(nMerchantNum, 2); + SetLocalObject(OBJECT_SELF, sMerchantNum, oMerchant); + } + nNth++; + oMerchant = GetNearestObject(OBJECT_TYPE_STORE, OBJECT_SELF, nNth); + } + + // Create an Area Chest List + int nChestNum; + string sChestNum; + nNth = 1; + object oChest = GetNearestObject(OBJECT_TYPE_PLACEABLE, OBJECT_SELF, nNth); + while (oChest != OBJECT_INVALID) + { + if (GetStringLeft(GetTag(oChest), nChestPrefixLetters) == sChestPrefix) + { + nChestNum++; + sChestNum = "Chest" + PadIntToString(nChestNum, 2); + SetLocalObject(OBJECT_SELF, sChestNum, oChest); + } + nNth++; + oChest = GetNearestObject(OBJECT_TYPE_PLACEABLE, OBJECT_SELF, nNth); + } + + // Cleanup Creatures + nNth = 1; + object oCreature = GetNearestObject(OBJECT_TYPE_CREATURE, OBJECT_SELF, nNth); + while (oCreature != OBJECT_INVALID) + { + // Destroy Creatures NOT Spawned by Spawner + if (GetLocalObject(oCreature, "ParentSpawn") == OBJECT_INVALID) + { + DestroyObject(oCreature); + } + + // Cleanup Corpses + if (GetIsDead(oCreature) == TRUE) + { + AssignCommand(oCreature, SetIsDestroyable(TRUE, TRUE)); + DestroyObject(oCreature); + } + + nNth++; + oCreature = GetNearestObject(OBJECT_TYPE_CREATURE, OBJECT_SELF, nNth); + } + + // Cleanup All Items in Area + string sItemTag; + int nStack; + int nCurrentMerchant = 0; + int nCurrentChest = 0; + nNth = 1; + object oItem = GetNearestObject(OBJECT_TYPE_ITEM, OBJECT_SELF, nNth); + while (oItem != OBJECT_INVALID) + { + // Retrieve Item Information + sItemTag = GetTag(oItem); + nStack = GetNumStackedItems(oItem); + + // Destroy Item + DestroyObject(oItem); + + // Place Items on Merchants + if (nMerchantNum > 0) + { + if (nCurrentMerchant = nMerchantNum - 1) + { + nCurrentMerchant = 0; + } + oMerchant = GetLocalObject(OBJECT_SELF, "Merchant" + PadIntToString(nCurrentMerchant, 2)); + CreateItemOnObject(sItemTag, oMerchant, nStack); + nCurrentMerchant++; + } + // Place Items in Chests + else if (nChestNum > 0) + { + if (nCurrentChest = nChestNum -1) + { + nCurrentChest = 0; + } + oChest = GetLocalObject(OBJECT_SELF, "Chest" + PadIntToString(nCurrentChest, 2)); + CreateItemOnObject(sItemTag, oChest, nStack); + nCurrentChest++; + } + + nNth++; + oItem = GetNearestObject(OBJECT_TYPE_ITEM, OBJECT_SELF, nNth); + } + + // Cleanup 'Body Bags' + nNth = 1; + oItem = GetNearestObject(OBJECT_TYPE_PLACEABLE, OBJECT_SELF, nNth); + while (oItem != OBJECT_INVALID) + { + if(GetTag(oItem) == "Body Bag") + { + // Check for Inventory + if (GetHasInventory(oItem) == TRUE) + { + object oInventoryItem = GetFirstItemInInventory(oItem); + while (oInventoryItem != OBJECT_INVALID) + { + // Retrieve Item Information + sItemTag = GetTag(oInventoryItem); + nStack = GetNumStackedItems(oInventoryItem); + + // Destroy Item + DestroyObject(oInventoryItem); + + // Place Items on Merchants + if (nMerchantNum > 0) + { + if (nCurrentMerchant = nMerchantNum - 1) + { + nCurrentMerchant = 0; + } + oMerchant = GetLocalObject(OBJECT_SELF, "Merchant" + PadIntToString(nCurrentMerchant, 2)); + CreateItemOnObject(sItemTag, oMerchant, nStack); + nCurrentMerchant++; + } + // Place Items in Chests + else if (nChestNum > 0) + { + if (nCurrentChest = nChestNum -1) + { + nCurrentChest = 0; + } + oChest = GetLocalObject(OBJECT_SELF, "Chest" + PadIntToString(nCurrentChest, 2)); + CreateItemOnObject(sItemTag, oChest, nStack); + nCurrentChest++; + } + oInventoryItem = GetNextItemInInventory(oItem); + } + } + + // Destroy Body Bag + DestroyObject(oItem); + } + nNth++; + oItem = GetNearestObject(OBJECT_TYPE_PLACEABLE, OBJECT_SELF, nNth); + } + } + // + + +// ------------------------------------------- +// Only Make Modifications Between These Lines +// + + } + + // Clean Up + SetLocalInt(OBJECT_SELF, "SpawnScript", 0); + SetLocalInt(OBJECT_SELF, "DespawnScript", 0); +} diff --git a/_module/nss/spawn_smpl_onen2.nss b/_module/nss/spawn_smpl_onen2.nss new file mode 100644 index 0000000..20fd898 --- /dev/null +++ b/_module/nss/spawn_smpl_onen2.nss @@ -0,0 +1,34 @@ +// +// NESS V8.1.2 +// +// Spawn sample onEnter, version 2 +// +// If you want to use pseudo-heartbeats and do not already have an area onEnter +// script, you can use this one. Otherwise, just add Spawn_OnAreaEnter() to +// your existing onEnter handler. Note that you use this (and +// SpawnOnAreaExit()) INSTEAD OF Spawn() / spawn_sample_hb. +// + +#include "spawn_functions" + +void main() +{ + // Spawn_OnAreaEnter() can take three arguments - the name of the heartbeat + // script to execute, the heartbeat duration, and a delay for the first + // heartbeat. They default to spawn_sample_hb, 6.0, and 0.0 respectively; as + // if it were called like: + // Spawn_OnAreaEnter( "spawn_sample_hb", 6.0, 0.0 ); + + if ( GetIsAreaAboveGround( OBJECT_SELF ) && + ! GetIsAreaNatural( OBJECT_SELF ) ) + { + // Indoors - no delay on the first HB + Spawn_OnAreaEnter( "spawn_sample_hb", 10.0 ); + } + + else + { + // Outdoors or underground - do a 3 second delay on the first HB + Spawn_OnAreaEnter( "spawn_sample_hb", 10.0, 3.0 ); + } +} \ No newline at end of file diff --git a/_module/nss/spawn_smpl_onent.nss b/_module/nss/spawn_smpl_onent.nss new file mode 100644 index 0000000..18bec8a --- /dev/null +++ b/_module/nss/spawn_smpl_onent.nss @@ -0,0 +1,23 @@ +// +// NESS V8.1 +// +// Spawn sample onEnter +// +// If you want to use pseudo-heartbeats and do not already have an area onEnter +// script, you can use this one. Otherwise, just add Spawn_OnAreaEnter() to +// your existing onEnter handler. Note that you use this (and +// SpawnOnAreaExit()) INSTEAD OF Spawn() / spawn_sample_hb. +// + +#include "spawn_functions" + +void main() +{ + // Spawn_OnAreaEnter() can take three arguments - the name of the heartbeat + // script to execute, the heartbeat duration, and a delay for the first + // heartbeat. They default to spawn_sample_hb, 6.0, and 0.0 respectively; as + // if it were called like: + // Spawn_OnAreaEnter( "spawn_sample_hb", 6.0, 0.0 ); + + Spawn_OnAreaEnter(); +} \ No newline at end of file diff --git a/_module/nss/spawn_smpl_onext.nss b/_module/nss/spawn_smpl_onext.nss new file mode 100644 index 0000000..9c2c755 --- /dev/null +++ b/_module/nss/spawn_smpl_onext.nss @@ -0,0 +1,17 @@ +// +// NESS V8.1 +// +// Spawn sample onExit +// +// If you want to use pseudo-heartbeats and do not already have an area onExit +// script, you can use this one. Otherwise, just add Spawn_OnAreaExit() to +// your existing onExit handler. Note that you use this (and +// SpawnOnAreaEnter()) INSTEAD OF Spawn() / spawn_sample_hb. +// + +#include "spawn_functions" + +void main() +{ + Spawn_OnAreaExit(); +} diff --git a/_module/nss/spawn_timefuncs.nss b/_module/nss/spawn_timefuncs.nss new file mode 100644 index 0000000..a16df7e --- /dev/null +++ b/_module/nss/spawn_timefuncs.nss @@ -0,0 +1,156 @@ +// +// +// ALFA NESS +// Time functions v1.1 +// +// Do NOT Modify this File +// See 'spawn__readme' for Instructions +// +// +//:://///////////////////////////////////////////// +//:: Time Conversion Functions +//:: spawn_timefuncs +//::////////////////////////////////////////////// +/* + These functions allow Calendar y/m/d/h/m/s to + be converted to seconds of real time which can be used as + a basis for time comparisons. Time is reckoned + in seconds from the NWN Epoch - 1340 DR. + + Note that HoursToRealSeconds() is equivalent to the Bioware function + HoursToSeconds(); it is included for completeness. +*/ +//::////////////////////////////////////////////// +//:: Created By: Cereborn +//:: Created On: November 22, 2002 +//::////////////////////////////////////////////// + +int CLOCK_DEBUG = FALSE; + +int SPAWN_EPOCH = 1340; + +void clockDebug(string str) +{ + if (CLOCK_DEBUG) + { + SendMessageToAllDMs(str); + object oPC = GetFirstPC(); + if (! GetIsDM(oPC)) + SendMessageToPC(oPC, str); + WriteTimestampedLogEntry(str); + } +} + +// Get the current time (elapsed since the Epoch) in real seconds +int GetCurrentRealSeconds(); + +// Convert a calendar (game) time to real seconds +int CalendarToRealSeconds(int year, int month, int day, int hour, int minute, + int second); + +// Returns number of real seconds in the # of specified (game) years +int YearsToRealSeconds(int years); + +// Returns number of real seconds in the # of specified (game) months +int MonthsToRealSeconds(int months); + +// Returns number of real seconds in the # of specified (game) days +int DaysToRealSeconds(int days); + +// Returns number of real seconds in the # of specified (game) hours +int HoursToRealSeconds(int hours); + +int YearsToRealSeconds(int years) +{ + return MonthsToRealSeconds(years*12); +} + +int MonthsToRealSeconds(int months) +{ + return DaysToRealSeconds(months*28); +} + +int DaysToRealSeconds(int days) +{ + return FloatToInt(HoursToSeconds(days*24)); +} + +int HoursToRealSeconds(int hours) +{ + return FloatToInt(HoursToSeconds(hours)); +} + +int CalendarToRealSeconds(int year, int month, int day, int hour, int minute, + int second) +{ + if (year < SPAWN_EPOCH) + year = SPAWN_EPOCH; + if (month < 1) + month = 1; + if (day < 1) + day = 1; + + return (YearsToRealSeconds(year-SPAWN_EPOCH) + + MonthsToRealSeconds(month-1) + + DaysToRealSeconds(day-1) + + FloatToInt(HoursToSeconds(hour)) + + (minute*60) + + second); +} + + +int GetCurrentRealSeconds() +{ + //clockDebug("Converting " + IntToString(GetCalendarYear()) + " " + + // IntToString(GetCalendarMonth()) + " " + + // IntToString(GetCalendarDay()) + " " + + // IntToString(GetTimeHour()) + " " + + // IntToString(GetTimeMinute()) + " " + + // IntToString(GetTimeSecond())); + + return CalendarToRealSeconds(GetCalendarYear(), GetCalendarMonth(), + GetCalendarDay(), GetTimeHour(), GetTimeMinute(), GetTimeSecond()); +} + +string RealSecondsToString(int nRealSeconds) +{ + int nMod; + int nRem; + string sDateTime = ""; + + nMod = nRealSeconds / YearsToRealSeconds(1); + nRem = nRealSeconds % YearsToRealSeconds(1); + + sDateTime = IntToString(nMod + SPAWN_EPOCH); + + nMod = nRem / MonthsToRealSeconds(1); + nRem = nRem % MonthsToRealSeconds(1); + + sDateTime += " " + IntToString(nMod+1); + + nMod = nRem / DaysToRealSeconds(1); + nRem = nRem % DaysToRealSeconds(1); + + sDateTime += " " + IntToString(nMod+1); + + nMod = nRem / FloatToInt(HoursToSeconds(1)); + nRem = nRem % FloatToInt(HoursToSeconds(1)); + + sDateTime += " " + IntToString(nMod) + ":"; + + nMod = nRem / 60; + nRem = nRem % 60; + + if (nMod < 10) + sDateTime += "0" + IntToString(nMod) + ":"; + else + sDateTime += IntToString(nMod) + ":"; + + if (nRem < 10) + sDateTime += "0" + IntToString(nRem); + else + sDateTime += IntToString(nRem); + + return sDateTime; +} + diff --git a/_module/nss/spawn_used_corps.nss b/_module/nss/spawn_used_corps.nss new file mode 100644 index 0000000..5445eb3 --- /dev/null +++ b/_module/nss/spawn_used_corps.nss @@ -0,0 +1,29 @@ +// +// NESS V8.0 +// Spawn Used Corpse +// +// Brought into the NESS distribution for Version 8.0 and beyond. Original +// header below. +// + +//////////////////////////////////////////////////////////////////////////////// +// // // +// _kb_loot_crouch // VERSION 1.0 // +// // // +// by Keron Blackfeld on 07/27/2002 //////////////////////////// +// // +// email Questions and Comments to: keron@broadswordgaming.com or catch me // +// in Bioware's NWN Community - Builder's NWN Scripting Forum // +// // +//////////////////////////////////////////////////////////////////////////////// +// // +// PLACE THIS SCRIPT IN THE ONUSED EVENT OF YOUR "invis_corpse_obj" // +// BLUEPRINT. This script causes the PC opening the corpse to crouch down // +// and visibly reach for the corpse. // +// // +//////////////////////////////////////////////////////////////////////////////// +void main() +{ + object oPC = GetLastUsedBy(); + AssignCommand(oPC, ActionPlayAnimation(ANIMATION_LOOPING_GET_LOW, 1.0f, 1.2f)); +} diff --git a/_module/nss/spawnb_cc_activ.nss b/_module/nss/spawnb_cc_activ.nss new file mode 100644 index 0000000..bdec254 --- /dev/null +++ b/_module/nss/spawnb_cc_activ.nss @@ -0,0 +1,16 @@ +// +// Spawn Banner +// Conversation Check +// +int StartingConditional() +{ + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + if (GetLocalInt(oSpawn, "SpawnDeactivated") == TRUE) + { + return TRUE; + } + else + { + return FALSE; + } +} diff --git a/_module/nss/spawnb_cc_dactiv.nss b/_module/nss/spawnb_cc_dactiv.nss new file mode 100644 index 0000000..ccdd939 --- /dev/null +++ b/_module/nss/spawnb_cc_dactiv.nss @@ -0,0 +1,16 @@ +// +// Spawn Banner +// Conversation Check +// +int StartingConditional() +{ + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + if (GetLocalInt(oSpawn, "SpawnDeactivated") == FALSE) + { + return TRUE; + } + else + { + return FALSE; + } +} diff --git a/_module/nss/spawnb_cc_dump.nss b/_module/nss/spawnb_cc_dump.nss new file mode 100644 index 0000000..effc78e --- /dev/null +++ b/_module/nss/spawnb_cc_dump.nss @@ -0,0 +1,15 @@ +// +// Spawn Banner +// Conversation Check +// + +#include "spawn_functions" + +int StartingConditional() +{ + if (NESS_IsModuleSpawnDumping()) + { + return FALSE; + } + return TRUE; +} diff --git a/_module/nss/spawnb_cc_nodump.nss b/_module/nss/spawnb_cc_nodump.nss new file mode 100644 index 0000000..bed4a51 --- /dev/null +++ b/_module/nss/spawnb_cc_nodump.nss @@ -0,0 +1,15 @@ +// +// Spawn Banner +// Conversation Check +// + +#include "spawn_functions" + +int StartingConditional() +{ + if (NESS_IsModuleSpawnDumping()) + { + return TRUE; + } + return FALSE; +} diff --git a/_module/nss/spawnb_cc_notrck.nss b/_module/nss/spawnb_cc_notrck.nss new file mode 100644 index 0000000..68ba005 --- /dev/null +++ b/_module/nss/spawnb_cc_notrck.nss @@ -0,0 +1,15 @@ +// +// Spawn Banner +// Conversation Check +// + +#include "spawn_functions" + +int StartingConditional() +{ + if (NESS_IsModuleSpawnTracking()) + { + return TRUE; + } + return FALSE; +} diff --git a/_module/nss/spawnb_cc_nsclog.nss b/_module/nss/spawnb_cc_nsclog.nss new file mode 100644 index 0000000..b5639e6 --- /dev/null +++ b/_module/nss/spawnb_cc_nsclog.nss @@ -0,0 +1,18 @@ +// +// Spawn Banner +// Conversation Check +// Spawn Delay Debugging off +// +int StartingConditional() +{ + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + object oArea = GetArea(oSpawn); + if (GetLocalInt(oArea, "SpawnCountDebug") == TRUE) + { + return TRUE; + } + else + { + return FALSE; + } +} diff --git a/_module/nss/spawnb_cc_nsdlog.nss b/_module/nss/spawnb_cc_nsdlog.nss new file mode 100644 index 0000000..55372b4 --- /dev/null +++ b/_module/nss/spawnb_cc_nsdlog.nss @@ -0,0 +1,18 @@ +// +// Spawn Banner +// Conversation Check +// Spawn Delay Debugging off +// +int StartingConditional() +{ + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + object oArea = GetArea(oSpawn); + if (GetLocalInt(oArea, "SpawnDelayDebug") == TRUE) + { + return TRUE; + } + else + { + return FALSE; + } +} diff --git a/_module/nss/spawnb_cc_sclog.nss b/_module/nss/spawnb_cc_sclog.nss new file mode 100644 index 0000000..7eb6873 --- /dev/null +++ b/_module/nss/spawnb_cc_sclog.nss @@ -0,0 +1,18 @@ +// +// Spawn Banner +// Conversation Check +// Spawn Delay Debugging on +// +int StartingConditional() +{ + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + object oArea = GetArea(oSpawn); + if (GetLocalInt(oArea, "SpawnCountDebug") == FALSE) + { + return TRUE; + } + else + { + return FALSE; + } +} diff --git a/_module/nss/spawnb_cc_sdlog.nss b/_module/nss/spawnb_cc_sdlog.nss new file mode 100644 index 0000000..39507ca --- /dev/null +++ b/_module/nss/spawnb_cc_sdlog.nss @@ -0,0 +1,18 @@ +// +// Spawn Banner +// Conversation Check +// Spawn Delay Debugging on +// +int StartingConditional() +{ + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + object oArea = GetArea(oSpawn); + if (GetLocalInt(oArea, "SpawnDelayDebug") == FALSE) + { + return TRUE; + } + else + { + return FALSE; + } +} diff --git a/_module/nss/spawnb_cc_trck.nss b/_module/nss/spawnb_cc_trck.nss new file mode 100644 index 0000000..b12d7cc --- /dev/null +++ b/_module/nss/spawnb_cc_trck.nss @@ -0,0 +1,15 @@ +// +// Spawn Banner +// Conversation Check +// + +#include "spawn_functions" + +int StartingConditional() +{ + if (NESS_IsModuleSpawnTracking()) + { + return FALSE; + } + return TRUE; +} diff --git a/_module/nss/spawnb_main.nss b/_module/nss/spawnb_main.nss new file mode 100644 index 0000000..6be386a --- /dev/null +++ b/_module/nss/spawnb_main.nss @@ -0,0 +1,69 @@ +// +// SpawnBanner v1.0 +// +void SpawnBanner(object oPC, object oItem, object oTarget, location lTarget) +{ + object oArea = GetArea(oPC); + + if (GetTag(oTarget) == "SpawnBanner") + { + object oSpawn = GetLocalObject(oTarget, "ParentSpawn"); + + SetCustomToken(999, "\n"); + SetCustomToken(1000, GetLocalString(oSpawn, "f_Flags")); + SetCustomToken(1001, GetLocalString(oSpawn, "f_Template")); + + AssignCommand(oPC, ActionStartConversation(oTarget, "spawn_banner")); + } + else + { + int nState = GetLocalInt(oArea, "SpawnBannerState"); + if (nState == 0) + { + // Show Spawn Banners + SendMessageToAllDMs("showing banners"); + + int nNth; + string sSpawnNum, sSpawnName; + object oSpawn, oBanner; + location lSpawn; + + int nSpawns = GetLocalInt(oArea, "Spawns"); + + for (nNth = 1; nNth <= nSpawns; nNth++) + { + sSpawnNum = "Spawn"; + if (nNth < 10) + { + sSpawnNum = sSpawnNum + "0"; + } + sSpawnNum = sSpawnNum + IntToString(nNth); + oSpawn = GetLocalObject(oArea, sSpawnNum); + lSpawn = GetLocation(oSpawn); + if (GetLocalInt(oSpawn, "SpawnDeactivated") == FALSE) + { + oBanner = CreateObject(OBJECT_TYPE_PLACEABLE, "spawn_ban_a", lSpawn); + } + else + { + oBanner = CreateObject(OBJECT_TYPE_PLACEABLE, "spawn_ban_d", lSpawn); + } + SetLocalObject(oBanner, "ParentSpawn", oSpawn); + } + SetLocalInt(oArea, "SpawnBannerState", 1); + } + else + { + // Hide Spawn Banners + int nNth = 1; + object oBanner = GetNearestObjectByTag("SpawnBanner", oPC, nNth); + while (oBanner != OBJECT_INVALID) + { + DestroyObject(oBanner); + nNth++; + oBanner = GetNearestObjectByTag("SpawnBanner", oPC, nNth); + } + SetLocalInt(oArea, "SpawnBannerState", 0); + } + } +} diff --git a/_module/nss/spawnb_sample_ai.nss b/_module/nss/spawnb_sample_ai.nss new file mode 100644 index 0000000..2d050df --- /dev/null +++ b/_module/nss/spawnb_sample_ai.nss @@ -0,0 +1,18 @@ +// +// SpawnBanner : Sample OnActivateItem Script +// +#include "spawnb_main" + +void main() +{ + object oPC = GetItemActivator(); + object oItem = GetItemActivated(); + object oTarget = GetItemActivatedTarget(); + location lTarget = GetItemActivatedTargetLocation(); + + // Rod of Spawn Banners + if (GetTag(oItem) == "RodofSpawnBanners") + { + SpawnBanner(oPC, oItem, oTarget, lTarget); + } +} diff --git a/_module/nss/spawnb_sc_activ.nss b/_module/nss/spawnb_sc_activ.nss new file mode 100644 index 0000000..140b6c5 --- /dev/null +++ b/_module/nss/spawnb_sc_activ.nss @@ -0,0 +1,17 @@ +// +// Spawn Banner +// Activate Spawn +// + +#include "spawn_functions" + +void main() +{ + object oPC = GetPCSpeaker(); + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + NESS_ActivateSpawn(oSpawn); + DestroyObject(OBJECT_SELF); + object oBanner = CreateObject(OBJECT_TYPE_PLACEABLE, "spawn_ban_a", GetLocation(oSpawn)); + SetLocalObject(oBanner, "ParentSpawn", oSpawn); + FloatingTextStringOnCreature("Spawn Activated", oPC); +} diff --git a/_module/nss/spawnb_sc_dactiv.nss b/_module/nss/spawnb_sc_dactiv.nss new file mode 100644 index 0000000..8ad0941 --- /dev/null +++ b/_module/nss/spawnb_sc_dactiv.nss @@ -0,0 +1,17 @@ +// +// Spawn Banner +// Deactivate Spawn +// +#include "spawn_functions" + +void main() +{ + object oPC = GetPCSpeaker(); + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + NESS_DeactivateSpawn(oSpawn); + DestroyObject(OBJECT_SELF); + object oBanner = CreateObject(OBJECT_TYPE_PLACEABLE, "spawn_ban_d", + GetLocation(oSpawn)); + SetLocalObject(oBanner, "ParentSpawn", oSpawn); + FloatingTextStringOnCreature("Spawn Deactivated", oPC); +} diff --git a/_module/nss/spawnb_sc_disp.nss b/_module/nss/spawnb_sc_disp.nss new file mode 100644 index 0000000..c8638c5 --- /dev/null +++ b/_module/nss/spawnb_sc_disp.nss @@ -0,0 +1,14 @@ +// +// Spawn Banner Display Text +// +void main() +{ + object oSpawn = GetLocalObject(OBJECT_SELF, "ParentSpawn"); + object oPC = GetLastUsedBy(); + + string sSpawnName = GetLocalString(oSpawn, "f_Flags"); + string sSpawnTag = GetLocalString(oSpawn, "f_Template"); + + DelayCommand(0.0, FloatingTextStringOnCreature(sSpawnName, oPC)); + DelayCommand(1.0, FloatingTextStringOnCreature(sSpawnTag, oPC)); +} diff --git a/_module/nss/spawnb_sc_dump.nss b/_module/nss/spawnb_sc_dump.nss new file mode 100644 index 0000000..da7914b --- /dev/null +++ b/_module/nss/spawnb_sc_dump.nss @@ -0,0 +1,12 @@ +// +// Spawn Banner +// Turn Spawn Tracking ON +// + +#include "spawn_functions" + +void main() +{ + NESS_DumpModuleSpawns(); + SendMessageToAllDMs("Spawn dumping enabled"); +} diff --git a/_module/nss/spawnb_sc_nodump.nss b/_module/nss/spawnb_sc_nodump.nss new file mode 100644 index 0000000..af9fd94 --- /dev/null +++ b/_module/nss/spawnb_sc_nodump.nss @@ -0,0 +1,12 @@ +// +// Spawn Banner +// Turn Spawn Tracking OFF +// + +#include "spawn_functions" + +void main() +{ + NESS_DumpModuleSpawns(FALSE); + SendMessageToAllDMs("Spawn dumping disabled"); +} diff --git a/_module/nss/spawnb_sc_notrck.nss b/_module/nss/spawnb_sc_notrck.nss new file mode 100644 index 0000000..10cb11d --- /dev/null +++ b/_module/nss/spawnb_sc_notrck.nss @@ -0,0 +1,12 @@ +// +// Spawn Banner +// Turn Spawn Tracking OFF +// + +#include "spawn_functions" + +void main() +{ + NESS_TrackModuleSpawns(FALSE); + SendMessageToAllDMs("Spawn tracking disabled"); +} diff --git a/_module/nss/spawnb_sc_nsdlog.nss b/_module/nss/spawnb_sc_nsdlog.nss new file mode 100644 index 0000000..90fe1f2 --- /dev/null +++ b/_module/nss/spawnb_sc_nsdlog.nss @@ -0,0 +1,11 @@ +// +// Spawn Banner +// Turn Spawn Delay logging ON +// + +void main() +{ + object oArea = GetArea(OBJECT_SELF); + SetLocalInt(oArea, "SpawnDelayDebug", FALSE); + SendMessageToAllDMs("Spawn delay logging disabled"); +} diff --git a/_module/nss/spawnb_sc_sclog.nss b/_module/nss/spawnb_sc_sclog.nss new file mode 100644 index 0000000..131bc8e --- /dev/null +++ b/_module/nss/spawnb_sc_sclog.nss @@ -0,0 +1,11 @@ +// +// Spawn Banner +// Turn Spawn Delay logging ON +// + +void main() +{ + object oArea = GetArea(OBJECT_SELF); + SetLocalInt(oArea, "SpawnCountDebug", TRUE); + SendMessageToAllDMs("Spawn count logging enabled"); +} diff --git a/_module/nss/spawnb_sc_sdlog.nss b/_module/nss/spawnb_sc_sdlog.nss new file mode 100644 index 0000000..af01c76 --- /dev/null +++ b/_module/nss/spawnb_sc_sdlog.nss @@ -0,0 +1,11 @@ +// +// Spawn Banner +// Turn Spawn Delay logging ON +// + +void main() +{ + object oArea = GetArea(OBJECT_SELF); + SetLocalInt(oArea, "SpawnDelayDebug", TRUE); + SendMessageToAllDMs("Spawn delay logging enabled"); +} diff --git a/_module/nss/spawnb_sc_snclog.nss b/_module/nss/spawnb_sc_snclog.nss new file mode 100644 index 0000000..8dcfeaa --- /dev/null +++ b/_module/nss/spawnb_sc_snclog.nss @@ -0,0 +1,11 @@ +// +// Spawn Banner +// Turn Spawn Delay logging ON +// + +void main() +{ + object oArea = GetArea(OBJECT_SELF); + SetLocalInt(oArea, "SpawnCountDebug", FALSE); + SendMessageToAllDMs("Spawn count logging disable"); +} diff --git a/_module/nss/spawnb_sc_trck.nss b/_module/nss/spawnb_sc_trck.nss new file mode 100644 index 0000000..bec821e --- /dev/null +++ b/_module/nss/spawnb_sc_trck.nss @@ -0,0 +1,12 @@ +// +// Spawn Banner +// Turn Spawn Tracking ON +// + +#include "spawn_functions" + +void main() +{ + NESS_TrackModuleSpawns(); + SendMessageToAllDMs("Spawn tracking enabled"); +} diff --git a/_module/nss/spawnbanner.nss b/_module/nss/spawnbanner.nss new file mode 100644 index 0000000..bcfd978 --- /dev/null +++ b/_module/nss/spawnbanner.nss @@ -0,0 +1,20 @@ +// +// SpawnBanner : Sample OnActivateItem Script +// +#include "x2_inc_switches" +#include "spawnb_main" +void main() +{ + int nResult = X2_EXECUTE_SCRIPT_END; + + if ( GetUserDefinedItemEventNumber() == X2_ITEM_EVENT_ACTIVATE ) + { + object oPC = GetItemActivator(); + object oItem = GetItemActivated(); + object oTarget = GetItemActivatedTarget(); + location lTarget = GetItemActivatedTargetLocation(); + SpawnBanner(oPC, oItem, oTarget, lTarget); + } + SetExecutedScriptReturnValue(nResult); +} + diff --git a/_module/uti/spawn_ban_rod.uti.json b/_module/uti/spawn_ban_rod.uti.json new file mode 100644 index 0000000..09b6991 --- /dev/null +++ b/_module/uti/spawn_ban_rod.uti.json @@ -0,0 +1,121 @@ +{ + "__data_type": "UTI ", + "AddCost": { + "type": "dword", + "value": 0 + }, + "BaseItem": { + "type": "int", + "value": 44 + }, + "Charges": { + "type": "byte", + "value": 50 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Cost": { + "type": "dword", + "value": 4 + }, + "Cursed": { + "type": "byte", + "value": 0 + }, + "DescIdentified": { + "type": "cexolocstring", + "value": { + "0": "The Rod of Spawn Banners allows you to control spawnpoints from Neshke's Extendable Spawn System.\n\nUse on the ground to Show/Hide Spawn Banners.\n\nUse on a Banner to control that spawnpoint." + } + }, + "Description": { + "type": "cexolocstring", + "value": { + "0": "" + } + }, + "Identified": { + "type": "byte", + "value": 1 + }, + "LocalizedName": { + "type": "cexolocstring", + "value": { + "0": "Rod of Spawn Banners" + } + }, + "ModelPart1": { + "type": "byte", + "value": 33 + }, + "ModelPart2": { + "type": "byte", + "value": 43 + }, + "ModelPart3": { + "type": "byte", + "value": 43 + }, + "PaletteID": { + "type": "byte", + "value": 23 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PropertiesList": { + "type": "list", + "value": [ + { + "__struct_id": 0, + "ChanceAppear": { + "type": "byte", + "value": 100 + }, + "CostTable": { + "type": "byte", + "value": 3 + }, + "CostValue": { + "type": "word", + "value": 13 + }, + "Param1": { + "type": "byte", + "value": 255 + }, + "Param1Value": { + "type": "byte", + "value": 0 + }, + "PropertyName": { + "type": "word", + "value": 15 + }, + "Subtype": { + "type": "word", + "value": 329 + } + } + ] + }, + "StackSize": { + "type": "word", + "value": 1 + }, + "Stolen": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "SpawnBanner" + }, + "TemplateResRef": { + "type": "resref", + "value": "spawn_ban_rod" + } +} diff --git a/_module/utp/invis_corpse_bdy.utp.json b/_module/utp/invis_corpse_bdy.utp.json new file mode 100644 index 0000000..d859b4f --- /dev/null +++ b/_module/utp/invis_corpse_bdy.utp.json @@ -0,0 +1,213 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 157 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 4 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 10 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "DisarmDC": { + "type": "byte", + "value": 0 + }, + "Faction": { + "type": "dword", + "value": 1 + }, + "Fort": { + "type": "byte", + "value": 5 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 1 + }, + "HP": { + "type": "short", + "value": 10 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "corpse" + } + }, + "OnClosed": { + "type": "resref", + "value": "spawn_oncloscrp" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "spawn_dist_corps" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "spawn_onopencrp" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 0 + }, + "PaletteID": { + "type": "byte", + "value": 6 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 515 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "invis_corpse_obj" + }, + "TemplateResRef": { + "type": "resref", + "value": "invis_corpse_bdy" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_module/utp/invis_corpse_bon.utp.json b/_module/utp/invis_corpse_bon.utp.json new file mode 100644 index 0000000..f8436f4 --- /dev/null +++ b/_module/utp/invis_corpse_bon.utp.json @@ -0,0 +1,213 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 157 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 5 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 10 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "DisarmDC": { + "type": "byte", + "value": 0 + }, + "Faction": { + "type": "dword", + "value": 1 + }, + "Fort": { + "type": "byte", + "value": 5 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 1 + }, + "HP": { + "type": "short", + "value": 10 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "corpse" + } + }, + "OnClosed": { + "type": "resref", + "value": "spawn_oncloscrp" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "spawn_dist_corps" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "spawn_onopencrp" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 0 + }, + "PaletteID": { + "type": "byte", + "value": 6 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 515 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "invis_corpse_obj" + }, + "TemplateResRef": { + "type": "resref", + "value": "invis_corpse_bon" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_module/utp/invis_corpse_obj.utp.json b/_module/utp/invis_corpse_obj.utp.json new file mode 100644 index 0000000..3424e3c --- /dev/null +++ b/_module/utp/invis_corpse_obj.utp.json @@ -0,0 +1,213 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 157 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 0 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 10 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "DisarmDC": { + "type": "byte", + "value": 0 + }, + "Faction": { + "type": "dword", + "value": 1 + }, + "Fort": { + "type": "byte", + "value": 5 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 1 + }, + "HP": { + "type": "short", + "value": 10 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "corpse" + } + }, + "OnClosed": { + "type": "resref", + "value": "spawn_oncloscrp" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "spawn_dist_corps" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "spawn_onopencrp" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 0 + }, + "PaletteID": { + "type": "byte", + "value": 6 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 515 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "invis_corpse_obj" + }, + "TemplateResRef": { + "type": "resref", + "value": "invis_corpse_obj" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_module/utp/invis_corpse_pch.utp.json b/_module/utp/invis_corpse_pch.utp.json new file mode 100644 index 0000000..2c34a17 --- /dev/null +++ b/_module/utp/invis_corpse_pch.utp.json @@ -0,0 +1,213 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 157 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 6 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 10 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "DisarmDC": { + "type": "byte", + "value": 0 + }, + "Faction": { + "type": "dword", + "value": 1 + }, + "Fort": { + "type": "byte", + "value": 5 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 1 + }, + "HP": { + "type": "short", + "value": 10 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "corpse" + } + }, + "OnClosed": { + "type": "resref", + "value": "spawn_oncloscrp" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "spawn_dist_corps" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "spawn_onopencrp" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 0 + }, + "PaletteID": { + "type": "byte", + "value": 6 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 515 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "invis_corpse_obj" + }, + "TemplateResRef": { + "type": "resref", + "value": "invis_corpse_pch" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_module/utp/invis_corpse_pot.utp.json b/_module/utp/invis_corpse_pot.utp.json new file mode 100644 index 0000000..be3270e --- /dev/null +++ b/_module/utp/invis_corpse_pot.utp.json @@ -0,0 +1,213 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 157 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 1 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 10 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "DisarmDC": { + "type": "byte", + "value": 0 + }, + "Faction": { + "type": "dword", + "value": 1 + }, + "Fort": { + "type": "byte", + "value": 5 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 1 + }, + "HP": { + "type": "short", + "value": 10 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "corpse" + } + }, + "OnClosed": { + "type": "resref", + "value": "spawn_oncloscrp" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "spawn_dist_corps" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "spawn_onopencrp" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 0 + }, + "PaletteID": { + "type": "byte", + "value": 6 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 515 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "invis_corpse_obj" + }, + "TemplateResRef": { + "type": "resref", + "value": "invis_corpse_pot" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_module/utp/invis_corpse_scr.utp.json b/_module/utp/invis_corpse_scr.utp.json new file mode 100644 index 0000000..70c5906 --- /dev/null +++ b/_module/utp/invis_corpse_scr.utp.json @@ -0,0 +1,213 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 157 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 2 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 10 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "DisarmDC": { + "type": "byte", + "value": 0 + }, + "Faction": { + "type": "dword", + "value": 1 + }, + "Fort": { + "type": "byte", + "value": 5 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 1 + }, + "HP": { + "type": "short", + "value": 10 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "corpse" + } + }, + "OnClosed": { + "type": "resref", + "value": "spawn_oncloscrp" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "spawn_dist_corps" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "spawn_onopencrp" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 0 + }, + "PaletteID": { + "type": "byte", + "value": 6 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 515 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "invis_corpse_obj" + }, + "TemplateResRef": { + "type": "resref", + "value": "invis_corpse_scr" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_module/utp/invis_corpse_tre.utp.json b/_module/utp/invis_corpse_tre.utp.json new file mode 100644 index 0000000..80bf189 --- /dev/null +++ b/_module/utp/invis_corpse_tre.utp.json @@ -0,0 +1,213 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 157 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 3 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 10 + }, + "Description": { + "type": "cexolocstring", + "value": {} + }, + "DisarmDC": { + "type": "byte", + "value": 0 + }, + "Faction": { + "type": "dword", + "value": 1 + }, + "Fort": { + "type": "byte", + "value": 5 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 1 + }, + "HP": { + "type": "short", + "value": 10 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "corpse" + } + }, + "OnClosed": { + "type": "resref", + "value": "spawn_oncloscrp" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "spawn_dist_corps" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "spawn_onopencrp" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 0 + }, + "PaletteID": { + "type": "byte", + "value": 6 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 515 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "invis_corpse_obj" + }, + "TemplateResRef": { + "type": "resref", + "value": "invis_corpse_tre" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_module/utp/spawn_ban_a.utp.json b/_module/utp/spawn_ban_a.utp.json new file mode 100644 index 0000000..6b491aa --- /dev/null +++ b/_module/utp/spawn_ban_a.utp.json @@ -0,0 +1,217 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 132 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 0 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "Freestanding Merchant's Placard - 3" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 15 + }, + "Description": { + "type": "cexolocstring", + "value": { + "0": "A carefully constructed marker denoting a point of interest.", + "id": 14690 + } + }, + "DisarmDC": { + "type": "byte", + "value": 15 + }, + "Faction": { + "type": "dword", + "value": 4294967295 + }, + "Fort": { + "type": "byte", + "value": 16 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 0 + }, + "HP": { + "type": "short", + "value": 15 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "Active Spawn", + "id": 14688 + } + }, + "OnClosed": { + "type": "resref", + "value": "" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "spawnb_sc_disp" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 18 + }, + "PaletteID": { + "type": "byte", + "value": 12 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 490 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "SpawnBanner" + }, + "TemplateResRef": { + "type": "resref", + "value": "spawn_ban_a" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_module/utp/spawn_ban_d.utp.json b/_module/utp/spawn_ban_d.utp.json new file mode 100644 index 0000000..652ab84 --- /dev/null +++ b/_module/utp/spawn_ban_d.utp.json @@ -0,0 +1,217 @@ +{ + "__data_type": "UTP ", + "AnimationState": { + "type": "byte", + "value": 0 + }, + "Appearance": { + "type": "dword", + "value": 136 + }, + "AutoRemoveKey": { + "type": "byte", + "value": 0 + }, + "BodyBag": { + "type": "byte", + "value": 0 + }, + "CloseLockDC": { + "type": "byte", + "value": 0 + }, + "Comment": { + "type": "cexostring", + "value": "Freestanding Merchant's Placard - 3" + }, + "Conversation": { + "type": "resref", + "value": "" + }, + "CurrentHP": { + "type": "short", + "value": 15 + }, + "Description": { + "type": "cexolocstring", + "value": { + "0": "A carefully constructed marker denoting a point of interest.", + "id": 14690 + } + }, + "DisarmDC": { + "type": "byte", + "value": 15 + }, + "Faction": { + "type": "dword", + "value": 4294967295 + }, + "Fort": { + "type": "byte", + "value": 16 + }, + "Hardness": { + "type": "byte", + "value": 5 + }, + "HasInventory": { + "type": "byte", + "value": 0 + }, + "HP": { + "type": "short", + "value": 15 + }, + "Interruptable": { + "type": "byte", + "value": 1 + }, + "KeyName": { + "type": "cexostring", + "value": "" + }, + "KeyRequired": { + "type": "byte", + "value": 0 + }, + "Lockable": { + "type": "byte", + "value": 0 + }, + "Locked": { + "type": "byte", + "value": 0 + }, + "LocName": { + "type": "cexolocstring", + "value": { + "0": "Deactivated Spawn", + "id": 14688 + } + }, + "OnClosed": { + "type": "resref", + "value": "" + }, + "OnDamaged": { + "type": "resref", + "value": "" + }, + "OnDeath": { + "type": "resref", + "value": "" + }, + "OnDisarm": { + "type": "resref", + "value": "" + }, + "OnHeartbeat": { + "type": "resref", + "value": "" + }, + "OnInvDisturbed": { + "type": "resref", + "value": "" + }, + "OnLock": { + "type": "resref", + "value": "" + }, + "OnMeleeAttacked": { + "type": "resref", + "value": "" + }, + "OnOpen": { + "type": "resref", + "value": "" + }, + "OnSpellCastAt": { + "type": "resref", + "value": "" + }, + "OnTrapTriggered": { + "type": "resref", + "value": "" + }, + "OnUnlock": { + "type": "resref", + "value": "" + }, + "OnUsed": { + "type": "resref", + "value": "spawnb_sc_disp" + }, + "OnUserDefined": { + "type": "resref", + "value": "" + }, + "OpenLockDC": { + "type": "byte", + "value": 18 + }, + "PaletteID": { + "type": "byte", + "value": 12 + }, + "Plot": { + "type": "byte", + "value": 1 + }, + "PortraitId": { + "type": "word", + "value": 494 + }, + "Ref": { + "type": "byte", + "value": 0 + }, + "Static": { + "type": "byte", + "value": 0 + }, + "Tag": { + "type": "cexostring", + "value": "SpawnBanner" + }, + "TemplateResRef": { + "type": "resref", + "value": "spawn_ban_d" + }, + "TrapDetectable": { + "type": "byte", + "value": 1 + }, + "TrapDetectDC": { + "type": "byte", + "value": 0 + }, + "TrapDisarmable": { + "type": "byte", + "value": 1 + }, + "TrapFlag": { + "type": "byte", + "value": 0 + }, + "TrapOneShot": { + "type": "byte", + "value": 1 + }, + "TrapType": { + "type": "byte", + "value": 0 + }, + "Type": { + "type": "byte", + "value": 0 + }, + "Useable": { + "type": "byte", + "value": 1 + }, + "Will": { + "type": "byte", + "value": 0 + } +} diff --git a/_release/Underworld 2 [PRC8-CEP3].7z b/_release/Underworld 2 [PRC8-CEP3].7z index 539d3659dbe0fcb7b8796324d5c1fe60f0d78f4e..8908ccea24be26ecc579bab5f00df418679d1755 100644 GIT binary patch delta 3036248 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 `3yl4_zOK2l)EH6T!RRU1}V8^ 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�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

vE6-&XcR70P+)6C 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