From 282d5e97a37ac732b560c0582b665954bdb527e5 Mon Sep 17 00:00:00 2001 From: Maurice Heumann Date: Mon, 10 Apr 2023 15:05:11 +0200 Subject: [PATCH] Struct fixes --- src/client/game/structs.hpp | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/src/client/game/structs.hpp b/src/client/game/structs.hpp index 54dde0c0..ca9b7904 100644 --- a/src/client/game/structs.hpp +++ b/src/client/game/structs.hpp @@ -689,6 +689,7 @@ namespace game byte color[4]; const dvar_t* indirect[3]; } value; + uint64_t encryptedValue; }; @@ -699,26 +700,31 @@ namespace game int stringCount; const char** strings; } enumeration; + struct { int min; int max; } integer; + struct { int64_t min; int64_t max; } integer64; + struct { uint64_t min; uint64_t max; } unsignedInt64; + struct { float min; float max; } value; + struct { vec_t min; @@ -1028,7 +1034,7 @@ namespace game JoinResult joinResult; }; - +#ifdef __cplusplus namespace hks { struct lua_State; @@ -1051,7 +1057,7 @@ namespace game typedef size_t hksSize; typedef void* (*lua_Alloc)(void*, void*, size_t, size_t); - typedef hksInt32(*lua_CFunction)(lua_State*); + typedef hksInt32 (*lua_CFunction)(lua_State*); struct GenericChunkHeader { @@ -1108,11 +1114,14 @@ namespace game TNUMBER = 0x3, TSTRING = 0x4, TTABLE = 0x5, - TFUNCTION = 0x6, // idk + TFUNCTION = 0x6, + // idk TUSERDATA = 0x7, TTHREAD = 0x8, - TIFUNCTION = 0x9, // Lua function - TCFUNCTION = 0xA, // C function + TIFUNCTION = 0x9, + // Lua function + TCFUNCTION = 0xA, + // C function TUI64 = 0xB, TSTRUCT = 0xC, NUM_TYPE_OBJECTS = 0xE, @@ -1294,7 +1303,7 @@ namespace game int _m_isHksGlobalMemoTestingMode; HksCompilerSettings_BytecodeSharingFormat m_bytecodeSharingFormat; HksCompilerSettings_IntLiteralOptions m_enableIntLiterals; - int(*m_debugMap)(const char*, int); + int (*m_debugMap)(const char*, int); }; enum HksBytecodeSharingMode : __int64 @@ -1504,7 +1513,7 @@ namespace game void* m_profiler; RuntimeProfileData m_runProfilerData; HksCompilerSettings m_compilerSettings; - int(*m_panicFunction)(lua_State*); + int (*m_panicFunction)(lua_State*); void* m_luaplusObjectList; int m_heapAssertionFrequency; int m_heapAssertionCount; @@ -1533,6 +1542,7 @@ namespace game HksError m_error; }; } +#endif typedef uint32_t ScrVarCanonicalName_t; @@ -1556,19 +1566,23 @@ namespace game char __pad4[0x29DAC]; }; +#ifdef __cplusplus static_assert(sizeof(client_s) == 0xE5110); static_assert(offsetof(game::client_s, address) == 0x2C); static_assert(offsetof(game::client_s, xuid) == 0x55C8); static_assert(offsetof(game::client_s, guid) == 0xBB354); static_assert(offsetof(game::client_s, bIsTestClient) == 0xBB360); +#endif struct client_s_cl : client_s { char __pad1_0[0x60]; }; +#ifdef __cplusplus static_assert(sizeof(client_s_cl) == 0xE5170); +#endif enum scriptInstance_t { @@ -1598,7 +1612,9 @@ namespace game unsigned char __pad1[0x2A0]; }; +#ifdef __cplusplus static_assert(sizeof(gentity_s) == 0x4F8); +#endif enum workshop_type { @@ -1623,7 +1639,9 @@ namespace game workshop_type type; }; +#ifdef __cplusplus static_assert(sizeof(workshop_data) == 0x4C8); +#endif struct DDLMember { @@ -1695,7 +1713,7 @@ namespace game }; struct DDLContext; - typedef void(* DDLWriteCB)(DDLContext*, void*); + typedef void (* DDLWriteCB)(DDLContext*, void*); struct DDLContext {