diff --git a/r5dev/client/cdll_engine_int.cpp b/r5dev/client/cdll_engine_int.cpp index 4ddfc9f6..941a314b 100644 --- a/r5dev/client/cdll_engine_int.cpp +++ b/r5dev/client/cdll_engine_int.cpp @@ -3,7 +3,7 @@ #include "tier0/IConVar.h" #include "tier0/cvar.h" #include "tier0/commandline.h" -#include "client/IVEngineClient.h" +#include "client/vengineclient_impl.h" #include "client/cdll_engine_int.h" #include "engine/net_chan.h" #include "engine/cl_rcon.h" diff --git a/r5dev/client/IVEngineClient.cpp b/r5dev/client/vengineclient_impl.cpp similarity index 92% rename from r5dev/client/IVEngineClient.cpp rename to r5dev/client/vengineclient_impl.cpp index f2cd0fdd..2086bf1c 100644 --- a/r5dev/client/IVEngineClient.cpp +++ b/r5dev/client/vengineclient_impl.cpp @@ -5,7 +5,7 @@ //=============================================================================// #include "core/stdafx.h" -#include "client/IVEngineClient.h" +#include "client/vengineclient_impl.h" //#ifdef GAMEDLL_S3 bool* m_bRestrictServerCommands = reinterpret_cast(g_mGameDll.StringSearch("DevShotGenerator_Init()").FindPatternSelf("88 05", ADDRESS::Direction::UP).ResolveRelativeAddressSelf(0x2).OffsetSelf(0x2).GetPtr()); diff --git a/r5dev/client/IVEngineClient.h b/r5dev/client/vengineclient_impl.h similarity index 100% rename from r5dev/client/IVEngineClient.h rename to r5dev/client/vengineclient_impl.h diff --git a/r5dev/core/init.cpp b/r5dev/core/init.cpp index 91405a72..208d325b 100644 --- a/r5dev/core/init.cpp +++ b/r5dev/core/init.cpp @@ -34,10 +34,10 @@ #include "vguimatsurface/MatSystemSurface.h" #include "client/cdll_engine_int.h" #endif // !DEDICATED -#include "client/IVEngineClient.h" +#include "client/vengineclient_impl.h" #ifndef CLIENT_DLL #include "server/server.h" -#include "server/IVEngineServer.h" +#include "server/vengineserver_impl.h" #endif // !CLIENT_DLL #include "squirrel/sqinit.h" #include "squirrel/sqapi.h" diff --git a/r5dev/engine/baseclient.h b/r5dev/engine/baseclient.h index 7baf2114..d6454757 100644 --- a/r5dev/engine/baseclient.h +++ b/r5dev/engine/baseclient.h @@ -1,7 +1,8 @@ #pragma once +#include "vpc/keyvalues.h" #include "common/protocol.h" #include "engine/net_chan.h" -#include "server/IVEngineServer.h" +#include "server/vengineserver_impl.h" //----------------------------------------------------------------------------- // Forward declarations @@ -16,13 +17,13 @@ class CBaseClient { public: CBaseClient* GetClient(int nIndex) const; - std::int32_t GetUserID(void) const; - std::int64_t GetOriginID(void) const; + int32_t GetUserID(void) const; + int64_t GetOriginID(void) const; SIGNONSTATE GetSignonState(void) const; PERSISTENCE GetPersistenceState(void) const; CNetChan* GetNetChan(void) const; - void SetUserID(std::int32_t nUserID); - void SetOriginID(std::int64_t nOriginID); + void SetUserID(int32_t nUserID); + void SetOriginID(int64_t nOriginID); void SetSignonState(SIGNONSTATE nSignonState); void SetPersistenceState(PERSISTENCE nPersistenceState); void SetNetChan(CNetChan* pNetChan); // !TODO: HACK! @@ -39,17 +40,17 @@ public: private: // [ PIXIE ]: AMOS PLEASE VERIFY STRUCT INTEGRITY FOR EARLIER SEASONS. THERE WAS A PADDING AFTER ORIGINID BEFORE. char pad_0000[16]; //0x0000 - std::int32_t m_nUserID; //0x0010 + int32_t m_nUserID; //0x0010 char pad_0014[844]; //0x0014 - void* m_ConVars; //0x0360 This is a KeyValue*! + KeyValues* m_ConVars; //0x0360 char pad_0368[8]; //0x0368 CBaseServer* m_Server; //0x0370 char pad_0378[40]; //0x0378 CNetChan* m_NetChannel; //0x03A0 char pad_03A8[8]; //0x03A8 SIGNONSTATE m_nSignonState; //0x03B0 - std::int32_t m_nDeltaTick; //0x03B4 - std::int64_t m_nOriginID; //0x03B8 + int32_t m_nDeltaTick; //0x03B4 + int64_t m_nOriginID; //0x03B8 char pad_03C0[480]; //0x03C0 bool m_bFakePlayer; //0x05A0 bool m_bReceivedPacket; //0x05A1 @@ -58,7 +59,7 @@ private: char pad_05A4[24]; //0x05A4 PERSISTENCE m_nPersistenceState; //0x05BC char pad_05C0[302676]; //0x05C0 - std::int32_t m_LastMovementTick; //0x4A414 + int32_t m_LastMovementTick; //0x4A414 char pad_4A418[168]; //0x4A418 }; #if defined (GAMEDLL_S0) || defined (GAMEDLL_S1) diff --git a/r5dev/engine/host_state.cpp b/r5dev/engine/host_state.cpp index f5312171..9e00b96b 100644 --- a/r5dev/engine/host_state.cpp +++ b/r5dev/engine/host_state.cpp @@ -31,7 +31,7 @@ #ifndef DEDICATED #include "vgui/vgui_baseui_interface.h" #endif // DEDICATED -#include "client/IVEngineClient.h" +#include "client/vengineclient_impl.h" #include "networksystem/pylon.h" #include "public/include/bansystem.h" #include "public/include/edict.h" diff --git a/r5dev/engine/net_chan.h b/r5dev/engine/net_chan.h index cfdb31d9..14a6a0e2 100644 --- a/r5dev/engine/net_chan.h +++ b/r5dev/engine/net_chan.h @@ -35,7 +35,7 @@ struct netframe_t }; //----------------------------------------------------------------------------- -struct __declspec(align(8)) netflow_t +struct netflow_t { float nextcompute; float avgbytespersec; @@ -51,7 +51,7 @@ struct __declspec(align(8)) netflow_t }; //----------------------------------------------------------------------------- -struct __declspec(align(4)) dataFragments_t +struct dataFragments_t { char* data; int64_t block_size; @@ -75,7 +75,7 @@ enum EBufType }; //----------------------------------------------------------------------------- -class __declspec(align(8)) CNetChan +class CNetChan { public: const char* GetName(void) const; diff --git a/r5dev/gameui/IBrowser.cpp b/r5dev/gameui/IBrowser.cpp index f2caf4cc..fcc2ef02 100644 --- a/r5dev/gameui/IBrowser.cpp +++ b/r5dev/gameui/IBrowser.cpp @@ -28,7 +28,7 @@ History: #include "squirrel/sqinit.h" #include "squirrel/sqapi.h" #include "server/server.h" -#include "client/IVEngineClient.h" +#include "client/vengineclient_impl.h" #include "vpc/keyvalues.h" #include "vpklib/packedstore.h" #include "gameui/IBrowser.h" diff --git a/r5dev/gameui/IConsole.cpp b/r5dev/gameui/IConsole.cpp index 5adb0363..f6f54a9a 100644 --- a/r5dev/gameui/IConsole.cpp +++ b/r5dev/gameui/IConsole.cpp @@ -19,7 +19,7 @@ History: #include "windows/id3dx.h" #include "windows/console.h" #include "gameui/IConsole.h" -#include "client/IVEngineClient.h" +#include "client/vengineclient_impl.h" //----------------------------------------------------------------------------- // Purpose: diff --git a/r5dev/launcher/IApplication.cpp b/r5dev/launcher/IApplication.cpp index bff65836..cb0b037d 100644 --- a/r5dev/launcher/IApplication.cpp +++ b/r5dev/launcher/IApplication.cpp @@ -12,7 +12,7 @@ #include "engine/sys_dll2.h" #include "engine/sv_main.h" #include "engine/host_cmd.h" -#include "server/IVEngineServer.h" +#include "server/vengineserver_impl.h" //----------------------------------------------------------------------------- // Purpose: diff --git a/r5dev/server/IVEngineServer.cpp b/r5dev/server/vengineserver_impl.cpp similarity index 98% rename from r5dev/server/IVEngineServer.cpp rename to r5dev/server/vengineserver_impl.cpp index aad24d49..da277fdd 100644 --- a/r5dev/server/IVEngineServer.cpp +++ b/r5dev/server/vengineserver_impl.cpp @@ -9,7 +9,7 @@ #include "common/protocol.h" #include "engine/sys_utils.h" #include "engine/baseclient.h" -#include "server/IVEngineServer.h" +#include "server/vengineserver_impl.h" //----------------------------------------------------------------------------- // Purpose: sets the persistence var in the CClient instance to 'ready' diff --git a/r5dev/server/IVEngineServer.h b/r5dev/server/vengineserver_impl.h similarity index 100% rename from r5dev/server/IVEngineServer.h rename to r5dev/server/vengineserver_impl.h diff --git a/r5dev/squirrel/sqvm.cpp b/r5dev/squirrel/sqvm.cpp index 79e132bb..ea9fc03f 100644 --- a/r5dev/squirrel/sqvm.cpp +++ b/r5dev/squirrel/sqvm.cpp @@ -12,9 +12,11 @@ #include "engine/sys_utils.h" #ifdef DEDICATED #include "engine/sv_rcon.h" -#endif // DEDICATED +#else // DEDICATED +#include "client/cdll_engine_int.h" #include "vgui/vgui_debugpanel.h" #include "gameui/IConsole.h" +#endif #include "squirrel/sqtype.h" #include "squirrel/sqvm.h" #include "squirrel/sqinit.h" @@ -368,9 +370,9 @@ SQBool HSQVM_CreateServerVM() // Input : *chlclient - // Output : True on success, false on failure //--------------------------------------------------------------------------------- -SQBool HSQVM_CreateClientVM(void* chlclient) +SQBool HSQVM_CreateClientVM(CHLClient* hlclient) { - bool results = SQVM_CreateClientVM(chlclient); + bool results = SQVM_CreateClientVM(hlclient); if (results) DevMsg(eDLL_T::CLIENT, "Created CLIENT VM: '%p'\n", g_pClientVM.GetValue()); else diff --git a/r5dev/squirrel/sqvm.h b/r5dev/squirrel/sqvm.h index c83b0eda..99d84ee7 100644 --- a/r5dev/squirrel/sqvm.h +++ b/r5dev/squirrel/sqvm.h @@ -1,5 +1,8 @@ #pragma once #include "squirrel/sqtype.h" +#ifndef DEDICATED +#include "client/cdll_engine_int.h" +#endif // !DEDICATED namespace { @@ -51,10 +54,10 @@ namespace #endif #if !defined (DEDICATED) && defined (GAMEDLL_S0) || defined (GAMEDLL_S1) || defined (GAMEDLL_S2) ADDRESS p_SQVM_CreateClientVM = g_mGameDll.FindPatternSIMD((std::uint8_t*)"\x48\x83\xEC\x58\x48\x83\x3D\x00\x00\x00\x00\x00\x74\x05", "xxxxxxx?????xx"); - SQBool(*SQVM_CreateClientVM)(void* chlclient) = (SQBool(*)(void*))p_SQVM_CreateClientVM.GetPtr(); /*48 83 EC 58 48 83 3D ? ? ? ? ? 74 05*/ + SQBool(*SQVM_CreateClientVM)(CHLClient* hlclient) = (SQBool(*)(CHLClient*))p_SQVM_CreateClientVM.GetPtr(); /*48 83 EC 58 48 83 3D ? ? ? ? ? 74 05*/ #elif !defined (DEDICATED) && defined (GAMEDLL_S3) ADDRESS p_SQVM_CreateClientVM = g_mGameDll.FindPatternSIMD((std::uint8_t*)"\x40\x53\x41\x57\x48\x83\xEC\x68\x48\x83\x3D\x00\x00\x00\x00\x00", "xxxxxxxxxxx?????"); - SQBool(*SQVM_CreateClientVM)(void* chlclient) = (SQBool(*)(void*))p_SQVM_CreateClientVM.GetPtr(); /*40 53 41 57 48 83 EC 68 48 83 3D ? ? ? ? ?*/ + SQBool(*SQVM_CreateClientVM)(CHLClient* hlclient) = (SQBool(*)(CHLClient*))p_SQVM_CreateClientVM.GetPtr(); /*40 53 41 57 48 83 EC 68 48 83 3D ? ? ? ? ?*/ #endif #if !defined (DEDICATED) ADDRESS p_SQVM_CreateUIVM = g_mGameDll.FindPatternSIMD((std::uint8_t*)"\x40\x53\x48\x83\xEC\x20\x48\x8B\x1D\x00\x00\x00\x00\xC6\x05\x00\x00\x00\x00\x00", "xxxxxxxxx????xx?????"); @@ -86,7 +89,9 @@ SQInteger HSQVM_InitializeCLGlobalScriptStructs(SQVM* sqvm, SQCONTEXT context); void HSQVM_InitializeSVGlobalScriptStructs(SQVM* sqvm); SQBool HSQVM_CreateServerVM(); -SQBool HSQVM_CreateClientVM(void* chlclient); +#ifndef DEDICATED +SQBool HSQVM_CreateClientVM(CHLClient* hlclient); +#endif // !DEDICATED SQBool HSQVM_CreateUIVM(); const SQChar* SQVM_GetContextName(SQCONTEXT context); diff --git a/r5dev/vproj/clientsdk.vcxproj b/r5dev/vproj/clientsdk.vcxproj index 5876f7a1..ec53a0a1 100644 --- a/r5dev/vproj/clientsdk.vcxproj +++ b/r5dev/vproj/clientsdk.vcxproj @@ -13,8 +13,7 @@ - - + @@ -104,8 +103,7 @@ - - + diff --git a/r5dev/vproj/clientsdk.vcxproj.filters b/r5dev/vproj/clientsdk.vcxproj.filters index fd3951c7..2f1709e4 100644 --- a/r5dev/vproj/clientsdk.vcxproj.filters +++ b/r5dev/vproj/clientsdk.vcxproj.filters @@ -159,12 +159,6 @@ - - sdk\client - - - sdk\client - sdk\client @@ -393,17 +387,14 @@ sdk\tier1 + + sdk\client + sdk\client - - sdk\client - - - sdk\client - sdk\common @@ -1139,6 +1130,9 @@ sdk\tier1 + + sdk\client + diff --git a/r5dev/vproj/dedicated.vcxproj b/r5dev/vproj/dedicated.vcxproj index 97e5b16a..0e3b2363 100644 --- a/r5dev/vproj/dedicated.vcxproj +++ b/r5dev/vproj/dedicated.vcxproj @@ -124,7 +124,7 @@ - + @@ -192,7 +192,7 @@ - + @@ -353,7 +353,7 @@ - + @@ -405,7 +405,7 @@ - + diff --git a/r5dev/vproj/dedicated.vcxproj.filters b/r5dev/vproj/dedicated.vcxproj.filters index a41ecfa1..110a2c05 100644 --- a/r5dev/vproj/dedicated.vcxproj.filters +++ b/r5dev/vproj/dedicated.vcxproj.filters @@ -138,9 +138,6 @@ - - sdk\client - sdk\common @@ -210,7 +207,7 @@ sdk\rtech - + sdk\server @@ -828,11 +825,11 @@ sdk\tier1 + + sdk\client + - - sdk\client - sdk\common @@ -878,7 +875,7 @@ sdk\rtech - + sdk\server @@ -1034,6 +1031,9 @@ sdk\tier1 + + sdk\client + diff --git a/r5dev/vproj/gamesdk.vcxproj b/r5dev/vproj/gamesdk.vcxproj index f03933df..aba48df6 100644 --- a/r5dev/vproj/gamesdk.vcxproj +++ b/r5dev/vproj/gamesdk.vcxproj @@ -13,7 +13,7 @@ - + @@ -73,7 +73,7 @@ - + @@ -110,7 +110,7 @@ - + @@ -189,7 +189,7 @@ - + diff --git a/r5dev/vproj/gamesdk.vcxproj.filters b/r5dev/vproj/gamesdk.vcxproj.filters index 400d01f4..0891cef2 100644 --- a/r5dev/vproj/gamesdk.vcxproj.filters +++ b/r5dev/vproj/gamesdk.vcxproj.filters @@ -168,7 +168,7 @@ - + sdk\client @@ -219,7 +219,7 @@ sdk\launcher - + sdk\server @@ -425,7 +425,7 @@ sdk\client - + sdk\client @@ -494,7 +494,7 @@ sdk\networksystem - + sdk\server