diff --git a/Source/Core/Core/NetPlayClient.cpp b/Source/Core/Core/NetPlayClient.cpp index be937c5299..085e8b1849 100644 --- a/Source/Core/Core/NetPlayClient.cpp +++ b/Source/Core/Core/NetPlayClient.cpp @@ -1236,15 +1236,20 @@ void NetPlayClient::SendTimeBase() { std::lock_guard lk(crit_netplay_client); - u64 timebase = SystemTimers::GetFakeTimeBase(); + if (netplay_client->m_timebase_frame % 60 == 0) + { + u64 timebase = SystemTimers::GetFakeTimeBase(); - sf::Packet packet; - packet << static_cast(NP_MSG_TIMEBASE); - packet << static_cast(timebase); - packet << static_cast(timebase << 32); - packet << netplay_client->m_timebase_frame++; + sf::Packet packet; + packet << static_cast(NP_MSG_TIMEBASE); + packet << static_cast(timebase); + packet << static_cast(timebase << 32); + packet << netplay_client->m_timebase_frame; - netplay_client->SendAsync(std::move(packet)); + netplay_client->SendAsync(std::move(packet)); + } + + netplay_client->m_timebase_frame++; } bool NetPlayClient::DoAllPlayersHaveGame()