From d7b909977866b2f4c102a99f03b5a16feecf1aa0 Mon Sep 17 00:00:00 2001 From: CarlPoppa Date: Sat, 18 Oct 2025 21:42:45 +0100 Subject: [PATCH 1/2] Add legacy graphics AOB scan --- pkg/memory/offset.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkg/memory/offset.go b/pkg/memory/offset.go index 60268c3..56820ba 100644 --- a/pkg/memory/offset.go +++ b/pkg/memory/offset.go @@ -19,6 +19,7 @@ type Offset struct { KeyBindingsSkillsOffset uintptr TZ uintptr Quests uintptr + LegacyGraphics uintptr } func calculateOffsets(process *Process) Offset { @@ -99,6 +100,11 @@ func calculateOffsets(process *Process) Offset { questOffset := uintptr(binary.LittleEndian.Uint32(bytes)) questDataOffset := questOffset + 1 + // LegacyGraphics + pattern = process.FindPattern(memory, "\x80\x3D\x00\x00\x00\x00\x00\x48\x8D\x54\x24\x30", "xx?????xxxxx") + legacyGfxPtr := uintptr(process.ReadUInt(pattern+2, Uint32)) + legacyGfxOffset := pattern - process.moduleBaseAddressPtr + 7 + legacyGfxPtr + return Offset{ GameData: gameDataOffset, UnitTable: unitTableOffset, @@ -114,5 +120,6 @@ func calculateOffsets(process *Process) Offset { KeyBindingsSkillsOffset: keyBindingsSkillsOffset, TZ: tzOffset, Quests: questDataOffset, + LegacyGraphics: legacyGfxOffset, } } From 53b61d0d55d494dba065f21ad15865d6dfef9fdb Mon Sep 17 00:00:00 2001 From: CarlPoppa Date: Sat, 18 Oct 2025 21:43:10 +0100 Subject: [PATCH 2/2] Use legacy graphics AOB scan in game_reader --- pkg/memory/game_reader.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/memory/game_reader.go b/pkg/memory/game_reader.go index 9679c44..aa2ee5b 100644 --- a/pkg/memory/game_reader.go +++ b/pkg/memory/game_reader.go @@ -314,7 +314,7 @@ func (gd *GameReader) GetSelectedCharacterName() string { } func (gd *GameReader) LegacyGraphics() bool { - return gd.ReadUInt(gd.Process.moduleBaseAddressPtr+0x22D845F, Uint8) != 0 + return gd.ReadUInt(gd.Process.moduleBaseAddressPtr+gd.offset.LegacyGraphics, Uint8) != 0 } func (gd *GameReader) IsOnline() bool {