Skip to content
TeamOpenSiriusPublic

About

offline client of a specific rhythm game.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Repository files navigation

OpenWDS

简体中文 | English

本项目为恢复音游玩法的非官方、非盈利 Unity 项目。 支持「标题 → Home → 普通/特殊选歌 → 游玩 → 结算 → 返回」,完全离线运行。

已支持

  • 标题、Home、普通/特殊谱面选歌、游玩、独立结算、重玩与返回。
  • 触摸输入、自动播放、CRI 音频、游玩设置与暂停重试。
  • 本地成绩、评级、Olivier 星章;普通与特殊谱面分别保存成绩。
  • 外置歌曲资源、完整 ZIP 导入与中断回滚。
  • Home 剧场、角色待机、公共菜单和日/中/英离线声明。
  • Android ARM64 构建入口。

当前限制

Home 其他入口、角色交互与编队系统及部分转场表现可能仍待完善,不同 Android 设备的 触摸、刷新率、字体和演出效果需要继续验证。

由于完全离线,需要联网下载的歌曲资源需单独提供给应用。

获取工程

需要 Unity 2022.3.62f2、Git 和 Git LFS。Android 构建还需要通过 Unity Hub 为该版本安装 Android Build Support,以及配套 SDK、NDK 和 OpenJDK。 资源打包需要 Python 3,仅使用标准库。

在 PowerShell 中执行:

git lfs install
git clone https://github.com/TeamOpenSirius/OpenWDS.git
cd OpenWDS
git lfs pull

Assets/StreamingAssets/ 与 SongResources/ 使用 Git LFS。若资源内容以 version https://git-lfs.github.com/spec/v1 开头,说明仍是指针文件,需要完成 git lfs pull。

在 Unity 中运行

  1. 用 Unity Hub 打开仓库根目录,等待依赖恢复和资源导入完成。依赖版本见 Packages/manifest.json 与 Packages/packages-lock.json。
  2. 打开 Assets/OpenWDS/Scenes/OfflineBootstrap.unity,点击 Play。
  3. 进入标题后点击进入 Home,再从选歌页面开始游玩。

Editor 直接读取工程根目录的 SongResources/,无需先导入资源 ZIP。 首次进入 Home 会显示离线声明,每次运行仅自动显示一次,也可从菜单重新打开。

打包歌曲资源 ZIP

SongResources/与应用本体分开打包。不要把该目录移入 Assets/,也不要为其中的文件添加 .meta。 从仓库根目录执行:

python DeveloperTools/package_song_resources.py

生成:

  • Build/Resources/OpenWDS-resources.zip:完整歌曲资源包。
  • Build/Resources/OpenWDS-resources.manifest.json:资源文件清单。

如需手动打包,ZIP 根目录应直接包含 catalog.json 和 OpenWDS/,其中包括 OpenWDS/AnotherNotations/catalog.json 及两份目录引用的全部歌曲文件,不要多套一层 SongResources/。

增量资源包的打包与导入暂未完善,目前请使用完整资源包。歌曲包独立于 APK,无需因重新打包 ZIP 而重建应用。

构建 Android APK

先保存并关闭使用该工程的 Unity Editor。在仓库根目录打开 PowerShell,替换下面的 Unity 安装路径:

$unity = 'C:\Program Files\Unity\Hub\Editor\2022.3.62f2\Editor\Unity.exe'
& $unity -batchmode -quit -buildTarget Android -projectPath $PWD.Path -executeMethod OpenWDS.Editor.BuildOpenWDSAndroid.BuildTouchDeviceApk -logFile "$PWD/android-build.log"

输出为 Build/Android/OpenWDS-touch-test.apk,使用 ARM64/IL2CPP;构建日志为 android-build.log。 APK 不内嵌歌曲,构建应用和打包歌曲 ZIP 可分别进行。

安装 APK 后,将完整资源 ZIP 复制到设备,首次启动时通过系统文件选择器导入。 导入成功后应用会尝试删除所选 ZIP;若系统拒绝,可手动删除。成绩与设置不会被歌曲导入覆盖。

工程目录

路径 用途
Assets/OpenWDS/Runtime/ 导航、选歌、判定、成绩、资源导入及演出
Assets/OpenWDS/Scripts/ 恢复的游戏组件
Assets/OpenWDS/Editor/ 场景生成和构建入口
Assets/OpenWDS/Scenes/ 启动、Home、选歌、游玩及结算场景
Assets/Resources/ 内置 prefab、字体、声明等
Assets/StreamingAssets/ 内置 UI、模型、音效和 bundle
SongResources/ 外置歌曲及目录
DeveloperTools/package_song_resources.py 歌曲资源 ZIP 打包入口

声明与授权

OpenWDS 不代表原作运营方。原作图片、音频、歌曲、角色、商标等归各权利人所有, 本项目不授予这些素材的使用或再分发许可。项目非盈利,禁止用于商业用途, 包括售卖、付费下载、收费服务或广告变现。

第三方素材和组件的许可证仍须遵守,见 THIRD_PARTY_NOTICES.md。 游戏内离线声明提供日语、简体中文 和 English 三版。

About

offline client of a specific rhythm game.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages