Disable unstable GPS multiplier hooks
This commit is contained in:
@@ -95,6 +95,7 @@ constexpr uint32_t kGameStateRunning = 2;
|
|||||||
constexpr bool kEnableVerboseJournalListenerHooks = false;
|
constexpr bool kEnableVerboseJournalListenerHooks = false;
|
||||||
constexpr bool kEnableVerboseRouteObserverHooks = false;
|
constexpr bool kEnableVerboseRouteObserverHooks = false;
|
||||||
constexpr bool kEnableVerboseMappinRouteState = false;
|
constexpr bool kEnableVerboseMappinRouteState = false;
|
||||||
|
constexpr bool kEnableGpsMultiplierHooks = false;
|
||||||
constexpr uintptr_t kGpsSystemTickRva = 0x0E6B62C;
|
constexpr uintptr_t kGpsSystemTickRva = 0x0E6B62C;
|
||||||
constexpr uintptr_t kJournalTrackEntryImplRva = 0x05944FC;
|
constexpr uintptr_t kJournalTrackEntryImplRva = 0x05944FC;
|
||||||
constexpr uintptr_t kJournalListenerArrayOffset = 0x210;
|
constexpr uintptr_t kJournalListenerArrayOffset = 0x210;
|
||||||
@@ -3932,12 +3933,15 @@ RED4EXT_C_EXPORT bool RED4EXT_CALL Main(RED4ext::v1::PluginHandle aHandle, RED4e
|
|||||||
reinterpret_cast<void**>(&gOriginalGpsSearch));
|
reinterpret_cast<void**>(&gOriginalGpsSearch));
|
||||||
AttachProbeHook("GPSEdgeCost 0x44f838", kGpsEdgeCostRva, reinterpret_cast<void*>(&DetourGpsEdgeCost),
|
AttachProbeHook("GPSEdgeCost 0x44f838", kGpsEdgeCostRva, reinterpret_cast<void*>(&DetourGpsEdgeCost),
|
||||||
reinterpret_cast<void**>(&gOriginalGpsEdgeCost));
|
reinterpret_cast<void**>(&gOriginalGpsEdgeCost));
|
||||||
AttachProbeHook("GPSAuxMultiplier 0x40bb00", kGpsAuxMultiplierRva,
|
if (kEnableGpsMultiplierHooks)
|
||||||
reinterpret_cast<void*>(&DetourGpsAuxMultiplier),
|
{
|
||||||
reinterpret_cast<void**>(&gOriginalGpsAuxMultiplier));
|
AttachProbeHook("GPSAuxMultiplier 0x40bb00", kGpsAuxMultiplierRva,
|
||||||
AttachProbeHook("GPSNodeMultiplier 0x40bb40", kGpsNodeMultiplierRva,
|
reinterpret_cast<void*>(&DetourGpsAuxMultiplier),
|
||||||
reinterpret_cast<void*>(&DetourGpsNodeMultiplier),
|
reinterpret_cast<void**>(&gOriginalGpsAuxMultiplier));
|
||||||
reinterpret_cast<void**>(&gOriginalGpsNodeMultiplier));
|
AttachProbeHook("GPSNodeMultiplier 0x40bb40", kGpsNodeMultiplierRva,
|
||||||
|
reinterpret_cast<void*>(&DetourGpsNodeMultiplier),
|
||||||
|
reinterpret_cast<void**>(&gOriginalGpsNodeMultiplier));
|
||||||
|
}
|
||||||
AttachProbeHook("GPSSystem/Tick", kGpsSystemTickRva, reinterpret_cast<void*>(&DetourGpsSystemTick),
|
AttachProbeHook("GPSSystem/Tick", kGpsSystemTickRva, reinterpret_cast<void*>(&DetourGpsSystemTick),
|
||||||
reinterpret_cast<void**>(&gOriginalGpsSystemTick));
|
reinterpret_cast<void**>(&gOriginalGpsSystemTick));
|
||||||
AttachProbeHook("JournalManager::TrackEntry impl", kJournalTrackEntryImplRva,
|
AttachProbeHook("JournalManager::TrackEntry impl", kJournalTrackEntryImplRva,
|
||||||
@@ -4060,8 +4064,11 @@ RED4EXT_C_EXPORT bool RED4EXT_CALL Main(RED4ext::v1::PluginHandle aHandle, RED4e
|
|||||||
DetachProbeHook("GPSRouteProducer 0x44cc7c", kGpsRouteProducerRva);
|
DetachProbeHook("GPSRouteProducer 0x44cc7c", kGpsRouteProducerRva);
|
||||||
DetachProbeHook("GPSSearch 0x44f054", kGpsSearchRva);
|
DetachProbeHook("GPSSearch 0x44f054", kGpsSearchRva);
|
||||||
DetachProbeHook("GPSEdgeCost 0x44f838", kGpsEdgeCostRva);
|
DetachProbeHook("GPSEdgeCost 0x44f838", kGpsEdgeCostRva);
|
||||||
DetachProbeHook("GPSAuxMultiplier 0x40bb00", kGpsAuxMultiplierRva);
|
if (kEnableGpsMultiplierHooks)
|
||||||
DetachProbeHook("GPSNodeMultiplier 0x40bb40", kGpsNodeMultiplierRva);
|
{
|
||||||
|
DetachProbeHook("GPSAuxMultiplier 0x40bb00", kGpsAuxMultiplierRva);
|
||||||
|
DetachProbeHook("GPSNodeMultiplier 0x40bb40", kGpsNodeMultiplierRva);
|
||||||
|
}
|
||||||
DetachProbeHook("GPSSystem/Tick", kGpsSystemTickRva);
|
DetachProbeHook("GPSSystem/Tick", kGpsSystemTickRva);
|
||||||
DetachProbeHook("JournalManager::TrackEntry impl", kJournalTrackEntryImplRva);
|
DetachProbeHook("JournalManager::TrackEntry impl", kJournalTrackEntryImplRva);
|
||||||
if (kEnableVerboseJournalListenerHooks)
|
if (kEnableVerboseJournalListenerHooks)
|
||||||
|
|||||||
Reference in New Issue
Block a user