Make dedicated servers ranked

This commit is contained in:
BrentVL-1952840 2023-02-25 19:26:40 +01:00
parent 47c2a28b49
commit 89f377f586

View File

@ -15,10 +15,49 @@ namespace dedicated_patches
game::Scr_AddInt(game::SCRIPTINSTANCE_SERVER, 1);
}
game::eNetworkModes get_online_mode()
game::eNetworkModes get_online_mode_stub()
{
return game::MODE_NETWORK_ONLINE;
}
bool is_online_stub()
{
return true;
}
bool is_mod_loaded_stub()
{
return false;
}
void patch_is_mod_loaded_checks()
{
const std::vector<uintptr_t> is_mod_loaded_addresses =
{
{ 0x1401DA1B5_g },
{ 0x14024D4A0_g },
{ 0x14024D669_g },
{ 0x14024D939_g },
{ 0x14024DC64_g },
{ 0x14024E13A_g },
{ 0x14024E5A3_g },
{ 0x14024FFB9_g },
{ 0x140251E9E_g },
{ 0x140253680_g },
{ 0x140257BF6_g },
{ 0x1402D25E2_g }, // unsure if needed to patch
{ 0x1402D296D_g }, // unsure
{ 0x1402D58E9_g }, // unsure
{ 0x1402DC5BB_g }, // unsure
{ 0x140468374_g },
{ 0x14046B796_g }
};
for (const auto& address : is_mod_loaded_addresses)
{
utils::hook::call(address, is_mod_loaded_stub);
}
}
}
struct component final : server_component
@ -28,8 +67,15 @@ namespace dedicated_patches
// Fix infinite loop
utils::hook::jump(0x1402E86B0_g, scr_are_textures_loaded_stub);
utils::hook::jump(0x1405003E0_g, get_online_mode);
utils::hook::jump(0x1405003B0_g, get_online_mode);
// Online classes
utils::hook::jump(0x1405003E0_g, get_online_mode_stub);
utils::hook::jump(0x1405003B0_g, get_online_mode_stub);
// Progression / Ranked
utils::hook::jump(0x140500A50_g, is_online_stub);
utils::hook::jump(0x140500980_g, is_online_stub);
utils::hook::jump(0x1402565D0_g, is_online_stub);
patch_is_mod_loaded_checks();
scheduler::once([]()
{