Read the whole post before you ask me questions.
Yes, it seems aggressive, but I can only write the same thing so many times before it gets too frustrating to bear.
What Everyone Needs to Download
ahp_3.01.hak (5,447,044 bytes)
alfa_1_7.tlk (281 kb)
They can be found on Hialmar's Mirror:
http://www.alandfaraway.org/docs/Player/ALFAHaks
They were not on Jayde's mirror when I last checked. It's been a week; I assume something awry on that end. They're fortunately small downloads, and the hak compresses to be ridiculously tiny. U.S. players shouldn't have trouble getting them from Hialmar's mirror.
To Update A Module
It needs to add ahp_3.01.hak to the top of its resources list, and it needs to set alfa_1_7.tlk as its talk table. This will cause the module to recompile itself - expect a long wait.
If You Wish to Check Versions on The Other 12 Haks
Open the haks with nwhak.exe (c:/Neverwinter Nights/NWN/utils on most machines) and check the file size. They should be thus:
ahp_3.0_2da.hak (23,821,009 bytes)
ahp_3.0_creat.hak (513,302,186 bytes)
ahp_3.0_creat2.hak (400,896,551 bytes)
ahp_3.0_items.hak (171,106,752 bytes)
ahp_3.0_items2.hak (213,293,167 bytes)
ahp_3.0_place.hak (202,934,644 bytes)
ahp_3.0_place2.hak (175,027,667 bytes)
ahp_3.0_tile1.hak (162,688,019 bytes)
ahp_3.0_tile2.hak (210,417,928 bytes)
ahp_3.0_tile3.hak (145,677,091 bytes)
ahp_3.0_tile4.hak (170,911,299 bytes)
ahp_3.0_tile5.hak (205,480,593 bytes)
ahp_3.0_tile6.hak (184,385,413 bytes)
Alterations to Spell Functionality
Caster Level bugs should now be fixed. This means that:
- Pale Masters will now have their pale master class levels counted (at 1/2 the pale master level) when casting arcane spells.
- Paladins and Rangers will cast spells at the appropriate caster level (1/2 class level).
- Accomodations were made to scripts to allow an easy implementation of spellcasting prestige classes.
- Spell-like abilities will reliably use 1/2 HD + cha mod for save DCs
- Area of Effect spells (such as web or wall of fire) will no longer have their DCs change the next time the creator of those effects casts a spell.
- Area of Effect spells will no longer have their DCs change if the caster's spellcasting ability score changes between casting and the spell's duration ending.
- Lesser Planar Binding (good and evil only -- sorry, I didn't have lawful and chaotic outsiders of comprable CR handy when I was editing.)
- Magic Circle Against Good
- Magic Circle Against Evil
- Planar Binding (good and evil only -- sorry, I didn't have lawful and chaotic outsiders of comprable CR handy when I was editing.)
- Planar Ally (same deal as planar binding)
- Protection from Chaos
- Protection from Law
- Protection from Good
- Protection from Evil
The following spells have had extraneous function calls removed
(generally, they assigned caster level to a variable and did nothing with it)
- Ray of Frost
- Acid Splash
- Magic Circle Against Evil
- Magic Circle Against Good
- Darkness
Death Armor will now use the caster level of the spell caster to determine its damage, instead of the caster level of its target.
Protection from Alignment Spells no longer check the caster's alignment to determine if it's appropriate for a divine spellcaster. They, instead, check the caster's patron deity's alignment.
Evard's Black Tentacles now strikes with a more reasonable number of tentacles when a creature is in the area of effect. Future implementations will have a functionality more fitting the PnP spell.
Greater Magic Weapon and Magic vestment have had rounding issues corrected.
They thus work on 3.5 rules. Players and DMs alike should note that both spells were attempted to be moved to +1/4 caster levels some time ago, and such is the 3.5 rule, but this issue with rounding caused the spell to function between +1/3 CL and +1/4 CL
New Toys for DMs to Play With
DMs will notice a new conversation option on the DM wand that allows them to calibrate the spellcasting power of the target. This allows the DM to scale caster level and spell save DC from 1 - 40. However, some notes:
- [1.] A caster level implemented this way will alter every spell script called by the modified object. This will make wands, potions, staves, spells, wonderous items, etc. all function at that level of power.
[2.] The same universality of application applies to save DCs applied this way.
[3.] The Missile Storm spells (Isaac's Lesser Missile Storm, Isaac's Greater Missile Storm, and Fire Brand) do not seem to respond reliably to alterations in caster level, and they definately don't care what DC you tell the save to be at. I'm calling this a known bug, and it will persist until I find a better way to do those spells.
Builders can now do a few things to make spells behave the way you want them to.
If You'd Like An Item to Cast a Spell at a Specific Level
Tool the item normally, with a spellcasting property on it. When you tag the item, add onto the end _CL##, where ## is the caster level you would like the item to function at.
For example, if I had a silly alchemist who wanted to brew a cure light wounds potion at caster level 5, I would tool a normal potion of cure light wounds, and tag it:
013a_zel_crlght_CL5 (13a because I prefer Arabel over the rest of cormyr, Zel to sign my work, something descriptive, and then CL5 to make it work right.)
Similarly, if I wanted a wand of fireballs at caster level 10, for extra pwnage, I'd tool a normal wand of fireball and tag it:
013a_zel_frball_CL10 (first part is same as before - point being that the scripts recognize single digit and double digit numbers)
Note that this does not change our rules on minimum caster levels of spell cast functions. A level 2 spell must have at least caster level 3; a level 3 spell must have at least caster level 5; Level 4 needs caster level 7, and so on. Pricing and functionality should go accordingly.
If You'd Like An Item to Cast a Spell from a Specific Class
There are a few spells (Hold Person comes to mind) that can be cast by multiple classes at different levels. Most people would be inclined to say "So what?" but, by the rules, that should make a point or two of difference in the save DC of the spell. So, if you want to be sure that a spell comes from the right class, begin that item's tag with a three-letter abbreviation for the class that should have been casting it.
brd - Bard
clr - Cleric
drd - Druid
pal - Paladin
rgr - Ranger
wiz - Wizard
sor - Sorcerer
For example, on a wand of Hold Person
One tagged as clr013a_zel_hldprsn is a DC 12 spell, because it's a 2nd level cleric spell
One tagged as wiz013a_zel_hldprsn is a DC 13 spell, because it's a 3rd level wizard spell
Note that the capacity to do this is still subject to the rules. A divine scroll of hold person tagged with a wizard DC is an illegal item, as is a wizard scroll of hold person priced at less than caster level 5.
If you have a spell-casting trap that you would like to function at a specific level and/or DC
The ActionCastSpellAtObject and ActionCastSpellAtLocation spells are still your best friends. The new, fun, and exciting bit comes with your ability to set variables on that trigger to make it work the way you want it to.
Make an integer called caster_level on the trigger and set it to the caster level you'd like the trap to function at.
Make an integer called save_dc on the trigger and set it to the spell save DC you'd like the trap to function at.
Something That Didn't Quite Make It
My apologies go out to the lovers of Lolth and Lovaitar who were hoping on scourges with this update. While they were functioning excellently in game, they were causing instability and corruption in the toolset, so they'll be out until I can track that bug.