Skip to content

SpecialK

Eamonn Rea edited this page Sep 24, 2023 · 40 revisions

(Project Website) (GitHub Repository) (PCGamingWiki Article)

Overview

Special K is an extensive game modifying framework allowing for various forms of in-depth tweaking of a game.

WARNING: Using SpecialK can lead to a ban, so make sure to check this Compatibility List before using!

SpecialK can be enabled on the Game Menu by checking the USESPECIALK checkbox (as well as explicitly setting USESPECIALK=1 directly in the Game Config). You can also add your game(s) to a SpecialK Steam Collection.

Features

When SpecialK is enabled for a game, SteamTinkerLaunch will perform the following:

  • Download and extract the corresponding Special K version (stored in SPEKVERS variable internally) if not downloaded before
  • Checkbox option to automatically download and use the latest SpecialK
  • Determine the architecture of the game executable to know what SpecialK DLL to use
  • Download/update the SpecialK Compatibility List to know which rendering API to use
  • Copy the matching 32bit/64bit SpecialK DLL under the correct name into the same directory as the game executable (depending on the rendering API this could be dxgi.dll, d3d9.dll or opengl32.dll, similar to ReShade)
    • The fallback DLL name is d3d11.dll, if the game is not in the PCGamingWiki list
    • If the game is known but the rendering API is not, we will use dxgi.dll
  • Auto-enable the SpecialK UsingWINE configuration option, in case it is not picked up manually

Tested Games

Below is a list of tested games, with the approximate date they were tested on

  • Witcher 3 (November 2021)
  • Alien: Isolation (November 2021)
  • Saints Row The Third Remastered (November 2021)
  • Bayonetta (November 2021)
  • Dishonored 2 (November 2021)
  • Fallout 4 (November 2021)
  • Thief (November 2021)
  • NieR:Automata (September 2023)
  • NieR:Replicant ver.1.22474487139... (September 2023)

However, there is no fundamental reason why a game from the Compatibility List should not work, as the install process is generic.

Versions

steamtinkerlaunch distinguishes between two different SpecialK versions (tracked in SPEKVERS):

The list of versions available for the menu dropdown is only automatically downloaded if USESPECIALK is enabled.

(See also #894 and #897)

SteamTinkerLaunch v14.0.20230909-1 and above support using ReShade and SpecialK together. In testing, ReShade v5.4.2 was found to be the latest compatible release, newer versions seemed to not work with most games. There is a Global SpecialK ReShade version which will be used by default when SpecialK+ReShade are enabled together, right now this defaults to 5.4.2. You can change this value, or disable it entirely. When disabled, the ReShade version will fall back to the Global ReShade version, or the ReShade Override version if enabled and set on the Game Menu.

If you have already installed ReShade and want to update it, you can remove the existing ReShade DLLs from the game files, or change the version and enable the "ReShade Update" option on the Game Menu. Existing ReShade DLLs will NOT be updated by default.

For more information, see the SteamTinkerLaunch ReShade Wiki Page section on Using ReShade and SpecialK together for more information.

Caveats

Older SpecialK Releases

Older versions of SpecialK may require a Proton version which ships at least the api-ms-win-crt-string-l1-1-0.dll, which is typically older Proton 7.0 versions, or some games (i.e. XCOM 2) may ship this DLL in their game files. This used to be a requirement for using Special K on Linux but this has since changed.

Clone this wiki locally