diff --git a/src/d_netcmd.c b/src/d_netcmd.c
index c44a14f8bb266900b28e6b7a146f020e62cd9a51..3c17987e1f8e76780a99973c1ac1dfbbd9b0aaa9 100644
--- a/src/d_netcmd.c
+++ b/src/d_netcmd.c
@@ -1979,7 +1979,7 @@ static void Command_Map_f(void)
 			fromlevelselect =
 				( netgame || multiplayer ) &&
 				newgametype == gametype    &&
-				newgametype == GT_COOP;
+				gametypedefaultrules[newgametype] & GTR_CAMPAIGN;
 		}
 	}