A lane is free when its body is gone, not when it is far away
The drill spawner measured its best-of-9 lane spacing only against bodies still in the back half (drillNearZ 9 m). On a court where lanes are HELD for life and speed is stamped at spawn, a body 12 m down still owns its lane — handing it to a faster arrival books an overtake for ten seconds later, mid-court, as two sprites walking through each other. That is what the seed-sensitive test failure (SEED=1234) was reporting: the assertion was right, the stream was not. Spacing now measures against every live drill body; drillNearZ is deleted (no other reader). Still best-of-9, no retry loop, so the stream cannot stall. 60 seeds x 150 s of drill: before, 7 seeds overlapped with narrowest clearance 0.00 m; after, zero overlap frames, narrowest 0.46 m (the test asks > 0.3). Suite green on 20260811/1234/777/99/424242/8 and on 299 of seeds 1..300; the straggler (SEED=80, the slid-serve return rate) is unrelated and logged as open. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
86b8275f5d
commit
bdc3f23f92
4 files changed
+35
-9
No files matched your search
@@ -461,7 +461,6 @@ export const TUNE = {
|
||||
drillSeed: 4, // bodies placed at the start so there is a queue to read from the first second
|
||||
drillSeedGap: 2.6,// m of depth between those seeded bodies
|
||||
drillSpawnZ: 0.6, // z they enter at (the far baseline is 0)
|
||||
drillNearZ: 9.0, // spawn spacing is measured against bodies nearer than this
|
||||
drillSpread: 3.4, // m either side of the centre line the lanes fan across
|
||||
drillSpeed: 0.85, // m/s at the bottom of the ramp (x the type's vMul)...
|
||||
drillSpeedMax: 2.0,// ...and at the top. Stamped per body AT SPAWN — constant v is also what lets
|
||||
|
||||
Reference in new issue
Block a user