Skip to content

Releases: Kaldaien/SoulsUnsqueezed

Souls "Unsqueezed" v 0.3.0

10 Jun 22:37
Compare
Choose a tag to compare
6/10/16 Patch Compatibility and Texture Management

The mod is generally patch proof because it has a system in place to scan for changes made by patches. This patch threw that system for a loop because the range of memory addresses to search was > 32-bit (all previous versions used addresses below 4 GiB).

  • The memory scanner has been corrected, and future patches should not cause problems.

Texture Enhancements

      I have included many texture management changes from my Final Fantasy X/X-2 mod project.

These allow you to dump and inject all textures the game loads and will make it possible to replace the default Xbox buttons with anything you want (provided you identify the unique hash as described below).

Texture dumping spits 💥🐪 out textures to:

      SUS_Res/dump/textures/DarkSoulsIII.exe/....dds 📂

Texture Dumping
There are two types of textures:
Uncompressed Compressed
Used primarily for the UI and special effects Used by the world (also controller button icons)
Dumped as Uncompressed_<crc32>.dds Dumped as Compressed_<crc32>.dds

           This feature can be enabled by setting [SUS.Textures] Dump=true

Texture Injection
Allows modified textures to replace the original ones

Injects 💉 textures from:

      SUS_Res/inject/textures/<CRC32>.dds 📂

Textures to be injected need to be named to match the checksum of the texture they are replacing

The dumped texture: {Un}Compressed_8badf00d.dds can be replaced by placing a replacement (8badf00d.dds) in the injection directory.

           This feature can be enabled by setting [SUS.Textures] Inject=true

Texture Caching
Reduces hitching from redundant texture loads

From time to time, the game will remove and reload ♻️ textures in VRAM that could have stayed there, causing slight framerate hiccups. This feature tries to keep as much texture data in VRAM as it can in order to minimize these problems.

The cache algorithm is very conservative, but still may run into hash collisions and various other weird things. The default policy in 0.3.0 is 🔛, if you notice textures behaving strangely you can turn this off. Please notify me on the Steam forums if you can reproduce the problem, so I can tune this feature better.

           This feature can be disabled by setting [SUS.Textures] Cache=false


Various other changes include NvAPI / ADL initialization problems (the mod no longer hangs while trying to initialize either of these things), stability fixes during Windowed ⟷ Fullscreen mode switches, Windows Vista compatibility and improved logging.

Souls "Unsqueezed" v 0.2.2

12 May 17:39
Compare
Choose a tag to compare
Improved Fullscreen Support
- Fullscreen startup with Aspect Ratio Correction is now possible - No need to press Alt + Enter anymore - HUD Stretching should always work in Fullscreen _(Exclusive mode)_ - Toggle with Ctrl + Shift + Alt + . - Fullscreen _(Borderless)_ mode correctly hides the taskbar - Window centering works whether borderless mode is enabled or not
Performance Wizard

Dark Souls 3 Tweak v0.0.5's Performance Wizard is ~50% functional.

It does not automatically select any settings, but the information (particularly the bottom line) is useful information that you can use to select appropriate settings. For example, Flip Mode should not be used with Fullscreen (non-Borderless).

_You must run ds3t.exe after installing or upgrading to this version and select your resolution._

Souls "Unsqueezed" 0.2.0

11 May 03:20
Compare
Choose a tag to compare
Compatibility Fixes and Configuration Utility
- `GraphicsConfig.XML` no longer needs to be set Read-Only - Desktop resolutions < 1080p are correctly supported - Window centering is more reliable (in borderless mode) - Fullscreen Exclusive (`Borderless=false`) mode works as intended - HUD stretching now works horizontally (aspect ratios narrower than 16:9)

Introducing Dark Souls 3 Tweak

In order to simplify configuring this thing for aspect ratio correction, ds3t.exe has been included. Run this from the same directory as dxgi.dll is installed and enable Aspect Ratio Correction on the Graphics tab.

Future versions of this tool will include Refresh Rate override, texture settings and a Performance Wizard to configure optimized settings for Windowed, Fullscreen and SLI render modes.

Souls "Unsqueezed" v 0.2.1

11 May 08:21
Compare
Choose a tag to compare
Pre-release
Aspect Ratio Correction Enabled by Default
- SUS can engage Fullscreen mode automatically when ARC is enabled - VSYNC settings apply no matter what render mode is selected in DS3 Tweak - Many quality settings in `GraphicsConfig.XML` use the wrong words for Low / Disabled / Off - This problem has been corrected in DS3 Tweak

_Includes DS3 Tweak 0.0.3_

Souls Unsqueezed v 0.0.2

16 Apr 21:08
Compare
Choose a tag to compare
Framerate Limiter and Aspect Ratio Testing
- The framerate limiter set in dxgi.ini sticks now; you had to open the command console to set it manually in 0.0.1. - Scissor rectangles have been disabled - If you get artifacts like UI elements spilling-over their window or lights doing weird things let me know

Souls Unsqueezed v 0.0.1

14 Apr 07:46
Compare
Choose a tag to compare
The game's more broken than I initially thought...

To mitigate some display scaling problems that many are having, I have opted to release 0.0.1 without the promised aspect ratio features.

Make sure your desktop resolution is set to match the game's configured resolution prior to start. That may mean editing %AppData%\DarkSoulsIII\GraphicsConfig.xml by hand in many cases.

If you find the HUD only covers a portion of your screen, you will need to adjust the values in SoulsUnsqueezed.ini to fix the game's broken display scaling.


Uncorrected DPI Scaling (4K)

uncorrected_hudscaling

Corrected DPI Scaling (4K)

corrected_hudscaling


Installation

See the "release notes" for 0.0.0 for installation details.


Temporary Mini-Configuration Guide (SoulsUnsqueezed.ini)

SUS.Render
- `FlipMode` is a high-performance render mode (Windows 8+) that will reduce latency in windowed (or borderless) mode - It has been **_DISABLED**_ because it causes problems with SLI configurations - Consider trying it if you do not need SLI support
SUS.Window
- `Borderless` forces the game to think it is running in fullscreen mode and enables borderless window functionality - Faster app switching, lower input latency, zero tearing - You may want to turn this off for SLI or CFX, or if you use a lower resolution than your desktop - You **_cannot change resolution in-game**_ while this mode is enabled
SUS.Display
- `HUDResX` (game's default=1280) and `HUDResY` (game's default=720) control HUD scaling - When the game is working correctly, 1280x720 is magically scaled to fullscreen - When it's not working correctly, you get a tiny window in the top-left corner of your screen and you will need to adjust this to compensate for DPI scaling

Souls Unsqueezed v 0.0.0 Test Release

12 Apr 19:52
Compare
Choose a tag to compare
Very early test version
- Only addresses input latency and VSYNC-related problems - Resolution cannot be adjusted in-game while dxgi.dll is active - 0.0.1 will add 21:9 support

To install, unzip sus.zip to your DS3 install path. Uninstallation involves deleting dxgi.dll

Souls "Unsqueezed" 0.1.0 - Pre-Release 0

26 Apr 13:58
Compare
Choose a tag to compare
Initial Aspect Ratio Fix
- Adds support for non-16:9 aspect ratios without letter / pillar boxing.

Configuring 0.1.0-pr0 for aspect ratio correction is much more complicated than it should be and is basically a band-aid solution at this point. I'll work to automate as much of this as possible, particularly the read-only and fullscreen mode switch steps.

Configuration

   0.1.0 comes pre-configured for 1920x1080.

To run the game correctly at a non-16:9 resolution you will need:

  1. Edit the game's config to _always_ start in windowed mode
    1.1. Open %AppData%/DarkSoulsIII/GraphicsConfig.xml

    • Set ScreenMode to WINDOW
    • Set Resolution-WindowScreenWidth and Resolution-WindowScreenHeight to your screen's resolution

    1.2. Make the file read-only

    • This ensures that the game does not try to revert to the last window/fullscreen state.
    • This step is _not_ optional.
  2. Edit SUS's config to setup the default resolution
    2.1 Open SoulsUnsqueezed.ini

    • Set DefaultResX and DefaultResY to match the settings you used in GraphicsConfig.xml
    • Do not make this file read-only, dxgi.dll writes to it every time you run the game.

    2.2 Set Fullscreen=true if you are not using your desktop resolution

    • This may shuffle some windows and your desktop icons onto other monitors, so it's disabled by default.
    • Correct fullscreen borderless windows will be implemented in a later version.
  3. Switch to fullscreen mode (Alt+Enter) _every time_ the game starts

Known Issues:

 
Transitions (fade to white/black) do not cover the entire screen (particularly the portion that is not visible at 16:9).

  • These can be fixed if you enable HUD stretching
    • Press Ctrl+Shift+Alt+. to toggle this feature
    • Or turn it on by default in SoulsUnsqueezed.ini

Release date is wrong in the release notes. I have not published the source code yet, so just ignore the date for now.