diff --git a/c-api/cache/CachedPlayer.h b/c-api/cache/CachedPlayer.h index adf2368..347d60b 100644 --- a/c-api/cache/CachedPlayer.h +++ b/c-api/cache/CachedPlayer.h @@ -57,6 +57,7 @@ namespace cache _socialID(base->GetSocialID()), _hwidHash(base->GetHwidHash()), _hwidExHash(base->GetHwidExHash()), + _hwId3(base->GetHwid3()), _authToken(base->GetAuthToken()), _discordId(base->GetDiscordId()), _invincible(base->GetInvincible()), @@ -327,6 +328,11 @@ namespace cache return _hwidExHash; } + std::string _hwId3; + std::string GetHwid3() const override { + return _hwId3; + } + std::string _authToken; std::string GetAuthToken() const override { return _authToken; diff --git a/c-api/entities/connection_info.cpp b/c-api/entities/connection_info.cpp index 178c530..0844901 100644 --- a/c-api/entities/connection_info.cpp +++ b/c-api/entities/connection_info.cpp @@ -37,6 +37,10 @@ uint64_t ConnectionInfo_GetHwIdExHash(alt::IConnectionInfo* connectionInfo) { return connectionInfo->GetHwIdExHash(); } +const char* ConnectionInfo_GetHwid3(alt::IConnectionInfo* connectionInfo, int32_t& size) { + return AllocateString(connectionInfo->GetHwid3(), size); +} + const char* ConnectionInfo_GetAuthToken(alt::IConnectionInfo* connectionInfo, int32_t& size) { return AllocateString(connectionInfo->GetAuthToken(), size); } diff --git a/c-api/entities/connection_info.h b/c-api/entities/connection_info.h index 3c473bc..68de0db 100644 --- a/c-api/entities/connection_info.h +++ b/c-api/entities/connection_info.h @@ -22,6 +22,7 @@ EXPORT_SERVER uint64_t ConnectionInfo_GetSocialId(alt::IConnectionInfo* connecti EXPORT_SERVER const char* ConnectionInfo_GetSocialName(alt::IConnectionInfo* connectionInfo, int32_t& size); EXPORT_SERVER uint64_t ConnectionInfo_GetHwIdHash(alt::IConnectionInfo* connectionInfo); EXPORT_SERVER uint64_t ConnectionInfo_GetHwIdExHash(alt::IConnectionInfo* connectionInfo); +EXPORT_SERVER const char* ConnectionInfo_GetHwid3(alt::IConnectionInfo* connectionInfo, int32_t& size); EXPORT_SERVER const char* ConnectionInfo_GetAuthToken(alt::IConnectionInfo* connectionInfo, int32_t& size); EXPORT_SERVER uint8_t ConnectionInfo_GetIsDebug(alt::IConnectionInfo* connectionInfo); EXPORT_SERVER const char* ConnectionInfo_GetBranch(alt::IConnectionInfo* connectionInfo, int32_t& size); diff --git a/c-api/entities/player.cpp b/c-api/entities/player.cpp index da0f0a7..1f7b0c6 100644 --- a/c-api/entities/player.cpp +++ b/c-api/entities/player.cpp @@ -246,6 +246,10 @@ uint64_t Player_GetHwidExHash(alt::IPlayer* player) { return player->GetHwidExHash(); } +const char* Player_GetHwid3(alt::IPlayer* player, int32_t& size) { + return AllocateString(player->GetHwid3(), size); +} + const char* Player_GetAuthToken(alt::IPlayer* player, int32_t& size) { return AllocateString(player->GetAuthToken(), size); } diff --git a/c-api/entities/player.h b/c-api/entities/player.h index 23b8b15..8c72082 100644 --- a/c-api/entities/player.h +++ b/c-api/entities/player.h @@ -77,6 +77,7 @@ EXPORT_SERVER void Player_SetModel(alt::IPlayer* player, uint32_t model); EXPORT_SERVER uint64_t Player_GetSocialID(alt::IPlayer* player); EXPORT_SERVER uint64_t Player_GetHwidHash(alt::IPlayer* player); EXPORT_SERVER uint64_t Player_GetHwidExHash(alt::IPlayer* player); +EXPORT_SERVER const char* Player_GetHwid3(alt::IPlayer* player, int32_t& size); EXPORT_SERVER const char* Player_GetAuthToken(alt::IPlayer* player, int32_t& size); EXPORT_SERVER void Player_SetHealth(alt::IPlayer* player, uint16_t health); diff --git a/c-api/func_table.cpp b/c-api/func_table.cpp index 24ba0c5..acd7d81 100644 --- a/c-api/func_table.cpp +++ b/c-api/func_table.cpp @@ -1,6 +1,6 @@ #include "func_table.h" -inline uint64_t capiHash = 10075699596264467259UL; +inline uint64_t capiHash = 2737407539021183714UL; inline uint64_t capiHashes[] = { 0, #ifdef ALT_CLIENT_API @@ -1366,6 +1366,7 @@ inline uint64_t capiHashes[] = { 7415605567391116903UL, 7998061229071288348UL, 4175744399917476392UL, + 3230557606089997547UL, 3151831504154255688UL, 11409383581668438027UL, 8080268107975854795UL, @@ -1525,6 +1526,7 @@ inline uint64_t capiHashes[] = { 12996031514192232278UL, 6875264309357036667UL, 18242810182906526031UL, + 13686597780873033455UL, 424368865670330442UL, 9546723288515311389UL, 16961931856292652951UL, @@ -3183,6 +3185,7 @@ inline void* capiPointers[] = { (void*) ConnectionInfo_GetCloudAuthResult, (void*) ConnectionInfo_GetCloudID, (void*) ConnectionInfo_GetDiscordUserID, + (void*) ConnectionInfo_GetHwid3, (void*) ConnectionInfo_GetHwIdExHash, (void*) ConnectionInfo_GetHwIdHash, (void*) ConnectionInfo_GetID, @@ -3342,6 +3345,7 @@ inline void* capiPointers[] = { (void*) Player_GetHeadBlendData, (void*) Player_GetHeadBlendPaletteColor, (void*) Player_GetHeadOverlay, + (void*) Player_GetHwid3, (void*) Player_GetHwidExHash, (void*) Player_GetHwidHash, (void*) Player_GetInteriorLocation, diff --git a/cpp-sdk b/cpp-sdk index 30b5e35..5507727 160000 --- a/cpp-sdk +++ b/cpp-sdk @@ -1 +1 @@ -Subproject commit 30b5e35ab7081f7e8ff7ac2bc0568aa7cf38e6be +Subproject commit 5507727239d5665e75828a7bec3f44bff245f3c8