-
Notifications
You must be signed in to change notification settings - Fork 928
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
8 changed files
with
137 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
#include "hooking.hpp" | ||
#include "core/globals.hpp" | ||
|
||
namespace big { | ||
|
||
/* Return types of this hook: | ||
case 1: | ||
LOG(INFO) << "Player is not in our roaming bubble"; | ||
break; | ||
case 2: | ||
LOG(INFO) << "Wrong owner"; | ||
break; | ||
case 4: | ||
LOG(INFO) << "Can't apply data - no network object"; | ||
break; | ||
case 6: | ||
LOG(INFO) << "Can't apply data - no game object"; | ||
break; | ||
case 7: | ||
LOG(INFO) << "Can't apply data - network closed"; | ||
break; | ||
case 8: | ||
LOG(INFO) << "Succesfull sync"; | ||
break; | ||
*/ | ||
|
||
|
||
signed __int64 hooks::received_clone_sync(CNetworkObjectMgr* mgr, | ||
CNetGamePlayer* src, | ||
CNetGamePlayer* dst, | ||
unsigned __int16 sync_type, | ||
unsigned __int16 obj_id, | ||
rage::datBitBuffer* buffer, | ||
unsigned __int16 a7, | ||
unsigned int timestamp) { | ||
|
||
auto sync_tree = g_pointers->m_get_sync_tree_for_type(mgr, sync_type); | ||
auto tree_name = g_pointers->m_get_sync_type_info(sync_type, 0); | ||
auto net_obj = g_pointers->m_get_net_object(mgr, obj_id, true); | ||
bool invalidsync = false; | ||
|
||
if(!net_obj) net_obj = g_pointers->m_get_net_object_for_player(mgr, obj_id, src, true); | ||
|
||
if (!net_obj) return 2; | ||
|
||
if (!sync_tree || sync_type < 0 || sync_type > 14) invalidsync = true; | ||
|
||
if (net_obj->m_object_type != sync_type) invalidsync = true; | ||
|
||
//TO BE ADDED | ||
//Node specific entity type checks | ||
|
||
|
||
if (invalidsync) { | ||
|
||
if (g->notifications.invalid_sync.log) LOG(WARNING) << "Invalid sync: " << "Type: " << sync_type << " Tree name: " << tree_name << " From: " << src->get_name(); | ||
if (g->notifications.invalid_sync.notify) g_notification_service->push_warning("Invalid sync " + std::string(src->get_name()), "Type: " + std::to_string(sync_type) + "\nType name: " + tree_name); | ||
|
||
return 2; | ||
} | ||
|
||
auto result = g_hooking->m_received_clone_sync_hook.get_original<decltype(&received_clone_sync)>()(mgr, src, dst, sync_type, obj_id, buffer, a7, timestamp); | ||
|
||
return result; | ||
|
||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters