The flight recorder finds the statue with a racket
"can you watch me play in the browser pane and see why I loose". A passive 20Hz recorder sampled his real play: seven losses, and in every single one he SWUNG (his timing was fine) while the ball died 2-3m to his side and his own x never moved all game. He had no legs: autoAssist keys off pointer:coarse, the pane reports a fine pointer, so auto-run was 0 — the exact trap the verification recipe has warned about for weeks, bitten in live play. matchAssist 1.15: the match brings its own legs on every device. It is a tap-timing game; footwork is the game's job. Held keys still override. Pinned by a test that plays with autoAssist 0 and asserts he runs. The vignette curve is sqrt(damage): the match pool is 8, so hit one was a 10% alpha nobody can see. sqrt front-loads it — first blood reads at ~0.3. This also explains three rounds of disagreement between his reports and my measurements: my autopilot always had legs (it set autoAssist by hand), his pane play never did. 47 tests, 12 seeds clean. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
fdbadce94d
commit
3a789eb2e9
6 files changed
+53
-7
No files matched your search
+5
-4
@@ -1971,10 +1971,11 @@ export function render() {
|
||||
const dmg = 1 - Math.max(0, G.hp) / (G.hpMax || 1);
|
||||
const pulse = G.hurtFlash > 0 ? Math.min(1, G.hurtFlash / 0.3) * 0.3 : 0;
|
||||
if (dmg > 0 || pulse > 0) {
|
||||
// dmg * 0.8: at half health the frame is unmistakably bloodied, at 1 hp it closes in hard
|
||||
// ("the vignette can get more pronounced") — the inner radius tightens with damage too, so
|
||||
// deep wounds shrink the clean centre instead of only darkening the rim
|
||||
const a = Math.min(0.85, dmg * 0.8 + pulse);
|
||||
// SQRT of the damage, not the damage: the match pool is 8, so a linear curve made the first
|
||||
// hit a 10% alpha nobody can see — "the vignette is basically invisible". sqrt front-loads it:
|
||||
// hit one on 8 hp reads at ~0.3 alpha, and it still deepens all the way to the cap. The inner
|
||||
// radius tightens with damage too, so deep wounds shrink the clean centre.
|
||||
const a = Math.min(0.85, Math.sqrt(dmg) * 0.8 + pulse);
|
||||
const g = ctx.createRadialGradient(W / 2, H / 2, Math.min(W, H) * (0.5 - dmg * 0.22),
|
||||
W / 2, H / 2, Math.max(W, H) * 0.7);
|
||||
g.addColorStop(0, 'rgba(120,8,12,0)');
|
||||
|
||||
Reference in new issue
Block a user