Upcoming patch notes (!)
Posted: Thu Apr 09, 2009 7:02 pm
These are exerpted from the 1.23 patch, which should be starting a long Beta testing phase sometime next week:
Some very exciting changes in that list, things we've been asking for and wanting since the early days of NWN1. Looking forward to playing with this Beta version of the patch!Multiplayer
* Fixed an issue that was causing servers to crash when a polymorphed character would attempt to transition.
* Players possessing their familiars will no longer lock up when transitioned by a DM
* The Missing File error message, when attempting to connect to a server, now reports the file that is missing.
NEW FEATURES
Multiplayer
* New server ini option: HideChallenge RatingInExamine
* New server ini option: HideEffect ListInExamine
* Files located in the hak directories will now load prior to character creation.
* Added support for Server to Server transitions through the function ActivatePortal() - Currently the parameter for seemless transition must be set to TRUE
* A new .ini option has been added to allow server admins (hosts) to toggle the auto-heal feature on or off for player login. With the feature turned off, when a player rejoins a server, they will be in the same condition as when they logged off (HP, Spells per day, etc.).
* A new Content Autodownloader system has been added to Neverwinter Nights 2 Multiplayer. It is designed to be used with the dedicated server.
* Changes have been made to the Dedicated Server, Game Client and Toolset to accommodate this new feature. Two documents, Autodownloader Server Admin Guide.pdf and Autodownloader Toolset User Guide.pdf, can be downloaded separately.
* Server admins now have the ability, as an option, to preempt the use of the override and custom UI folders on clients.
Scripting
* Added script function int GetVariableValueInt(object oObject, int nIndex); Get the value of a local int stored at the index provided. 0 if no var is present.
* Added script function string GetVariableValueString(object oObject, int nIndex); Get the value of a local string stored at the index provided. Empty string if no var is present there.
* Added script function float GetVariableValueFloat(object oObject, int nIndex); Get the value of a local float stored at the index provided. 0.00 if no var is present there.
* Added script function location GetVariableValueLocation(object oObject, int nIndex); Get the value of a local location stored at the index provided. Invalid location no var is present there.
* Added script function object GetVariableValueObject(object oObject, int nIndex); Get the value of a local object stored at the index provided. OBJECT_INVALID if no var is present there.
* Added script function int GetVariableCount(object oObject); Get the number of local variables stored on this object.
* Added script function void SetBaseAbilityScore(object oCreature, int nAbilityType, int nScore); EXPERIMENTAL! Note that any changes to skill rank will NOT be lost if the character is de-leveled. IMPORTANT: Most usages of this will cause characters to fail 'enforce legal character' restrictions.
* Added script function void SetBaseSkillRank(object oCreature, int nSkill, int nRank, int bTrackWithLevel = TRUE); EXPERIMENTAL! set bTrackWithLevel = TRUE if you wish for the skill change to be associated with the character's level. In other words, should the character lose the skill change if they lose their current level? IMPORTANT: Most usages of this will cause characters to fail 'enforce legal character' restrictions.
* Added script function void SendChatMessage(object oSender, object oReceiver, int nChannel, string sMessage, int bInvokeCallback = FALSE); This function is used to send a chat message, as if spoken by a PC or by the server. Except for 'CHAT_MODE_SERVER', oSender must be a PC or nothing will occur. oSpeaker - the PC who will speak, OBJECT_INVALID if channel is CHAT_MODE_SERVER. This must be a valid PC object for CHAT_MODE_PARTY to work. oReceiver - if nChannel is CHAT_MODE_TELL or CHAT_MODE_SERVER, then this must be the PC who will be receiving the message. nMode - CHAT_MODE const indicating the type of message to be sent. Only the CHAT_MODE_* values provided are accepted. sMessage - actual message text bInvokeCallback = the module's nChat script will be invoked to filter this message, if this is TRUE. WARNING: use extreme caution if setting bInvokeCallback to TRUE from within the OnChat handler itself -- this could lead to an infinite loop and hang your module!
* Added script function int GetIsLocationValid(location lLocation); Returns TRUE if the location is a valid, walkable location.
* Added script function int GetSurfaceMaterialsAtLocation(location lLocation); Returns a bitmask composed of 0 or more SM_* values.
* Added script function int GetSpellKnown(object oCreature, int nSpell); EXPERIMENTAL! Returns if the spell is known to this creature under any class or level.
* Added script function int GetItemBaseMaterialType(object oItem); returns the GMATERIAL_* const to get the base material type of the item specified. At this time, only the pre-defineid base material types work.
* Added script function void SetItemBaseMaterialType(object oItem, int nMaterialType); EXPERIMENTAL! Set the base material type of oItem to nmaterialType, which must be a valid GMATERIAL_* const value.
Toolset & Custom Content
* A new Content Autodownloader system has been added to Neverwinter Nights 2 Multiplayer. It is designed to be used with the dedicated server.
* Changes have been made to the Dedicated Server, Game Client and Toolset to accommodate this new feature. Two documents, Autodownloader Server Admin Guide.pdf and Autodownloader Toolset User Guide.pdf, can be downloaded separately.
Files located in the hak directories will now load prior to character creation.