Offline LAN crossplay fixes and correct PS3 tutorial pack source

- Handle pre-login permission checks in offline/system-link mode when
  Xbox Live is disabled (grant canPlay/canPlayLocal/friends permissions)
- Log Offline LAN handshake events (PreLogin/Login/GAME_PLAY state)
- Stub: set QNET_STATE_GAME_PLAY on SetGamePlayState and advertise the
  session joinable when hosting
- PS3 postbuild: source the PS3 tutorial pack from the PS3 tree instead
  of the PSVita tree so the big-endian PS3 DLC parser doesn't read a
  little-endian pack as garbage (fixes RPCS3 boot crash in
  DLCManager::processDLCDataFile)
This commit is contained in:
2026-08-07 07:19:34 -07:00
parent 1f5d7817fc
commit 96cf2dfaed
5 changed files with 35 additions and 1 deletions
@@ -170,6 +170,8 @@ bool CPlatformNetworkManagerStub::Initialise(CGameNetworkManager *pGameNetworkMa
m_bLeaveGameOnTick = false;
m_bHostChanged = false;
app.DebugPrintf("Using offline LAN network backend\n");
m_bSearchResultsReady = false;
m_bSearchPending = false;
@@ -475,6 +477,20 @@ bool CPlatformNetworkManagerStub::_RunNetworkGame()
return true;
}
void CPlatformNetworkManagerStub::SetGamePlayState()
{
extern QNET_STATE _iQNetStubState;
_iQNetStubState = QNET_STATE_GAME_PLAY;
if (m_pIQNet->IsHost())
{
WinsockNetLayer::UpdateAdvertiseJoinable(true);
}
app.DebugPrintf("Offline LAN: entered GAME_PLAY state\n");
}
void CPlatformNetworkManagerStub::UpdateAndSetGameSessionData(INetworkPlayer *pNetworkPlayerLeaving /*= NULL*/)
{
// DWORD playerCount = m_pIQNet->GetPlayerCount();