From 2d1903f0266d530a32760dee278293a39074ffb5 Mon Sep 17 00:00:00 2001 From: NepDisk Date: Wed, 22 Oct 2025 11:55:16 -0400 Subject: [PATCH] Don't spawn in bots if map does not have new waypoints --- src/k_bot.cpp | 5 +++++ src/k_grandprix.c | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/src/k_bot.cpp b/src/k_bot.cpp index f42f10b4b..f661aeeb3 100644 --- a/src/k_bot.cpp +++ b/src/k_bot.cpp @@ -263,6 +263,11 @@ void K_UpdateMatchRaceBots(void) { difficulty = 0; } + else if (K_UsingLegacyCheckpoints() == true && !cv_forcebots.value) + { + CONS_Alert(CONS_ERROR, "This map does not use waypoints so bot functionality will not work.\nConsider adding new waypoints directly or via map patching for bot support.\n"); + difficulty = 0; + } else { difficulty = cv_kartbot.value; diff --git a/src/k_grandprix.c b/src/k_grandprix.c index 9122e8104..a11f4969d 100644 --- a/src/k_grandprix.c +++ b/src/k_grandprix.c @@ -333,6 +333,7 @@ void K_UpdateGrandPrixBots(void) player_t *oldrival = NULL; player_t *newrival = NULL; UINT16 newrivalscore = 0; + boolean validbots = (K_UsingLegacyCheckpoints() == false); UINT8 i; for (i = 0; i < MAXGPPLAYERS; i++) @@ -343,6 +344,11 @@ void K_UpdateGrandPrixBots(void) } players[i].spectator = (grandprixinfo.eventmode != GPEVENT_NONE); + + if (!validbots) + { + players[i].spectator = true; + } } // Find the rival. @@ -421,6 +427,12 @@ void K_UpdateGrandPrixBots(void) // Set our new rival! newrival->botvars.rival = true; } + + if (!validbots) + { + CONS_Alert(CONS_ERROR, "This map does not use waypoints so bot functionality will not work.\nConsider adding new waypoints directly or via map patching for bot support.\n"); + } + } /*--------------------------------------------------