News Updates

News
New Patch Arrives for Neverwinter Nights: Enhanced Edition!

New Patch Arrives for Neverwinter Nights: Enhanced Edition!

December 14 2020 in

Greetings Adventurers,

We just launched Patch 8193.20 for Neverwinter Nights: Enhanced Edition on Steam, GOG and Beamdog.com! The update adds scores of features & fixes to the core campaigns, premium modules and toolsets. Today’s patch also addresses the voiceover issue for non-english localizations.

Huge thanks to our amazing community for helping to test out the beta versions of this patch— we couldn’t have done it without you!

Check out the Patch Highlights & Full Details below!

Patch Highlights

  • Non-English Voiceover: We fixed the issue causing english voiceover to play for non-english localizations
  • NPC Movement: We improved the movement/navigation of Non-Player Characters (NPCs) and Creatures
  • Multiplayer: We fixed a server-side issue and increased the module description size so players get the full details
  • Dozens of Fixes: We’ve added dozens of fixes to improve the overall experience in adventures, toolsets and the Dungeon Master Client
  • New Scripting Functionality: See details below!

Check out the full patch notes below!

Patch Notes

NPC Movement

  • Improved navigation of NPCs and Creatures
  • Creatures now move in a logical direction when they are bumped or pushed

Performance Improvements

  • Optimized “Hardness” (placeable damage resistance) in the game so it no longer imposes heavy impact on server loads

Fixes

  • Non-English localizations now use correct voiceovers
  • Fixed the multiplayer UI not saving the network port configuration
  • Increased module description size to avoid cutting off text in the multiplayer browser
  • Fixed an issue causing invalid skill point messages and preventing level ups
  • Fixed a rare crash when loading custom content models
  • Fixed a crash occurring in character selection when existing character files have an invalid player class or race
  • Added a fix to make sure NPCs, like Deekin, level up correctly
  • Fixed issues in the Premium Module Darkness over Daggerford
    • Fixed an issue with the Daggerford Wagon
    • Fixed minor issues in the Great Cheese Caper quest

Graphics

  • Improved the appearance of armor and metals
  • Shadows now fade more smoothly in relation to distance, height and angles.
  • The Dynamic Contrast Shader now has adjustable settings in the options menu
  • The Depth of Field Shader now has adjustable settings in the options menu
  • Lights now fade in and out out more smoothly
  • Texture animations now animate consistently
  • Fixed the water shader showing seams
  • Water now always uses the env map
  • Grass now fades in smoothly rather than appearing abruptly
  • Skyfade fog coloured model below the horizon now covers below area, so missing meshes and keyholing show a black backdrop
  • Renderer Improvements
    • Optimised renderer GL buffer handling
    • Fixed clear colour erroneously reverting to black when loading into an area if a game object was received at exactly the wrong time
    • Fixed some erratic keyholing behaviour in certain situations
    • Reduced the number of shader reloads
    • Fixed dropped items floating too far over the ground
    • Fixed weather not correctly cleaning up after lightning events, sometimes resulting in heavy FPS drops
    • Fixed skin meshes (cloaks, robes) occasionally being warped or dislocated when animating
    • Normal maps are now read as two-channel textures (three are still supported, but this was needed for BC5)
    • Water reflections now ignore subsurface alpha
    • Env map tex coords are now always calculated per-fragment in HQ mode
    • Specular lighting now ignores material transparency
    • Refined light occlusion calculations
    • Shared material uniform data is now reset for each draw call. This fixes issues where a material incorrectly adopts parameters from the previously-rendered, if the current material has none.

NWSync Optimizations

  • Dedicated servers can now load their module data from a specially prepared NWSync repository, instead of having to have a copy of the module and hak files. (This mainly benefits big servers that have a CI/CD pipeline set up.)
    • Added argument -moduleurl, from which the module data will be sourced
    • Added a new optional argument -modulehash; which is considered to be `latest` if omitted
    • Generate the server/module repository with --with-module
    • You can reuse the public repository to save on duplication/disk space; or use a separate/private one. If you reuse the same repository and do not want to leak the module data, turn off http content listing and write the data with --no-latest.
    • Data is stored in SERVERHOME/nwsync (this works the same as on the client). It will auto-prune old data if the group_id matches. The rest is left up to you.

Content Updates

  • Added half-dragon tail to half-dragon blueprint
  • Added missing texture for worldmap placeables
  • Rendered new icons for the gem shields
  • Fixed Tanarukk Blueprints, Factions & Script
  • Fixed some tile models resulting in Access Violation in the toolset
  • Set all weapons for Ambient and Diffuse of 100% (1 1 1), in alignment with the new graphics & lighting
  • Fixes to Shadow, Mesh and Bounding Boxes
  • Added in several missing art models and portraits, along with toolset blueprints (DoD Flags, Signs, & Duke Painting; Tyrants Flowering Plants & Wavy Water 1x1, Invisible Ground 4x4, Worldmaps - Floor and Wall-Mounted)
  • Rebuilt placeable walkmeshes on several larger models to be 3D instead of a flat plane
  • Low Ambient Values raised to 1 1 1 (to allow other forms of tinting)
  • Shields/Cloaks/Robes: Compiled shield models and turned Ambient and Diffuse values to 1.0 1.0 1.0, so area lighting and tinting can have fullest effect as well as clothing matched-up from race-to-race
  • Skybox, Black: Added missing model
  • XP3 placeables: Many fixes for useability, shadows, z-fighting, walkmesh, and appearance
  • XP3 Gem Golems: Adjusted appearance for proper translucency & shine (creatures/weapons/shields)
  • Daggerford & Tyrants of the Moonsea Placeables: Reworked placeable Use nodes to strict 13-character length requirement, cleaned up PWK walkmesh settings
  • Glass and Metal textures: Fixed TXI settings, added an alpha channel to maps for specularity and custom environment mapping (new textures)
  • Candles (Non-Ambient): Added a dynamic light with shadowing (Disclaimer: nearby props must not be set to Static in order to cast shadows, but work much better than Ambient lights)
  • Elven Lanterns: Fixed candle flame not showing through panes and added ambient/dynamic versions, as with candles
  • Kochrachon: Fixed deformed arms & a floating "thumb"
  • Appearance.2DA: Curst Swordsman: Removed undesired environmental mapping
  • Kobolds/Goblins/Orcs/Golems/Giants: Added default environmental mapping
  • Orcus (Blueprint): Added missing creature hide and Wand to inventory
  • Gem Greatswords, Warhammers, Shields and Placeable Gemstones: Fixed UV's and self-illumination settings
  • Doortypes.2DA: Added proper blueprint ref's for the two new elven doors (TTF02)
  • Loadscreens.2DA: Added default tileset entries for DoD and Tyrants loadscreens
  • Placeables.2DA: Fixed various settings on placeable entries
  • PlaceablePalStd.ITP: Added new entries for missing blueprints, removed a couple bogus entries
  • Portraits.2DA: Added missing entries, for missing blueprints
  • Tailmodel.2DA: Changed entry 5000 from "karandas" to "Half-Dragon"
  • PLC_C10 (Placeable Door): Fixed a bad set of Use Nodes (“secret door” fix)
  • TNO01: Fixed a SQRT Domain error in TNO01 Boat (at last!)
  • TNO01: Fixed a crash in TNO01 Ship1 and Market Stall, Long: caused by too many mesh parts
  • TNO01: Fixed chimney & window animations in Inn, Coach 2x2
  • TTF02 and TTS02 Doors: Fixed DWK naming and settings
  • TTF02 Water: Fixed bad transparency settings in stream tiles (as seen through tree branches)
  • TSS13 (Seaships): Added edge tiles TSS13_edge.2DA
  • TSS13_C07_04: Fixed a bad water reference
  • TCN_UDoor_02: Fixed a shifted walkmesh and transition mesh (you could transition the door w/o opening)
  • TDM01_O11_01: Replaced a missing face in the doorway mesh
  • TCN01_A06_01: Fixed some meshes which had shifted from bas X-Forms
  • TRM02.SET: Added a missing crosser entry
  • TCM02.SET: Fixed typos in a couple tile names
  • TCM02: Replaced small/misaligned water meshes on several tiles
  • IIT_Torch02: Adjusted smoke to be much more minimal than a standard torch
  • TTF02_I07_02: Removed a bunch of extra/ugly tree foliage meshes
  • TTF02_T13-14_01: Set meshes from Render 0 to 1, fixed UV's on tent flap, added bottom mesh to lean-to
  • TWC03_C53_01, TWC03_C54_06: Fixed broken fireplace animations, added a woodpile for fuel
  • TDE01, TNI02, and TSW01: Restored the "Lightning Tiles" in TDE01, TNI02, and TSW01, added animloops for shutdown where needed
  • Toolset:
    • Fixed some shadows not rendering properly
    • Fixed VFX emitters not rendering properly

Other Updates

  • Fixed minimap data being assigned incorrectly when deleting an area via VM::DestroyArea
  • Fixed cloaks and robes not inheriting visual transform animation speed
  • Fixed items losing the possessor reference when failing to merge a stack out of a container, resulting in dead/unusable items and eventually a crash
  • “Hide Second Story Tiles” setting is now disabled by default
  • Linux binaries are now built against Debian Stretch (9), fixing requirements to Debian 9, Ubuntu 18.04 LTS, or newer. This should take care of the glibc issues some folks were seeing, as well as the stray libsndio linkage
  • Danglymesh is now properly frozen when the game is paused
  • Model loader: Set mesh ambient and diffuse to vec3(1.0) by default
  • NWSync command line args now verify the URL and Hash formats
  • Fixed an issue where the first texture in a material was replaced with the NULL texture after an area change
  • Fixed classstat abilities modifiers not being considered for feat requirements on levelup, when the abilities are gained on the very same level
  • Fixed class stat ability modifiers sometimes not updating after a levelup (for example, for STR damage bonus)
  • Fixed blank value in SkillPointModifierAbility in racialtypes.2da failing ELC
  • Debug UI: Fixed a client crash in the NWScript Widget when inputting a invalid object ID
  • nwscript.nss: Added missing tileset resref constants
  • Config: The default value for 2D/3D bias is now 1.0 which should fix sound effect quietness (you need to reset it manually in Options if you want to try this)
  • Scripting:
    • Fixed material parameters not being updated for single float changes
    • Cutscenes: Fixed Hide Second Story Tiles not being saved/restored correctly
    • Cutscenes: Fixed camera being reset with incorrect values despite VM::StoreCameraFacing not having been called
    • ActivatePortal: Fixed some cases where NAT punchthrough or relaying failed to work
    • Fixed a crash when calling area management functions twice (e.g. CopyArea(CopyArea()))
    • EnterTargetingMode() now also triggers when the user cancels out, with the target area or object returned as INVALID_OBJECT
    • Material filenames and params now allow underscore

New Scripting Functionality

// Sets the current hitpoints of oObject.

// * You cannot destroy or revive objects or creatures with this function.

// * For currently dying PCs, you can only set hitpoints in the range of -9 to 0.

// * All other objects need to be alive and the range is clamped to 1 and max hitpoints.

// * This is not considered damage (or healing). It circumvents all combat logic, including damage resistance and reduction.

// * This is not considered a friendly or hostile combat action. It will not affect factions, nor will it trigger script events.

// * This will not advise player parties in the combat log.

void SetCurrentHitPoints(object oObject, int nHitPoints);