diff --git a/cmake/gtav-classes.cmake b/cmake/gtav-classes.cmake index f1d40d09..a19f12f0 100644 --- a/cmake/gtav-classes.cmake +++ b/cmake/gtav-classes.cmake @@ -3,7 +3,7 @@ include(FetchContent) FetchContent_Declare( gtav_classes GIT_REPOSITORY https://github.com/Mr-X-GTA/GTAV-Classes-1.git - GIT_TAG 9fa80bd650d37afd70056ec0f0c987cbc62e8a74 + GIT_TAG af92615dd2246ebebfa5f4750ce478170dd97337 GIT_PROGRESS TRUE CONFIGURE_COMMAND "" BUILD_COMMAND "" diff --git a/src/hooking/hooking.hpp b/src/hooking/hooking.hpp index 8bbaeefc..4b4615cc 100644 --- a/src/hooking/hooking.hpp +++ b/src/hooking/hooking.hpp @@ -138,7 +138,7 @@ namespace big static int nt_query_virtual_memory(void* _this, HANDLE handle, PVOID base_addr, int info_class, MEMORY_BASIC_INFORMATION* info, int size, size_t* return_len); static int queue_dependency(void* a1, int a2, int64_t dependency); - static bool prepare_metric_for_sending(rage::json_serializer* bit_buffer, int unk, int time, rage::rlMetric* metric); + static bool prepare_metric_for_sending(rage::json_serializer* bit_buffer, bool* failed, char* unk, uint64_t time, rage::rlMetric* metric); static bool http_start_request(void* request, const char* uri); static bool received_array_update(rage::netArrayHandlerBase* array, CNetGamePlayer* sender, rage::datBitBuffer* buffer, int size, int16_t cycle); diff --git a/src/hooks/info/prepare_metric_for_sending.cpp b/src/hooks/info/prepare_metric_for_sending.cpp index 82f560e3..e97660c7 100644 --- a/src/hooks/info/prepare_metric_for_sending.cpp +++ b/src/hooks/info/prepare_metric_for_sending.cpp @@ -86,7 +86,7 @@ namespace big return result; } - bool hooks::prepare_metric_for_sending(rage::json_serializer* serializer, int unk, int time, rage::rlMetric* metric) + bool hooks::prepare_metric_for_sending(rage::json_serializer* serializer, bool* failed, char* unk, uint64_t time, rage::rlMetric* metric) { char metric_json_buffer [256] {}; rage::json_serializer yim_serializer(metric_json_buffer, sizeof(metric_json_buffer)); @@ -117,7 +117,7 @@ namespace big if (result.size() != data.size()) LOG(INFO) << "Removed YimMenu DLL from MM metric"; strncpy(reinterpret_cast(metric) + 0x18, result.c_str(), 0x900); - return g_hooking->get_original()(serializer, unk, time, metric); + return g_hooking->get_original()(serializer, failed, unk, time, metric); } return true; } @@ -131,6 +131,6 @@ namespace big if (g.debug.block_all_metrics) [[unlikely]] return true; else - return g_hooking->get_original()(serializer, unk, time, metric); + return g_hooking->get_original()(serializer, failed, unk, time, metric); } } diff --git a/src/pointers.cpp b/src/pointers.cpp index 3fdd7974..02ce98e1 100644 --- a/src/pointers.cpp +++ b/src/pointers.cpp @@ -3,7 +3,7 @@ #include "gta_pointers_layout_info.hpp" #include "sc_pointers_layout_info.hpp" -#define GTA_VERSION_TARGET "1.72-3788.0" +#define GTA_VERSION_TARGET "1.73-3889.0" namespace big { @@ -639,7 +639,7 @@ namespace big // Handle Join Request { "HJR", - "48 81 EC E8 03 00 00 4C 8B F1", + "48 81 EC 88 03 00 00 4C 8B F1", [](memory::handle ptr) { g_pointers->m_gta.m_handle_join_request = ptr.sub(0x26).as(); @@ -648,10 +648,10 @@ namespace big // Write Join Response Data { "WJRD", - "E8 ? ? ? ? 84 C0 75 0A 44 89 23", + "48 83 C2 34 4C 8B CB", [](memory::handle ptr) { - g_pointers->m_gta.m_write_join_response_data = ptr.add(1).rip().as(); + g_pointers->m_gta.m_write_join_response_data = ptr.add(8).rip().as(); } }, // Queue Packet @@ -693,10 +693,10 @@ namespace big // Serialize Join Request Message 2 { "SJRM2", - "E8 ? ? ? ? 48 8D 8D E0 01 00 00 8A D8", + "48 8D 8D ? ? ? ? 8A D8 E8 ? ? ? ? 48 8D 4D", [](memory::handle ptr) { - g_pointers->m_gta.m_serialize_join_request_message_2 = ptr.add(1).rip().as(); + g_pointers->m_gta.m_serialize_join_request_message_2 = ptr.sub(4).rip().as(); } }, // Send Network Damage @@ -927,7 +927,7 @@ namespace big // Prepare Metric For Sending { "PMFS", - "48 8B C4 48 89 58 08 48 89 68 10 48 89 70 18 48 89 78 20 41 56 48 83 EC 30 49 8B F0 4C", + "48 89 5C 24 08 48 89 6C 24 18 56 57 41 56 48 83 EC 20 4D 8B F1 49 8B D8", [](memory::handle ptr) { g_pointers->m_gta.m_prepare_metric_for_sending = ptr.as(); @@ -1762,10 +1762,10 @@ namespace big // Session Request Patch { "SRP", - "41 38 9E 98 B7 00 00 0F 85 6A FE FF FF", + "83 F8 01 0F 97 44 24", [](memory::handle ptr) { - g_pointers->m_gta.m_session_request_patch = ptr.add(0x14).as(); + g_pointers->m_gta.m_session_request_patch = ptr.add(8).as(); } }, // Get Peer By Security Id @@ -1956,10 +1956,10 @@ namespace big // Anticheat Context { "AC", - "69 C9 FD 43 03 00 8B D0", + "89 42 48 89 4A 4C 48 8B 1D", [](memory::handle ptr) { - g_pointers->m_gta.m_anticheat_context = ptr.sub(4).rip().as(); + g_pointers->m_gta.m_anticheat_context = ptr.add(9).rip().as(); } }, // Game Skeleton Update