Skip to content

Combine #2231 and #2232 for testing neoAssets#168 - #2239

Closed
sunzenshen wants to merge 3 commits into
NeotokyoRebuild:masterfrom
sunzenshen:bot-crawl-gap-ladder-combined
Closed

sunzenshen wants to merge 3 commits into
NeotokyoRebuild:masterfrom
sunzenshen:bot-crawl-gap-ladder-combined

Conversation

@sunzenshen

Copy link
Copy Markdown
Contributor

Description

Testing branch only: #2231 and #2232 merged together, unchanged, so NeotokyoRebuild/neoAssets#168 can be tested. Review and merge the two component PRs, not this one.

The navmesh change in NeotokyoRebuild/neoAssets#168 (ntre_rise_ctg ladder 3's top area) only shows in game when bots can climb ladder 3 end to end, which takes both bot fixes:

The two touch different files (neo_bot_path_obstacles.cpp; neo_bot_ladder_climb.{h,cpp}) and merge without conflicts. This branch is each PR's commit plus a merge commit; it has no changes of its own.

How to test

  1. Build this branch, and install the navmesh from ntre_rise_ctg: drop ladder 3's dead top cap area neoAssets#168.
  2. map ntre_rise_ctg, sv_cheats 1, neo_bot_quota 12, nb_debug behavior, join spectator.
  3. Watch the vent at (-240, -916, -476) from the ghost room, then ladder 3's top at (-219, -952, -304) from the floor north of the shaft (z -336). Bots break the vent, crouch through, climb, duck in the last few units, and slide north through the window onto the floor beyond.
  4. Compare with the navmesh from master: more bots that finish the climb end up past the window, and fewer fall back down the shaft. The numbers are in ntre_rise_ctg: drop ladder 3's dead top cap area neoAssets#168.

Toolchain

  • Linux GCC Distro Native (Linux Mint 22.3, GCC 13.3.0), as built and tested for the component PRs.

Linked Issues

A ladder whose top exit is a gap only a crouched body fits through,
such as a vent or a low window, was never left: the dismount check
sweeps the standing body, finds the gap's top in the way, keeps the
bot climbing past the ladder's top, and the stall check then jumps it
off. When the standing sweep is blocked but a crouched body at the
ladder's top clears, duck, hold the feet just above the top and move
out toward the landing (along the face for an exit beside the
ladder, where a press into the face would climb).

Seen on ntre_rise_ctg ladder 3, whose exit is a 52 u window.
A bot whose path runs through a crouch-height gap closed by a
func_breakable vent cover never clears it: the check that nothing
stands in front of the breakable sweeps the standing body, which
meets the gap's lintel first, so the vent is dropped and the bot
presses against it until the stuck monitor gives up. Sweep a crouched
body when the standing one meets something else first.

The look for breakables also stopped at a drop segment, so a bot
leaving a duct by a drop had no path line to sweep. A drop's ledge is
walked at the height of the floor above before the fall, so that leg
now counts for breakables (the prop detour keeps ground legs only).

Seen on ntre_rise_ctg, where ladders 3 and 4 stand in shafts entered
through such vents: no bot ever climbed either before this.
…Assets#168

Merges the vent-cover change (NeotokyoRebuild#2231) and the crouched ladder dismount
(NeotokyoRebuild#2232) so ladder 3 on ntre_rise_ctg can be climbed end to end, which
the navmesh change in neoAssets#168 needs to be tested.
@sunzenshen

Copy link
Copy Markdown
Contributor Author

#2231 and #2232 have been merged, so this combined testing PR is no longer needed.

@sunzenshen sunzenshen closed this Oct 17, 2026
@sunzenshen
sunzenshen removed the request for review from sunmachine October 17, 2026 01:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant