《听雨》
《听雨》是本站的第一方四轨节奏游戏:檐下 96 BPM / 48 音符、涨潮 120 / 72、骤雨 144 / 104,共 224 个音符;D F J K 四键,Perfect ±45 ms、Good ±100 ms,声音全部由浏览器实时合成。
《听雨》是本站的第一方四轨节奏游戏:檐下 96 BPM / 48 音符、涨潮 120 / 72、骤雨 144 / 104,共 224 个音符;D F J K 四键,Perfect ±45 ms、Good ±100 ms,声音全部由浏览器实时合成。

三首曲子,四条轨道,D F J K 四个键。声音不是加载来的音频文件,而是浏览器里实时合成的:低音、木琴、雨声底噪各占一层,音符与伴奏都按同一个时钟排程。判定窗口 ±45 毫秒算 Perfect,±100 毫秒算 Good,再晚就是 Miss。
上架 2026-11-07 · 当前版本 1.0.0 · 最近更新 2026-11-07




檐下 96 BPM、64 拍、48 个音符,是最好上手的一首;涨潮 120 BPM、80 拍、72 个音符,开始出现同一拍里两个音;骤雨 144 BPM、96 拍、104 个音符,密度最高,也最考验手指交替。三首都是四十秒左右,一首打完不用很久。
音符数不是估的:谱面用固定种子生成,先按八分音符网格切出可用格子,再按曲目规定的数量放音,生成完会在运行时数一遍。选曲屏上写的就是运行时数出来的结果。
每个音符有一个目标时间,判定时拿当前曲内时间减去它,取绝对值:45 毫秒以内是 Perfect,100 毫秒以内是 Good,超过 100 毫秒算 Miss。用的是 AudioContext 的时钟,不是帧数,所以掉帧不会让判定整体偏移。
生命 100 起步,Perfect +1.2,Good +0.5,Miss 扣 6。也就是说连续漏掉十七个音就到底了。准确率的算法是(Perfect 数 + Good 数 × 0.6)除以总音符数,Good 只算六成。
加载音频文件会带来两个问题:首次进入要等下载,以及不同设备的解码延迟不一致。改成实时合成之后,音符的排程时间和发声时间在同一个时钟上,判定和听到的声音不会互相错位。
每个音都是提前 150 毫秒排进音频队列的,不是在每一帧里临时播放——后者在帧率抖动时会听起来一顿一顿。低音用正弦波,木琴用三角波加快速衰减,雨声是一段白噪声过滤波器,三首曲子靠音阶和节奏型区分。
连击每增加 10 次,分数加成加 5%,最高加到 50%。断连之后加成回到零,但已经拿到的分数不会退。评级看的是准确率:S 需要几乎全 Perfect,A 允许少量 Good,B 是勉强跟住,C 是打完了但漏得多。
每首曲子分别记录本机最高分与最高准确率。选曲屏上三个分数就是这三首,互不覆盖;换设备或清掉站点数据会回到 0。
电脑上 D F J K 对应四条轨道,P 暂停,R 重开,Esc 回标题。手机上画布底部有四块触摸区,按横坐标判断落在哪一轨,支持多指同时按——这是四轨游戏在手机上唯一能打的方式。
暂停会把整个音频上下文挂起,恢复后从原来的位置继续,而不是从头重放。这一点对长曲很重要:中途接个电话回来,不应该丢掉前半首。
音符数量是固定的吗?
是。三首分别是 48、72、104,用固定种子生成,每次打开都一样。选曲屏上的数字是运行时数出来的,不是写死的文案。
为什么我按了还是 Miss?
判定看的是按下那一刻与音符目标时间的差。如果按早了超过 100 毫秒,同样算 Miss。先跟着鼓点找拍子,比盯着音符更稳。
分数只和准确率有关吗?
不是。连击加成最多能把分数抬到 1.5 倍,所以「连续不断」和「按得准」要同时做到。断连不影响准确率,但会明显压低分数。
记录会同步吗?
不会。三首曲子的最高分与最高准确率只写在这台设备的浏览器里。
挑一首,先跟着鼓点走 — 游戏在独立子域运行 · 3 首曲子 224 个音符 · 记录存在本机
从 2026-11-07 的首版算起,这一页按版本记下这款游戏改过什么。