maniator / maniator/verticopolis

[Bug]: [P3] Statistical boarding misses crowd riders: attendance floors can never become hotspots

Open
#477 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
5
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Review deferral from the #465 origin-accumulator build (/gds-code-review Edge Case Hunter, 2026-07-17). The dispatcher's boarding block counts only the statistical waiting estimate; individually routed crowd riders are excluded by design, and accumulateWaiting deliberately keeps attendance venues (cinema, party hall, wedding hall) out of the estimate because their visitors place real hall calls. Two consequences now surfaced by the origin readouts:

  • A tower whose evening rush is a floor-10 cinema shows no hotspot marker on floor 10, the Simulate origin clause names other floors, and Auto-tune's staging aim points elsewhere, while the same shaft's car-load-based demand ring DOES see those riders, so two readouts in one dialog disagree.
  • Staff hall counts are not decremented on board, so a service car re-arriving at an unanswered staff call re-tallies the same waiting staff, inflating that floor's origin share on a service shaft (pre-existing for carLoad; the tally makes it player-visible).

Fix direction: feed real crowd boardings into the tally (a small hook where Crowd riders enter a car, or decrement staff hall counts on board), keeping determinism (counting only, no RNG, no behavior read-back). Spec §17's origin bullet records the limit.

Review lane: /gds-code-review.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in the dispatcher's boarding block and trace how accumulateWaiting feeds the origin readouts, using the #465 origin-accumulator review in /gds-code-review as context. Inspect the Crowd boarding hook and staff hall count handling, then compare hotspot markers, Simulate origins, Auto-tune staging, and car-load demand rings. Done means real crowd boardings are reflected consistently without RNG or behavior read-back, including staff-call re-arrivals, as limited by Spec §17.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
game-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.