节奏大师 - Rhythm Master
简介
《节奏大师》是一款键盘节奏游戏,玩家需要在正确的时机按下对应的按键(↑↓←→空格),跟随音乐节奏击打落下的音符。游戏拥有完善的判定系统、连击机制、多难度等级和排行榜功能。
何时使用此 Skill
- - 用户说"我想玩节奏游戏"、"来玩音游"、"测试手速"
- 用户想要类似 QQ炫舞、osu!、太鼓达人 的游戏体验
- 用户想玩需要反应速度的键盘游戏
- 聚会时需要竞技性小游戏
- 用户明确表示想玩音乐节奏游戏
游戏特色
🎮 核心玩法
- - 5键操作:← ↓ SPACE ↑ →
- 实时判定:PERFECT / GREAT / GOOD / BAD / MISS
- 连击系统:连击越高,得分倍数越高
- 生命系统:MISS会扣除生命,生命归零游戏结束
📊 难度等级
| 难度 | 速度 | 音符密度 | 适合人群 |
|---|
| 简单 (EASY) | 慢 | 稀疏 | 初学者 |
| 普通 (NORMAL) |
中等 | 中等 | 普通玩家 |
| 困难 (HARD) | 快 | 密集 | 熟练玩家 |
| 专家 (EXPERT) | 极快 | 极密 | 高手 |
🏆 排行榜系统
- - 本地排行榜:自动保存前100名,使用浏览器 LocalStorage
- 联网排行榜:可扩展至 Firebase/自建服务器(需额外配置)
- 详细统计:保存 PERFECT/GREAT/GOOD/BAD/MISS 数量和最大连击
游戏数据与资源
游戏机制文档
- -
references/game_mechanics.md - 完整游戏机制说明
- 判定系统(50ms-200ms 时间窗口)
- 得分计算公式
- 连击加成表
- 评级系统(SSS/A/B/C/D)
- 游戏模式(经典/无尽/挑战/对战/练习)
排行榜系统文档
- -
references/leaderboard_system.md - 排行榜实现方案
- 本地存储实现(已内置)
- Firebase 联网方案
- 自建后端方案(Node.js + MongoDB)
- 防作弊机制
- 部署指南
游戏实现
- -
assets/rhythm-game.html - 完整的网页版游戏
- 单文件 HTML,开箱即用
- 响应式设计,支持移动端
- 完整的游戏逻辑和UI
- 本地排行榜功能
如何使用
启动游戏
方式一:直接打开 HTML 文件
- 1. 打开 INLINECODE3
- 使用浏览器打开(推荐 Chrome/Edge/Firefox)
- 选择难度,点击"开始游戏"
方式二:部署到网页服务器
CODEBLOCK0
方式三:部署到公网
- - GitHub Pages
- Netlify
- Vercel
- Cloudflare Pages
游戏操作
CODEBLOCK1
操作技巧:
- 1. 保持节奏感:跟着内心默数节拍
- 预判音符:眼睛看判定线,余光看音符
- 手位固定:保持手位不要移动
- 宁可GOOD不断连:保持连击比准确率更重要
- 放松心态:紧张会影响反应速度
游戏规则
- 1. 音符下落:音符从上方落下,到达判定线时按键
- 判定等级:
- 🌟 PERFECT (±50ms) - 100分
- ✨ GREAT (±100ms) - 80分
- 👍 GOOD (±150ms) - 50分
- 😕 BAD (±200ms) - 20分,连击中断
- ❌ MISS (>200ms) - 0分,扣1生命
- 3. 连击加成:
- 1-10连击:1.0x
- 11-30连击:1.1x
- 31-50连击:1.2x
- 51-100连击:1.5x
- 101-200连击:2.0x
- 200+连击:2.5x
- 4. 评级系统(根据准确率):
- SSS (100%) - 节奏之神
- SS (95-99%) - 节奏大师
- S (90-94%) - 节奏高手
- A (80-89%) - 节奏达人
- B (70-79%) - 节奏学徒
- C (60-69%) - 节奏新手
- D (<60%) - 节奏小白
游戏流程
1. 主菜单
CODEBLOCK2
2. 游戏界面
CODEBLOCK3
3. 游戏结束
CODEBLOCK4
扩展联网排行榜
快速方案:Firebase(推荐)
步骤:
- 1. 访问 https://firebase.google.com 创建项目
- 获取配置信息
- 在
rhythm-game.html 中添加 Firebase SDK - 修改保存分数和获取排行榜的函数
代码示例:
CODEBLOCK5
详细配置请参考 INLINECODE5
游戏特色功能
视觉效果
- - 🌈 霓虹科技风格 UI
- ✨ 判定结果动态特效
- 🔥 连击数越高背景越华丽
- 💥 MISS时屏幕震动反馈
- 🎨 不同按键不同颜色区分
音效反馈
- - 每个按键有不同的音高
- 判定结果有不同音效
- 连击 milestone 有特殊音效
响应式设计
- - 支持桌面端和移动端
- 自适应不同屏幕尺寸
- 触摸操作支持(移动端)
技术规格
性能要求
- - 目标帧率:60fps
- 输入延迟:<16ms
- 支持浏览器:Chrome 80+, Firefox 75+, Edge 80+, Safari 13+
代码结构
CODEBLOCK6
注意事项
键盘兼容性
- - 确保键盘支持多键同时按下(防鬼键)
- 部分笔记本键盘可能有限制
- 推荐使用外接机械键盘获得最佳体验
浏览器设置
- - 确保浏览器允许自动播放(如需添加背景音乐)
- 建议全屏模式游玩(按 F11)
- 关闭省电模式以保持 60fps
游戏体验优化
- 1. 首次游玩:建议从"简单"难度开始
- 提高准确率:专注听节奏而非看音符
- 保持连击:宁可准确率稍低也不要断连
- 休息间隔:每玩3-5局休息眼睛和手指
示例对话
启动游戏
CODEBLOCK7
游戏进行中提示
CODEBLOCK8
游戏结束后
CODEBLOCK9
文件清单
CODEBLOCK10
许可
本 Skill 为开源项目,可自由使用、修改和分发。
🎵
准备好挑战你的反应极限了吗?打开 rhythm-game.html 开始游戏吧!
节奏大师 - Rhythm Master
简介
《节奏大师》是一款键盘节奏游戏,玩家需要在正确的时机按下对应的按键(↑↓←→空格),跟随音乐节奏击打落下的音符。游戏拥有完善的判定系统、连击机制、多难度等级和排行榜功能。
何时使用此 Skill
- - 用户说我想玩节奏游戏、来玩音游、测试手速
- 用户想要类似 QQ炫舞、osu!、太鼓达人 的游戏体验
- 用户想玩需要反应速度的键盘游戏
- 聚会时需要竞技性小游戏
- 用户明确表示想玩音乐节奏游戏
游戏特色
🎮 核心玩法
- - 5键操作:← ↓ SPACE ↑ →
- 实时判定:PERFECT / GREAT / GOOD / BAD / MISS
- 连击系统:连击越高,得分倍数越高
- 生命系统:MISS会扣除生命,生命归零游戏结束
📊 难度等级
| 难度 | 速度 | 音符密度 | 适合人群 |
|---|
| 简单 (EASY) | 慢 | 稀疏 | 初学者 |
| 普通 (NORMAL) |
中等 | 中等 | 普通玩家 |
| 困难 (HARD) | 快 | 密集 | 熟练玩家 |
| 专家 (EXPERT) | 极快 | 极密 | 高手 |
🏆 排行榜系统
- - 本地排行榜:自动保存前100名,使用浏览器 LocalStorage
- 联网排行榜:可扩展至 Firebase/自建服务器(需额外配置)
- 详细统计:保存 PERFECT/GREAT/GOOD/BAD/MISS 数量和最大连击
游戏数据与资源
游戏机制文档
- - references/game_mechanics.md - 完整游戏机制说明
- 判定系统(50ms-200ms 时间窗口)
- 得分计算公式
- 连击加成表
- 评级系统(SSS/A/B/C/D)
- 游戏模式(经典/无尽/挑战/对战/练习)
排行榜系统文档
- - references/leaderboard_system.md - 排行榜实现方案
- 本地存储实现(已内置)
- Firebase 联网方案
- 自建后端方案(Node.js + MongoDB)
- 防作弊机制
- 部署指南
游戏实现
- - assets/rhythm-game.html - 完整的网页版游戏
- 单文件 HTML,开箱即用
- 响应式设计,支持移动端
- 完整的游戏逻辑和UI
- 本地排行榜功能
如何使用
启动游戏
方式一:直接打开 HTML 文件
- 1. 打开 assets/rhythm-game.html
- 使用浏览器打开(推荐 Chrome/Edge/Firefox)
- 选择难度,点击开始游戏
方式二:部署到网页服务器
bash
使用 Python 快速启动本地服务器
cd assets
python -m http.server 8080
访问 http://localhost:8080/rhythm-game.html
方式三:部署到公网
- - GitHub Pages
- Netlify
- Vercel
- Cloudflare Pages
游戏操作
按键布局:
左手区 空格 右手区
┌───┬───┐ ┌───┬───┐
│ ← │ ↓ │ [SPACE] │ ↑ │ → │
└───┴───┘ └───┴───┘
小指 无名指 双手拇指 食指 中指
操作技巧:
- 1. 保持节奏感:跟着内心默数节拍
- 预判音符:眼睛看判定线,余光看音符
- 手位固定:保持手位不要移动
- 宁可GOOD不断连:保持连击比准确率更重要
- 放松心态:紧张会影响反应速度
游戏规则
- 1. 音符下落:音符从上方落下,到达判定线时按键
- 判定等级:
- 🌟 PERFECT (±50ms) - 100分
- ✨ GREAT (±100ms) - 80分
- 👍 GOOD (±150ms) - 50分
- 😕 BAD (±200ms) - 20分,连击中断
- ❌ MISS (>200ms) - 0分,扣1生命
- 3. 连击加成:
- 1-10连击:1.0x
- 11-30连击:1.1x
- 31-50连击:1.2x
- 51-100连击:1.5x
- 101-200连击:2.0x
- 200+连击:2.5x
- 4. 评级系统(根据准确率):
- SSS (100%) - 节奏之神
- SS (95-99%) - 节奏大师
- S (90-94%) - 节奏高手
- A (80-89%) - 节奏达人
- B (70-79%) - 节奏学徒
- C (60-69%) - 节奏新手
- D (<60%) - 节奏小白
游戏流程
1. 主菜单
🎵 节奏大师
[选择难度:简单/普通/困难/专家]
[▶ 开始游戏]
[🏆 排行榜]
[❓ 游戏说明]
2. 游戏界面
得分: 12,500 | 连击: 45 | 生命: ♥♥♥♥♥ | 时间: 45s
[COMBO 显示区域]
← ↓ SPACE ↑ →
○ ○ ○ ○ ○
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[判定线]
【音符从这里落下】
3. 游戏结束
🎉 游戏结束
最终得分: 98,500
评级: S
统计:
PERFECT: 120 | GREAT: 35 | GOOD: 5
BAD: 0 | MISS: 0 | 最大连击: 156
[输入名字保存分数]
[💾 保存分数] [🏆 查看排行榜] [🔙 返回主菜单]
扩展联网排行榜
快速方案:Firebase(推荐)
步骤:
- 1. 访问 https://firebase.google.com 创建项目
- 获取配置信息
- 在 rhythm-game.html 中添加 Firebase SDK
- 修改保存分数和获取排行榜的函数
代码示例:
javascript
// 保存到云端
async function saveScoreOnline(scoreData) {
const db = firebase.database();
await db.ref(leaderboard).push(scoreData);
}
// 获取排行榜
async function getOnlineLeaderboard() {
const snapshot = await db.ref(leaderboard)
.orderByChild(score)
.limitToLast(20)
.once(value);
return snapshot.val();
}
详细配置请参考 references/leaderboard_system.md
游戏特色功能
视觉效果
- - 🌈 霓虹科技风格 UI
- ✨ 判定结果动态特效
- 🔥 连击数越高背景越华丽
- 💥 MISS时屏幕震动反馈
- 🎨 不同按键不同颜色区分
音效反馈
- - 每个按键有不同的音高
- 判定结果有不同音效
- 连击 milestone 有特殊音效
响应式设计
- - 支持桌面端和移动端
- 自适应不同屏幕尺寸
- 触摸操作支持(移动端)
技术规格
性能要求
- - 目标帧率:60fps
- 输入延迟:<16ms
- 支持浏览器:Chrome 80+, Firefox 75+, Edge 80+, Safari 13+
代码结构
rhythm-game.html
├── HTML 结构
│ ├── 菜单界面
│ ├── 游戏界面
│ ├── 结算界面
│ └── 排行榜界面
├── CSS 样式
│ ├── 霓虹灯主题
│ ├── 动画效果
│ └── 响应式布局
└── JavaScript 逻辑
├── 游戏状态管理
├── 音符生成系统
├── 判定系统
├── 得分计算
└── 排行榜存储
注意事项
键盘兼容性
- - 确保键盘支持多键同时按下(防鬼键)
- 部分笔记本键盘可能有限制
- 推荐使用外接机械键盘获得最佳体验
###