diff --git a/src/p_user.c b/src/p_user.c
index a27e571ed6ee684618099365ab9e2033eaffcb43..e4cb01f632883e9eb3ff4a7531334031da447158 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -7630,6 +7630,9 @@ static void P_DeathThink(player_t *player)
 	if (player->deadtimer < INT32_MAX)
 		player->deadtimer++;
 
+	if (player->bot) // don't allow bots to do any of the below, B_CheckRespawn does all they need for respawning already
+		goto notrealplayer;
+
 	// continue logic
 	if (!(netgame || multiplayer) && player->lives <= 0)
 	{
@@ -7749,6 +7752,8 @@ static void P_DeathThink(player_t *player)
 		}
 	}
 
+notrealplayer:
+
 	if (!player->mo)
 		return;