diff --git a/src/p_mobj.c b/src/p_mobj.c index f71ff209..3eae4cae 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -10889,7 +10889,8 @@ void P_SpawnPlayer(INT32 playernum) } // spawn as spectator determination - if (!G_GametypeHasSpectators()) + if (multiplayer && demoplayback); // Don't mess with spectator values since the demo setup handles them already. + else if (!G_GametypeHasSpectators()) p->spectator = false; else if (netgame && p->jointime <= 1 && pcount) { diff --git a/src/p_tick.c b/src/p_tick.c index 8814d440..471b38ec 100644 --- a/src/p_tick.c +++ b/src/p_tick.c @@ -612,7 +612,7 @@ void P_Ticker(boolean run) { if (!multiplayer) { - G_ReadDemoTiccmd(&players[consoleplayer].cmd, 0); + G_ReadDemoTiccmd(&players[consoleplayer].cmd, 0); } else { for (i = 0; i < MAXPLAYERS; i++) if (playeringame[i])