Added game modifications

Added global Game Speed modifier
Added Player Speed modifier
Settings are saved and loaded from conf now
Fixed a potential issue with unlimited frame rate unlock
Fixed a potential issue when user tried to enable borderless while in minimized fullscreen
Improved initial load time til game is patchable
Refactor
Cleanup
This commit is contained in:
uberhalit 2019-03-30 21:28:17 +01:00
parent 35dd34c9c5
commit c8696f0a45
10 changed files with 1103 additions and 322 deletions

107
README.md
View file

@ -1,30 +1,35 @@
# Sekiro FPS Unlocker and more
A small utility to remove frame rate limit, add custom resolutions with 21/9 widescreen support, increase field of view (FOV) (credits to jackfuste) and borderless window mode for [Sekiro: Shadows Die Twice](https://www.sekirothegame.com/) written in C#.
Patches games memory while running, does not modify any game files. works with every game version (legit steam & oh-not-so-legit), should work with all future updates.
A small utility to remove frame rate limit, add custom resolutions with 21/9 widescreen support, change field of view (FOV), borderless window mode and various game modifications for [Sekiro: Shadows Die Twice](https://www.sekirothegame.com/) written in C#.
Patches games memory while running, does not modify any game files. Wrks with every game version (legit steam & oh-not-so-legit), should work with all future updates. Also available [Nexus Mods](https://www.nexusmods.com/sekiro/mods/13/).
## Download
**[Get the latest release here](https://github.com/uberhalit/SekiroFpsUnlockAndMore/releases)**
### See it in action:
[![Video preview](https://camo.githubusercontent.com/99b882828d8bb814a126282d67f0394460259df0/68747470733a2f2f692e696d6775722e636f6d2f4b4e4674454d772e706e67)](https://giant.gfycat.com/DevotedArtisticKingsnake.webm)
[![Video preview](https://camo.githubusercontent.com/784859be34b212aeebd5bac1baf47b9bffdd36db/68747470733a2f2f692e696d6775722e636f6d2f4d4d724f62487a2e706e67)](https://giant.gfycat.com/PhonyReadyGreatargus.webm)
## Features
* does not modify any game files, RAM patches only
* works with legit, unmodified steam version as well as with unpacked, not-so-legit versions
* GSYNC and FreeSync support even in borderless window mode
* unlock frame rate (remove FPS limit) by setting a new custom limit or setting lock to unlimited
* add a custom resolution, 21/9 widescreen supported (will overwrite the default 1920x1080 resolution, HUD limited to 16/9)
* increase field of view (FOV) (credits to jackfuste)
* unlock frame rate (remove FPS limit) by setting a new custom limit
* add a custom resolution, 21/9 widescreen supported (will overwrite the default 1920x1080 / 1280x720 resolution, HUD limited to 16/9)
* increase and decrease field of view (FOV)
* set the game to borderless window mode
* game modifications
* global game speed modifier
* player speed modifier
* automatically patch game on startup
* seamlessly switch between windowed, borderless and borderless fullscreen
* hotkey for patching while in (borderless) window mode
## Usage
The following graphical guide has to be done if you want to unlock the game's framerate or play on a highter refresh rate in fullscreen. If you do not wish to use that feature you can scoll down further to the guides on all other features. The graphic setup has to be done only once but as the patcher hot-patches the memory **you have to start the patcher every time you want use any of its features**.
The game enforces VSYNC and forces 60 Hz in fullscreen even on 144 Hz monitors so we have to override these.
#### 60 Hz monitors: disable VSYNC via driver (use 'Enhanced Sync' on AMD) and use fullscreen, see guide below
#### high refresh rate monitors: use borderless or force monitor to always use highest available refresh rate and then use fullscreen, see guide below
@ -35,20 +40,31 @@ The game enforces VSYNC and forces 60 Hz in fullscreen even on 144 Hz monitors s
3. **Make sure your monitor is set to the highest Refresh rate possible:**
4. [![Make sure your monitor is set to the highest Refresh rate possible](https://camo.githubusercontent.com/331eb420bee67f4e57d7e46601bfd51f462de68f/68747470733a2f2f692e696d6775722e636f6d2f625667767155372e706e67)](#)
5. Navigate to `3D Settings -> Manage 3D settings -> Program Settings`
6. Select Sekiro from the dropdown or add it manually if it's missing: `Add -> Select Sekiro -> Add Selected Program`
7. **Set `Vertical sync` to `Off`**
8. **Set `Preferred refresh rate` to `Highest available`**
9. [![Vertical sync Off and Preferred refresh rate Highest available](https://camo.githubusercontent.com/bae53a6199d5a6fc2b8e0c4f0bfab322ebecd648/68747470733a2f2f692e696d6775722e636f6d2f35446f526d55452e706e67)](#)
10. Hit apply and close Nvidia Control Panel
11. Start `Sekiro FPS Unlocker and more` and set FPS lock to your desired framerate
12. Start the game and use fullscreen or borderless window mode
13. These steps will force disable vsync so it won't limit your fps to monitor refresh rate and also force the monitor to ignore the games request to run at 60 Hz if in fullscreen
6. **Check if you already have a Sekiro Profile in dropdown and if so DELETE IT**
7. Manually add Sekiro into a clean new profile: `Add -> Browse ->` Navigate to `sekiro.exe` and select it
8. **Make sure that there is a file path to Sekiro and that it is indeed correct and you haven't loaded a premade (empty) profile**
9. **Set `Preferred refresh rate` to `Highest available`**
10. **Set `Vertical sync` to `Off`**
11. [![Preferred refresh rate Highest available and Vertical sync Off](https://camo.githubusercontent.com/209678e46eb63c150abf394894ef24a75bb664d0/68747470733a2f2f692e696d6775722e636f6d2f56634d754f33362e706e67)](#)
12. Hit apply and close Nvidia Control Panel
13. Start `Sekiro FPS Unlocker and more` and set FPS lock to your desired framerate
14. Start the game and use fullscreen or borderless window mode
15. These steps will force disable vsync so it won't limit your fps to monitor refresh rate and also force the monitor to ignore the games request to run at 60 Hz if in fullscreen
#### If you do not have 'Preferred refresh rate' or 'Vertical sync' follow these steps (Nvidia):
1. Download and extract the [Nvidia Inspector](https://www.techpowerup.com/download/nvidia-inspector/)
2. Start the Nvidia Profile Inspector
3. Under `2 - Sync and Refresh` set `Prefered Refreshrate` to `Highest available` and `Vertical Sync` to `Force off`
4. [![Vertical sync Off and Preferred refresh rate Highest available](https://camo.githubusercontent.com/560355d19113ad3e6782c75cae992e7c91a4e0fd/68747470733a2f2f692e696d6775722e636f6d2f4657424b57536e2e706e67)](#)
5. Hit `Apply changes` and you are good to go
1. **Delete the Sekiro Profile in Nvidia Control panel as otherwise it will block all settings from Profile Inspector**
2. Hit apply and close the Nvidia Control panel
3. Download and extract the [Nvidia Inspector](https://www.techpowerup.com/download/nvidia-inspector/)
4. Start the Nvidia Profile Inspector
5. **Check if there already is a profile for Sekiro and if so DELETE IT using the red 'X' button**
6. Press the yellow start icon in the menu bar to create a new Profile (1)
7. [![Vertical sync Off and Preferred refresh rate Highest available](https://camo.githubusercontent.com/531be3614b0742e9065f8c2a19df7e31afcdc7ed/68747470733a2f2f692e696d6775722e636f6d2f6f75664a7239632e706e67)](#)
8. Name it `Sekiro` and select it in dropdown
9. Press the blue window icon with the plus symbol to add an application to this profile(2)
10. Change file type to `Application Absolute Path`, navigate to your `sekiro.exe` and select it
11. [![Application Absolute Path](https://camo.githubusercontent.com/0bb8ace024658dfcb31c5f3347df1505854819ec/68747470733a2f2f692e696d6775722e636f6d2f545669495357562e706e67)](#)
12. Make sure that the file path to the game is correct (3)
13. Under `2 - Sync and Refresh` set `Prefered Refreshrate` to `Highest available` and `Vertical Sync` to `Force off` (4)
14. Hit `Apply changes` and you are good to go (5)
### Follow these steps on AMD:
1. Right click on Desktop -> `Display settings`
@ -64,34 +80,33 @@ The game enforces VSYNC and forces 60 Hz in fullscreen even on 144 Hz monitors s
11. **Launch the game in windowed mode, then switch to fullscreen once in game**
12. The last step is important as AMD somehow does not correctly disable VSYNC otherwise
#### If you do not have 'Enhanced Sync' follow these steps (AMD):
1. Try setting `Wait for Vertical Refresh` to `Off` instead:
1. Try setting `Wait for Vertical Refresh` to `Always off` instead:
2. [![Wait for Vertical Refresh Off](https://camo.githubusercontent.com/c06be2d7a7be65e379996eee66685209b276dcea/68747470733a2f2f692e696d6775722e636f6d2f417a7a716545332e706e67)](#)
3. Be aware however that it seems like AMDs latest drivers are buggy in that regard
### To play the game with GSYNC do these additional steps (Nvidia):
1. Under Nvidia Control Panel navigate to `3D Settings -> Manage 3D settings -> Program Settings -> Sekiro`
2. Set `Monitor Technology` to `G-SYNC`
3. Make sure that `Preferred refresh rate` is still set to `Highest available`
4. Make sure that `Vertical sync` is still set to `Off`
3. Set `Vertical sync` to `Off` again as enabling G-SYNC re-enables it
4. Make sure that `Preferred refresh rate` is still set to `Highest available`
5. [![Control Panel](https://camo.githubusercontent.com/b7b491c24020fd3eca41d857bd58b1c0c2ee037f/68747470733a2f2f692e696d6775722e636f6d2f614a41744444632e706e67)](#)
6. Don't forget to Apply and close Nvidia Control Panel
7. Use a 3rd party frame rate limiter like [RTSS](https://www.guru3d.com/files-details/rtss-rivatuner-statistics-server-download.html) and set a frame rate limit just a few fps below your monitor refresh rate, on a 144Hz Monitor use 138
8. Start `Sekiro FPS Unlocker and more` and set FPS lock to your monitors refresh rate
9. Start the game and set it to Fullscreen
10. Enjoy perfectly tearing free variable high refresh rates without VSYNC
The graphic setup has to be done only once but as the patcher hot-patches the memory **you have to start the patcher every time you want to unlock frame rate etc**.
6. If you do not have `Preferred refresh rate` or `Vertical sync` see the guide above on how to use the Nvidia Profile Inspector
7. Don't forget to Apply and close Nvidia Control Panel
8. Use a 3rd party frame rate limiter like [RTSS](https://www.guru3d.com/files-details/rtss-rivatuner-statistics-server-download.html) and set a frame rate limit just a few fps below your monitor refresh rate, on a 144Hz Monitor use 138
9. Start `Sekiro FPS Unlocker and more` and set FPS lock to your monitors refresh rate
10. Start the game and set it to Fullscreen
11. Enjoy perfectly tearing free variable high refresh rates without VSYNC
### To add a custom resolution
1. Start the game
2. Start `Sekiro FPS Unlocker and more`, set you desired resolution and enable it by ticking the check box
3. Set your custom resolution in the graphical settings, be aware that the ingame HUD will be limited to 16/9
3. Set your custom resolution in the graphical settings
4. Be aware that your monitor has to natively support this resolution and the ingame HUD will be limited to 16/9
### To use the FOV changer
1. Start the game
2. Load up your save game
3. Start `Sekiro FPS Unlocker and more`, set you desired FOV value and enable it by ticking the check box
4. If you reload a save FOV will reset so patch game manually again
### To use borderless window mode:
1. Start the game
@ -100,19 +115,25 @@ The graphic setup has to be done only once but as the patcher hot-patches the me
4. Start `Sekiro FPS Unlocker and more` and enable borderless window mode
5. If you want fullscreen borderless enable `Fullscreen stretch`
### To use any of the game modifications
1. Start the game
2. Load up your save game
3. Start `Sekiro FPS Unlocker and more` and expand `Game modifications`
4. Set your desired values and then tick the checkbox you'd wish to enable
## Preview
[![Sekiro FPS Unlocker and more](https://camo.githubusercontent.com/3e7ebacca20a13e6325695fb870e7c2c97e7c2d4/68747470733a2f2f692e696d6775722e636f6d2f667445436150332e706e67)](#)
[![Sekiro FPS Unlocker and more](https://camo.githubusercontent.com/275b23b532ec7dcfc18a83d0ba9e8ae1f20b9e20/68747470733a2f2f692e696d6775722e636f6d2f615179334869392e706e67)](#)
### Unlocked framerate
[![Sekiro FPS Unlocker and more](https://camo.githubusercontent.com/cd23c8ff94e7cd777476d01d1be608df26fab26a/68747470733a2f2f692e696d6775722e636f6d2f766632393152532e706e67)](#)
[![Sekiro FPS Unlocker and more](https://camo.githubusercontent.com/2c22eea5a618066716cdd1d45274720814592172/68747470733a2f2f692e696d6775722e636f6d2f534e636b6445732e706e67)](#)
### Increased FOV and borderless window:
[![FOV increase on the fly and borderless window](https://camo.githubusercontent.com/3e446f64e61406027fbd73cf248336cafd7c6ff1/68747470733a2f2f692e696d6775722e636f6d2f5248544b4e6a522e706e67)](#)
### Increased FOV borderless window and 90% game speed:
[![FOV increase on the fly and borderless window](https://camo.githubusercontent.com/fbca15acc147937ccc1b98a9fc0850c06cff4476/68747470733a2f2f692e696d6775722e636f6d2f536e6f394e39302e706e67)](#)
## Prerequisites
* .NET Framework 4.0
* .NET Framework 4.5
* administrative privileges (for patching)
* 64 bit OS
@ -130,7 +151,8 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
## Credits
* jackfuste for FOV findings and running speed fix
* Zullie the Witch#7202 for game speed and player speed modifier offsets
* jackfuste for FOV offset and basic running speed fix
* TyChii93#2376 for AMD and widescreen testing
* [Darius Dan](http://www.dariusdan.com) for the icon
@ -139,12 +161,19 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
* the game has forced VSYNC so unlocking the frame rate when your monitor has 60Hz will do nothing. You'll have to disable VSYNC in Nvidia Control Panel or AMD Radeon Settings first
* in fullscreen the game forces the monitor to 60 Hz so you'll have to handle this with driver override too, see Usage
* your monitor has to support your custom resolution otherwise it won't show up correctly
* due to how the game renders altering FOV will not move the HUD
* the HUD is limited to 16/9 even on 21/9 resolutions
* due to how the game renders altering HUD is limited to 16/9 even on 21/9 resolutions
* the hotkey won't work if the game runs in exclusive, true fullscreen mode
## Version History
* v1.1.0 (2019-03-30)
* Added game speed modifier (thanks to Zullie the Witch#7202 for offset)
* Added player speed modifier (thanks to Zullie the Witch#7202 for offset)
* Settings are saved and loaded from config file now
* FOV will now stick even after save game load
* Fixed a potential issue with unlimited frame rate unlock
* Fixed a potential issue when user tried to enable borderless while in minimized fullscreen
* Improved initial load time til game is patchable
* v1.0.2 (2019-03-26)
* Added option to reduce FOV (request)
* Added option to stretch borderless window to fullscreen regardless of window resolution