From 7124ea379cdc6f1d9b67466aee89b3d1de2f8ec6 Mon Sep 17 00:00:00 2001 From: goat Date: Tue, 10 Dec 2019 23:12:39 +0900 Subject: [PATCH] fix: IconReplacer sigs for 5.15 WIP --- Dalamud/Game/Internal/Gui/IconReplacer.cs | 13 +++++++++---- .../Internal/Gui/IconReplacerAddressResolver.cs | 7 +++++-- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/Dalamud/Game/Internal/Gui/IconReplacer.cs b/Dalamud/Game/Internal/Gui/IconReplacer.cs index f320cba2c..bf12d4e60 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacer.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacer.cs @@ -35,11 +35,13 @@ namespace Dalamud.Game.Internal.Gui { this.Address = new IconReplacerAddressResolver(); this.Address.Setup(scanner); - this.byteBase = scanner.Module.BaseAddress; - this.comboTimer = byteBase + 0x1BB0B50; - this.lastComboMove = byteBase + 0x1BB0B54; - this.playerLevel = byteBase + 0x1C28FA8 + 0x78; + this.byteBase = scanner.Module.BaseAddress; + //this.comboTimer = byteBase + 0x1BB0B50; + this.comboTimer = scanner.ScanText("E8 ?? ?? ?? ?? 80 7E 21 00") + 0x178; + this.lastComboMove = this.comboTimer + 0x4; + //this.playerLevel = byteBase + 0x1C28FA8 + 0x78; + this.playerLevel = scanner.ScanText("E8 ?? ?? ?? ?? 88 45 EF") + 0x4D; CustomIDs = new HashSet(); VanillaIDs = new HashSet(); @@ -49,6 +51,9 @@ namespace Dalamud.Game.Internal.Gui { Log.Verbose("===== H O T B A R S ====="); Log.Verbose("IsIconReplaceable address {IsIconReplaceable}", Address.IsIconReplaceable); Log.Verbose("GetIcon address {GetIcon}", Address.GetIcon); + Log.Verbose("ComboTimer address {ComboTimer}", this.comboTimer); + Log.Verbose("LastComboMove address {LastComboMove}", this.lastComboMove); + Log.Verbose("PlayerLevel address {PlayerLevel}", this.playerLevel); this.iconHook = new Hook(this.Address.GetIcon, new OnGetIconDelegate(GetIconDetour), this); this.checkerHook = new Hook(this.Address.IsIconReplaceable, new OnCheckIsIconReplaceableDelegate(CheckIsIconReplaceableDetour), this); diff --git a/Dalamud/Game/Internal/Gui/IconReplacerAddressResolver.cs b/Dalamud/Game/Internal/Gui/IconReplacerAddressResolver.cs index dd84a7bfb..2fa72347b 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacerAddressResolver.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacerAddressResolver.cs @@ -10,8 +10,11 @@ namespace Dalamud.Game.Internal.Gui { public IntPtr IsIconReplaceable { get; private set; } protected override void Setup64Bit(SigScanner sig) { - this.GetIcon = sig.ScanText("48 89 5c 24 08 48 89 6c 24 10 48 89 74 24 18 57 48 83 ec 30 8b da be dd 1c 00 00 bd d3 0d 00 00"); - this.IsIconReplaceable = sig.ScanText("81 f9 2e 01 00 00 7f 39 81 f9 2d 01 00 00 0f 8d 11 02 00 00 83 c1 eb"); + //this.GetIcon = sig.ScanText("48 89 5c 24 08 48 89 6c 24 10 48 89 74 24 18 57 48 83 ec 30 8b da be dd 1c 00 00 bd d3 0d 00 00"); + this.GetIcon = sig.ScanText("E8 ?? ?? ?? ?? F6 DB 8B C8"); + + //this.IsIconReplaceable = sig.ScanText("81 f9 2e 01 00 00 7f 39 81 f9 2d 01 00 00 0f 8d 11 02 00 00 83 c1 eb"); + this.IsIconReplaceable = sig.ScanText("81 F9 ?? ?? ?? ?? 7F 39 81 F9 ?? ?? ?? ??"); } } }