ecec2fdf9e4529b787619f54d52a1c588f9c2081
Problem: Instance bots sitting in BG queue were considered "active" and never timed out. If the BG never popped (not enough players), bots accumulated indefinitely, causing "HARD CAP REACHED" errors (563 bots when only 19 requested). Root cause: - IsInActiveInstanceState() returns true for bots in BG/LFG queue - Active bots never trigger idle timeout - If BG never starts, bots wait in queue forever Solution: Add a 5-minute queue timeout separate from idle timeout: - Track _queueAccumulatorMs - time spent waiting in queue - Track _hasEnteredInstance - whether bot actually entered content - If bot is in queue for >5 minutes without entering instance → logout New member variables: - _instanceBotStartTime: when bot was marked as instance bot - _queueAccumulatorMs: accumulated queue wait time - _hasEnteredInstance: true once bot enters dungeon/BG/arena Constants: - INSTANCE_BOT_IDLE_TIMEOUT_MS = 60s (existing) - INSTANCE_BOT_QUEUE_TIMEOUT_MS = 5 minutes (new) This prevents bot explosion when BGs don't pop due to population imbalance. Co-Authored-By: Claude Opus 4.5 <[email protected]> Signed-off-by: luis <[email protected]>
WowCommunityProject
Blizzlike WowCommunity project
Languages
C++
89.3%
C
10.1%
CMake
0.4%