The receiver stands where the serve can actually go
The trick: hard serve, slight slide, and the first ten opponents died where they stood. Measured headless — that serve was returned 0 times out of 24 at EVERY rung. Three things were wrong and all three were the same thing: he waited on the tennis mark 1.3 m off the centre line (covering the T, conceding the whole corner), he took no first step, and he chased the ball's LIVE position, which during a serve is still up by the server's baseline. Now: he waits on the bisector of the serves he has to cover, takes a returner's first step (serve-scoped — the rally is untouched), and runs at the bounce instead of at the ball. The slid serve comes back from rung one; a flush serve into the very corner of the box still aces the bottom of the ladder, which is the reward placement is supposed to earn. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ece27827e5
commit
86b8275f5d
6 files changed
+77
-10
No files matched your search
@@ -581,6 +581,13 @@ export const TUNE = {
|
||||
racketStride: 0.42, // m the racket zombie covers per walk frame — his cycle steps off GROUND
|
||||
// COVERED, so he stops animating when he stops moving
|
||||
racketSpeed: 2.8, // m/s the racket zombie shambles to chase a ball
|
||||
aiRead: 0.8, // how much of the BOUNCE the racket zombie reads while the ball is in the air:
|
||||
// 0 = the old pure pursuit of the live ball (a hard, angled serve was an
|
||||
// automatic ace — 0/40 returned, measured), 1 = never wrong-footed. See racketAI.
|
||||
matchRecvX: 2.45, // m off the centre line the match opponent WAITS on, receiving. The tennis mark
|
||||
// (1.3) covers the T and concedes the corner; the box runs to 4.1. See matchReady.
|
||||
aiReturnDash: 1.3, // ...and how much faster he moves for the SERVE only, the first step a
|
||||
// returner takes. Serve-scoped on purpose: the rally is unchanged.
|
||||
racketQMax: 0.55, // its return quality is capped here (slower, sloppier than the tennis CPU)
|
||||
racketFlub: 0.2, // chance the racket zombie whiffs a return
|
||||
missHud: 0, // show the last miss reason on screen (full log: T.G.missLog) — off; dev-only
|
||||
|
||||
Reference in new issue
Block a user