Community Patch 1.72 Beta 4 Released
download
Yes I renamed it to 1.72. There is now too many content to be convinient to distribute as override or patch-hak. As of now, the ongoing patch development will be distributed in the patch (BIF) way and will have lowest priority.
From this reason, a signiicant issue raised - the older addons which were released as override will have higher priority and will overwrite the new stuff. To fix this, either clean your override completely and get all the stuff again (I know not an option for most of you), or proceed this way:
1. download the 1.71 addon v3 again and unpack it into separate folder
2. use some kind of comparing tool (I use Beyond Compare 2 if you don't have any). And compare the folder where you unpacked it with override. Delete every matches and mismatches. Or you can do this manualy...
Anyway, without this the new features from 1.72 might not work.
Also, note that the 1.72 beta is dependant on 1.71 as it contains only new and changed files (to keep distributing simple for me). It won't work without it and might cause crashing.
To install it, follow as in 1.71 manual installation. Simply unpack the archive into folder with NWN files (thus if you do this right it will want to overwrite bunch of files which you have to confirm). The 1.72 is international, works for all languages as there are no changes in dialog.tlk file yet.
To uninstall it, either run 1.69 critical rebuild, 1.71 installation, or manually delete/rename the xp2patch.key file and rename the xp2patch171.key which is included in the 1.72 beta distribution.
Neverwinter Nights Community Patch 1.72 beta 4 content:
Fixed broken stuff from previous Patch versions:
- Fixed switch for managing henchman inventory which worked reversely.
- Fixed bug with henchman's automatic trap handling.
- Added missing code for Wounding itemproperty handling (somehow didn't make it into 1.71 final due to the overlook).
- Chain lightning: removed duplicate oTarget != spell.Target condition code (no impact on functionality, only cleaner coding).
Revisited features from previous Patch versions:
- Harpy song won't be used by AI under silence effect anymore.
- Removed ground targetting from the Blinding Spittle special ability (Eye of Gruumsh) as it caused misfires. (2DA change in spells.2da)
- Wounding property will be functional now even when player is dying.
- ground item models improved featuring ground models for shields and increased appearance range to 255 (Gruftlord)
New fixes and features:
Tileset fixes:
- tde01_c13_01: one mesh didn't faded properly
- tde01_a01_02: fixed flickeringof the lava behind the bars
- tdm01_z01_01: shiny water fixed (image)
- tde01_o16_01: pathnode changed to fix pathfinding issues
- tdt01_j02_02: "up in the air" walkmesh fix
AI improvements:
- Improved barbarian rage handling, creature using barbarian rage will immediately run into combat and won't stand flatfooted any longer. (Note this is 1.71 feature which is allowed by default only for henchmans and creatures with variable 70_ALLOW_RAGE = 1, it won't have impact on creatures using the special ability rage version)
- Improved intentional trap triggering by a henchman. It's still not perfect due to the engine limitation, but its not more reliable then before.
- Daze spell handling - won't be cast on creatures with more than 5 HD.
- AI will be able (with 50% chance) to cast silence spell at location instead of at target, granting no saving throw roll.
- Fixed henchmen AI issue that could cancel ongoing spellcasting in middle, to cast exactly the same spell again.
- Further improved defensive casting AI behavior:
-- henchmens are allowed to use it as well now, even if their AI level is not HIGH
-- defensive casting won't be used if creature is in Expertise/Improved Expertise mode
-- AI will now use defensive casting mode even if the creature has less than 100% (but at least 25%) chance to actually succeed in the concentration check
-- chance to use defensive casting mode now depends on the chance to succeed in the check and a the number of enemies threatening in melee
Spells and spellabilities:
- Firestorm: fixed bug that prevented the spell to affect placeables and doors.
- Harpy song: added deafness failure.
- Wail of Banshee: number of targets pool was decreased even for targets that were skipped.
- Power Word: Kill : immunity check didn't correctly passed caster into consideration.
- Various AoE spells: line of sight wasn't checked, spell now doesn't affect creatures behind walls. Spells affected: basically all OC and SoU spells with area of effect.
- Dispell spells will no longer affect dead targets (basically only a visual change since it had no effect anyway)
- Added formians and hound archon into list of creatures immune to petrification.
- Removed ground targetting from the Chaos Slaad Spittle special ability as it caused misfires. (2DA change in spells.2da)
Other scripts:
- Module Switches globalized. The switches setup will now be transferred into every single player module the player will play. Note, the module settings has always priority - but player is able to override even module settings via PC Widget Tool.
- Newly, a skill and saving throws bonuses/penalties will be propertly stackes as well if the module switch to stack ability bonuses is active. (Note that a single saving throws itemproperty is capped to +12 thus you might not get what you expect. Examplet: wo rings +8fort => +12fort)
- Incorporated the "new engine polymorph" package. This has been substantially reworked, several bugs has been fixed, class locking disabled by default, added comments, code better formatted. This handles:
- disabled casting spells in polymorph that player normally doesn't have access to
- fixed polymorph temp hitpoints stacking (dependant on 2DA change in polymorph.2da)
- fixed losing all merged item properties when "repolymorph" happens
- fixed losing bonus spell slots from ability bonuses (but only up to the ability bonus that was merged into shape)
- merged ability decreases now ignores immunity to ability decrease from shape or from other merged items (without NWNX, that is)
- dying after unpolymorph
- and this features the OnPolymorph event inside NWScript without NWNX, the OnPolymorph event script is "70_mod_polymorph". (see here: http://forum.bioware...s-without-nwnx/ )
- Player given items are no longer lost when OC henchman level up. (But still be gone when moving between chapters!)
- Upon respawn, outgoing AOEs cast by the respawning PC will be dispelled. (At this moment only AOEs in the area of the respawning PC - should be enough in most situations.)
- Upon respawn, player will be stripped of every effect, not just negative ones.
- 70_inc_itemprop: added three new functions for builders:
- ItemPropertyBoomerang
- ItemPropertyWounding
- ItemPropertyItemCostParameter
- 70_inc_itemprop: added also three new constants, useful for checking itemproperty type:
- ITEM_PROPERTY_BOOMERANG
- ITEM_PROPERTY_ITEM_COST_PARAMETER
- ITEM_PROPERTY_WOUNDING
- in several spell scripts, the oTarget != spell.Caster sanity check position swapped from unification/efficiency reasons
NWNX_Patch and NWNCX_Patch plugins (version number v1.7):
- Enabled and implemented Boomerang itemproperty. Throwing weapon with this property will return to hands of wielder = never decreases quantity.
- Increased limit in SetItemCharges function to 100.
- Fixed losing spellslots after polymorph - instead, spells in the slots will be "consumed". Also, merged bonus spell slots won't be consumed at all (note this is dependant on new scripting engine for polymorph which marks which item was merged and which wasn't, without it this feature won't be functional.)
- Added a method of checking whether is NWNX/NWNCX_Patch currently in use, see code below:
//return TRUE if the NWNX_Patch or NWNCX_Patch is currently in use and functional - only works with v1.7 and higher
int NWNX_Patch_IsInUse()
{
SetLocalString(GetModule(),"NWNX!PATCH!VERIFY","0");
string sRetVal = GetLocalString(GetModule(),"NWNX!PATCH!VERIFY");
DeleteLocalString(GetModule(),"NWNX!PATCH!VERIFY");
return sRetVal == "1";
}
Now notes:
1. Keep in mind that this is beta version and might contain bugs, I cannot recommend to use it for PW because it wasn't thorougly tested yet. Mainly because nobody care to help with that task - I have tested it in the most common way and made sure everything work as intented, however I didn't checked every possibilities especially those that includes:
- what happens if this will be used without CPP
- what happens if script A will be overriden by module version and scriptB not and reversely
2. Everything in 1.72 beta is subject to revision and possible removal. Almost every feature can be removed if it is not desired.
3. Some of this stuff is now dependant on the NWNX and also reversely on the scripting Ive done. Thus some features might not work properly if NWNX or CPP scripts are not in use. For this reason I implemented the new function which allows builder to check the NWNX_Patch presence/absence and inform player about the features not working in his module. Unfortunately this doesn't work retrospectively. It will be available only for NWNX_Patch v1.7 and higher. The only way to handle this issue that I can think of, is to distribute NWNX_Patch separately (atm only the 1.2 version is downloadable separately because higher versions are still treated beta).
4. I apologize for the way how I did described the polymorph changes - but trust me this is very very messy and hard to describe, not many peoples even knows what exactly is broken there and how it should work. So before you ask a question, try it. Then ask for anything you want to know.
5. I have removed the new polymorph engine package from CPP downloads page. It contained several bugs, one quite serious (too many instruction error) and I heavily revisited the code anyway. The new code is now twice as complicated, but its better formatted and very deeply commented. At any way both the 70_inc_shifter and 70_inc_itemprops are not expected to changed by majority users. Usual builder will want only to use the function ApplyPolymorph() in his script and thats everything he needs to care about.
6. I hope you guys agree that we don't need a special switch to allow stack merged skills and merged saves and its fine under one switch. If thats the case, the switch will be renamed in the PC Tool Widget but its internal name (the one that builders uses) will remain the same to make it backwards compatible (which is always requirement).
7. I havent dealt with Continuous Light spell yet. Its not because you haven't persuaded me, but because I haven't decided how to deal with it yet. At this moment, the complete removal of that feature is what I see as a best option - I wonder if this could be removed also in 1.70/1.71 final or whats the preference on the handling this.
And last. I noticed that there is a little issue with the new ground models: I found the new ring to be too small and too undistinguished from the ground especially in forest tileset but basically everywhere with a bit darker ground. Compared to the previous one I personally see no advantage - but I keep it to you to decide. (Also I noticed that these models comes from Q, but I think Pstemarie won't mind)