Neverwinter Nights 2 Tweak Guide
[Page 7] Advanced Tweaking
Having looked at the multitude of In-Game Settings which allow you to configure Neverwinter Nights 2 to suit your needs, this section now turns our focus to the more advanced tweaking methods available to further customize and troubleshoot the game. It covers the game's initialization (.ini) files as well as the console commands you can use, but please read the descriptions and instructions very carefully before attempting these tweaks, as it's not a straightforward exercise and there are a few things which may confuse you and/or result in the tweaks not working you unless you pay close attention.
Ini Usage Instructions
An Initialization (.ini) file is a text file which holds all the various game settings. You can open and edit an .ini file with any text editing utility like Notepad or Wordpad. Of course before altering any .ini file you must first make a backup of it. Editing .ini files in Neverwinter Nights 2 is a little more complex than other games. This is because there are two main .ini files which hold your Neverwinter Nights 2 settings called nwn2.ini and nwn2player.ini, and they're found under your \Documents and Settings\[Username]\My Documents\Neverwinter Nights 2 directory. However there are also two files with exactly the same names and similar contents found under the main game directory (typically \Program Files\Atari\Neverwinter Nights 2). The way it works is this: the .ini files found under your Documents and Settings folder are specific to your profile and hold the correct values for all your current in-game options, whereas the .ini files found under the main game directory hold the default options and values. Both sets of files can be edited, and both will usually impact on the game. However importantly if the same setting exists in both sets of .ini files, the value for that setting in the .ini file under Documents and Settings overrides the one in the default .ini file in the main game directory.
Update: As of the 1.10 Patch, the .ini files have been renamed; for example nwn.ini is now nwn2.ini. This means you will lose all your previous .ini customizations, and must now reapply them to these new files. Some .ini options or sections have also been added, changed or removed. I recommend tweaking the new .ini files from scratch. You should not just rename your existing customized .ini files.
You can add settings found in the .ini files in the base game directory to the .ini files found under Documents and Settings, and they will generally work, however they must be added to the correct sub-section of the .ini file or they won't work. If the sub-section itself doesn't exist, this too can be added to the .ini file. This is the method I recommend, as it keeps all your changes in one .ini file, is likely to work the best, and means you don't mess with the default settings. So basically open and edit the .ini files found under \Documents and Settings\[Username]\My Documents\Neverwinter Nights 2, and where a setting described below doesn't exist, add it under the relevant section.
The major tweaks possible with the .ini files are covered below. Once again, some important things to note/recap:
NWN2.ini
[Sound Options]
DisableSound=0
If set to 1, this option disables all sound in the game. While this may improve performance it's obviously not recommended. The main use would be for troubleshooting, to determine if crashes or other issues are sound-related for example.
Number 2D Voices=16
Number 3D Voices=16
These settings determine the number of audio channels to allocate to 2D (non-positional) and 3D (positional/environmental) sounds. The default is 16, though most sound cards can support 32. You can reduce this value to improve performance or reduce audio glitching, or conversely you can raise the value to increase the number of sounds possible. Remember that more audio channels equals more processing power required, especially for 3D sounds, so it can affect performance particularly with lots of positional audio (e.g. in heavy combat).
Speaker Type=0
This setting controls the speaker configuration used for sound playback in the game. The default option of 0 is for 2/2.1 speakers; a value of 1 is Surround, 2 is for Headphones, 3 for 4.1 speakers, 4 for 5.1 speakers, and 5 for 7.1 speakers. Set to match your speaker system. If in doubt, leave it at the default of 0.
MaxCachedSounds=100
This setting should determine how many sounds are held in the audio cache in memory. The higher the value, the more sounds are held and hence the less loading is required to play back a sound. Raising this value to 200 or even higher can help reduce stuttering in the game.
[Graphics Options]
ATIWorkAroundForPointLightShadows=1
This setting is clearly related to issues on ATI cards with Point Light shadows. Some Nvidia users have reported an improvement in performance by setting this to =0, and it definitely can't hurt to try this if you use an Nvidia graphics card.
FarClipPlaneModifier=1.000000
This setting used to be called FarClipPlaneOverride, and is controlled by the renamed Horizon Distance option in the in-game settings. It should generally be adjusted there, though it should be noted that this since this setting has changed, you cannot set the variable below the 0.250000 minimum or above the 1.00000 maximum here, as it will have no impact.
ScreenshotFormat=jpg
Determines the format for screenshots taken in the game using the screenshot key (Default is PRINT SCREEN) saved under your \Documents and Settings\[Username]\My Documents\Neverwinter Nights 2 directory. The normal and recommended format is JPG, but you can assign a value of BMP or PNG to save in these formats instead, if you prefer higher quality screenshots, though note there may be visual glitches in other formats.
Highlight Intensity=0.250000
If you have the Cursor Highlight option enabled, then this setting controls the intensity of the highlighting applied to selected objects/characters. The higher the value, the more brightly highlighted objects/characters will shine, the closer the value to 0.0, the more subtle the highlighting.
SEFCacheTimeout=500
SEFCacheSize=20
The SEF Cache relates to special effects caching (such as spell effects). The cache holds these effects in memory so they don't need to be reloaded constantly, but the cache timeout value unloads them after a period of time to prevent memory usage for effects no longer needed. If you have 1GB or more of system RAM, you may want to raise these values to see if it reduces loading pauses/stutter. The SEFCacheSize value apparently has a useful upper limit of 50 (MB), and the CacheTimeout value is likely in seconds, but if after a while you notice no difference in raising these set them back to their default.
HiRezShadowMapSize=4096
LowRezShadowMapSize=4096
CharacterAndPointLightShadowMapSize=4096
These variables correspond with the in-game Shadow Quality settings recently added as of the 1.10 patch. The HiRezShadowMapSize variable relates to the Environment Shadow Quality (Near) setting; the LowRezShadowMapSize variable relates to the Environment Shadow Quality (Far) setting; and the CharacterAndPointLightShadowMapSize relates to Character Shadow Quality. The values for these variables are the shadow map resolutions, with valid values of 1024, 2048, 4096 and 8192 possible.
[Display Options]
Disable Intro Movies=1
Inserting this option and setting it =1 will disable all the introductory movies which play whenever Neverwinter Nights 2 starts up. See page 9 of this guide for more details.
Width=1280
Height=1024
While you can set the screen resolution in the in-game settings, these settings allow you to attempt to specify a custom resolution by entering the resolution width and height.
RefreshRate=60
If you want to specify a custom refresh rate to suit your monitor, change this value to one which is supported by your monitor at the chosen resolution. On the other hand if the game is crashing at startup, set this back to its default of 60.
If Object Fade is enabled (See In-Game Settings section), the following options will impact on precisely how it works:
ObjectFade Percentage=.15
This option determines the transparency of the objects which become faded. Ranging from .01 for totally invisible, through to .99 for completely solid (minus shadows), you can set the level of transparency here (default is .15). Note that a value of .00 simply results in the object flashing, and this option also doesn't seem to reduce the FPS hit of having Object Fade on, even if set to .01.
ObjectFade Start=0.0
This option determines the range at which object fading begins. The higher the value, the further away an object must be before it is affected by object fade.
ObjectFade Length=0.5
This option determines the length of time before object fade kicks in. The higher the value, the longer it will take for an affected object to begin fading.
NWN2Player.ini
[Game Options]
Enable FloatyTextFeedback=1
If set to =0, this option disables all the bits of 'floating text' which appear on the screen to provide information about things like the amount of damage done to a monster from a successful hit. Disabling this option can increase realism and immersion, however it requires that you then keep a close eye on the text chat area.
[Profile]
Player Name=name
Password=password
It's important to note that your online player account name and password are stored here in plain text. This means that you should never copy and paste or email, or share via P2P the contents of this .ini file with anyone else.
That covers all the important .ini file settings which I have been able to ascertain and document here. If you're aware of any settings not covered above but which have a significant use or impact, please Email Me the details so I can update this list. If you don't see a setting above, keep in mind that most of the settings in the .ini files relate to options which can be fully adjusted using the in-game settings. Furthermore several commands with tempting names are not functional at all, or have no discernable impact.
The next page looks at the in-game Console Commands for Neverwinter Nights 2.