Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.

Difference between revisions of "Special K"

From PCGamingWiki, the wiki about fixing PC games
m (→‎Refresh rate (Hz): Added notes)
m (→‎Other information: Added Keybindings section)
Line 312: Line 312:
 
|64-bit executable notes=  
 
|64-bit executable notes=  
 
}}
 
}}
 +
 +
===Keybindings===
 +
====General====
 +
{| class="page-normaltable pcgwikitable" style="width:auto; max-width:850px;"
 +
|-
 +
! | Keyboard !! Controller !! Function
 +
|-
 +
| {{Key|Ctrl|Shift|Backspace}} || {{Key|Back/Select|Start}} || Toggle the control panel
 +
|-
 +
| {{Key|Ctrl|Shift|O}} || ''N/A'' || Toggle the on-screen display (OSD)
 +
|-
 +
| Hold {{Key|Ctrl|Shift}} while launching game || ''N/A'' || Opens the injection compatibility options
 +
|-
 +
|}
 +
 +
====Control Panel====
 +
{| class="page-normaltable pcgwikitable" style="width:auto; max-width:850px;"
 +
|-
 +
! | Keyboard !! Controller !! Function
 +
|-
 +
| {{Key|Caps Lock}} || Hold {{Key|Back/Select}} for '''0.5''' seconds || Toggle exclusive input mode (game vs. control panel)
 +
|-
 +
| {{Key|Up|Down|Left|Right}} || {{Key|Up|Down|Left|Right}} || Cycle through UI items
 +
|-
 +
| {{Key|Enter}} || {{Key|A / ×}} || Activate selected item
 +
|-
 +
| {{Key|Ctrl|Shift|Backspace}} || {{Key|B / ○}} || Exit control panel
 +
|-
 +
| {{Key|Ctrl|Alt|Up|Down|Left|Right}}<br>''(exclusive keyboard mode only)'' || {{Key|X / □|Left Analog Stick}} || Move the control panel window
 +
|-
 +
|}
 +
 +
====On-Screen Display (OSD)====
 +
{{ii}} Color and scale config is stored in {{file|Documents\My Mods\SpecialK\Global\osd.ini}}
 +
 +
{| class="page-normaltable pcgwikitable" style="width:auto; max-width:850px;"
 +
|-
 +
! | Keyboard !! Controller !! Function
 +
|-
 +
| {{Key|Ctrl|Shift|O}} || ''N/A'' || Toggle the on-screen display (OSD)
 +
|-
 +
| {{Key|Ctrl|Shift|+ / -}} || ''N/A'' || Resize the on-screen display (OSD)
 +
|-
 +
| {{Key|Ctrl|Shift|F}} || ''N/A'' || Toggle framerate counter
 +
|-
 +
| {{Key|Ctrl|Shift|T}} || ''N/A'' || Toogle clock / version
 +
|-
 +
| {{Key|Ctrl|Shift|G}} || ''N/A'' || Toggle GPU monitor
 +
|-
 +
| {{Key|Ctrl|Shift|C}} || ''N/A'' || Toggle CPU monitor
 +
|-
 +
| {{Key|Ctrl|Shift|M}} || ''N/A'' || Toggle memory monitor
 +
|-
 +
| {{Key|Ctrl|Shift|I}} || ''N/A'' || Toggle I/O monitor
 +
|-
 +
| {{Key|Ctrl|Shift|D}} || ''N/A'' || Toggle disk monitor
 +
|-
 +
| {{Key|Ctrl|Shift|P}} || ''N/A'' || Toggle page file monitor
 +
|-
 +
| {{Key|Ctrl|Shift|R}} || ''N/A'' || Toggle D3D11 shader analytics
 +
|-
 +
|}
 +
 +
====Advanced====
 +
{| class="page-normaltable pcgwikitable" style="width:auto; max-width:850px;"
 +
|-
 +
! | Keyboard !! Controller !! Function
 +
|-
 +
| {{Key|Ctrl|Shift|Tab}} || ''N/A'' || Toggle the command console. See the [https://gist.github.com/Kaldaien/185506559f2cbe6d4415d15b2e05fe78 console documentation] for more information.
 +
|-
 +
|}
  
 
==System requirements==
 
==System requirements==

Revision as of 06:35, 27 April 2018

Key points

Extensive game modifying framework allowing for various in-depth tweaking of a game. The focus is primarily on the graphics pipeline but it also includes various features such as input device blocking/configuring, etc.
As with other third-party stuff, Special K can have an adverse effect if used in multiplayer titles where anti-cheat protection exist.
Includes a number of game-specific changes and optimizations, although minor ones are not exposed.
Supports multiple graphics APIs as well as injection methods, making it compatible with a lot of games.
Vulkan is supported, although as rendering is not available all changes must be performed through the config files.
Does not support DirectX 12, 10, 7, or older.

General information

Official Steam Group
Unofficial Guide
Releases
Changelog
Source code

Installation

Global (system-wide)

Launcher for the global injector of Special K.
Launcher for the global injector of Special K.
Allows Special K to inject automatically in all Steam games/applications it detects, as well as non-Steam games the user manually allows.
Stop the global injection before playing a multiplayer game where Special K might have an adverse effect.
Install the global injector of Special K:
  1. Download the latest version available, refer to the Steam Group discussions board for details.
  2. Extract the archive at a location of your choice.
  3. Run the Special K Install Manager using either SKIM.exe (32-bit) or SKIM64.exe (64-bit) located within the extracted files.
  4. Select Special K (Global Injector) in the product list.
  5. Click Install.
  6. After the global injector have been installed injection should automatically have started. To stop the injection, click on Stop Injecting in SKIM.
  7. Use Ctrl+ Shift+← Backspace to access the control panel while in-game.
  8. Use the Special K Install Manager (aka SKIM) icon in the notification area of Windows to start/stop the global injector. A shortcut on the start menu should've also been created during the installation. Global injection is only enabled while SKIM is running and injection have been started.

Notes

Antivirus/Internet Security Suites can cause the installer to fail.
Enable for non-Steam games:
  1. Start the global injection.
  2. Navigate to <path-to-game> and the appropriate subfolder containing the game executable.
  3. Look up what API the game uses. Refer to game-specific articles for details.
  4. Create a new empty file based on what API the game uses out of these:
    • OpenGL: SpecialK.OpenGL32
    • DirectX 11.x: SpecialK.dxgi or SpecialK.d3d11
    • DirectX 9: SpecialK.d3d9
    • DirectX 8: SpecialK.d3d8 - Requires the dgVoodoo plugin installed for Special K.
    • DirectDraw: SpecialK.ddraw - Requires the dgVoodoo plugin installed for Special K.
    • DirectInput 8: SpecialK.DInput8 - Alternative injection method for titles that supports DirectInput 8.
  5. Launch the game. Special K should now detect and hook it.
  6. Use Ctrl+ Shift+← Backspace to access the control panel while in-game.

Local (game-specific)

Installs Special K for a specific game, making it possible to use with said game without having global injection enabled.
Use at own risk in multiplayer games where Special K might have an adverse effect.
Does not support automatic updates.
Convert global injection to local wrapper DLLs:
  1. Enable global injection.
  2. Launch the game.
  3. Use Ctrl+ Shift+← Backspace to access the control panel while in-game.
  4. Click on File > Install wrapper DLL for this game.
  5. Exit the game, disable global injection and then start the game again. Local injection should now occur instead.
Manually install local wrapper DLLs:
  1. Download the latest version available, refer to the Steam Group discussions board for details.
  2. Extract the archive at a temporary location of your choice.
  3. Navigate to <path-to-game> and the appropriate subfolder containing the game executable.
  4. Look up if the game uses a 32-bit or 64-bit executable, as well as what API is used. Refer to game-specific articles for details.
  5. Move the appropriate Special K DLL file to the folder where the executable were located: SpecialK32.dll for 32-bit, and SpecialK64.dll for 64-bit.
  6. Rename the DLL file to match the API used by the game:
    • OpenGL: opengl32.dll
    • DirectX 11.x: dxgi.dll or d3d11.dll
    • DirectX 9: d3d9.dll
    • DirectX 8: d3d8.dll - Requires the dgVoodoo plugin installed for Special K.
    • DirectDraw: ddraw.dll - Requires the dgVoodoo plugin installed for Special K.
    • DirectInput 8: dinput8.dll - Alternative injection method for titles that supports DirectInput 8.
  7. Launch the game.
  8. Use Ctrl+ Shift+← Backspace to access the control panel while in-game.

Custom game-specific mods

There's also custom versions available of Special K tailored to certain games. These often features more in-depth changes or fixes that might not exist in the main branch.
Supports automatic updates despite being a local install of Special K; although as the update channel is separate from the main release channel these mods might not be frequently updated, if ever.
Install the appropriate game-specific mod of Special K:
  1. Download the latest version available, refer to the Steam Group discussions board for details.
  2. Extract the archive at a location of your choice.
  3. Run the Special K Install Manager using either SKIM.exe (32-bit) or SKIM64.exe (64-bit) located within the extracted files.
  4. Select the appropriate game-specific mod in the product list:
  5. Click Install to install the selected mod.
  6. Use Ctrl+ Shift+← Backspace to access the control panel while in-game.

Notes

Antivirus/Internet Security Suites can cause the installer to fail.

Game data

Configuration file(s) location

game-specific in the below table refers to either the title of the game (Steam releases) or the executable filename of the game (other titles).
Type of install Location
Global %USERPROFILE%\Documents\My Mods\SpecialK\Profiles\game-specific\SpecialK.ini
Local (converted) %USERPROFILE%\Documents\My Mods\SpecialK\Profiles\game-specific\SpecialK.ini
Local (manual) <path-to-game>; in the game executable folder. Filename mirrors DLL file, e.g. dxgi.ini.

Video settings

Compatibility for features varies for games; most usually works, but at times a game might not function properly with some. Hold down Ctrl+ Shift while launching a game if you need to reset the config file of Special K.

Windowed

Force window mode for games that do not natively support it:
  1. Launch the game with Special K enabled and confirmed working for the game.
  2. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  3. Open the Display menu on the top.
  4. Change change Fullscreen Mode to Windowed Mode. The Force Override option might be required as well for some titles.
  5. Restart the game to confirm everything works. See Mouse locking if the cursor is not locked to the game window.

Borderless fullscreen windowed

Force borderless fullscreen windowed for games that do not natively support it:
  1. Launch the game with Special K enabled and confirmed working for the game.
  2. Configure the in-game options to window mode and the resolution of the monitor.
    • See Windowed for how to force window mode for games that do not expose it.
  3. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  4. Open the Display menu on the top.
  5. Change Window style to Borderless Fullscreen.
  6. Restart the game to confirm everything works. See Mouse locking if the cursor is not locked to the game window.

Refresh rate (Hz)

Force a custom refresh rate:
  1. Install Special K for the game, either globally or locally.
  2. Launch and close the game once to allow the Special K config file to be created.
  3. Open the game-specific config file, see Configuration file(s) location for details.
  4. Find and change the parameter RefreshRate to the desired refresh rate (e.g. "RefreshRate=120").
  5. Save and close the file.

Notes

RefreshRate=0 will automatically use the highest available refresh rate.
RefreshRate=-1 will disable the override and use whatever the game requests.

Scan type

Controls if the game outputs in progressive or interlaced scanning. This is normally more relevant for a television than a computer monitor, as typically computer monitors only support progressive display modes.
This override should only be used if the game does not properly output to the correct scan mode.
Force a custom scanning method:
  1. Install Special K for the game, either globally or locally.
  2. Launch and close the game once to allow the Special K config file to be created.
  3. Open the game-specific config file, see Configuration file(s) location for details.
  4. Find and change the parameter ScanlineOrder to one of the below values:
    • Progressive for progressive scan.
    • UpperFieldFirst for interlaced even scan.
    • LowerFieldFirst for interlaced odd scan.
    • DontCare to retain the game default.
  5. Save and close the file.

Override resolution

Overrides the framebuffer resolution in windowed modes, forcing games to render at a higher resolution than what they might natively support.
Force an override resolution in windowed modes for games that do not natively support it:
  1. Launch the game with Special K enabled and confirmed working for the game.
  2. Configure the in-game options to window mode.
    • See Windowed for how to force window mode for games that do not expose it.
  3. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  4. Expand Window Management > Style and Position.
  5. Enable Borderless and Center.
    • Do not enable Fullscreen (Borderless Upscale) as this will disable the override resolution.
  6. Change Override Resolution to the desired resolution.
  7. Restart the game to confirm everything works. See Mouse locking if the cursor is not locked to the game window.

Notes

Remove the override resolution by changing the Override Resolution values to 0, followed by a game restart.

Continue rendering

Prevents games from pausing when they lose focus.
Instructions
  1. Launch the game with Special K enabled.
  2. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  3. Expand Window Management > Input/Output Behavior.
  4. Enable Continue Rendering.
  5. Press Ctrl+ Shift+← Backspace to close the control panel of Special K.

Input settings

Mouse locking

Lock the mouse to the game window for games that do not natively support it:
  1. Launch the game with Special K enabled.
  2. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  3. Expand Window Management > Input/Output Behavior and set Cursor Boundaries to Keep Inside Window.
  4. Restart the game to confirm everything is working as intended.

Haptic feedback

The control panel of Special K uses haptic UI feedback; this can cause a controller to rumble even if the keyboard/mouse is being used to navigate the UI.
Toggle haptic feedback:
  1. Launch the game with Special K enabled.
  2. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  3. Expand Input Management > Gamepad and toggle the following settings as desired:
    • Haptic UI Feedback affects only the built-in UI feedback of Special K.
    • Disable ALL Rumble affects all haptic feedback.
  4. Press Ctrl+ Shift+← Backspace to close the control panel of Special K.

Disable type(s) of input

This will block the game from receiving input of the blocked type. It can be used to e.g. prevent input devices from messing with the game. The block only affects the game itself and not Special K.
Instructions
  1. Launch the game with Special K enabled.
  2. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  3. Expand Input Management > Enable / Disable Devices and disable the desired type of input:
    • Disable Mouse Input to Game
    • Disable Keyboard Input to Game
    • Disable Gamepad Input to Game
  4. Press Ctrl+ Shift+← Backspace to close the control panel of Special K.

Audio settings

Template:Audio settings

Localizations

Language UI Audio Sub Notes
English

Separate volume controls

Special K allows muting or changing the volume per individual speakers for a game.
While using a 7.1 audio output device (virtual or physical) this can be helpful to determine what surround sound a game supports.
Instructions
  1. Launch the game with Special K enabled.
  2. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  3. Expand Volume Management.
  4. All speakers used by the game will be listed, and the volume through each can be controlled or muted individually.
  5. Press Ctrl+ Shift+← Backspace to close the control panel of Special K.

Mute on focus lost

This will mute the game when it does not have focus.
Instructions
  1. Launch the game with Special K enabled.
  2. Press Ctrl+ Shift+← Backspace to open the control panel of Special K.
  3. Expand Window Management > Input/Output Behavior.
  4. Enable Mute Game.
  5. Press Ctrl+ Shift+← Backspace to close the control panel of Special K.

Other information

API

This refers to the APIs supported by and compatible with Special K as an injection point.
DirectInput 8 is also supported as an injection point.
Technical specs Supported Notes
Direct3D 8, 9, 11 D3D8 requires dgVoodoo plugin.
DirectDraw 7 Requires dgVoodoo plugin.
OpenGL 1, 2, 3, 4
Vulkan 1.0 Rendering is not available; manual edit of the config file is required.

Keybindings

General

Keyboard Controller Function
Ctrl+ Shift+← Backspace Back/Select+ Win Toggle the control panel
Ctrl+ Shift+O N/A Toggle the on-screen display (OSD)
Hold Ctrl+ Shift while launching game N/A Opens the injection compatibility options

Control Panel

Keyboard Controller Function
Caps Lock Hold Back/Select for 0.5 seconds Toggle exclusive input mode (game vs. control panel)
+++ +++ Cycle through UI items
Enter A / × Activate selected item
Ctrl+ Shift+← Backspace B / ○ Exit control panel
Ctrl+Alt++++
(exclusive keyboard mode only)
X / □+Left Analog Stick Move the control panel window

On-Screen Display (OSD)

Color and scale config is stored in Documents\My Mods\SpecialK\Global\osd.ini
Keyboard Controller Function
Ctrl+ Shift+O N/A Toggle the on-screen display (OSD)
Ctrl+ Shift++ / - N/A Resize the on-screen display (OSD)
Ctrl+ Shift+F N/A Toggle framerate counter
Ctrl+ Shift+T N/A Toogle clock / version
Ctrl+ Shift+G N/A Toggle GPU monitor
Ctrl+ Shift+C N/A Toggle CPU monitor
Ctrl+ Shift+M N/A Toggle memory monitor
Ctrl+ Shift+I N/A Toggle I/O monitor
Ctrl+ Shift+D N/A Toggle disk monitor
Ctrl+ Shift+P N/A Toggle page file monitor
Ctrl+ Shift+R N/A Toggle D3D11 shader analytics

Advanced

Keyboard Controller Function
Ctrl+ Shift+Tab N/A Toggle the command console. See the console documentation for more information.

System requirements

Requires Visual C++ 2017 Redistributables (32-bit, 64-bit) and the DirectX End-User Runtime.
Windows 7 also requires KB2670838 and KB2533623, although one/both might be superseeded by another already installed update(s).
Windows
Minimum Recommended
Operating system (OS) 7
Processor (CPU)
System memory (RAM)
Hard disk drive (HDD) 150 MB
Video card (GPU) DirectX 11 compatible


References