Darwinia 2.3.1 release

Darwinia

Combining fast-paced action with strategic battle planning, Darwinia features a novel and intuitive control mechanism, a graphical style ripped from 80's retro classics like Tron and Defender, and a story concerning a tribe of nomadic sprites trapped in a modern 3D world.

This update contains fixes and enhancements since the 2.3.0-25 release. Major changes: [list] [*] Armour will now try to avoid collisions with buildings, and will not allow deploying gun turrets too close to other buildings. [*] Gun turrets were incorrectly accounting for Darwinians, which caused only two of the four ports to be required to operate them. [*] Some mods do not specify any lights in their level files, which causes the landscape and shapes to render as empty black space. We now specify a default lighting configuration if no lights are defined in the level file. This should make such levels at least playable, but they may not appear as the mod developer intended. [*] Greatly improved game controller experience, now using much different thumbstick and trigger axis scaling methods. This was tested with an Xbox Elite controller, but it should improve the experience on any controller, including the Steam Deck. [*] Mods with custom shapes, textures, and sounds should no longer require restarting the game to load correctly. [*] Improved sound spatialization accuracy while the camera is moving, and improved sound playback performance. [*] Partially worked around stuttering on macOS with high refresh rate displays. It's recommended to use the "Automatic" Resolution setting in Screen preferences for this workaround to take effect. Some stuttering may still be observed, see the "Known Issues" section below for details. [*] Fixed major lighting render bugs on the Metal renderer. [*] Many Screen preferences can now be applied without a full renderer restart. [/list] Minor changes: [list] [*] The in-game screenshot functionality performance has been improved. [*] Reduced GPU memory for shape vertex data. [*] Dramatically improved performance of "Full" Pixel Effect render for grenade/rocket explosions. [*] Reduced the sort of jerky animation appearance for falling snow and Receiver spirits. [*] Fixed glitched tree render and sounds when Christmas mode is enabled. [*] Made falling snow fade out gradually when close to the ground. [*] Fixed a localization bug in the intro cutscene for the Escort map. [*] Fixed a bug where players could accidentally select units while trying to aim a radar dish or turret. [*] Triffid eggs now respect SpawnPopulationLocks if present. [*] Fixed some significant first-frame latency in the loader intros. [*] Fixed shader pre-compilation missing some shader combinations. [*] Fixed a bug with the level editor UI, which caused the increase/decrease buttons to operate on a delay instead of responding instantly and then *repeating* on a delay. [*] Fixed several level editor render bugs when switching tool modes. [*] Fixed some cases where Virii death animations would glitch in a strange way, especially if killed by rocket or grenade shockwaves. [*] Fixed water occluding enemies that traveled out below water level (e.g. spiders or virii). [*] Fixed solar panels glitching on rotate in the level editor (they're not supposed to be able to rotate). [*] Fixed a bug with radar dish rotation, where rotating laterally in one direction was always faster than rotating in the other. [*] Fixed some Darwinian shadow rendering behavior. [*] Fixed some minor glitches in the gun turret render, causing them to appear to twitch when idle. [*] User profile names can no longer be completely blank and crash the game. [*] The sound system now avoids doing resampling when possible, conserving CPU utilization. [*] Several level editor bugs around StaticShape buildings have been fixed. [*] Shape hit tests were incorrectly accounting for scaling, causing mouse clicks to incorrectly miss some shapes in the level editor. [*] Improved shader compilation speed, and improved caching robustness. [*] Improved Vulkan frame pacing mechanism, to ensure lower latency rendering. [*] Updated contributing libraries (MoltenVK, ANGLE, SDL, MiniAudio, etc) [/list] Known issues: [list] [*] macOS: On MacBook Pro 14"/16" with 120Hz displays (or in fact any Mac with > 60Hz displays) there is stuttering in full screen mode. This is caused by the "Direct-to-Display" feature in Metal, which cannot be opted out of. We have implemented a partial workaround to this problem, but there is still occasional render stuttering. Players can work around this by running the game in Windowed mode. We have an open bug with Apple about this problem and will continue to look for a better solution. [*] Windows: Some applications (e.g. Bandicam, Overwolf, RivaTuner Statistics Server, etc) may inject Vulkan layers into the game process, even if those applications are installed but not actually running. Some of these layers are known to cause occasional crashes when using the Vulkan renderer. To work around this, either uninstall those applications or use a different renderer in the Screen preferences (OpenGL or Direct3D 11). [*] Windows: You may experience crashes on Intel graphics drivers with the Vulkan renderer. The cause of these crashes isn't known yet. [*] Windows: The Vulkan renderer may appear to stutter when running in windowed mode on NVIDIA graphics cards. NVIDIA is investigating this problem. [*] Windows: There is a bug in the AMD graphics drivers that causes the Vulkan extension VK_EXT_full_screen_exclusive to be enabled in "application controlled" mode when not requested. This causes unexpected Vulkan error codes to be reported when alt-tabbing out of full screen mode. AMD is aware of the issue and is working on a fix. [*] Windows: The Direct3D 11 shader compiler will sometimes fail with "integer overflow" errors which will cause the game to crash and exit during shader precompilation. Re-running the game won't reproduce the errors. [/list]