diff --git a/src/p_setup.c b/src/p_setup.c
index 996e9ec30d7e42eb04d9b0261f14d78f11fcdd46..b5164e5580ad497998d3dd1a8ff316632efab7ba 100644
--- a/src/p_setup.c
+++ b/src/p_setup.c
@@ -4187,7 +4187,7 @@ boolean P_LoadLevel(boolean fromnetsave)
 	nextmapoverride = 0;
 	skipstats = 0;
 
-	if (!(netgame || multiplayer) && (!modifiedgame || savemoddata))
+	if (!(netgame || multiplayer || demoplayback) && (!modifiedgame || savemoddata))
 		mapvisited[gamemap-1] |= MV_VISITED;
 	else
 		mapvisited[gamemap-1] |= MV_MP; // you want to record that you've been there this session, but not permanently