DSFix 1.8

It has been quite a while — I’ve been very busy at work for the past 3 weeks. I also haven’t had time to check/approve blog comments, so now there are 3700 in the moderation queue, and I’m sure at least 98% of those are spam. Sorry if you got stuck there!

Changes:

  • Added an FXAA option in addition to SMAA. FXAA is blurrier, but also deals with sub-pixel aliasing better because of that. It’s also very slightly cheaper in terms of performance.
  • Added the ability to bind a key to toggle a 30 FPS limit for a short time. By default it’s bound to backspace. This is useful to fix issues with the FPS unlock, see below.
  • Greatly improved depth usage in the SSAO shader. This means that the SSAO effect is now more stable at different distances from objects.

As always, consider donating if you like the mod.

Get DSfix 1.8 at the Dark Souls nexus.
(alternative download location)

In other news, I believe that all the possible issues with the FPS unlock are now known, and there is a way to deal with most of them as of version 1.8:

  • Sliding down ladders can make you fall through the ground. Workaround: don’t slide down ladders with unlocked FPS.
  • Jumping/rolling distance is slightly reduced at 60 FPS. Workaround: in case you need to do one of the 2 or 3 jumps in the game that need maximum distance, use the new toggle key to toggle a 30 FPS limit for the jump, then toggle back to 60 after it.
  • Slope interactions are slightly different at 60 FPS compared to 30, which may make you “stuck” at small obstructions from time to time. Workaround: rolling if there is space, walking back and forth a bit if there is not. Toggling the 30 FPS lock for a second in the worst case.

I have been playing for 40 hours or so with unlocked framerate, in single-player, coop and pvp, and I had no other issues.

In conclusion, I hope everyone had a nice couple of weeks and backed Project Eternity!

DSfix 1.7

And one more for the road.

Changes:

  • Re-implemented the FPS limiter. It’s quite exact now and also performed at a better point in time (before presenting the frame)
  • Made frame period calculation (for animation) slightly more exact
  • Added FPS thresholding for SMAA. What this means is that you can supply a value – say 45 FPS – and if the game is in danger of dropping below that, SMAA will be disabled. It will be re-enabled once the framerate is safely above the threshold again.

As always, consider donating if you like the mod.

Get DSfix 1.7 at the Dark Souls nexus.
(alternative download location)

DSfix 1.5

It’s been a while, but I just released a new version of DSfix!

Bugfixes:

  • Fixed an issue with SSAO being rendered on top of particle effects/fog/water, instead of below them.
  • Improved the method used to determine when in the render pipeline to apply SMAA/SSAO, and also included more robust renderstate management. (This may fix the random display corruption issue people have been sporadically reporting ever since SMAA was included)
  • Tweaked the SSAO parameters a bit

New features:

  • As many modders requested, you can now load .dds texture overrides in addition to .png
  • It is now possible to set the desired target FPS of the game in the .ini, thanks to Nwks (Clément Barnier)! (This is fully integrated and also works correctly together with the intro skip feature)

Regarding the FPS override feature, please carefully read the notes in the .ini
This is the most invasive feature of DSfix, and thus carries the highest risk.

I am well aware that there are still many issues remaining with the minimal HuD, and since it seems like no one is fixing them I will get back to it at some point.

As for the performance requirements of 60 FPS, personally (after disabling all power management options for my GPU and CPU) I can mostly maintain 60 FPS at 1080p, 810 DoF with DoF blur 1, SMAA 4 and SSAO 2. This is on an i7 920 at 3.6 GHz and a 660ti.

As always, consider donating if you like the mod.

Get DSfix 1.5 at the Dark Souls nexus.

Dark Souls Nexus & DSfix progress

There is now a Nexus site for Dark Souls mods available:
http://darksouls.nexusmods.com/

I know some people were asking for this, and it should make keeping track of new mods, changes and updates easier. It also offers far better options for discussion (e.g. an actual forum) than the comments in these blog posts, which get unwieldy once there are more than a dozen replies or so. I will publish future updates of DSfix there (though I’ll still keep making posts here as well), and I would encourage everyone to use it for downloads and discussion.

As for progress in DSfix, I just fixed the issue whereby SSAO was rendered on top of particles, fog, and water instead of below them (easiest to see when activating bonfires). This should also fix the sporadic screen corruption some people reported when either SSAO or SMAA are active in particular areas of the game. It’s in gitHub for now, I’ll do a release this weekend.

I haven’t received any direct source contributions or pull requests so far, but quite a few people seem to be interested in the repository, so we will see how that develops.

 

 

DSfix source release

I just put DSfix up on github.

It’s not nearly as cleaned up as I wanted it to be, but I thought it’s time to put it out there and see what people come up with. Have fun!

Please try to only use the comments on this blog post for development related questions!

Here’s the developer readme:

And here’s my current TODO file:
(I’ve been keeping this since 0.8 or so, lines starting with // are done)

 

DSfix 1.4

As I announced previously, I’m now focusing purely on bug fixes until the source code release, which will probably coincide with 1.5.

  • Textures with a hash code starting with 0 will now be correctly named when dumped  and loaded when overriden (with prefix 0s). Every hash is 8 charaters long.
  • Fixed the cause of the latest fullscreen alt-tab crash (hopefully).
  • Fixed modified HUD performance, particularly in conjunction with SMAA and VSSAO.
    The performance impact should now be negligible.
  • Fixed modified HUD not showing effects like poison or bleeding correctly.

Known issues with the modified HUD: boss health bars, subtitles, damage numbers and curses. Configure the HUD modification toggle key to turn it off if you get into a boss fight or another situation where it messes up.

As always, consider donating if you like the mod.

DSfix version 1.4 download
(alternative download)

Please please remember to read the README.txt!

DSfix 1.3

Edit: link replaced for screenshot quickfix. Redownload if you got 1.3 before.

This release fixes the following bugs:

  • fixed dynamic shadows being cut off in some areas
  • fixed some icons still not correctly hidden by Hud toggle

And adds these features:

  • HUD scaling
  • HUD opacity settings (per component)
  • Minimalistic HUD mode (removes the weapons and item/spell name display)

All the HUD options can be set in the ini and HUD manipulation can be toggled at runtime. Note that there are still some issues with the HUD manipulation, including damage number placement being incorrect and subtitle rendering not being handled. Also, poison and bleeding build-up is not displayed correctly, and neither are boss health bars. Additionally, I observed an unusually high performance impact at high resolutions that I don’t really understand yet.

Note that you can define a toggle key to quickly turn HUD modifications on and off in case there are issues.

Here are 2 screenshots showing off the HUD features:

Check out the DarkSoulsMod sub-reddit for a nice archive of texture replacements people have created so far. I especially like the high-res font replacement. My nickname there is DuranteA.

As always, consider donating if you like the mod.

DSfix version 1.3 download

Please please remember to read the README.txt!

DSfix 1.2

This version includes the following bugfixes:

  • Fixed some symbols still appearing with HUD toggled off (buttons, dashes, etc)
  • Fixed cut-off messages at some specific resolutions
  • Improved SSAO quality and speed, reduced distant artifacts (there is still some flickering, this is due to the method, use weak SSAO or downsample to mitigate this)

And adds these features:

  • The screenshot folder can be specified in the .ini (this was a popular request)
  • Texture override functionality! Any texture in the game can now be customized, e.g. for changing the button prompts or adding higher resolution fonts.
  • In conjunction with the above: texture dumping. This will provide you with the base textures for the game and their hash code, so that you can override them. This is only for people who want to create their own override textures.

For more information about the texture override feature, look at the .ini and the included example override texture. Here’s a picture of the example override (note that it only shows up once the “logo movie” is over).

As always, consider donating if you like the mod.

DSfix version 1.2 download
(Alternative download location)

(The download is now hosted externally, sorry for that. The traffic was just getting too much. I hope it’s not too inconvenient for anyone!)

Please please remember to read the README.txt!

And before I forget: if you come up with any good overrides, please post them below!

DSfix FAQ v2

Do I need the previous versions?
No, every release is self-contained, you just need the most recent version.

The game crashes, help!
Make sure that you are not running any other applications that interact with Direct3D, such as various overlays. Copy everything from the .zip to the game folder, and keep the “dsfix” directory intact.
If you use a resolution lower than the original (for performance reasons) move or rename the “movWW” directory.

The game only shows up in a small part in the upper left corner!
Turn off the in-game AA option. And read the readme.

Can you improve the performance of the game?
Beyond reducing the main/dof resolution (which likely isn’t the issue on most low-end systems anyway) there is not much I can do, sorry.

Will you release the source code?
Yes, as soon as it is at least remotely presentable and I no longer make large changes daily. I hope it will help people attempt similar things for other games and/or implement the 100s of features people are asking for in Dark Souls that I will never get to. I guess it should be ready some time next weekend.

Feature x doesn’t work on my pirated version of the game!
I don’t support pirated versions. Buy the game.

SSAO causes some problems with water / distant silhouettes / flickering!
I’m still working on this. You can also try tweaking the shader on your own.

SMAA and SSAO are not working for me!
You are one of the rare cases where the mod doesn’t identify the correct place in the rendering pipeline to inject the modifications. I currently don’t know why this happens and can’t reproduce it.

Why don’t the toggle keys work anymore? How can I change the keybindings?
Look at DSfixKeys.ini. Note that lines starting with “#” are ignored.

Why does the DoF blur blur my menus?
Don’t set your DoF resolution to the same as your internal rendering resolution. Set it lower than that.