Added Alhoon template
Added Alhoon template & alter-self support changes by Thomas!#2605. Updated release archive.
This commit is contained in:
parent
98135e6f1a
commit
6b1a173844
2
.gitignore
vendored
2
.gitignore
vendored
@ -155,3 +155,5 @@ replay_pid*
|
||||
nwn/nwnprc/trunk/errorlog
|
||||
nwn/nwnprc/trunk/makefile.temp
|
||||
nwn/nwnprc/trunk/makefile.temp
|
||||
nwn/nwnprc/trunk/scripts/old_lich_alter.nss
|
||||
nwn/nwnprc/trunk/makefile.temp
|
||||
|
BIN
Release/PRC8_20240806.7z
Normal file
BIN
Release/PRC8_20240806.7z
Normal file
Binary file not shown.
@ -1,109 +1,110 @@
|
||||
2DA V2.0
|
||||
|
||||
Label Name Description LA Type TestScript SetupScript MaintainScript
|
||||
0 Fiendish 6717 16847223 2 1 tmp_t_fiend **** tmp_m_fiend
|
||||
1 Celestial 6716 16847220 2 1 tmp_t_celest **** tmp_m_celest
|
||||
2 HalfFiend 5638 16847647 4 1 tmp_t_hfiend **** tmp_m_hfiend
|
||||
3 HalfCelest 5639 16847225 4 1 tmp_t_hceles **** tmp_m_hceles
|
||||
4 HalfDragon 16838636 16838639 3 1 tmp_t_hdragon **** tmp_m_hdragon
|
||||
5 LycanNatBear **** **** **** 1 **** **** ****
|
||||
6 LycanNatBoar **** **** **** 1 **** **** ****
|
||||
7 LycanNatRat **** **** **** 1 **** **** ****
|
||||
8 LycanNatTiger **** **** **** 1 **** **** ****
|
||||
9 LycanNatWolf **** **** **** 1 **** **** ****
|
||||
10 LycanNatDireBear **** **** **** 1 **** **** ****
|
||||
11 LycanNatDireBoar **** **** **** 1 **** **** ****
|
||||
12 LycanNatDireRat **** **** **** 1 **** **** ****
|
||||
13 LycanNatDireTiger **** **** **** 1 **** **** ****
|
||||
14 LycanNatDireWolf **** **** **** 1 **** **** ****
|
||||
15 LycanAcqBear **** **** **** 2 **** **** ****
|
||||
16 LycanAcqBoar **** **** **** 2 **** **** ****
|
||||
17 LycanAcqRat **** **** **** 2 **** **** ****
|
||||
18 LycanAcqTiger **** **** **** 2 **** **** ****
|
||||
19 LycanAcqWolf **** **** **** 2 **** **** ****
|
||||
20 LycanAcqDireBear **** **** **** 2 **** **** ****
|
||||
21 LycanAcqDireBoar **** **** **** 2 **** **** ****
|
||||
22 LycanAcqDireRat **** **** **** 2 **** **** ****
|
||||
23 LycanAcqDireTiger **** **** **** 2 **** **** ****
|
||||
24 LycanAcqDireWolf **** **** **** 2 **** **** ****
|
||||
25 Dark 16836361 16836362 1 2 tmp_t_dark **** tmp_m_dark
|
||||
26 Curst 16836698 16836699 3 2 tmp_t_curst **** tmp_m_curst
|
||||
27 MineralWarrior 16836700 16836701 1 2 tmp_t_mineral **** tmp_m_mineral
|
||||
28 BloodedOne 16837873 16837874 1 2 tmp_t_blooded **** tmp_m_blooded
|
||||
29 GravetouchedGhoul 16838222 16838223 2 2 tmp_t_gravetouch **** tmp_m_gravetouch
|
||||
30 CryptSpawn 16790356 16790357 2 2 tmp_t_cryptspawn **** tmp_m_cryptspawn
|
||||
31 HalfTroll 16790393 16790394 4 2 tmp_t_halftroll **** tmp_m_halftroll
|
||||
32 Saint 16790399 16790400 2 2 tmp_t_saint **** tmp_m_saint
|
||||
33 **** **** **** **** **** **** **** ****
|
||||
34 **** **** **** **** **** **** **** ****
|
||||
35 **** **** **** **** **** **** **** ****
|
||||
36 **** **** **** **** **** **** **** ****
|
||||
37 **** **** **** **** **** **** **** ****
|
||||
38 **** **** **** **** **** **** **** ****
|
||||
39 **** **** **** **** **** **** **** ****
|
||||
40 **** **** **** **** **** **** **** ****
|
||||
41 **** **** **** **** **** **** **** ****
|
||||
42 **** **** **** **** **** **** **** ****
|
||||
43 **** **** **** **** **** **** **** ****
|
||||
44 **** **** **** **** **** **** **** ****
|
||||
45 **** **** **** **** **** **** **** ****
|
||||
46 **** **** **** **** **** **** **** ****
|
||||
47 **** **** **** **** **** **** **** ****
|
||||
48 **** **** **** **** **** **** **** ****
|
||||
49 **** **** **** **** **** **** **** ****
|
||||
50 **** **** **** **** **** **** **** ****
|
||||
51 **** **** **** **** **** **** **** ****
|
||||
52 **** **** **** **** **** **** **** ****
|
||||
53 **** **** **** **** **** **** **** ****
|
||||
54 **** **** **** **** **** **** **** ****
|
||||
55 **** **** **** **** **** **** **** ****
|
||||
56 **** **** **** **** **** **** **** ****
|
||||
57 **** **** **** **** **** **** **** ****
|
||||
58 **** **** **** **** **** **** **** ****
|
||||
59 **** **** **** **** **** **** **** ****
|
||||
60 **** **** **** **** **** **** **** ****
|
||||
61 **** **** **** **** **** **** **** ****
|
||||
62 **** **** **** **** **** **** **** ****
|
||||
63 **** **** **** **** **** **** **** ****
|
||||
64 **** **** **** **** **** **** **** ****
|
||||
65 **** **** **** **** **** **** **** ****
|
||||
66 **** **** **** **** **** **** **** ****
|
||||
67 **** **** **** **** **** **** **** ****
|
||||
68 **** **** **** **** **** **** **** ****
|
||||
69 **** **** **** **** **** **** **** ****
|
||||
70 **** **** **** **** **** **** **** ****
|
||||
71 **** **** **** **** **** **** **** ****
|
||||
72 **** **** **** **** **** **** **** ****
|
||||
73 **** **** **** **** **** **** **** ****
|
||||
74 **** **** **** **** **** **** **** ****
|
||||
75 **** **** **** **** **** **** **** ****
|
||||
76 **** **** **** **** **** **** **** ****
|
||||
77 **** **** **** **** **** **** **** ****
|
||||
78 **** **** **** **** **** **** **** ****
|
||||
79 **** **** **** **** **** **** **** ****
|
||||
80 **** **** **** **** **** **** **** ****
|
||||
81 **** **** **** **** **** **** **** ****
|
||||
82 **** **** **** **** **** **** **** ****
|
||||
83 **** **** **** **** **** **** **** ****
|
||||
84 **** **** **** **** **** **** **** ****
|
||||
85 **** **** **** **** **** **** **** ****
|
||||
86 **** **** **** **** **** **** **** ****
|
||||
87 **** **** **** **** **** **** **** ****
|
||||
88 **** **** **** **** **** **** **** ****
|
||||
89 **** **** **** **** **** **** **** ****
|
||||
90 **** **** **** **** **** **** **** ****
|
||||
91 **** **** **** **** **** **** **** ****
|
||||
92 **** **** **** **** **** **** **** ****
|
||||
93 **** **** **** **** **** **** **** ****
|
||||
94 **** **** **** **** **** **** **** ****
|
||||
95 **** **** **** **** **** **** **** ****
|
||||
96 **** **** **** **** **** **** **** ****
|
||||
97 **** **** **** **** **** **** **** ****
|
||||
98 **** **** **** **** **** **** **** ****
|
||||
99 Archlich 16790405 16790406 4 2 tmp_t_licha **** tmp_m_licha
|
||||
100 Baelnorn **** 16847227 **** 2 **** **** ****
|
||||
101 Lich 5571 16847649 4 2 tmp_t_lich **** tmp_m_lich
|
||||
102 DemiLich 3087 16847651 8 2 tmp_t_lichd **** tmp_m_lich
|
||||
103 Vampire **** **** 8 **** **** **** ****
|
||||
104 VampireSpawn **** **** **** **** **** **** ****
|
||||
105 Necropolitan **** 16847638 **** 2 tmp_t_necropol **** tmp_m_necropol
|
||||
Label Name Description LA Type TestScript SetupScript MaintainScript
|
||||
0 Fiendish 6717 16847223 2 1 tmp_t_fiend **** tmp_m_fiend
|
||||
1 Celestial 6716 16847220 2 1 tmp_t_celest **** tmp_m_celest
|
||||
2 HalfFiend 5638 16847647 4 1 tmp_t_hfiend **** tmp_m_hfiend
|
||||
3 HalfCelest 5639 16847225 4 1 tmp_t_hceles **** tmp_m_hceles
|
||||
4 HalfDragon 16838636 16838639 3 1 tmp_t_hdragon **** tmp_m_hdragon
|
||||
5 LycanNatBear **** **** **** 1 **** **** ****
|
||||
6 LycanNatBoar **** **** **** 1 **** **** ****
|
||||
7 LycanNatRat **** **** **** 1 **** **** ****
|
||||
8 LycanNatTiger **** **** **** 1 **** **** ****
|
||||
9 LycanNatWolf **** **** **** 1 **** **** ****
|
||||
10 LycanNatDireBear **** **** **** 1 **** **** ****
|
||||
11 LycanNatDireBoar **** **** **** 1 **** **** ****
|
||||
12 LycanNatDireRat **** **** **** 1 **** **** ****
|
||||
13 LycanNatDireTiger **** **** **** 1 **** **** ****
|
||||
14 LycanNatDireWolf **** **** **** 1 **** **** ****
|
||||
15 LycanAcqBear **** **** **** 2 **** **** ****
|
||||
16 LycanAcqBoar **** **** **** 2 **** **** ****
|
||||
17 LycanAcqRat **** **** **** 2 **** **** ****
|
||||
18 LycanAcqTiger **** **** **** 2 **** **** ****
|
||||
19 LycanAcqWolf **** **** **** 2 **** **** ****
|
||||
20 LycanAcqDireBear **** **** **** 2 **** **** ****
|
||||
21 LycanAcqDireBoar **** **** **** 2 **** **** ****
|
||||
22 LycanAcqDireRat **** **** **** 2 **** **** ****
|
||||
23 LycanAcqDireTiger **** **** **** 2 **** **** ****
|
||||
24 LycanAcqDireWolf **** **** **** 2 **** **** ****
|
||||
25 Dark 16836361 16836362 1 2 tmp_t_dark **** tmp_m_dark
|
||||
26 Curst 16836698 16836699 3 2 tmp_t_curst **** tmp_m_curst
|
||||
27 MineralWarrior 16836700 16836701 1 2 tmp_t_mineral **** tmp_m_mineral
|
||||
28 BloodedOne 16837873 16837874 1 2 tmp_t_blooded **** tmp_m_blooded
|
||||
29 GravetouchedGhoul 16838222 16838223 2 2 tmp_t_gravetouch **** tmp_m_gravetouch
|
||||
30 CryptSpawn 16790356 16790357 2 2 tmp_t_cryptspawn **** tmp_m_cryptspawn
|
||||
31 HalfTroll 16790393 16790394 4 2 tmp_t_halftroll **** tmp_m_halftroll
|
||||
32 Saint 16790399 16790400 2 2 tmp_t_saint **** tmp_m_saint
|
||||
33 **** **** **** **** **** **** **** ****
|
||||
34 **** **** **** **** **** **** **** ****
|
||||
35 **** **** **** **** **** **** **** ****
|
||||
36 **** **** **** **** **** **** **** ****
|
||||
37 **** **** **** **** **** **** **** ****
|
||||
38 **** **** **** **** **** **** **** ****
|
||||
39 **** **** **** **** **** **** **** ****
|
||||
40 **** **** **** **** **** **** **** ****
|
||||
41 **** **** **** **** **** **** **** ****
|
||||
42 **** **** **** **** **** **** **** ****
|
||||
43 **** **** **** **** **** **** **** ****
|
||||
44 **** **** **** **** **** **** **** ****
|
||||
45 **** **** **** **** **** **** **** ****
|
||||
46 **** **** **** **** **** **** **** ****
|
||||
47 **** **** **** **** **** **** **** ****
|
||||
48 **** **** **** **** **** **** **** ****
|
||||
49 **** **** **** **** **** **** **** ****
|
||||
50 **** **** **** **** **** **** **** ****
|
||||
51 **** **** **** **** **** **** **** ****
|
||||
52 **** **** **** **** **** **** **** ****
|
||||
53 **** **** **** **** **** **** **** ****
|
||||
54 **** **** **** **** **** **** **** ****
|
||||
55 **** **** **** **** **** **** **** ****
|
||||
56 **** **** **** **** **** **** **** ****
|
||||
57 **** **** **** **** **** **** **** ****
|
||||
58 **** **** **** **** **** **** **** ****
|
||||
59 **** **** **** **** **** **** **** ****
|
||||
60 **** **** **** **** **** **** **** ****
|
||||
61 **** **** **** **** **** **** **** ****
|
||||
62 **** **** **** **** **** **** **** ****
|
||||
63 **** **** **** **** **** **** **** ****
|
||||
64 **** **** **** **** **** **** **** ****
|
||||
65 **** **** **** **** **** **** **** ****
|
||||
66 **** **** **** **** **** **** **** ****
|
||||
67 **** **** **** **** **** **** **** ****
|
||||
68 **** **** **** **** **** **** **** ****
|
||||
69 **** **** **** **** **** **** **** ****
|
||||
70 **** **** **** **** **** **** **** ****
|
||||
71 **** **** **** **** **** **** **** ****
|
||||
72 **** **** **** **** **** **** **** ****
|
||||
73 **** **** **** **** **** **** **** ****
|
||||
74 **** **** **** **** **** **** **** ****
|
||||
75 **** **** **** **** **** **** **** ****
|
||||
76 **** **** **** **** **** **** **** ****
|
||||
77 **** **** **** **** **** **** **** ****
|
||||
78 **** **** **** **** **** **** **** ****
|
||||
79 **** **** **** **** **** **** **** ****
|
||||
80 **** **** **** **** **** **** **** ****
|
||||
81 **** **** **** **** **** **** **** ****
|
||||
82 **** **** **** **** **** **** **** ****
|
||||
83 **** **** **** **** **** **** **** ****
|
||||
84 **** **** **** **** **** **** **** ****
|
||||
85 **** **** **** **** **** **** **** ****
|
||||
86 **** **** **** **** **** **** **** ****
|
||||
87 **** **** **** **** **** **** **** ****
|
||||
88 **** **** **** **** **** **** **** ****
|
||||
89 **** **** **** **** **** **** **** ****
|
||||
90 **** **** **** **** **** **** **** ****
|
||||
91 **** **** **** **** **** **** **** ****
|
||||
92 **** **** **** **** **** **** **** ****
|
||||
93 **** **** **** **** **** **** **** ****
|
||||
94 **** **** **** **** **** **** **** ****
|
||||
95 **** **** **** **** **** **** **** ****
|
||||
96 **** **** **** **** **** **** **** ****
|
||||
97 **** **** **** **** **** **** **** ****
|
||||
98 **** **** **** **** **** **** **** ****
|
||||
99 Archlich 16790405 16790406 4 2 tmp_t_licha **** tmp_m_licha
|
||||
100 Baelnorn **** 16847227 **** 2 **** **** ****
|
||||
101 Lich 5571 16847649 4 2 tmp_t_lich **** tmp_m_lich
|
||||
102 DemiLich 3087 16847651 8 2 tmp_t_lichd **** tmp_m_lich
|
||||
103 Vampire **** **** 8 **** **** **** ****
|
||||
104 VampireSpawn **** **** **** **** **** **** ****
|
||||
105 Necropolitan **** 16847638 **** 2 tmp_t_necropol **** tmp_m_necropol
|
||||
106 Alhoon 16822362 16822363 4 2 tmp_t_alhoon **** tmp_m_alhoon
|
||||
|
@ -21,6 +21,7 @@ const int TEMPLATE_ARCHLICH = 99;
|
||||
const int TEMPLATE_LICH = 101;
|
||||
const int TEMPLATE_DEMILICH = 102;
|
||||
const int TEMPLATE_NECROPOLITAN = 105;
|
||||
const int TEMPLATE_ALHOON = 106;
|
||||
|
||||
|
||||
//:: General
|
||||
|
@ -642,6 +642,7 @@ scripts\nw_ch_fm_st_01.nss \
|
||||
scripts\nw_ch_fm_st_11.nss \
|
||||
scripts\nw_g0_conversat.nss \
|
||||
scripts\nw_s0_1sassone.nss \
|
||||
scripts\old_lich_alter.nss \
|
||||
scripts\ow_fin_rage.nss \
|
||||
scripts\ow_hb.nss \
|
||||
scripts\ow_inspire.nss \
|
||||
@ -1737,6 +1738,7 @@ scripts\tfshad_jump.nss \
|
||||
scripts\tmp_blooded_cry.nss \
|
||||
scripts\tmp_hdrag_breath.nss \
|
||||
scripts\tmp_lich_touch.nss \
|
||||
scripts\tmp_m_alhoon.nss \
|
||||
scripts\tmp_m_blooded.nss \
|
||||
scripts\tmp_m_celest.nss \
|
||||
scripts\tmp_m_cryptspawn.nss \
|
||||
@ -1757,6 +1759,7 @@ scripts\tmp_mineral_smt.nss \
|
||||
scripts\tmp_protectaura.nss \
|
||||
scripts\tmp_sla.nss \
|
||||
scripts\tmp_smite.nss \
|
||||
scripts\tmp_t_alhoon.nss \
|
||||
scripts\tmp_t_blooded.nss \
|
||||
scripts\tmp_t_celest.nss \
|
||||
scripts\tmp_t_cryptspawn.nss \
|
||||
@ -3240,6 +3243,7 @@ objs\nw_ch_fm_st_01.ncs \
|
||||
objs\nw_ch_fm_st_11.ncs \
|
||||
objs\nw_g0_conversat.ncs \
|
||||
objs\nw_s0_1sassone.ncs \
|
||||
objs\old_lich_alter.ncs \
|
||||
objs\ow_fin_rage.ncs \
|
||||
objs\ow_hb.ncs \
|
||||
objs\ow_inspire.ncs \
|
||||
@ -4335,6 +4339,7 @@ objs\tfshad_jump.ncs \
|
||||
objs\tmp_blooded_cry.ncs \
|
||||
objs\tmp_hdrag_breath.ncs \
|
||||
objs\tmp_lich_touch.ncs \
|
||||
objs\tmp_m_alhoon.ncs \
|
||||
objs\tmp_m_blooded.ncs \
|
||||
objs\tmp_m_celest.ncs \
|
||||
objs\tmp_m_cryptspawn.ncs \
|
||||
@ -4355,6 +4360,7 @@ objs\tmp_mineral_smt.ncs \
|
||||
objs\tmp_protectaura.ncs \
|
||||
objs\tmp_sla.ncs \
|
||||
objs\tmp_smite.ncs \
|
||||
objs\tmp_t_alhoon.ncs \
|
||||
objs\tmp_t_blooded.ncs \
|
||||
objs\tmp_t_celest.ncs \
|
||||
objs\tmp_t_cryptspawn.ncs \
|
||||
@ -28602,6 +28608,8 @@ objs\nw_g0_conversat.ncs: scripts\nw_g0_conversat.nss include\inc_eventhook.nss
|
||||
|
||||
objs\nw_s0_1sassone.ncs: scripts\nw_s0_1sassone.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss
|
||||
|
||||
objs\old_lich_alter.ncs: scripts\old_lich_alter.nss include\pnp_shft_poly.nss include\prc_inc_template.nss include\pnp_shft_main.nss include\prc_inc_shifting.nss include\prc_inc_function.nss include\prc_inc_util.nss include\prc_inc_spells.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_template_con.nss include\prc_alterations.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_inc_onhit.nss include\prc_shifter_info.nss include\prc_weap_apt.nss include\prc_inc_wpnrest.nss include\inc_dynconv.nss include\prc_inc_combat.nss include\prc_inc_unarmed.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss include\prc_inc_burn.nss include\prc_getbest_inc.nss
|
||||
|
||||
objs\ow_fin_rage.ncs: scripts\ow_fin_rage.nss
|
||||
|
||||
objs\ow_hb.ncs: scripts\ow_hb.nss include\prc_alterations.nss include\x2_inc_spellhook.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\prc_x2_craft.nss include\prc_inc_spells.nss include\prc_inc_combat.nss include\prc_inc_itmrstr.nss include\prc_inc_burn.nss include\pnp_shft_main.nss include\inc_dynconv.nss include\inc_npc.nss include\prc_add_spell_dc.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_inc_unarmed.nss include\prc_inc_onhit.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss include\prc_getbest_inc.nss include\prc_inc_function.nss include\prc_inc_util.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_template_con.nss
|
||||
@ -30792,6 +30800,8 @@ objs\tmp_hdrag_breath.ncs: scripts\tmp_hdrag_breath.nss include\prc_inc_spells.n
|
||||
|
||||
objs\tmp_lich_touch.ncs: scripts\tmp_lich_touch.nss include\prc_inc_sp_tch.nss include\prc_inc_template.nss include\prc_inc_combat.nss include\prc_inc_unarmed.nss include\prc_inc_onhit.nss include\prc_misc_const.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss include\inc_utility.nss include\prc_inc_spells.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\inc_item_props.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_damage.nss include\prc_inc_sb_const.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_prc_npc.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\inc_abil_damage.nss include\prc_inc_function.nss include\prc_template_con.nss include\prc_inc_burn.nss include\prc_inc_util.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_alterations.nss include\prc_getbest_inc.nss
|
||||
|
||||
objs\tmp_m_alhoon.ncs: scripts\tmp_m_alhoon.nss include\prc_inc_template.nss include\prc_inc_function.nss include\prc_template_con.nss include\inc_persist_loca.nss include\prc_inc_burn.nss include\prc_inc_util.nss include\prc_inc_spells.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_alterations.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_getbest_inc.nss
|
||||
|
||||
objs\tmp_m_blooded.ncs: scripts\tmp_m_blooded.nss include\prc_inc_template.nss include\prc_inc_function.nss include\prc_template_con.nss include\inc_persist_loca.nss include\prc_inc_burn.nss include\prc_inc_util.nss include\prc_inc_spells.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_alterations.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_getbest_inc.nss
|
||||
|
||||
objs\tmp_m_celest.ncs: scripts\tmp_m_celest.nss include\prc_inc_template.nss include\inc_nwnx_funcs.nss include\prc_inc_function.nss include\prc_template_con.nss include\inc_persist_loca.nss include\prc_inc_burn.nss include\prc_inc_util.nss include\prc_inc_spells.nss include\prc_inc_stunfist.nss include\prc_alterations.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_getbest_inc.nss
|
||||
@ -30832,6 +30842,8 @@ objs\tmp_sla.ncs: scripts\tmp_sla.nss include\inc_newspellbook.nss include\prc_i
|
||||
|
||||
objs\tmp_smite.ncs: scripts\tmp_smite.nss include\prc_inc_smite.nss include\prc_inc_template.nss include\prc_inc_combat.nss include\prc_inc_racial.nss include\bnd_inc_bndfunc.nss include\prc_inc_factotum.nss include\prc_inc_unarmed.nss include\prc_inc_onhit.nss include\prc_misc_const.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss include\inc_utility.nss include\prc_inc_spells.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\inc_item_props.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_damage.nss include\prc_inc_sb_const.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_prc_npc.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\inc_abil_damage.nss include\inc_dynconv.nss include\prc_inc_function.nss include\prc_inc_util.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_template_con.nss include\prc_alterations.nss include\prc_inc_burn.nss include\prc_getbest_inc.nss
|
||||
|
||||
objs\tmp_t_alhoon.ncs: scripts\tmp_t_alhoon.nss include\prc_alterations.nss include\prc_inc_template.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\prc_inc_function.nss include\prc_template_con.nss include\prc_inc_burn.nss include\prc_inc_util.nss include\prc_inc_spells.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_getbest_inc.nss
|
||||
|
||||
objs\tmp_t_blooded.ncs: scripts\tmp_t_blooded.nss include\prc_inc_template.nss include\prc_inc_function.nss include\prc_template_con.nss include\inc_persist_loca.nss include\prc_inc_burn.nss include\prc_inc_util.nss include\prc_inc_spells.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_alterations.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_getbest_inc.nss
|
||||
|
||||
objs\tmp_t_celest.ncs: scripts\tmp_t_celest.nss include\prc_alterations.nss include\prc_inc_template.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\prc_inc_function.nss include\prc_template_con.nss include\prc_inc_burn.nss include\prc_inc_util.nss include\prc_inc_spells.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_getbest_inc.nss
|
||||
|
@ -16,6 +16,8 @@
|
||||
|
||||
void main()
|
||||
{
|
||||
int iRace = GetRacialType(OBJECT_SELF);
|
||||
|
||||
if(GetPRCSwitch(PRC_LICH_ALTER_SELF_DISABLE))
|
||||
{
|
||||
FloatingTextStringOnCreature("Lich Alter Self has been disabled in this module.", OBJECT_SELF);
|
||||
@ -25,12 +27,22 @@ void main()
|
||||
int nCurForm = GetAppearanceType(OBJECT_SELF);
|
||||
int nPCForm = GetTrueForm(OBJECT_SELF);
|
||||
|
||||
// Switch to lich
|
||||
|
||||
// Switch to lich
|
||||
if (nPCForm == nCurForm)
|
||||
{
|
||||
int nLichLevel = GetLevelByClass(CLASS_TYPE_LICH,OBJECT_SELF);
|
||||
int nIsDemi = GetHasTemplate(TEMPLATE_DEMILICH,OBJECT_SELF);
|
||||
if (nLichLevel < 10 && !nIsDemi)
|
||||
if (iRace == RACIAL_TYPE_ILLITHID)
|
||||
{
|
||||
effect eFx = EffectVisualEffect(VFX_COM_CHUNK_RED_SMALL);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eFx,OBJECT_SELF);
|
||||
SetCreatureAppearanceType(OBJECT_SELF, APPEARANCE_TYPE_MINDFLAYER_ALHOON);
|
||||
SetPortraitResRef(OBJECT_SELF, "mindalhoon");
|
||||
SetPortraitId(OBJECT_SELF, 771);
|
||||
}
|
||||
|
||||
else if (nLichLevel < 10 && !nIsDemi)
|
||||
{
|
||||
effect eFx = EffectVisualEffect(VFX_COM_CHUNK_RED_SMALL);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eFx,OBJECT_SELF);
|
||||
|
99
nwn/nwnprc/trunk/scripts/tmp_m_alhoon.nss
Normal file
99
nwn/nwnprc/trunk/scripts/tmp_m_alhoon.nss
Normal file
@ -0,0 +1,99 @@
|
||||
//:://///////////////////////////////////////////////
|
||||
//:: Name Archich template maintain script
|
||||
//:: FileName tmp_m_archlich
|
||||
//::
|
||||
//:: Created By: Jaysyn
|
||||
//:: Created On: 24/08/06
|
||||
//:://///////////////////////////////////////////////
|
||||
/*
|
||||
Creating An Alhoon
|
||||
|
||||
An alhoon conforms to all the normal rules for adding the lich template to a humanoid, except asnoted below.
|
||||
|
||||
Size and Type: The creature's type changes to undead (augmented aberration). Do not recalculate base attack bonus, saves, or skill points. Size is unchanged.
|
||||
|
||||
Armor Class: An alhoon's natural armor bonus improves from +3 to +5.
|
||||
*/
|
||||
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "prc_inc_template"
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
object oPC = OBJECT_SELF;
|
||||
object oSkin = GetPCSkin(oPC);
|
||||
int nHD = GetHitDice(oPC);
|
||||
itemproperty ipIP;
|
||||
|
||||
int nAC = 5;
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_ac", nAC, ITEM_PROPERTY_AC_BONUS);
|
||||
|
||||
int nTurnResist = 4;
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_turnresist", nTurnResist, ITEM_PROPERTY_TURN_RESISTANCE);
|
||||
|
||||
ipIP = ItemPropertyDamageReduction(IP_CONST_DAMAGEREDUCTION_1, IP_CONST_DAMAGESOAK_15_HP);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
|
||||
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_ELECTRICAL,IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
|
||||
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_COLD,IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
// Bugfix
|
||||
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_NEGATIVE, IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
|
||||
int nAbilityBonus = 2;
|
||||
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_int", nAbilityBonus, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_INT);
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_wis", nAbilityBonus, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_WIS);
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_cha", nAbilityBonus, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_CHA);
|
||||
|
||||
int nSkillBonus = 8;
|
||||
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_Hide", nSkillBonus, ITEM_PROPERTY_SKILL_BONUS, SKILL_HIDE);
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_Listen", nSkillBonus, ITEM_PROPERTY_SKILL_BONUS, SKILL_LISTEN);
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_Persuade", nSkillBonus, ITEM_PROPERTY_SKILL_BONUS, SKILL_PERSUADE);
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_Silent", nSkillBonus, ITEM_PROPERTY_SKILL_BONUS, SKILL_MOVE_SILENTLY);
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_Search", nSkillBonus, ITEM_PROPERTY_SKILL_BONUS, SKILL_SEARCH);
|
||||
SetCompositeBonus(oSkin, "Template_alhoon_Spot", nSkillBonus, ITEM_PROPERTY_SKILL_BONUS, SKILL_SPOT);
|
||||
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_UNDEAD_HD);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_IMMUNITY_ABILITY_DECREASE);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_IMMUNITY_CRITICAL);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_IMMUNITY_DEATH);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_IMMUNITY_DISEASE);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_IMMUNITY_MIND_SPELLS);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_IMMUNITY_PARALYSIS);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_IMMUNITY_POISON);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_IMMUNITY_SNEAKATTACK);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
|
||||
if(DEBUG) DoDebug("You have feat Undead HD = "+IntToString(GetHasFeat(FEAT_UNDEAD_HD, oPC)));
|
||||
|
||||
//appearance
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_TEMPLATE_LICH_APPEARANCE);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
//touch/natural attack & paralyzing touch
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_TEMPLATE_LICH_PARALYZING_TOUCH);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
//fear aura
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_TEMPLATE_LICH_FEAR_AURA);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
//marker feats
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_TEMPLATE_LICH_MARKER);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
|
||||
SetSubRace(oPC, "Undead (Augmented Aberration)");
|
||||
|
||||
}
|
64
nwn/nwnprc/trunk/scripts/tmp_t_alhoon.nss
Normal file
64
nwn/nwnprc/trunk/scripts/tmp_t_alhoon.nss
Normal file
@ -0,0 +1,64 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Name Alhoon template test script
|
||||
//:: FileName tmp_t_alhoon
|
||||
//:: Copyright (c) 2001 Bioware Corp.
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
Creating An Alhoon
|
||||
|
||||
An alhoon conforms to all the normal rules for adding the lich template to a humanoid, except asnoted below.
|
||||
|
||||
Size and Type: The creature's type changes to undead (augmented aberration). Do not recalculate base attack bonus, saves, or skill points. Size is unchanged.
|
||||
|
||||
Armor Class: An alhoon's natural armor bonus improves from +3 to +5.
|
||||
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Jaysyn
|
||||
//:: Created On: 24/08/06
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "prc_alterations"
|
||||
#include "prc_inc_template"
|
||||
|
||||
void main()
|
||||
{
|
||||
object oPC = OBJECT_SELF;
|
||||
string sString = "Alhoon template: ";
|
||||
SetExecutedScriptReturnValue(X2_EXECUTE_SCRIPT_CONTINUE);
|
||||
|
||||
int nAlignment = GetAlignmentGoodEvil(oPC);
|
||||
if(nAlignment != ALIGNMENT_EVIL && GetLevelByClass(CLASS_TYPE_DREAD_NECROMANCER) < 20)
|
||||
{
|
||||
SendMessageToPC(oPC, sString+"Not evil");
|
||||
SetExecutedScriptReturnValue(X2_EXECUTE_SCRIPT_END);
|
||||
}
|
||||
else if(GetLevelByClass(CLASS_TYPE_DREAD_NECROMANCER, oPC) >= 20 && nAlignment == ALIGNMENT_GOOD)
|
||||
{
|
||||
SendMessageToPC(oPC, sString+"Can't be a good Dread Necromancer");
|
||||
SetExecutedScriptReturnValue(X2_EXECUTE_SCRIPT_END);
|
||||
}
|
||||
|
||||
int nArcCasterLevel = GetPrCAdjustedCasterLevelByType(TYPE_ARCANE, oPC, TRUE);
|
||||
int nDivCasterLevel = GetPrCAdjustedCasterLevelByType(TYPE_DIVINE, oPC, TRUE);
|
||||
if(nArcCasterLevel < 11 && nDivCasterLevel < 11)
|
||||
{
|
||||
SendMessageToPC(oPC, sString+"Arcane Caster Level = "+IntToString(nArcCasterLevel));
|
||||
SendMessageToPC(oPC, sString+"Divine Caster Level = "+IntToString(nDivCasterLevel));
|
||||
SetExecutedScriptReturnValue(X2_EXECUTE_SCRIPT_END);
|
||||
}
|
||||
|
||||
if(!GetHasFeat(FEAT_CRAFT_WONDROUS))
|
||||
{
|
||||
SendMessageToPC(oPC, sString+"No craft wondrous items");
|
||||
SetExecutedScriptReturnValue(X2_EXECUTE_SCRIPT_END);
|
||||
}
|
||||
|
||||
// Illithid only
|
||||
int nRace = GetRacialType(oPC);
|
||||
|
||||
if (nRace != RACIAL_TYPE_ILLITHID)
|
||||
{
|
||||
SetExecutedScriptReturnValue(X2_EXECUTE_SCRIPT_END);
|
||||
}
|
||||
}
|
Binary file not shown.
@ -4728,7 +4728,7 @@ effects, you gain a +10 resistance bonus on saving throws
|
||||
(or Charisma checks, in the case of effects such as charm
|
||||
person) to resist commands that would cause you to leave
|
||||
your current position.</entry>
|
||||
<entry id="13272" lang="en" sex="m">Force Missiles</entry>
|
||||
<entry id="13272" lang="en" sex="m">Force Missiles</entry>
|
||||
<entry id="13273" lang="en" sex="m">Evocation [Force]
|
||||
Level: Sorcerer 4, Wizard 4,
|
||||
Components: V, S,
|
||||
@ -4752,7 +4752,7 @@ less than total cover or concealment. A caster cannot single out specific parts
|
||||
of a creature.
|
||||
|
||||
You gain one missile for every four caster levels. Extra missiles distribute
|
||||
themsleves amongst your enemies evenly.</entry>
|
||||
themsleves amongst your enemies evenly.</entry>
|
||||
<entry id="16409" lang="en" sex="m">62</entry>
|
||||
<entry id="16410" lang="en" sex="m">63</entry>
|
||||
<entry id="16411" lang="en" sex="m">64</entry>
|
||||
@ -5692,6 +5692,114 @@ All living creatures in the area of effect immediately take 1d6 points of damage
|
||||
<entry id="45143" lang="en" sex="m">You cannot cast spells of your prohibited schools. Spell terminated.</entry>
|
||||
<entry id="45144" lang="en" sex="m">Font of Inspiration IX</entry>
|
||||
<entry id="45145" lang="en" sex="m">Font of Inspiration X</entry>
|
||||
<entry id="45146" lang="en" sex="m">Alhoon</entry>
|
||||
<entry id="45147" lang="en" sex="m">"Alhoon" is an acquired template that can be added to any illithid creature (referred to hereafter as the base creature), provided it can create the required phylactery.
|
||||
|
||||
A alhoon has all the base creature's statistics and special abilities except as noted here.
|
||||
|
||||
Size and Type
|
||||
|
||||
The creature's type changes to undead. Do not recalculate base attack bonus, saves, or skill points. Size is unchanged.
|
||||
|
||||
Hit Dice
|
||||
|
||||
Increase all current and future Hit Dice to d12s.
|
||||
|
||||
Armor Class
|
||||
|
||||
A alhoon has a +5 natural armor bonus or the base creature's natural armor bonus, whichever is better.
|
||||
|
||||
Attack
|
||||
|
||||
A alhoon has a touch attack that it can use once per round. If the base creature can use weapons, the alhoon retains this ability. A creature with natural weapons retains those natural weapons. A alhoon fighting without weapons uses either its touch attack or its primary natural weapon (if it has any). A alhoon armed with a weapon uses its touch or a weapon, as it desires.
|
||||
|
||||
Full Attack
|
||||
|
||||
A alhoon fighting without weapons uses either its touch attack (see above) or its natural weapons (if it has any). If armed with a weapon, it usually uses the weapon as its primary attack along with a touch as a natural secondary attack, provided it has a way to make that attack (either a free hand or a natural weapon that it can use as a secondary attack).
|
||||
|
||||
Damage
|
||||
|
||||
A alhoon without natural weapons has a touch attack that uses negative energy to deal 1d8+5 points of damage to living creatures; a Will save (DC 10 + 1/2 alhoon's HD + alhoon's Cha modifier) halves the damage. A alhoon with natural weapons can use its touch attack or its natural weaponry, as it prefers. If it chooses the latter, it deals 1d8+5 points of extra damage on one natural weapon attack.
|
||||
|
||||
Special Attacks
|
||||
|
||||
A alhoon retains all the base creature's special attacks and gains those described below. Save DCs are equal to 10 + 1/2 alhoon's HD + alhoon's Cha modifier unless otherwise noted.
|
||||
|
||||
Fear Aura (Su)
|
||||
|
||||
Alhoon are shrouded in a dreadful aura of death and evil. Creatures of less than 5 HD in a 60-foot radius that look at the alhoon must succeed on a Will save or be affected as though by a fear spell from a sorcerer of the alhoon's level. A creature that successfully saves cannot be affected again by the same alhoon's aura for 24 hours.
|
||||
|
||||
Paralyzing Touch (Su)
|
||||
|
||||
Any living creature a alhoon hits with its touch attack must succeed on a Fortitude save or be permanently paralyzed. Remove paralysis or any spell that can remove a curse can free the victim (see the bestow curse spell description).
|
||||
|
||||
The effect cannot be dispelled. Anyone paralyzed by a alhoon seems dead, though a DC 20 Spot check or a DC 15 Heal check reveals that the victim is still alive..
|
||||
|
||||
Spells
|
||||
|
||||
A alhoon can cast any spells it could cast while alive.
|
||||
|
||||
Special Qualities
|
||||
|
||||
A alhoon retains all the base creature's special qualities and gains those described below.
|
||||
|
||||
Turn Resistance (Ex)
|
||||
|
||||
A alhoon has +4 turn resistance.
|
||||
|
||||
Damage Reduction (Su)
|
||||
|
||||
A alhoon's undead body is tough, giving the creature damage reduction 15/bludgeoning and magic. Its natural weapons are treated as magic weapons for the purpose of overcoming damage reduction.
|
||||
|
||||
Immunities (Ex)
|
||||
|
||||
Alhoon's have immunity to cold, electricity, polymorph (though they can use polymorph effects on themselves), and mind-affecting attacks.
|
||||
|
||||
Abilities
|
||||
|
||||
Increase from the base creature as follows: Int +2, Wis +2, Cha +2. Being undead, a alhoon has no Constitution score.
|
||||
|
||||
Skills
|
||||
|
||||
Alhoon's have a +8 racial bonus on Hide, Listen, Move Silently, Search, Sense Motive, and Spot checks. Otherwise same as the base creature.
|
||||
|
||||
Organization
|
||||
|
||||
Solitary or troupe (1 alhoon, plus 2-4 vampires and 5-8 vampire spawn).
|
||||
|
||||
Challenge Rating
|
||||
|
||||
Same as the base creature + 2.
|
||||
|
||||
Treasure
|
||||
|
||||
Standard coins; double goods; double items.
|
||||
|
||||
Alignment
|
||||
|
||||
Any evil.
|
||||
|
||||
Advancement
|
||||
|
||||
By character class.
|
||||
|
||||
Level Adjustment
|
||||
|
||||
Same as the base creature +4.
|
||||
|
||||
Alhoon Characters
|
||||
|
||||
The process of becoming a alhoon is unspeakably evil and can be undertaken only by a willing character. A alhoon retains all class abilities it had in life.
|
||||
|
||||
The Alhoon's Phylactery
|
||||
|
||||
An integral part of becoming a alhoon is creating a magic phylactery in which the character stores its life force. As a rule, the only way to get rid of a alhoon for sure is to destroy its phylactery. Unless its phylactery is located and destroyed, a alhoon reappears 1d10 days after its apparent death.
|
||||
|
||||
Each alhoon must make its own phylactery, which requires the Craft Wondrous Item feat. The character must be able to cast spells and have a caster level of 11th or higher. The phylactery costs 120,000 gp and 4,800 XP to create and has a caster level equal to that of its creator at the time of creation.
|
||||
|
||||
The most common form of phylactery is a sealed metal box containing strips of parchment on which magicalphrases have been transcribed. The box is Tiny and has 40 hit points, hardness 20, and a break DC of 40.
|
||||
|
||||
Other forms of phylacteries can exist, such as rings, amulets, or similar items.</entry>
|
||||
<entry id="45148" lang="en" sex="m">Epic Mage Killer</entry>
|
||||
<entry id="45149" lang="en" sex="m">The epic mage-killer is a terrifying opponent and is legendary in her ability to bring enemy spellcasters to their knees. Though any given order might count only a tiny number of these characters among them, even the rumor of a single hunter of this power is enough to guard against the abuse of magic.
|
||||
|
||||
@ -23727,7 +23835,7 @@ Use: Selected</entry>
|
||||
Prerequisites: Jade Phoenix level 6.
|
||||
Specifics: You gain fire resistance 10 and your caster level when you cast any fire spell increases by 3. If you expend an arcane spell, you gain an aura that deals 1d6 points of damage to any creature within 10 feet (Reflex half, DC 14 + key spellcasting ability modifier). Half of the damage is fire and the other half is magical. The aura lasts for one turn.
|
||||
Use: Selected</entry>
|
||||
<entry id="49979" lang="en" sex="m">Jade Phoenix Master</entry>
|
||||
<entry id="49979" lang="en" sex="m">Jade Phoenix Master</entry>
|
||||
<entry id="49980" lang="en" sex="m">When you attain 6th level, you earn the right to call yourself a Jade Phoenix master. You can now perform the Rite of Waking for someone else, provided he or she is a suitable candidate and embodies the reincarnated spirit of one of the ancient masters. (The DM decides if this is true for any given NPC.) You gain the ability to sense the direction and distance to the nearest Jade Phoenix mage, master, or candidate simply by meditating for 1 minute without interruption.</entry>
|
||||
<entry id="49981" lang="en" sex="m">Quickening Strike</entry>
|
||||
<entry id="49982" lang="en" sex="m">Type of Feat: Class Specific
|
||||
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user