From c6218a6284796b66ac2e27b52d4e44cc809b8b76 Mon Sep 17 00:00:00 2001 From: Oliver Rieger Date: Thu, 13 Aug 2026 21:09:04 +0200 Subject: [PATCH] Exact touchdown, the boy finishes his shift, healing announces itself, 4K heads MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Five of Oliver's six (the sixth is a play-mode discussion): - THE DOUBLE FAULTS WERE FRAME QUANTIZATION: the bounce registered a full integration step after true contact — ~0.75 m of travel at serve pace — so serves aimed half a metre safe were judged long. Classic enforces the service box, the match only the court, hence 'zombie tennis does not'. The bounce now rewinds to y=0 before anything reads the position. Measured in-pane: 30/40 faults on good taps before, 0/40 after (mistimed and smudged taps also 0/40; aimed hard serves keep their scatter risk). Also: the strike flick dead zone is 44 px so a smudged tap stays a tap, and the aim base clamps 0.18 m inside the lines — scatter, not the aim, is what faults. - The mop beat holds the walk-on until the boy actually LEAVES the court (ordered off at beat end, 6 s cap). - A match game win that restores blood shows the duel's WOUNDS TREATED popup; full-blood wins stay silent. - The opponent walk-on card holds 4.0 s (was 2.4). - Card heads are cut from the 4K sheets at 144 px (assets/_heads.py, z_head.png, HEAD_CROP stays as fallback) — the old 65 px crops were the 'very low res' heads. Co-Authored-By: Claude Fable 5 --- assets/_heads.py | 95 ++++++++++++++++++++++++++++++++++++++++++++ assets/z_bbhead.png | Bin 0 -> 11957 bytes assets/z_brhead.png | Bin 0 -> 15319 bytes assets/z_chhead.png | Bin 0 -> 12904 bytes assets/z_drhead.png | Bin 0 -> 10035 bytes assets/z_gkhead.png | Bin 0 -> 11748 bytes assets/z_ljhead.png | Bin 0 -> 10737 bytes assets/z_mahead.png | Bin 0 -> 18197 bytes assets/z_phhead.png | Bin 0 -> 12576 bytes assets/z_ruhead.png | Bin 0 -> 12135 bytes assets/z_shhead.png | Bin 0 -> 12483 bytes assets/z_sthead.png | Bin 0 -> 11760 bytes index.html | 2 +- src/beats.js | 36 +++++++++++++---- src/gameplay.js | 27 ++++++++++++- src/render.js | 24 +++++++---- test.js | 17 +++++--- 17 files changed, 178 insertions(+), 23 deletions(-) create mode 100644 assets/_heads.py create mode 100644 assets/z_bbhead.png create mode 100644 assets/z_brhead.png create mode 100644 assets/z_chhead.png create mode 100644 assets/z_drhead.png create mode 100644 assets/z_gkhead.png create mode 100644 assets/z_ljhead.png create mode 100644 assets/z_mahead.png create mode 100644 assets/z_phhead.png create mode 100644 assets/z_ruhead.png create mode 100644 assets/z_shhead.png create mode 100644 assets/z_sthead.png diff --git a/assets/_heads.py b/assets/_heads.py new file mode 100644 index 0000000..df46211 --- /dev/null +++ b/assets/_heads.py @@ -0,0 +1,95 @@ +# _heads.py — cut the CARD HEAD ICONS from the 4K family sheets. +# +# uv run --with pillow --with numpy python assets/_heads.py # build all -> _refcheck/heads/ +# uv run --with pillow --with numpy python assets/_heads.py --install # -> assets/z_head.png +# +# WHY. The walk-on card first cropped heads out of the INSTALLED 224 px frames (config.HEAD_CROP): +# a ~65 px source head drawn at 144 device px is mush, and the oldest families (sh/bb/st/ru) were +# the mushiest — "the first heads in the roster are very low res". The 4K sheets in _refcheck have +# the same heads at ~4x the pixels, so the icon is cut THERE and downscaled once, cleanly. +# drawCard prefers z_head and degrades to the HEAD_CROP crop, so a family whose 4K sheet is +# gone (they are gitignored scratch) simply keeps the old icon. Re-run after re-rolling a family. +import os, sys + +import numpy as np +from PIL import Image + +sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) +import _fine +from _zsheet import bands + +HERE = os.path.dirname(os.path.abspath(__file__)) +SCRATCH = os.path.join(HERE, '_refcheck') +OUT_H = 144 # the card draws the icon at CARD_H-14 = 48 logical px; RES caps at 3 -> 144 device + +FAMS = ['br', 'sh', 'bb', 'st', 'ru', 'gk', 'lj', 'dr', 'ch', 'ph', 'ma'] +# head depth as a fraction of the standing figure, where the shoulder-widening rule fails: +# the brute's shoulders start high, the keeper's hat brim is wider than his face, the champion +# wears a headwrap, and the mascot's head IS partly the ball. Same knowledge as HEAD_CROP's note. +DEPTH = {'br': 0.27, 'gk': 0.30, 'ch': 0.28, 'ma': 0.37} + + +def head_box(a): + """Head region of one keyed figure: top of the silhouette down to the shoulder widening.""" + op = a[..., 3] > 0 + ys = np.nonzero(op.any(1))[0] + y0, y1 = ys.min(), ys.max() + h = y1 - y0 + 1 + width = op.sum(1) + med = np.median(width[y0:y0 + max(6, h // 16)][width[y0:y0 + max(6, h // 16)] > 0]) + yS = None + for y in range(y0 + h // 20, y1): + if width[y] > 1.9 * med: yS = y; break + yS = yS or y0 + int(h * 0.2) + band = op[y0:yS] + xs = np.nonzero(band.any(0))[0] + pad = max(3, h // 60) + return (max(0, xs.min() - pad), max(0, y0 - pad), xs.max() + pad, yS + pad) + + +def build(install=False): + outdir = HERE if install else os.path.join(SCRATCH, 'heads') + os.makedirs(outdir, exist_ok=True) + for k in FAMS: + sheet = os.path.join(SCRATCH, f'fam_{k}.png') + if not os.path.exists(sheet): + print(f'{k}: no 4K sheet — the card keeps its HEAD_CROP fallback'); continue + a = _fine.key(Image.open(sheet)) + bs = bands(a) + band = a[bs[0][0]:bs[0][1]] + cols = (band[..., 3] > 0).any(0) + x0 = np.nonzero(cols)[0][0] # first figure of the play row + gap = 0; x1 = x0 + for x in range(x0, len(cols)): + gap = gap + 1 if not cols[x] else 0 + if gap > 30: x1 = x - gap; break + else: x1 = len(cols) + fig = band[:, x0:x1] + ys = np.nonzero((fig[..., 3] > 0).any(1))[0] + fh = ys.max() - ys.min() + 1 + bx0, by0, bx1, by1 = head_box(fig) + if k in DEPTH: # hand depth beats the widening rule here + by1 = ys.min() + int(fh * DEPTH[k]) + band2 = (fig[..., 3] > 0)[by0:by1] + xs = np.nonzero(band2.any(0))[0] + bx0, bx1 = max(0, xs.min() - 5), xs.max() + 5 + crop = fig[by0:by1, bx0:bx1] + im = Image.fromarray(crop, 'RGBA') + s = OUT_H / im.height + im = im.resize((max(1, round(im.width * s)), OUT_H), Image.BOX) + # quantise to the crop's own palette so the icon stays flat pixel art, not a soft photo + arr = np.array(im).astype(int) + solid = arr[..., 3] > 110 + px = crop[crop[..., 3] > 200][:, :3] + pal = np.unique((px // 8) * 8, axis=0) + flat = arr[..., :3].reshape(-1, 3) + idx = ((flat[:, None, :] - pal[None, :, :]) ** 2).sum(2).argmin(1) + arr[..., :3] = pal[idx].reshape(arr.shape[0], arr.shape[1], 3) + arr[..., 3] = np.where(solid, 255, 0) + out = os.path.join(outdir, f'z_{k}head.png') + Image.fromarray(arr.astype('uint8'), 'RGBA').save(out) + print(f'{k}: {out} {arr.shape[1]}x{arr.shape[0]}') + + +if __name__ == '__main__': + build('--install' in sys.argv) diff --git a/assets/z_bbhead.png b/assets/z_bbhead.png new file mode 100644 index 0000000000000000000000000000000000000000..a67e743dcf6ee58f5b1a22e26eaab6eb94155269 GIT binary patch literal 11957 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 Hu0mjfnr}0_ literal 0 HcmV?d00001 diff --git a/assets/z_brhead.png b/assets/z_brhead.png new file mode 100644 index 0000000000000000000000000000000000000000..a1a84fe509cef8fa99db748db2597f5c84af3813 GIT binary patch literal 15319 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 literal 0 HcmV?d00001 diff --git a/assets/z_chhead.png b/assets/z_chhead.png new file mode 100644 index 0000000000000000000000000000000000000000..7844c26eb603386bb10164e027ad417c4ded116d GIT binary patch literal 12904 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 VkZcS3?`1eBIVokydU2D`{{h8sKdJx# literal 0 HcmV?d00001 diff --git a/assets/z_gkhead.png b/assets/z_gkhead.png new file mode 100644 index 0000000000000000000000000000000000000000..9da677b5dd6f13faf5313f33c2efd1c13e56df1b GIT binary patch literal 11748 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 literal 0 HcmV?d00001 diff --git a/assets/z_mahead.png b/assets/z_mahead.png new file mode 100644 index 0000000000000000000000000000000000000000..20dcdb6185beb5f4818585c4030222216eafd4d2 GIT binary patch literal 18197 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 %^sjmW$M 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 M07*qoM6N<$g2+5No&W#< literal 0 HcmV?d00001 diff --git a/assets/z_phhead.png b/assets/z_phhead.png new file mode 100644 index 0000000000000000000000000000000000000000..d8df2c6e12aeb1f40ca7d83ae55baac7932bf8fb GIT binary patch literal 12576 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 N002ovPDHLkV1iM892fuq literal 0 HcmV?d00001 diff --git a/assets/z_sthead.png b/assets/z_sthead.png new file mode 100644 index 0000000000000000000000000000000000000000..7de817c71f3349a4fa3c87c6f77e3dce115d35bf GIT binary patch literal 11760 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 - + diff --git a/src/beats.js b/src/beats.js index 0df8010..f6a7b31 100644 --- a/src/beats.js +++ b/src/beats.js @@ -417,11 +417,22 @@ export function tickMatchFall(dt) { // on with its own intro card, exactly as it used to on the kill frame. const d = G.match; if (d && d.mopT > 0 && (d.mopT -= dt) <= 0) { - d.mopT = 0; - matchOpponent(); - d.ending = false; // play re-opens only now that a body is on court - matchReady(); - G.phase = 'over'; G.overT = 2.2; // matchReady's setupPoint re-arms pretoss; keep the old beat + // Time is up — but THE COURT IS HIS UNTIL HE LEAVES IT (Oliver: "no playing as long as the + // mopboy is on court"). He is ordered off (jobs zeroed, the half-pushed stain dropped) and + // the walk-on holds until he is clear of the playing area; the 6 s cap is a belt on top of + // the braces — nothing should ever need it, but a stalled beat must not stall the match. + const b = G.boy; + if (b && b.mop && Math.abs(b.x) < 6.5 && (d.mopHold = (d.mopHold || 0) + dt) < 6) { + b.jobs = 0; b.tx = undefined; b.tz = undefined; b.mopT = 0; + if (G.interlude && G.interlude.introT < 1) G.interlude.introT = 1; // serving stays barred + d.mopT = 0.001; // the beat re-checks next tick + } else { + d.mopT = 0; d.mopHold = 0; + matchOpponent(); + d.ending = false; // play re-opens only now that a body is on court + matchReady(); + G.phase = 'over'; G.overT = 2.2; // matchReady's setupPoint re-arms pretoss; keep the old beat + } } if (!G.matchFall) return tickMatchServe(dt); const f = G.matchFall; @@ -506,8 +517,10 @@ function matchOpponent() { // so killZombie can file the kill under it without asking G which opponent we were on. zb.foe = matchFoe(G.match.opp); zb.fam = zb.foe.fam; // ...and the body it wears (config.ZFAMS) - // the walk-on card wears the opponent's own head (config.HEAD_CROP — a crop, not new art) - G.card = { title: zb.foe.name, sub1: zb.foe.line, color: UI.hot, t: 2.4, head: zb.fam }; + // the walk-on card wears the opponent's own head (config.HEAD_CROP — a crop, not new art). + // 4.0 s: at 2.4 the head + name + punchline were gone before they were read ("the intro card + // of the player should last longer") + G.card = { title: zb.foe.name, sub1: zb.foe.line, color: UI.hot, t: 4.0, head: zb.fam }; zb.hp = zb.hpMax = TUNE.matchOppHp; // a FLAT pool: with regicide gone the body is pure // scoreboard (a quarter per point), so a deeper pool would // change nothing — the ladder escalates in racketAI instead @@ -574,7 +587,14 @@ function matchGameWon(zb, banked = false) { // on a game point) — bank the game by hand or the scoreboard drifts from the ladder. if (!banked) { score.games[0]++; score.pts = [0, 0]; } G.runGames++; // the ladder metric, same as every mode - G.hp = Math.min(G.hpMax, G.hp + TUNE.matchHeal); // a clean game is how you last + // a clean game is how you last — and when it actually restores blood, the trainer SAYS so + // (Oliver: "show wounds healed popup in zombie tennis when appropriate"). Same popup as the + // duel's, so healing has one face everywhere; a full-blood win stays silent. + const healed = Math.min(G.hpMax, G.hp + TUNE.matchHeal) - G.hp; + G.hp += healed; + if (healed > 0) + showModal({ title: 'WOUNDS TREATED', icon: 'x_cross', iconH: 52, color: UI.pick, + body: ['THE TRAINER PATCHED YOU UP', G.hp + ' OF ' + G.hpMax + ' BACK'] }); voice('game_player', 0.3); cheer(2.4, 0.6); // GAME is the FLASH and the next opponent's name plate is the CARD. It used to be the other way // round and matchOpponent's plate landed on the same slot a frame later, so 'GAME.' never drew diff --git a/src/gameplay.js b/src/gameplay.js index 172cf2e..c624ca3 100644 --- a/src/gameplay.js +++ b/src/gameplay.js @@ -379,7 +379,16 @@ function hitServe(sv, quality, aim = null, perfect = quality > 0.999) { else { // target: diagonal service box. Serving from deuce side → target box is across. const scatter = (0.8 + hard * TUNE.serveHardErr) * (1 - quality); - boxX = (deuceSide() ? -1 : 1) * (toFar ? 1 : -1) * 2.0 + sx * TUNE.serveAimX + // THE AIM BASE NEVER LEAVES THE BOX. A full sway used to carry the target ACROSS the centre + // line — an aimed serve was a fault by construction, not by risk. The sway now runs from the + // box centre to 0.18 m INSIDE either line, and only the timing scatter (added after) can + // carry the ball out — which is the tennis being asked for: the line is where you aim, the + // miss is what you risked. (Classic enforces the box; see fault()'s caller.) + const side = (deuceSide() ? -1 : 1) * (toFar ? 1 : -1); + const half = COURT.W / 2; + const aim = side * 2.0 + sx * TUNE.serveAimX; + const lo = side < 0 ? -half + 0.18 : 0.18, hi = side < 0 ? -0.18 : half - 0.18; + boxX = Math.max(lo, Math.min(hi, aim)) + (Math.random() * 2 - 1) * TUNE.aimError * scatter; // DEPTH RIDES QUALITY (player serves only): a flush strike aims near the service line, the // ONLY depth where flat pace survives the net-clearance loop — MEASURED with the replica @@ -1296,7 +1305,10 @@ export function keyPressed(code) { // unit components; mag carries the length). Keyboard: left/right sway, up = the hard one. // A plain tap stays the safe centre-box serve — that is the second-serve decision. const kb = { ax: axisX(), az: axisZ() }; - const k = flick ? Math.max(0, Math.min(1, (flick.mag - 24) / 130)) : 0; + // the dead zone is 44 px, well above the 28 px flick threshold: a slightly smudged strike TAP + // must stay a safe serve — accidental sway was most of classic's "double fault very often", + // because classic's line call enforces the service box (the match's only checks the court) + const k = flick ? Math.max(0, Math.min(1, (flick.mag - 44) / 130)) : 0; const sway = flick ? flick.fx * k : kb.ax * 0.75; const hard = flick ? Math.max(0, -flick.fy) * k : (kb.az < 0 ? 0.8 : 0); hitServe(P, q, sway || hard ? { sx: sway, hard } : null); @@ -1688,6 +1700,17 @@ export function update(dt) { } } if (ball.y <= 0 && ball.vy < 0) { + // EXACT TOUCHDOWN, not the frame after it. The integrated position lands up to one full + // step PAST the true contact — at serve pace that is ~0.75 m of travel in 1/60 s, so a + // serve aimed half a metre inside the service line was routinely JUDGED long. Oliver saw it + // as "classic tennis gives double fault very often" (the match's line call only checks the + // whole court, which is why zombie tennis seemed immune). Rewind the step to y = 0 before + // the bounce position is read by anything — the line call, the bounce dust, the mark. + const yOld = ball.y - ball.vy * dt; // where this step began (vy already g-updated) + if (yOld > 0) { + const back = dt * (1 - yOld / (yOld - ball.y)); // time spent below the ground this step + ball.x -= ball.vx * back; ball.z -= ball.vz * back; + } ball.y = 0; ball.vy = -ball.vy * TUNE.bounceY; ball.vx *= TUNE.bounceXZ; ball.vz *= TUNE.bounceXZ; if (Math.abs(ball.vy) > 1.0) dustPuff(ball.x, ball.z, 3, 0.7); // a real bounce kicks up the court diff --git a/src/render.js b/src/render.js index 4b0d530..162359d 100644 --- a/src/render.js +++ b/src/render.js @@ -221,7 +221,7 @@ function farB(z) { // Asset cache-buster — bump with main.js?v=N (see the img.src note below). EXPORTED because the // menu screens hang tags on the same files, and two copies of this number is one copy too // many: the one that does not get bumped is the one that serves a cached 404. -export const SPRV = 111; +export const SPRV = 112; // The boot bar in main.js watches this. Nothing here CHANGES when things load — every sprite was // already requested at import — it just makes the wait visible and holds the menu back until the // last sheet has landed. See the onerror note below for the other half of "sometimes missing". @@ -273,6 +273,9 @@ for (const n of ['p_idle1','p_idle2','p_bounce','p_bounce2','p_toss','p_smash',' // filenames typed out here (each of which is a chance to typo one and have a body // vanish for a frame — the oldest bug in this file). ...ZFAMS.flatMap(famFrames), + // the card's 4K-cut head icons (assets/_heads.py). 'r' has no fam sheet — his + // card keeps the HEAD_CROP fallback, so no file and no 404 for him. + ...ZFAMS.filter(k => k !== 'r').map(k => 'z_' + k + 'head'), 'w_ball','w_bomb','w_triple','w_fire','w_gun', // weapon-rack icons 'w_beacon','w_laser','w_rocket','w_flamer', // ...and the four that come out of a barrel 'z_barrel1','z_barrel2', // the weapon barrel, two frames so it ROLLS @@ -1711,10 +1714,16 @@ function cardBody(c, dx) { // and boss names of any length, and Bangers 22 ran a long one off both edges of a phone. Measure // once and shrink to the band; 22 stays 22 for everything that already fit. // THE OPPONENT CARD CARRIES ITS HEAD (Oliver: the punchline plus a picture of his head). The - // icon is a straight crop out of the family's own healthy frame — config.HEAD_CROP, measured, - // never separate art — drawn left of the text block, which shifts right to keep the whole - // group centred as one. A family with no crop row degrades to the plain text card. - const hd = c.head && HEAD_CROP[c.head] && SPR['z_' + c.head + '1'] ? HEAD_CROP[c.head] : null; + // icon prefers the 4K-cut z_head.png (assets/_heads.py — the installed 224 px frames gave + // ~65 px heads drawn at 144 device px, which is the "very low res" he reported) and degrades + // to the HEAD_CROP crop of the healthy frame, then to the plain text card. Never separate art: + // both sources are the body already on court. + const headImg = c.head && SPR['z_' + c.head + 'head']; + const hd = headImg ? { img: headImg, w: headImg.width, h: headImg.height } + : c.head && HEAD_CROP[c.head] && SPR['z_' + c.head + '1'] + ? { img: SPR['z_' + c.head + '1'], box: HEAD_CROP[c.head], + w: HEAD_CROP[c.head].w, h: HEAD_CROP[c.head].h } + : null; const ih = hd ? CARD_H - 14 : 0, iw = hd ? Math.round(hd.w * ih / hd.h) : 0; const room = W - 24 - (hd ? iw + 8 : 0); ctx.font = B(22); @@ -1731,8 +1740,9 @@ function cardBody(c, dx) { let blockW = 0; for (const [t, f] of lines) { ctx.font = f; blockW = Math.max(blockW, ctx.measureText(t).width); } ctx.imageSmoothingEnabled = false; - ctx.drawImage(SPR['z_' + c.head + '1'], hd.x, hd.y, hd.w, hd.h, - Math.round(cx - blockW / 2 - 8 - iw), Math.round(CARD_MID - ih / 2), iw, ih); + const hx = Math.round(cx - blockW / 2 - 8 - iw), hy = Math.round(CARD_MID - ih / 2); + if (hd.box) ctx.drawImage(hd.img, hd.box.x, hd.box.y, hd.box.w, hd.box.h, hx, hy, iw, ih); + else ctx.drawImage(hd.img, hx, hy, iw, ih); } for (const [t, f, rel, col] of lines) { ctx.font = f; shadowText(t, cx, y + rel, col); } ctx.textAlign = 'center'; ctx.restore(); // the band's neighbours (flash, countdown) assume centred diff --git a/test.js b/test.js index a0052b2..7061e49 100644 --- a/test.js +++ b/test.js @@ -505,9 +505,13 @@ test('endDrill hands the court back', () => { const startMatch = () => { const r = _startMatch(); G.modal = null; G.modalQ.length = 0; return r; }; const oppOf = () => zombies.find(z => z.variant === 'r'); -// a won game now opens the MOP BEAT (TUNE.matchMopT) before the next opponent walks on — -// tests that play across a game boundary step through it here -const passMopBeat = () => { for (let i = 0; i < (TUNE.matchMopT + 1) * 60; i++) update(DT); }; +// a won game now opens the MOP BEAT (TUNE.matchMopT) before the next opponent walks on — plus +// the boy's walk-off hold (he must LEAVE the court) and possibly the WOUNDS TREATED popup, which +// freezes the world until tapped. Tests that play across a game boundary step through all of it, +// dismissing popups the way a player would. +const passMopBeat = () => { // ...stopping at the walk-on: past it, the next opponent PLAYS + for (let i = 0; i < (TUNE.matchMopT + 8) * 60 && !oppOf(); i++) { G.modal = null; G.modalQ.length = 0; update(DT); } +}; test('a match owns the court like every other mode', () => { assert.ok(startMatch(), 'a match starts on a clean court'); @@ -540,7 +544,10 @@ test('a point won tears a wound stage off the body; only the game point fells it assert.ok(!oppOf(), 'no fresh opponent on the kill frame — the mop beat owns the court'); assert.ok(G.match.mopT > 0, 'the beat is armed'); assert.ok(G.interlude && G.interlude.introT > 0, 'and serving is barred for its whole length'); - for (let i = 0; i < (TUNE.matchMopT + 1) * 10; i++) update(0.1); + // ...and the beat now also WAITS FOR THE BOY TO LEAVE the court before the walk-on + for (let i = 0; i < (TUNE.matchMopT + 2) * 10 && G.boy && Math.abs(G.boy.x) < 6.5; i++) update(0.1); + assert.ok(!oppOf(), 'still no opponent while the boy is on the court'); + passMopBeat(); const next = oppOf(); assert.ok(next && next !== zb, 'a fresh opponent shambled on after the mop beat'); assert.equal(next.hpMax, TUNE.matchOppHp, 'same flat pool — the ladder escalates in speed/flub, not hp'); @@ -766,7 +773,7 @@ test('service alternates by game, and the opponent actually serves', () => { for (let i = 0; i < 2 * 60 && G.matchFall; i++) update(DT); // let each collapse finish } assert.equal(score.server, 'O', 'their serve next game'); - for (let i = 0; i < (TUNE.matchMopT + 1) * 60; i++) update(DT); // the mop beat holds the court first + passMopBeat(); // the mop beat (and the boy's exit) come first // the opponent stands behind ITS baseline to serve, not on the receiving mark const rz = zombies.find(z => z.variant === 'r'); assert.ok(rz.z < 1.0, 'it steps back to serve: z=' + rz.z.toFixed(2));