Skip to content

Conversation

@sunzenshen
Copy link
Contributor

Description

Aims to fix bots trying to climb ledges that they don't have enough crouch-jump height to pull off, by recalculating the underlying constants used by the bot locomotion interface to determine climbing eligibility for adjacent NavAreas.

Toolchain

  • Windows MSVC VS2022

Linked Issues

  • related Spread out bot teammate path planning #1535 (This PR made the issue more obvious because earlier all bots would follow easy paths, but the newer dispersal logic encouraged bots to take paths that were of impossible jump height differences for their class choice.)

@sunzenshen sunzenshen requested a review from a team December 18, 2025 07:15
@sunzenshen sunzenshen added the Bots Related to bot players label Dec 18, 2025
@sunzenshen
Copy link
Contributor Author

sunzenshen commented Dec 18, 2025

In a similar situation portrayed in this clip, previously bots following the same destination would try to jump up onto the trailer despite not having enough jump height, because under the hood their teammates had reserved the lane besides the trailer for traversal. Also note, at the 10 second mark, that the Recon class that is intended to make the jump can still do so with the PR's changes. The theory for this PR is that now bots of heavier classes will classify the sides of the trailer as too high to jump on top, which prevents them from attempting the climb.

bot_jump_crouch_height_recalc_constants_clip.mp4

Here's an example prior to this patch where a bot decides that they can make the jump on top of the trailer as a shortcut to the objective, but then they get stuck repeatedly failing to make the jump:

20251210-1211-59.1626480.mp4

^ (Video credit and initial bug report: @AdamTadeusz )

@sunzenshen
Copy link
Contributor Author

sunzenshen commented Dec 19, 2025

As a demonstration of the before/after A/B test for this fix, I used a cherry-pickable version of PR #1345 to demonstrate the effect these height constants have on pathing:

Before (on branch #1345 without the fixes from this #1558 PR):

bot_command_debug_before_jump_height_fix.mp4

After (by cherry picking #1345 onto a temporary copy of this branch #1558):

bot_command_debug_after_jump_height_fix.mp4

@sunzenshen sunzenshen force-pushed the bot-navarea-height-checks branch 2 times, most recently from 4bf68ef to 52e3093 Compare December 24, 2025 04:23
@sunzenshen sunzenshen force-pushed the bot-navarea-height-checks branch from 52e3093 to 3fd2788 Compare December 29, 2025 06:51
@sunzenshen sunzenshen force-pushed the bot-navarea-height-checks branch from d5a38ca to 5b2254e Compare January 20, 2026 06:32
@sunzenshen
Copy link
Contributor Author

Clicked the rebase branch in the GitHub web UI, so this rebased build should have the bot commands feature.

One can test the jump heights attempts in maps by using the following commands:

sv_neo_bot_cmdr_enable 1;
sv_neo_bot_cmdr_debug_pause_uncommanded 1;
neo_ctg_round_timelimit 99;

Then one can press use on the paused teammate bots to get them to follow you, and then use the ping button to have bots walk between different areas that might be suspicious.

@sunzenshen
Copy link
Contributor Author

Intentionally NOT rebasing on top of #1601, in order to make this easier to test.

But we probably should consider evaluating this before I either forget, or there is a need to resolve a merge conflict. But maybe neither of those scenarios is a big deal anyway.

@Rainyan Rainyan requested review from Rainyan and removed request for a team January 20, 2026 08:20
@sunzenshen sunzenshen merged commit 016eca7 into NeotokyoRebuild:master Jan 23, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Bots Related to bot players

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants