diff --git a/src/client/component/getinfo.cpp b/src/client/component/getinfo.cpp index 5fcda151..5478d56a 100644 --- a/src/client/component/getinfo.cpp +++ b/src/client/component/getinfo.cpp @@ -80,13 +80,7 @@ namespace getinfo bool is_host() { - if (game::is_server()) - { - return true; - } - - const auto client_states = *reinterpret_cast(0x1576FB318_g); - return client_states == 0; + return game::SV_Loaded() && (game::is_server() || !game::Com_IsRunningUILevel()); } struct component final : generic_component diff --git a/src/client/game/symbols.hpp b/src/client/game/symbols.hpp index af69901a..192df31d 100644 --- a/src/client/game/symbols.hpp +++ b/src/client/game/symbols.hpp @@ -129,6 +129,7 @@ namespace game }; // SV + WEAK symbol SV_Loaded{0x142252CB0, 0x140535460}; WEAK symbol SV_AddTestClient{0x1422499A0, 0x14052E3E0}; WEAK symbol SV_SendServerCommand{0x0, 0x140537F10}; WEAK symbol SV_IsTestClient{0x14224B5C0, 0x14052FF40};