Compare commits
4 Commits
68b044ce05
...
32d70926db
| Author | SHA1 | Date | |
|---|---|---|---|
| 32d70926db | |||
| 3ed6f16964 | |||
| 3216bf016d | |||
| 08dbd3445b |
@@ -57,6 +57,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UEngine", "UEngine\UEngine.
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Silent Hill f", "SilentHillF\SilentHillf.vcxproj", "{03B6F97F-7AF9-4A21-8DC1-EAE3E873DDE0}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "includes", "includes", "{994ABCB9-8633-4AD7-8035-48BB86A7F725}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
external\includes\GameInformations.h = external\includes\GameInformations.h
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x64 = Debug|x64
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
<PrecompiledHeaderFile>
|
||||
</PrecompiledHeaderFile>
|
||||
<PrecompiledHeaderOutputFile />
|
||||
<AdditionalIncludeDirectories>$(SolutionDir)Memory;$(SolutionDir)Maths;$(SolutionDir)Obfuscate;$(SolutionDir)external;$(SolutionDir)external\safetyhook\include;$(SolutionDir)external\zydis\dependencies\zycore\include;$(SolutionDir)external\zydis\include;$(SolutionDir)zydis\src;$(SolutionDir)external\MinHook\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(SolutionDir)Memory;$(SolutionDir)Maths;$(SolutionDir)Obfuscate;$(SolutionDir)external\includes;$(SolutionDir)external;$(SolutionDir)external\safetyhook\include;$(SolutionDir)external\zydis\dependencies\zycore\include;$(SolutionDir)external\zydis\include;$(SolutionDir)zydis\src;$(SolutionDir)external\MinHook\include;%(AdditionalIncludeDirectories);$(SolutionDir)external\includes;$(SolutionDir)external\includes</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<LanguageStandard>stdcpp23</LanguageStandard>
|
||||
@@ -125,7 +125,7 @@
|
||||
<PrecompiledHeaderFile>
|
||||
</PrecompiledHeaderFile>
|
||||
<PrecompiledHeaderOutputFile />
|
||||
<AdditionalIncludeDirectories>$(SolutionDir)Memory;$(SolutionDir)Maths;$(SolutionDir)Obfuscate;$(SolutionDir)external;$(SolutionDir)external\safetyhook\include;$(SolutionDir)external\zydis\dependencies\zycore\include;$(SolutionDir)external\zydis\include;$(SolutionDir)zydis\src;$(SolutionDir)external\MinHook\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(SolutionDir)Memory;$(SolutionDir)Maths;$(SolutionDir)Obfuscate;$(SolutionDir)external\includes;$(SolutionDir)external;$(SolutionDir)external\safetyhook\include;$(SolutionDir)external\zydis\dependencies\zycore\include;$(SolutionDir)external\zydis\include;$(SolutionDir)zydis\src;$(SolutionDir)external\MinHook\include;%(AdditionalIncludeDirectories);$(SolutionDir)external\includes;$(SolutionDir)external\includes</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<LanguageStandard>stdcpp23</LanguageStandard>
|
||||
@@ -150,7 +150,7 @@
|
||||
<PrecompiledHeaderFile>
|
||||
</PrecompiledHeaderFile>
|
||||
<PrecompiledHeaderOutputFile />
|
||||
<AdditionalIncludeDirectories>$(SolutionDir)Memory;$(SolutionDir)Maths;$(SolutionDir)Obfuscate;$(SolutionDir)external;$(SolutionDir)external\safetyhook\include;$(SolutionDir)external\zydis\dependencies\zycore\include;$(SolutionDir)external\zydis\include;$(SolutionDir)zydis\src;$(SolutionDir)external\MinHook\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(SolutionDir)Memory;$(SolutionDir)Maths;$(SolutionDir)Obfuscate;$(SolutionDir)external\includes;$(SolutionDir)external;$(SolutionDir)external\safetyhook\include;$(SolutionDir)external\zydis\dependencies\zycore\include;$(SolutionDir)external\zydis\include;$(SolutionDir)zydis\src;$(SolutionDir)external\MinHook\include;%(AdditionalIncludeDirectories);$(SolutionDir)external\includes;$(SolutionDir)external\includes</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<LanguageStandard>stdcpp23</LanguageStandard>
|
||||
@@ -177,7 +177,7 @@
|
||||
<PrecompiledHeaderFile>
|
||||
</PrecompiledHeaderFile>
|
||||
<PrecompiledHeaderOutputFile />
|
||||
<AdditionalIncludeDirectories>$(SolutionDir)Memory;$(SolutionDir)Maths;$(SolutionDir)Obfuscate;$(SolutionDir)UEngine;$(SolutionDir)external;$(SolutionDir)external\safetyhook\include;$(SolutionDir)external\zydis\dependencies\zycore\include;$(SolutionDir)external\zydis\include;$(SolutionDir)zydis\src;$(SolutionDir)external\MinHook\include;$(ProjectDir)SDK;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(SolutionDir)Memory;$(SolutionDir)Maths;$(SolutionDir)Obfuscate;$(SolutionDir)external\includes;$(SolutionDir)UEngine;$(SolutionDir)external;$(SolutionDir)external\safetyhook\include;$(SolutionDir)external\zydis\dependencies\zycore\include;$(SolutionDir)external\zydis\include;$(SolutionDir)zydis\src;$(SolutionDir)external\MinHook\include;$(ProjectDir)SDK;%(AdditionalIncludeDirectories);$(SolutionDir)external\includes;$(SolutionDir)external\includes</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<LanguageStandard>stdcpp23</LanguageStandard>
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include <spdlog/sinks/rotating_file_sink.h>
|
||||
#include <filesystem>
|
||||
#include <safetyhook.hpp>
|
||||
#include "GameInformations.h"
|
||||
#include "ObfuscateString.h"
|
||||
#include "Memory.hpp";
|
||||
#include "Maths.hpp";
|
||||
@@ -21,11 +22,6 @@ const float BASE_ASPECT = 1.777777791;
|
||||
// Logger
|
||||
std::shared_ptr<spdlog::logger> logger;
|
||||
|
||||
// Screen informations
|
||||
static int screenWidth = GetSystemMetrics(SM_CXSCREEN);
|
||||
static int screenHeight = GetSystemMetrics(SM_CYSCREEN);
|
||||
static float aspectRatio = (float)screenWidth / screenHeight;
|
||||
|
||||
// Plugin states
|
||||
static bool AOBScanDone = false;
|
||||
static bool g_fix_enabled = false;
|
||||
@@ -39,9 +35,10 @@ static int g_AdditionalFOVValue = 0;
|
||||
static float g_CameraDistance = 1.f;
|
||||
|
||||
// Shared values
|
||||
static float g_reference_FOV = 65.f;
|
||||
static float g_FOV_In = 0.f;
|
||||
static float g_FOV_Out = 0.f;
|
||||
static float g_FOV_In = 65.f;
|
||||
static float g_FOV_Out = 65.f;
|
||||
static float g_Camera_In = 230.f;
|
||||
static float g_Camera_Out = 230.f;
|
||||
static bool g_Console_Enabled = false;
|
||||
|
||||
// AOB Unreal Engine offsets addresses
|
||||
@@ -175,7 +172,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled)
|
||||
}
|
||||
}
|
||||
|
||||
if (FOVaddress && DOFaddress && CAaddress && Vignettingaddress && VolumetricFogaddress) {
|
||||
if (FOVaddress && Cameraaddress && DOFaddress && CAaddress && Vignettingaddress && VolumetricFogaddress) {
|
||||
logger->info("All AOB signatures found. Ready to patch...");
|
||||
AOBScanDone = true;
|
||||
}
|
||||
@@ -290,16 +287,14 @@ extern "C" __declspec(dllexport) void SetCameraDistance(float multiplier) {
|
||||
}
|
||||
|
||||
// Getters for Reshade addon call
|
||||
extern "C" __declspec(dllexport) float GetFOVIn() {
|
||||
return g_FOV_In;
|
||||
}
|
||||
extern "C" __declspec(dllexport) void GetGameInfos(GameInfos* infos) {
|
||||
if (!infos) return;
|
||||
|
||||
extern "C" __declspec(dllexport) float GetFOVOut() {
|
||||
return g_FOV_Out;
|
||||
}
|
||||
|
||||
extern "C" __declspec(dllexport) bool GetConsoleEnabled() {
|
||||
return g_Console_Enabled;
|
||||
infos->FOVIn = g_FOV_In;
|
||||
infos->FOVOut = g_FOV_Out;
|
||||
infos->cameraIn = g_Camera_In;
|
||||
infos->cameraOut = g_Camera_Out;
|
||||
infos->consoleEnabled = g_Console_Enabled;
|
||||
}
|
||||
|
||||
// Code injection functions
|
||||
@@ -328,7 +323,9 @@ static void CameraFixEnabled() {
|
||||
if (!CameraHook) {
|
||||
CameraHook = safetyhook::create_mid(Cameraaddress,
|
||||
[](SafetyHookContext& ctx) {
|
||||
g_Camera_In = ctx.xmm0.f32[0];
|
||||
ctx.xmm0.f32[0] *= g_CameraDistance;
|
||||
g_Camera_Out = ctx.xmm0.f32[0];
|
||||
});
|
||||
}
|
||||
else CameraHook.enable();
|
||||
|
||||
10
external/includes/GameInformations.h
vendored
Normal file
10
external/includes/GameInformations.h
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
#pragma once
|
||||
|
||||
// Shared structure values with Core dll
|
||||
struct GameInfos {
|
||||
float FOVIn;
|
||||
float FOVOut;
|
||||
float cameraIn;
|
||||
float cameraOut;
|
||||
bool consoleEnabled;
|
||||
};
|
||||
Reference in New Issue
Block a user