Skip to content

Far-cloind/Dissonance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dissonance - 节奏生存Roguelike

一个以音乐节奏为核心的2D生存Roguelike游戏,类似《吸血鬼幸存者》但带有独特的音乐战斗系统。

🎮 核心概念

音乐即武器 - 玩家的攻击与背景音乐的节奏同步,不同乐器风格带来不同的战斗体验。

节奏系统

  • 强拍(第1拍):玩家自动释放攻击技能
  • 弱拍(第2拍):敌人死亡时播放对应乐器声音
  • 不同乐器风格有不同的BPM和拍号

🎵 乐器风格系统

风格 BPM 拍号 强拍声音 弱拍声音 攻击特性
摇滚 140 四二拍 底鼓 军鼓 大范围冲击波
弦乐 90 华尔兹三拍子 大提琴 小提琴 穿透音波
电子 128 四四拍 电子低音 电子军鼓 快速脉冲波

已实现

  • ✅ 三种乐器风格基础框架
  • ✅ 程序化音频生成(底鼓、军鼓)
  • ✅ 弦乐合成器(待优化为采样)
  • ✅ 风格切换系统

待优化

  • 🔄 弦乐音色(计划使用MIDI采样替代程序化生成)
  • 🔄 电子风格独特音效

🎯 游戏系统

已完成

  • ✅ 玩家移动(鼠标指向)
  • ✅ 敌人AI(追踪玩家)
  • ✅ 伤害系统
  • ✅ 经验值与升级
  • ✅ UI界面(血量、经验、时间)
  • ✅ 开始菜单
  • ✅ 敌人生成器

进行中

  • 🔄 武器系统扩展
  • 🔄 道具系统
  • 🔄 波次系统

计划中

  • ⏳ 更多敌人类型
  • ⏳ Boss战
  • ⏳ 元进度系统
  • ⏳ 成就系统

🏗️ 项目结构

Dissonance/
├── scenes/           # 场景文件
│   ├── main.tscn
│   ├── player.tscn
│   ├── enemy.tscn
│   ├── main_menu.tscn
│   └── ...
├── scripts/          # GDScript脚本
│   ├── audio/        # 音频合成器
│   ├── characters/   # 角色控制器
│   ├── instrument_styles/  # 乐器风格策略
│   ├── managers/     # 游戏管理器
│   ├── ui/          # UI界面
│   └── global/      # 全局数据
├── assets/          # 资源文件(图片、音频)
└── .trae/skills/    # AI开发技能文档

🛠️ 技术栈

  • 引擎: Godot 4.x
  • 语言: GDScript
  • 音频: 程序化音频生成 + 计划使用采样
  • 架构: 策略模式(乐器风格)、组件模式

🚀 如何运行

  1. 安装 Godot 4.x
  2. 克隆仓库
  3. 在Godot中打开项目
  4. 按F5运行

📝 开发日志

2026-03-12

  • 集成 MidiPlayer 插件,支持 SoundFont 播放
  • 实现 BGM 播放器,支持 MIDI 背景音乐
  • 解决大文件(4GB+) SoundFont 加载问题(懒加载模式)
  • 添加字符串风格 SoundFont 支持

2026-03-06

  • 重构乐器风格架构,每个风格有独立的节奏管理器
  • 修复UI更新问题
  • 优化弦乐合成器(仍不满意,计划改用采样)

2026-03-05

  • 实现三种乐器风格基础框架
  • 添加程序化音频(底鼓、军鼓)
  • 实现风格切换系统

2026-03-04

  • 创建基础项目结构
  • 实现玩家移动和敌人AI
  • 添加UI界面

🤝 贡献

这是一个个人学习项目,欢迎提出建议和改进意见!

📄 许可证

MIT License


注意: 本项目处于早期开发阶段,大量功能仍在实现中。

About

A music game developed by trae

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors