Skip to content

hire preflight: tank floors per plan (level-scaled), refuse a hire from under the portal floor or the other team - #385

Closed
pjerra wants to merge 17 commits into
devfrom
fix/ta266-floors-hire-spot
Closed

pjerra wants to merge 17 commits into
devfrom
fix/ta266-floors-hire-spot

Conversation

@pjerra

@pjerra pjerra commented Nov 2, 2026

Copy link
Copy Markdown
Owner

Fixes #266 (the hire preflight).

What changes

  • Tank floors. Every dungeon plan has a tank_min_hp, derived from measured tank HP (~/TortoiseBots-audit/specs/ta-266-data/tanks.tsv) at the band's middle level. The check scales it to the hired tank's actual level with the same curve.
    • A tank under the floor gives a preflight warning, and a refusal under strict preflight only.
  • Hire spot:
    • A hire from the other team's commander is refused when the run passes team.
    • A hire from a spot more than 5 yd below the portal's ground floor is refused, as in the RFC under-ground case. It compares navmesh floors, not the trigger centre, which sits 4-7 yd above the ground at WC, ST and DM East.
    • When the commander's height is only a guess (after a far teleport the core never confirms it) and floors are stacked at that spot, the LOWEST floor is judged, so it fails safe.
    • With no navmesh for the map, the spot is not checked, and a log line says so.
    • The check is skipped on a kept-binding resume, where nothing new is hired.
  • Stops. A stop during the check ends the hire as stopped, not failed.

Tests: the per-plan floor table (both directions); the level scaling (Maraudon Orange at level 45); the WC, ST and DM East real ground samples (allowed); the RFC spot and the stacked guessed floor (refused); no navmesh; the team check; stop propagation.

Reviews: Codex (4 rounds) and an Opus cold review. The Opus findings (an unreachable height wait, the trigger-centre reference, the level scaling) are fixed. Where Codex and Opus disagreed, the lead decided: lowest floor for a guessed height.

pjerra and others added 17 commits November 2, 2026 09:35
The hire spot judged the portal ground from a guessed z (a GM teleport,
climb or landing leaves session.StatusInfo.ZUnknown until the server sends
a position), so a guess could pass the drop check. AgentPosition now
returns whether z is the server's own; the step waits up to 10 s for it
near the portal and refuses with "hire: commander height unknown near the
portal" when it never arrives. Far from the portal an unknown height is
not judged.
…oor (#266)

The hire spot compares the navmesh floor under the commander with the
navmesh floor under the portal point instead of the guessed height
against the trigger centre, so a trigger a few yards above the ground no
longer refuses a commander standing on it, and the 10 s height wait is
gone. A kept binding that already holds the wanted party is not checked:
a resume hires nothing new there.

The plan's tank_min_hp is set at the band's middle level; the preflight
scales it to the hired tank's own level with the 2026-10 test runs'
per-level health curve, rounded down to 50.
…lk is floor-checked

The settle walk for a guessed height over two floors tried a 3 yd step east
first, and a step that left the 15 yd portal radius passed the hire as
allowed without the portal-ground floor check. The walk now picks only
targets inside the radius, the one nearest the portal first, and a settled
height is judged on its floor wherever the walk ended.
@pjerra

pjerra commented Nov 2, 2026

Copy link
Copy Markdown
Owner Author

Combined into #401

@pjerra pjerra closed this Nov 2, 2026
pjerra added a commit that referenced this pull request Nov 2, 2026
Combined 3: hire floors + spot check (#385), Zul'Farrak boss steps (#391), walk-super without eval, boss rows own their boss, pull_size lint (#398)
@pjerra
pjerra deleted the fix/ta266-floors-hire-spot branch November 5, 2026 21: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