TUXDB - LINUX GAMING AGGREGATE
by NuSuey
NEWSFEED
▪️ GAMES
▪️ STEAM DECK ▪️ DEALS ▪️ CROWDFUNDING ▪️ COMMUNITY
tuxdb.com logo
Support tuxDB on Patreon
Currently supported by 8 awesome people!

🌟 Special thanks to our amazing supporters:


✨ $10 Tier: [Geeks Love Detail]
🌈 $5 Tier: [Benedikt][David Martínez Martí]

Steam ImageSteam ImageSteam ImageSteam ImageSteam ImageSteam Image
Development Build 8193.21

Fair greetings, one and all! This development build is a huge one. As usual, you can use it to play on .20.1 servers (current stable release); and wed like to encourage you to do so and report any issues you find with us! Thank you.

Executive overview


  • A new game launcher UI that also includes a curated content repository, free for everyone (see below)
  • Full TTF font support throughout the game, for clearer and more adaptive text rendering
  • Fractional/floating-point UI scaling
  • Better UI skinning
  • Game/renderer performance improvements
  • Renderer: soft particle support, blending with fog
  • Water: Screen-space refractions and reflections
  • Pathfinding improvements
  • Visual Object Transform Lerping (smooth transitions)
  • New advanced script commands
  • Three new portraits sourced from the community portrait contest
  • Hundreds of fixes and smaller features

Curated Content



This patch ships with a new (singleplayer) game launcher UI. It showcases all campaigns and premiums in a nicer way, with header images and descriptions; access to screenshots, and more. There is a split view for Premium and user modules, as well as filtering and search facilities. We also bring in a curated content repository, hosted by Beamdog, that gives all players access to selected community content. To start with, we are honoured to offer both the full Aielund Saga by Savant, and the Auren Saga (Almraiven/Shadewood) by Fester Pot. All you need to do to play them is click Download and wait a bit. As part of this development patch release cycle, we will be reaching out to others that have authored widely popular modules on the Neverwinter Vault and elsewhere. The UI also allows adding third party content repositories, which can be hosted by anyone without going through the Beamdog curation process. This new UI, and the curated content repository bundled with the game now, is a work in progress. We will be making changes and improvements in the future.

TTF and UI scaling


The game now supports TTF fonts, and decimal UI scaling (e.g. 1.3x, not just 1x, 2x).

Water improvements



Visual Object Transform lerping


Visual effects applied via scripting can now lerp. This means that, for example, a creature size change can appear smoothly over a configured time, and not instant.
All existing visual transforms can be interpolated this way. To accommodate this, the script API has been amended: float SetObjectVisualTransform(object oObject, int nTransform, float fValue, int nLerpType = OBJECT_VISUAL_TRANSFORM_LERP_NONE, float fLerpDuration = 0.0, int bPauseWithGame = TRUE); int OBJECT_VISUAL_TRANSFORM_LERP_NONE = 0; // 1 int OBJECT_VISUAL_TRANSFORM_LERP_LINEAR = 1; // x int OBJECT_VISUAL_TRANSFORM_LERP_SMOOTHSTEP = 2; // x * x * (3 - 2 * x) int OBJECT_VISUAL_TRANSFORM_LERP_INVERSE_SMOOTHSTEP = 3; // 0.5 - sin(asin(1.0 - 2.0 * x) / 3.0) int OBJECT_VISUAL_TRANSFORM_LERP_EASE_IN = 4; // (1 - cosf(x * M_PI * 0.5)) int OBJECT_VISUAL_TRANSFORM_LERP_EASE_OUT = 5; // sinf(x * M_PI * 0.5) int OBJECT_VISUAL_TRANSFORM_LERP_QUADRATIC = 6; // x * x int OBJECT_VISUAL_TRANSFORM_LERP_SMOOTHERSTEP = 7; // (x * x * x * (x * (6.0 * x - 15.0) + 10.0))

New script commands


// Returns the currently executing event (EVENT_SCRIPT_*) or 0 if not determinable. // Note: Will return 0 in DelayCommand/AssignCommand. ExecuteScript(Chunk) will inherit their event ID from their parent event. int GetCurrentlyRunningEvent(); // Get the integer parameter of eEffect at nIndex. // * nIndex bounds: 0 >= nIndex < 8. // * Some experimentation will be needed to find the right index for the value you wish to determine. // Returns: the value or 0 on error/when not set. int GetEffectInteger(effect eEffect, int nIndex); // Get the float parameter of eEffect at nIndex. // * nIndex bounds: 0 >= nIndex < 4. // * Some experimentation will be needed to find the right index for the value you wish to determine. // Returns: the value or 0.0f on error/when not set. float GetEffectFloat(effect eEffect, int nIndex); // Get the string parameter of eEffect at nIndex. // * nIndex bounds: 0 >= nIndex < 6. // * Some experimentation will be needed to find the right index for the value you wish to determine. // Returns: the value or "" on error/when not set. string GetEffectString(effect eEffect, int nIndex); // Get the object parameter of eEffect at nIndex. // * nIndex bounds: 0 >= nIndex < 4. // * Some experimentation will be needed to find the right index for the value you wish to determine. // Returns: the value or OBJECT_INVALID on error/when not set. object GetEffectObject(effect eEffect, int nIndex); // Get the vector parameter of eEffect at nIndex. // * nIndex bounds: 0 >= nIndex < 2. // * Some experimentation will be needed to find the right index for the value you wish to determine. // Returns: the value or {0.0f, 0.0f, 0.0f} on error/when not set. vector GetEffectVector(effect eEffect, int nIndex); // Check if nBaseItemType fits in oTarget's inventory. // Note: Does not check inside any container items possessed by oTarget. // * nBaseItemType: a BASE_ITEM_* constant. // * oTarget: a valid creature, placeable or item. // Returns: TRUE if the baseitem type fits, FALSE if not or on error. int GetBaseItemFitsInInventory(int nBaseItemType, object oTarget); // Get oObject's local cassowary variable reference sVarName // * Return value on error: empty solver // * NB: cassowary types are references, same as objects. // Unlike scalars such as int and string, solver references share the same data. // Modifications made to one reference are reflected on others. cassowary GetLocalCassowary(object oObject, string sVarName); // Set a reference to the given solver on oObject. // * NB: cassowary types are references, same as objects. // Unlike scalars such as int and string, solver references share the same data. // Modifications made to one reference are reflected on others. void SetLocalCassowary(object oObject, string sVarName, cassowary cSolver); // Delete local solver reference. // * NB: cassowary types are references, same as objects. // Unlike scalars such as int and string, solver references share the same data. // Modifications made to one reference are reflected on others. void DeleteLocalCassowary(object oObject, string sVarName); // Clear out this solver, removing all state, constraints and suggestions. // This is provided as a convenience if you wish to reuse a cassowary variable. // It is not necessary to call this for solvers you simply want to let go out of scope. void CassowaryReset(cassowary cSolver); // Add a constraint to the system. // * The constraint needs to be a valid comparison equation, one of: >=, ==, <=. // * This implementation is a linear constraint solver. // * You cannot multiply or divide variables and expressions with each other. // Doing so will result in a error when attempting to add the constraint. // (You can, of course, multiply or divide by constants). // * fStrength must be >= CASSOWARY_STRENGTH_WEAK && <= CASSOWARY_STRENGTH_REQUIRED. // * Any referenced variables can be retrieved with CassowaryGetValue(). // * Returns "" on success, or the parser/constraint system error message. string CassowaryConstrain(cassowary cSolver, string sConstraint, float fStrength = CASSOWARY_STRENGTH_REQUIRED); // Suggest a value to the solver. // * Edit variables are soft constraints and exist as an optimisation for complex systems. // You can do the same with Constrain("v == 5", CASSOWARY_STRENGTH_xxx); but edit variables // allow you to suggest values without having to rebuild the solver. // * fStrength must be >= CASSOWARY_STRENGTH_WEAK && < CASSOWARY_STRENGTH_REQUIRED // Suggested values cannot be required, as suggesting a value must not invalidate the solver. void CassowarySuggestValue(cassowary cSolver, string sVarName, float fValue, float fStrength = CASSOWARY_STRENGTH_STRONG); // Get the value for the given variable, or 0.0 on error. float CassowaryGetValue(cassowary cSolver, string sVarName); // Gets a printable debug state of the given solver, which may help you debug // complex systems. string CassowaryDebug(cassowary cSolver); // Overrides a given strref to always return sValue instead of what is in the TLK file. // Setting sValue to "" will delete the override void SetTlkOverride(int nStrRef, string sValue=""); // Constructs a custom itemproperty given all the parameters explicitly. // This function can be used in place of all the other ItemPropertyXxx constructors // Use GetItemProperty{Type,SubType,CostTableValue,Param1Value} to see the values for a given itemproperty. itemproperty ItemPropertyCustom(int nType, int nSubType=-1, int nCostTableValue=-1, int nParam1Value=-1);

Pathfinding


  • Makes PC pathfinding no longer use simplified pathfinding at certain distances. Given that PC pathfinding is given more time, it is generally well able to handle this and benefit from it.
  • Fixed inaccurate calculation of grid step tolerance when using grid pathfinding.
  • Fixed potential endless loops with ActionMoveAwayFromLocation.
  • Fixed inconsistencies between when to use Z when comparing distances, which would result in certain actions failing when they shouldn't.
  • Adds lacking safety checks which was causing pathfinding to floor performance if trying to interact with a door that was unreachable.
  • Server settings: Removed experimental enhanced pathfinding toggle (now always on).
  • Fixed some minor errors related to collision resulting in imprecisions.

Other Features


  • GUI/NUI: Implemented floating point UI scaling.
  • GUI/NUI: Implemented TTF font rendering.
  • NUI: Implemented 9-slice gui skinning.
  • NUI: Now using a cassowary constraint solver system to layout widgets.
  • Floating damage numbers are now colourised based on the damage type taken.
  • NUI: Redesigned the Options UI.
  • NUI: Redesigned the NWSync Storage Management UI. (Now called Storage in the menu, and also accessible via the new game launcher).
  • NUI: Fixed up some other UI panels to layout properly even when scaled.
  • NUI: Added a panel to show Open Source Licences to config UI.
  • NUI: Made sound effects more immersive/in line with base UI usage (different click noises depending on widget).
  • GUI: Added a windowed/fullscreen/borderless dropdown to the Config UI and fixed the mode sometimes not initialising correctly.
  • Async loading of files and images via http streaming. (Backend system work)
  • ResMan: Movies can now be stored and played from override, ERF (hak, mod) and NWSync.
  • SQLite: Added a configurable busy timeout, so that just externally running something on a campaign/nwsync database doesnt immediately abort queries running in the game. (3s default)
  • SQLite: Added builtin functions for NWCompressedBuf compression, base64 de/encode, and hashing. See SQLITE_Readme.md in data.
  • HTTP: Added a disk caching service to avoid repeated requests; added alias CACHE: (USERDIR/cache) by default. Configurable in settings, default max size is 100MB.
  • Base: Game windowed size is now 1024x768 by default, because some UI just got too big.
  • Base: TLK files now have a local cache, improving repeated lookup performance.
  • Base: API cleanup for NWNX support
  • Server: Removed some superfluous service updates (very minor perf).
  • Renderer: Tweaks to palettes for PLTs to prevent metallic looks. Tweaks to PLTs for armour to prevent alpha dithering: https://nwn.beamdog.net/web/compare/custom_mat/
  • Renderer: Added unique shader for particles; now with soft particle rendering; enable particle blending with fog: https://nwn.beamdog.net/web/compare/softparticles/, https://nwn.beamdog.net/web/compare/particles_fog/
  • Renderer: Improved colour overflow for transparent objects: https://nwn.beamdog.net/web/compare/alpha_overflow/
  • Renderer: Implemented proper OpenGL buffer orphaning.
  • Renderer: Unified and simplified the shader setup, allowing the default vs/fslit_nm/sm shaders to be used for all standard PBR setups.
  • Renderer: Made displacement offset a uniform that can be passed from materials to set a base level. To use it, add parameter float DisplacementOffset in a material. By default, the shaders assume the base (zero) level of the heightmap is 1 (white), so if base level is 0.6, the value needs to be -0.4, etc.
  • Renderer: Made alpha level adhere to Fresnel effects at high shader quality.
  • Renderer/Debug UI: Added a dropdown to select various rendering modes helpful for debugging (Material modes, Lighting channels, ..)
  • Renderer: Improvements to FBO, grant all shaders access to color and depth buffer textures
  • Renderer: Quickbar icons can now reload via SetTextureOverride #121
  • Renderer: Fixed broken normal and tangent generation for skinmeshes due to invalidated render hints. Improved shader picking based on tangets/handedness.
  • Renderer: Shader compilation errors are now printed to the game log file.
  • Renderer: Separated out area wide lighting from area point lights. (Small perf improvement).
  • Renderer/OVT: WALKDIST and RUNDIST now scales properly with visual transforms for you, in order to keep footsteps in sync.
  • Renderer: Added material files for icy tileset.
  • Renderer: Added material files for male and female old human heads so their hair no longer appears metallic.

Fixes


  • Fixed main menu music not playing when intro movies are skipped.
  • Renderer: Fixed a bad hashing algo for PLT textures resulting in excessive cache misses.
  • Renderer: Fixed incorrectly initialised null textures in some cases, resulting in incorrect textures and unnecessary texture binds.
  • Renderer: Removed redundant skinmesh bone remapping. Slight performance improvement, especially for models with many nodes.
  • Renderer: Made texture management more efficient, streamline for future changes to PBR.
  • Renderer/ResMan: Disabled the async model loader. Addresses the bodyparts missing issue. #145
  • Renderer: Maximum number of bones of a single skinmesh is now 64, to match mobile. This should fix the case where the game runs with 1-2fps on some GPUs.
  • Renderer: Fixed crashes due to NULL textures.
  • Renderer: Fixed crashing due to broken skinmesh models.
  • Renderer: Regression: Fixed compiled light models having issues due to memory misalignment/struct packing.
  • Renderer: Fixed an issue that would potentially cause scenes using custom shaders to malfunction in the event that a user changes video options in game.
  • Renderer: Fix text input caret pulsing when paused. Fix caret colouring following text in some situations.
  • Renderer: Safeguard against crashes when an animation was missing
  • Renderer: Optimised animesh buffer uploading; reduce time spent on GUI rendering.
  • Renderer: Make the `decal` property actually disable lighting, rather than just self-illuminating brightly. Fixed some GUI scenes by adding decal to txis.
  • Renderer: Fixed issue with darkness and similar negative light effects always being pushed to the end of the light priority list.
  • Renderer: Fixed tile lights being added to the BSP before having their radii set (causing minor imprecisions.)
  • Renderer: Fixed an issue with setting custom shaders when objects were using just one material for all parts while having more than one part.
  • Renderer: Fixed a minor regression with the high contrast shader.
  • Renderer: Removed a good chunk of dead/redundant code.
  • Nuklear: Fixed a memleak that would degrade long play sessions
  • VM: Fixed crash when calling DestroyArea() on a invalid object.
  • VM: Stopped ExecuteScriptChunk from writing !chunk.ndb to override.
  • VM: sqlite commands: Added missing newline in log output.
  • VM: Fixed issue in string handling (also: VM: SubString()) that would have resulted in memory leaks or crashes.
  • Game: Dont use weapon AB for ranged touch attacks anymore.
  • Fixes to passive attack target selection. This should address Cleave etc. sometimes failing to find a followup target. #172
  • Game: Effect Miss Chance/Blind Fighting: Fix erroneous re-roll against target concealment, fix effect being ignored against blind fighting. #15
  • Game: Fixed error in levelup validation related to SkillpointModifierAbility being starred out #180
  • Game: Fixed ResistSpell() when called from AOE spell scripts.
  • Game: Fixed classstat modifiers applying incorrectly to polymorph. #185
  • Fixed the DM flag being set incorrectly on player characters when copying files around. #216
  • Fixed a rare crash in game object update netcode when writing out the party state of a player that just exited.
  • Fixed a loop wraparound overflow game hang/crash when removing effect icons.
  • Game: Fixed a crash when the game tried to write a log entry as it was shutting down.
  • Emitters: fixed them not interpolating if not both size_y start and end were set (correct behaviour is to do if either is non-zero).
  • Game: Never allow the window size to shrink below (100, 100). This works around the case where the window was too small to spot or resize back up0.
  • Fixed a crash when clicking the Recommended button on chargen package selection with no packages available.
  • Fixed a string type conversion error resulting in some empty strings in UI
  • http: Made http errors more verbose. Verbosity is Friend.
  • Fixed nwsync-enabled savegames not loading due to missing TLK error.
  • Input: Character input is now correctly converted from the language charset. This should address broken polish text input.
  • NUI: Fixed codepage glyphs cutting text off due to incorrectly-set codepage.
  • NUI: Fix window flickering from (0,0) to center pos on first frame after opening.
  • NUI: Fix window sometimes scaling down to (0,0).
  • NUI: Pressing Escape now closes the currently focused window.
  • NUI: Fixed UI not properly hiding when pressing Alt-F4/X to close the game.
  • NUI Skinning: Made font white in all widgets, instead of grey.
  • NUI Skinning: Skinned text input box.
  • NUI Skinning: Title bars now look like native windows.
  • NUI Skinning: Close/Minimise buttons match native style.
  • NUI Skinning: Fixed combo box style.
  • NUI Skinning: Window and group borders are now rendered 9-sliced.
  • NUI Skinning: Fixed scrollbars not aligning properly.
  • NUI: Fixed windows not properly auto-centering when ui-scaled.
  • NUI: Fixed line fitting code to no longer repeat words when word-wrapping; improved performance to only do line flowing once.
  • NUI: Fixed layouting reflow triggering once per frame when UI-scaled.
  • NUI/GUI: Fixed TTF font rendering for Polish. #191 #235
  • GUI: Fixed input caret; now back with extra cyan and more blinkage.
  • GUI: Fixed password input box not accepting your passwords, no matter how good they were.
  • Movie player: Optimised so it doesnt create the movie texture as often.
  • Toolset: Fixed floating point drifting for X/YOrientation
  • Toolset: Now reads DEVELOPMENT: (but it might not live-reload the same as the game would).

Art


  • Added three content winner portraits to base game (aragnosh/human male, seafaref/halfelf female, seafarem/halfelf male).
  • Fixed torch model flicker.


[ 2021-03-11 21:00:14 CET ] [ Original post ]

Neverwinter Nights: Enhanced Edition
Beamdog Developer
Beamdog Publisher
2018-03-27 Release
Game News Posts: 106
🎹🖱️Keyboard + Mouse
Very Positive (6758 reviews)
The Game includes VR Support
Public Linux Depots:
  • Neverwinter Nights Binaries - Linux [14.98 M]
Available DLCs:
  • Neverwinter Nights: Enhanced Edition Infinite Dungeons
  • Neverwinter Nights: Enhanced Edition Wyvern Crown of Cormyr
  • Neverwinter Nights: Enhanced Edition Pirates of the Sword Coast
  • Neverwinter Nights: Enhanced Edition Heroes of Neverwinter Portrait Pack
  • Neverwinter Nights: Enhanced Edition Darkness Over Daggerford
  • Neverwinter Nights: Enhanced Edition Tyrants of the Moonsea
  • Neverwinter Nights: Enhanced Edition Dark Dreams of Furiae
Neverwinter Nights: Enhanced Edition adds all-new enhanced features to the content of Neverwinter Nights Diamond Edition.

Slink through the shadows as a deadly half-elven rogue, wield fearsome magics as a powerful gnomish sorcerer, vanquish your foes as an armor-clad dwarven paladin... whatever hero you create, incredible adventures await.

Discover magic, wonder, and danger at every turn on your own or with friends in these classic Dungeons & Dragons adventures.

Enhanced Features:

  • Improved Display: Your portrait, combat bar, inventory, and other UI elements adjust in size based on your chosen resolution including 1080p and 4k.
  • Advanced Graphics Options: Pixel shaders and post-processing effects make for crisper, cleaner visuals. Enable contrast, vibrance, and depth of field options as preferred.
  • Community Endorsed: Original developers have teamed with key members of the Neverwinter Nights community to curate important fan-requested improvements to support players, storytellers, and modders.
  • Backwards Compatibility: Works with save games, modules, and mods from the original Neverwinter Nights. A galaxy of community created content awaits.

All the content of Neverwinter Nights Diamond Edition:

The original Neverwinter Nights campaign: Find yourself at the center of intrigue, betrayal, and dark magic in Neverwinter Nights. Journey through dangerous cities, monster filled dungeons and deep into uncharted wilderness in search of the cure for a cursed plague ravaging the city of Neverwinter.
Two expansion packs:
  • Shadows of Undrentide: Another adventure begins in Shadows of Undrentide! Charged by your master to recover four ancient artifacts, travel from the Silver Marches to unravel mysteries of a long-dead magical civilization.
  • Hordes of the Underdark: Continue the adventure started in Shadows of Undrentide and journey into the ever-more bizarre and hostile depths of Undermountain to challenge a gathering evil.
Three premium modules:
Discover over 40 hours of new stories, then go on to sample the hundreds of modules created by community members just like you.
  • Kingmaker
  • ShadowGuard
  • Witch’s Wake
The Aurora Toolset: Build your own world full of unique monsters, items, traps, encounters, and settings, then share your creation with the rest of the Neverwinter Nights community. (Windows only)
Dungeon Master Client: Become the storyteller! Control monsters, creatures, and characters your players will meet over the course of an adventure.

MINIMAL SETUP
  • OS: Ubuntu 18.04 or equivalent
  • Processor: Intel Core i3 3rd gen or equivalentMemory: 4 GB RAM
  • Memory: 4 GB RAM
  • Graphics: OpenGL 3.3 compatible with 2 GB of VRAM
  • Storage: 12 GB available space
GAMEBILLET

[ 6107 ]

16.95$ (15%)
29.74$ (15%)
4.19$ (16%)
26.09$ (13%)
13.34$ (11%)
16.01$ (11%)
4.08$ (73%)
10.17$ (15%)
41.47$ (17%)
12.44$ (17%)
17.39$ (13%)
18.39$ (8%)
11.74$ (22%)
16.96$ (15%)
12.71$ (15%)
2.66$ (11%)
14.29$ (29%)
8.39$ (16%)
16.79$ (16%)
12.59$ (16%)
8.46$ (15%)
33.19$ (17%)
20.99$ (16%)
18.91$ (14%)
16.39$ (45%)
21.22$ (15%)
8.39$ (16%)
10.91$ (16%)
16.52$ (17%)
7.11$ (11%)
GAMERSGATE

[ 1061 ]

0.56$ (81%)
9.0$ (70%)
11.68$ (53%)
18.75$ (62%)
3.83$ (62%)
8.93$ (74%)
1.88$ (81%)
1.58$ (95%)
14.23$ (43%)
9.56$ (62%)
3.0$ (85%)
13.99$ (30%)
0.43$ (91%)
3.83$ (87%)
0.43$ (91%)
2.0$ (90%)
0.26$ (91%)
0.43$ (91%)
8.0$ (60%)
8.5$ (83%)
8.5$ (79%)
2.55$ (83%)
0.85$ (91%)
2.75$ (45%)
3.4$ (91%)
2.17$ (87%)
0.9$ (92%)
3.83$ (62%)
18.74$ (25%)
0.9$ (92%)

FANATICAL BUNDLES

Time left:

17 days, 20 hours, 56 minutes


Time left:

24 days, 20 hours, 56 minutes


Time left:

13 days, 20 hours, 56 minutes


Time left:

10 days, 20 hours, 56 minutes


Time left:

18 days, 20 hours, 56 minutes


Time left:

20 days, 20 hours, 56 minutes


Time left:

41 days, 20 hours, 56 minutes


Time left:

356466 days, 12 hours, 56 minutes


Time left:

23 days, 20 hours, 56 minutes


Time left:

52 days, 20 hours, 56 minutes


HUMBLE BUNDLES

Time left:

5 days, 14 hours, 56 minutes


Time left:

7 days, 14 hours, 56 minutes


Time left:

12 days, 14 hours, 56 minutes

by buying games/dlcs from affiliate links you are supporting tuxDB
🔴 LIVE