View Single Post
Old 07-17-09, 07:35 PM   #647
nekrosoft13
I'm Geralt
 
Join Date: Oct 2005
Location: Chicagoland, once a year in Poland
Posts: 24,365
Default Re: Neverwinter Nights II Feedback Thread

New Features

General
• New client command line option: -home. Allows user to specify an alternative location to "My Documents\Neverwinter Nights 2"
• New INI file option "Pause On Lose Focus". A setting of 1 will cause the game to pause when losing focus. A setting of 0 will not pause the game when it loses focus.
Multiplayer
• New server ini option: HideChallengeRatingInExamine
• New server ini option: HideEffectListInExamine
• Files located in the C:\Users\<username>\Documents\Neverwinter Nights 2\hak (Vista) and in the C:\Documents and Settings\<username>\My Documents\Neverwinter Nights 2\hak directories will now load prior to character creation.
• Added support for Server to Server transitions through the function ActivatePortal() - Currently the parameter for seamless 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 folder on clients
• New server command line option: -home. Allows user to specify an alternative location to "My Documents\Neverwinter Nights 2"
• New server command line option: -cs 0/1 <- turn off/on downloader (defaults to no downloader behavior)
• New server command line option: -du 0/1 <- turn off/on custom UI on the client (defaults to allow custom UI)
• New server command line option: -do 0/1 <- turn off/on override folders on the client (defaults to allow override)
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.Added instant feat support. New column "Instant" in feats.2da
• GetClassLevelByPosition and related script functions will now recognize custom classes. (This also applies for anything internally that performs calculations based on class level and in particular, should correct custom classes not being used in spell caster level calculations).
• New script function: void SetGlobalGUIVariable(object oPlayer, int nVarIndex, string sVarValue); Sets global GUI variable, available to all UI screens as global:x. globals can be used in most places that locals can be used. This can also be used to work with the new UI callback UIRadialNode_OnInit_TestGlobalVar, which allows you to display/hide radial nodes based on global variable values. This value is available to all screens. oPlayer - player whose GUI will have the variable. nVarIndex - variable index, from 100 - 400 (values outside of this range will be ignored). sVarValue - the value to set.
• Added support for reading texture and terrain 2da files from hak packs.
• Added script function int FindSubString(string sString, string sSubString, int nStart = 0); // modified to add nStart
• Added script function void SetSpellKnown(object oCreature, int nClassPosition, int nSpell, int bKnown = TRUE, int bTrackWithLevel = TRUE);
• Added script function object GetLimboCreatureCount(object oCreature);
• Added script function object GetCreatureInLimbo(int nTh);
• Added script function void SendCreatureToLimbo(object oCreature);
• Added script function void SetSkillPointsRemaining(object oPC, int nPoints);
• Added script function int GetSkillPointsRemaining(object oPC);
• Added script function int GetSpellSchool(object oPC, int nClassSeq);
• Added script function void SetGender(object oCreature, int nGender);
• Added script function void SetTag(object oObject, string sNewTag);
• Added script function int GetArmorRulesType(object oItem);
• Added script function void SetArmorRulesType(object oItem, int nType);
• Added script function void SetItemIcon(object oItem, int nIcon);
• Added script function object GetObjectByTagAndType(string sTag, int nObjectType, int nTh);
• The following new script functions work together as a group:
o void AddScriptParameterInt(int nParam);
o void AddScriptParameterString(string sParam);
o void AddScriptParameterFloat(float fParam);
o void AddScriptParameterObject(object oParam);
o int ExecuteScriptEnhanced(string sScript, object oTarget);
o int ClearScriptParams();

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 C:\Users\<username>\Documents\Neverwinter Nights 2\hak (Vista) or in the C:\Documents and Settings\<username>\My Documents\Neverwinter Nights 2\hak (WinXP) directories will now load prior to character creation.
User Interface
• UIObject_Misc_ExecuteServerScript no longer truncates data that contains apostrophes
• There is now a Close option on transition doors for players. (Used to be that if a door was a transition, they could only use it - not close it.)
• New UI callback: UIRadialNode_OnInit_TestGlobalVar(global-index,test-type,rvalue, action)
o This UI callback allows modders to control when menu nodes are hidden or displayed, based on the results of comparing a global UI variable against a specified value. All tests are performed as int values if both values are valid ints; otherwise they're perform as case-insensitive string comparisons.
o Parameters are as follows
 global-index: global var index in format of global:x
 test-type: test to perform (all tests are done as as int if both values are int, else as case-insensitive strings)
 EQ = two values are equal
 NEQ = two values are not equal
 LT = global value is less than the comparision value
 LTE = global value is less than or equal to the comparison value
 GT = global value is greater than the comparison value
 GTE = global value is greater than or equal to the comparison value
 rvalue: a constant value that you are comparing the global variable to.
 action: SHOW or HIDE.
 The menu node will be displayed or hidden based on the value given:
 if the expression evaluates true and the action is SHOW, then the node will be shown
 if the expression evaluates false and the action is SHOW, then the node will be hidden
 if the expression evaluates true and the action is HIDE, then the node will be hidden
 if the expression evaluates false and the action is HIDE, then the node will be shown


2DA File Changes

Neverwinter Nights 2
• Added Henchspells.2da
• Spells.2da - Various spell changes
• Feat.2da - added an "Instant" column.
Neverwinter Nights 2: Mask of the Betrayer
• Added Henchspells.2da
• Spells.2da - Various spell changes
• Feat.2da - added an "Instant" column.
Neverwinter Nights 2: Storm of Zehir
• Spells.2da - Various spell changes
• Feat.2da - added an "Instant" column.
__________________
Windows 8 the next big failure, right after Windows ME
nekrosoft13 is offline   Reply With Quote