137 lines
3.1 KiB
Lua
137 lines
3.1 KiB
Lua
|
|
require(GlobalDependencys:GetDependency("StandardBase"):GetPackageName())
|
||
|
|
|
||
|
|
--GAME VARS
|
||
|
|
fDefaultAspectRatio = 1.78
|
||
|
|
|
||
|
|
--ControlVars
|
||
|
|
bFixEnabled = true
|
||
|
|
bDOF = true
|
||
|
|
|
||
|
|
--PROCESS VARS
|
||
|
|
Process_FriendlyName = Module:GetFriendlyName()
|
||
|
|
Process_WindowName = "*"
|
||
|
|
Process_ClassName = "*"
|
||
|
|
Process_EXEName = "Spider-Man2.exe"
|
||
|
|
|
||
|
|
--INJECTION BEHAVIOUR
|
||
|
|
InjectDelay = 500
|
||
|
|
WriteInterval = 500
|
||
|
|
SearchInterval = 500
|
||
|
|
SuspendThread = true
|
||
|
|
|
||
|
|
--Name Manual/Auto/Hybrid Steam/Origin/Any IncludeFile:Configure;Enable;Periodic;Disable;
|
||
|
|
SupportedVersions = {
|
||
|
|
{"Automatically Detect", "Hybrid", "Any", "Configure_SignatureScan;Enable_Inject;Periodic;Disable_Inject;"},
|
||
|
|
}
|
||
|
|
|
||
|
|
function Init_Controls()
|
||
|
|
DefaultControls.AddHeader("Header_FixesEnableDisable","Individual Fixes",245,70,210,17)
|
||
|
|
|
||
|
|
DefaultControls.AddHeader("Header_FOV","HUD ar fine adjustment",15,70,210,17)
|
||
|
|
DefaultControls.AddFixToggle("CKDOFFix_Enable","Depth of field fix","CKDOFFix_Changed",255,101,180,14)
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
function Configure_SignatureScan()
|
||
|
|
|
||
|
|
local tAddress = HackTool:AddAddress("DOF")
|
||
|
|
if HackTool:SignatureScan("C5 FA ?? ?? ?? ?? ?? ?? C4 C1 ?? ?? ?? 0F 86 ?? ?? ?? ?? 44",tAddress,PAGE_EXECUTE_READ,0x0,Process_EXEName) == 0 then
|
||
|
|
return ErrorOccurred(string.format(SigScanError,tAddress:GetName()))
|
||
|
|
else
|
||
|
|
print( tAddress:GetInfo(TYPE_ADDRESS) )
|
||
|
|
--"Spider-Man2.exe"+2CFED7F - 0F 8D 2F 01 00 00 - jnl "Spider-Man2.exe"+2CFEEB4
|
||
|
|
--"Spider-Man2.exe"+2CFED85 - C6 86 3A 09 00 00 01 - mov byte ptr [rsi+0000093A],01
|
||
|
|
--"Spider-Man2.exe"+2CFED8C - C5 FA 10 B7 D0 1B 00 00 - vmovss xmm6,[rdi+00001BD0]
|
||
|
|
--"Spider-Man2.exe"+2CFED94 - C4 C1 78 2F F2 - vcomiss xmm6,xmm10
|
||
|
|
--"Spider-Man2.exe"+2CFED99 - 0F 86 8D 00 00 00 - jbe "Spider-Man2.exe"+2CFEE2C
|
||
|
|
end
|
||
|
|
|
||
|
|
return true
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
|
||
|
|
function Enable_Inject()
|
||
|
|
|
||
|
|
ResolutionChanged()
|
||
|
|
|
||
|
|
local asm = [[
|
||
|
|
|
||
|
|
(codecave:jmp)DOF,DOF_cc:
|
||
|
|
movss xmm6,[disabledDOF]
|
||
|
|
jmp %returnaddress%
|
||
|
|
%end%
|
||
|
|
|
||
|
|
disabledDOF: (float)0
|
||
|
|
|
||
|
|
]]
|
||
|
|
|
||
|
|
RemoveAVXInstructions()
|
||
|
|
|
||
|
|
if HackTool:CompileAssembly(asm,"MapAspectRatio") == nil then
|
||
|
|
RestoreAVXInstructions()
|
||
|
|
return ErrorOccurred("Assembly compilation failed...")
|
||
|
|
else
|
||
|
|
RestoreAVXInstructions()
|
||
|
|
Toggle_CodeCave("DOF_cc",bDOF)
|
||
|
|
end
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
function Periodic()
|
||
|
|
end
|
||
|
|
|
||
|
|
function CKDOFFix_Changed(Sender)
|
||
|
|
|
||
|
|
bDOF = Toggle_CheckFix(Sender)
|
||
|
|
Toggle_CodeCave("DOF_cc",bDOF)
|
||
|
|
ForceUpdate()
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
function Disable_Inject()
|
||
|
|
|
||
|
|
CleanUp()
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
function RemoveAVXInstructions()
|
||
|
|
|
||
|
|
local tSuspendedThreadID = HackTool:SuspendAttachedThread()
|
||
|
|
|
||
|
|
local tAddress = HackTool:GetAddress("DOF")
|
||
|
|
tAddress:WriteByte(0xF3,0)
|
||
|
|
tAddress:WriteByte(0x0F,1)
|
||
|
|
|
||
|
|
HackTool:ResumeThread(tSuspendedThreadID)
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
function RestoreAVXInstructions()
|
||
|
|
|
||
|
|
local tSuspendedThreadID = HackTool:SuspendAttachedThread()
|
||
|
|
|
||
|
|
local tAddress = HackTool:GetAddress("DOF")
|
||
|
|
tAddress:WriteByte(0xC5,0)
|
||
|
|
tAddress:WriteByte(0xFA,1)
|
||
|
|
|
||
|
|
|
||
|
|
HackTool:ResumeThread(tSuspendedThreadID)
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
function ResolutionChanged()
|
||
|
|
|
||
|
|
SyncDisplayDetection()
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
function Init()
|
||
|
|
Init_BaseControls()
|
||
|
|
Init_Controls()
|
||
|
|
end
|
||
|
|
|
||
|
|
function DeInit()
|
||
|
|
DisableFix()
|
||
|
|
end
|