rhythm doctor 关卡编辑器无障碍mod用户手册


目录

正文

0. 太长不看版

如果你不喜欢看我这些浪费时间的废话专业硬核的用户手册,或者你更想自己探索,那么这里为你整理了一些比较重要的内容。我觉得最好还是看看比较好。

1. 基本介绍

1.1 这是什么?

这个问题问得好。这证明你已经触及到了这个项目最底层,同时也是最重要的核心理念。那么它究竟是什么呢?

这不废话吗,名字都写的那么清楚了,这种简单的问题就不用问了吧。什么?你以为我真的会认认真真用一本正经的语言来写用户手册吗?不不不,这不是我的风格。我要是真想一本正经的写,那还不如让 ai 帮我写呢,那种东西我写的又不如它好。

嗯,经过我详细的介绍,相信你肯定已经知道这个项目是干嘛的了,那我们就继续往下看吧。其实好像根本什么都没说

1.2 主要特点

1.3 注意事项

防止你觉得手册太长懒得看,所以有些注意事项我得事先声明一下。

  1. 本 mod 目前存在一定局限性,特别是对视觉方面的功能(例如 window dance、精灵等)的支持还不完善。
  2. 虽然 mod 已经相对较为稳定,但依然建议你养成随手保存的习惯。我曾经遇到过莫名崩溃的情况(详情请看这里),但还好我有这个好习惯。哎,都是被逼的。

2. 安装

2.1 系统要求

注意:推荐使用游戏的最新公开测试版以获得最好的兼容性。

点此查看切换方法

2.2 安装步骤

解压开之后,你除了看到这个手册之外,应该还能看到main文件夹。点进去,全选复制到你的 rhythm doctor.exe 所在目录粘贴就搞定了。下次运行游戏的时候,mod 就可以顺利运行了。

3. 快速入门

3.1 编辑器基础概念

在真正开始讲 mod 的使用方法之前,得先了解一些原生编辑器的基本概念。在这一方面我其实也不是很懂,所以就简单概括一下。不想看的话就直接跳过吧。

3.1.1 标签页

编辑器中一共有六个标签页,可以按大键盘 1-6 来切换。它们分别为:1 声音(sounds)、2 轨道(rows)、3 动作(actions)、4 房间(rooms)、5 精灵(sprites)和 6 窗口(windows)。每个标签页分别管理不同类型的事件。

3.1.2 事件

你可以把事件理解为告诉游戏什么时候该干什么的一条条指令。

关卡中的各种动作都可以称之为事件。例如播放音乐、护士语音提示,以及各种特效、对话,还有各种节拍等。

3.1.3 轨道

轨道就相当于你需要“治疗”的“病人”。所有的节拍事件都发生在轨道上。

3.1.4 房间

房间用于控制画面的分割和布局显示,有点类似于分屏。一个关卡内只能同时存在四个房间。每个房间内只能有最多四条轨道。也就是说,一个关卡内最多只能有 16 条轨道。

3.2 首次启动

在主菜单中找到关卡编辑器,此功能还没有兼容朗读。,enter 进入。

等等,不是说这个 mod 能让它支持朗读吗?嗯,不要在意那些细节。

总之,如果你是首次进入,会需要你同意一个协议。下光标读读看,然后找到同意 enter 就好了。ps:不是,这跟《冰与火之舞》有什么关系啊?

咳咳,我们还是说回正题吧。在你敲下 enter 的时候,你一定发现 level1 的音乐忽然就响了起来对吧,但是你先别慌,这是因为打开编辑器的时候会默认加载一个简单的演示关卡,而导致关卡直接启动主要是因为游戏的操作按键与 mod 的发生冲突了,不过影响不大,也就偶尔几个对话框会有这种情况而已。你只要淡定的按一下 p,关卡就暂停了。或者你更想听听歌?

同意协议之后,你可以尝试按左右光标浏览一下当前标签页的事件。不过这个演示关卡只有三个事件而已,分别在声音、轨道和动作这三个标签页中。如果你能听到屏幕阅读器读出事件名称和所在位置,那就证明你已经成功进入了编辑器。

3.3 新建关卡前的准备工作

如果你这就忍不住想大展身手创建个关卡玩玩了,请先不要急。在此之前,你还需要了解以下准备工作:

  1. 在你的电脑上任何一个你看得顺眼的地方新建一个文件夹。
  2. 在编辑器里按 ctrl+n 新建关卡,并把关卡保存位置设置为你刚刚创建的那个文件夹。
  3. 好了,这下可以开始了。

4. 基础操作

4.1 菜单/对话框导航

在任何对话框/菜单中,可以按光标键浏览控件,enter 确定。按 tab 可以在可点击的项目之间切换。如果文本中有链接,可以按空格键打开链接列表,上下光标选择一个链接,回车在浏览器打开。

处于关卡编辑器主界面时,可以按 f10 打开/关闭编辑器的主菜单。在该菜单中,可以进行新建关卡、打开关卡、发布关卡等操作。当然,这些操作基本都有更方便的快捷键,参见附录。

4.2 时间轴导航

在编辑页面,左/右光标键在当前标签页中的事件之间切换,enter 跳转到事件所在的位置并播放

不过,这里有两个例外。当你处于轨道或者精灵标签页时,你需要先按上下光标切换到一条轨道或者精灵,才能按左右光标浏览事件。同时,也可以按 shift+enter 来编辑轨道。暂时不支持编辑精灵。

4.3 新建轨道和事件

在某个标签页下按 insert 或 f2,会弹出一个菜单,列出当前标签页下可用的事件类型。使用上下光标选择,enter 确定即可创建。如果处于轨道标签页,创建的事件会默认放在当前选中的轨道上。

在轨道或精灵标签页下,按 ctrl+insert 或 ctrl+f2 可以新建轨道或精灵,操作方式同创建事件。

小贴士:新增事件时直接按 ctrl+enter 可以在创建事件的同时自动打开事件编辑器。

4.4 编辑事件

4.4.1 移动事件

mod 提供了一组简单的快捷键来调整事件的节拍位置。如下:

注 1:如果选中的事件没有节拍属性,则按 z 和 x 的行为改为前移/后移 1 小节,且不支持修饰键。

注 2:以上快捷键对所有选中的事件有效。

注 3:如果选中的事件同时包含有节拍属性和无节拍属性的事件,则无法移动。

4.4.2 编辑事件属性

同样也有一组快捷键来快速调节事件的一些基础属性。如下:

4.4.3 高级编辑

虽然上面这两组快捷键很方便,但它也有几个不足之处:

  1. 它们并不能调节所有属性。
  2. 尽管 mod 提供了修饰键来增加调节的精度,但某些情况下依然不够用。

因此,如果你需要实现更精确的调节,你可以按 ctrl+enter 打开外部编辑器进行编辑。有关外部编辑器的更多信息,请参见第6章的内容。

4.4.4 快捷操作

接下来我要给你介绍一个特殊的快捷键:ctrl+shift+enter。这会根据你当前选中的事件类型执行几个不同的操作。它们分别是:

以上这些快捷操作可能并不完美,如果你有任何更好的想法,欢迎你给我反馈。

4.5 网格系统

网格的作用在于将时间轴按照一定的比例拆成若干个均等的网格单位,可以帮助更好的对齐节拍。如果你用过数字音频工作站,那么你应该对这个概念不陌生。

网格单位用一个形如 1/x 的分数来表示。具体含义为,将每一拍平均拆成 x 等份。

如果你被上面的解释绕晕了,没关系,这不完全是你的问题,因为我解释的也不是很到位。看不懂就看不懂,不用太在意这个,因为你多用医用自然就懂了。

以下是它的使用方法。

在编辑器中,可以按 alt+g 弹出网格设置菜单。该菜单支持上下光标浏览,也支持大键盘数字键快速定位。同时也可以随时按 esc 关闭菜单或者 enter 键确定。

菜单中一共包含了九个可选项。前八个是系统预设的常用选项,可以应付大部分情况。如果这些不够用,编辑器还支持自定义网格。上下光标或者按大键盘 9 切换到自定义网格后,你可以选择 enter 直接应用,也可以 ctrl+enter 来自定义网格的大小。你的自定义值在你关闭关卡编辑器之前都会保存,即使你切换到别的网格单位,也可以很方便的切回你的自定义网格。

这时候你可能就问了:网格设置好了,但我要怎么用它呢?

稍安勿躁,你很快就会知道了。

4.6 编辑光标

为了更方便视障玩家的使用,mod 引入了编辑光标的特性。编辑光标是一个玩家可控的临时锚点,不会随着播放而移动,且可以自由调整位置,方便玩家在创建事件等场景下快速定位。以下是它的快捷键说明。

ps:我知道有的人看上面那个编辑光标的定义肯定没看懂,不过相信我,看完快捷键说明你应该就能懂了……吧……

除了实现快速跳转,编辑光标的适用范围还包括:

5. 高级功能

5.1 虚拟选区和事件链

5.1.1 虚拟选区

虚拟选区是一个比原生编辑器更灵活的选区系统,独立于原生编辑器的选区。两个选区配合使用,可以在进行复杂的事件选择时提高效率。希望这能一定程度上弥补视障玩家无法使用鼠标拖动选择的不足。

以下是它的快捷键说明。

扩展菜单中包含如下操作:

含义:让编辑器实际选中虚拟选区中的所有事件,然后批量操作它们,例如统一改变位置或删除等。

含义:将编辑器中实际选中的所有事件添加到虚拟选区,便于创建事件链等(详见下文)。

5.1.2 事件链

事件链功能能让你把一些事件的固定组合保存成一个预设,让你在需要复用时不需要在一个个插入这些事件,只需插入事先创建的事件链,所有事件就会自动出现在关卡中。每个关卡的事件链都是独立存储的,不能跨关卡使用它们。如果你的关卡里有自创的游戏机制的话,那么这个功能或许可以帮到你。

你是不是好奇为什么要把这个功能与前面的虚拟选区放在一起讲,别急,看看具体使用说明你应该就知道了。

使用这个功能,你只需要记两个快捷键。如下:

选择事件链时,可以按左右光标来调节倍速,这会影响插入后事件的距离。默认为 1x,即事件链的原始距离。如果调节为 0.5x,则间距将被拉宽到原来的两倍,如果是 2x 则被缩小到原来的一半,以此类推。

注:事件链保存在当前关卡目录下的 .RDLEAccess/EventChains 文件夹内。如果想在别的关卡中使用,需要手动复制。这是为了方便组织和管理。

5.2 条件系统

如果你希望让某个(些)事件在满足特定条件的时候才触发,那么可以使用条件。以下仅说明通过 mod 使用条件系统的方法,更具体的条件编写规则请自行搜索 RDLE 的使用教程进行了解。

选定某个事件,然后按 alt+c 打开条件菜单。在该菜单中支持以下操作:

嗯,没错,这一小节的篇幅就是这么短。毕竟这些操作并不难,难的主要是在条件的安排和编写上。所以剩下的就请你自己去找教程来看吧。毕竟这是 mod 的用户手册,而不是编辑器的用户手册。

5.3 事件查找

随着关卡体积逐渐增大,在一大堆事件中找到你想要的那个变得越来越难。因此,mod提供了一个按照规则快速匹配事件的功能。

在编辑器中,可以按ctrl+f打开查找对话框,在这里可以设置事件的过滤规则。在该菜单中可以按tab/shift+tab在各个选项之间切换,上下光标调整选项的值,回车根据设置好的规则尝试匹配符合条件的事件并自动选中。

设置好匹配规则后,还可以随时按f3和shift+f3以编辑光标为基准向后/向前查找符合条件的事件。想更改匹配规则时,只需再次按下ctrl+f重新调整即可。

5.4 标签模式

在编辑器中,可以按shift+大键盘0开关标签模式。这是原生编辑器本身的功能,但mod的处理与原版有所不同。开启标签模式后,mod的行为会发生如下改变:

在专用的标签编辑对话框中,除了支持手动写入标签,还支持快捷填入一些常用标签,具体可自行探索。

注意:对标签模式的支持属于实验性功能,我也不知道这样做是否必要,希望能听到你们的反馈。

5.5 编辑关卡元数据

在主页面中随时可以按大键盘数字 0 打开元数据编辑页面。在这里可以编辑关卡的一些基本信息。

6. 外部编辑器(RDEventEditorHelper)

6.1 这是什么?

由于官方的检查器面板比较复杂,适配起来比较麻烦,所以干脆另外做了个独立的外部编辑器。这个编辑器完全是使用 windows 原生 ui 渲染的,因此屏幕阅读器可以很方便的操作。它目前被用于编辑事件、轨道和元数据。

6.2 怎么用?

当你在关卡编辑器里选择了一个事件、轨道,或者按下大键盘数字 0 的时候,helper 就会启动。它会根据当前正在编辑的对象生成 ui,你可以直接用屏幕阅读器在各个属性之间导航。编辑完成后,直接点击确定按钮即可应用到游戏中。如果想放弃编辑,直接按 esc 或者点击取消按钮即可。

此外,如果焦点处于一个声音列表中,可以按空格键播放目前所选的音效。

在编辑过程中,如果 helper 因为某些原因卡死或者启动失败,导致无法进行任何操作,可以在游戏中快速按五次 esc 来强制终止。注意:如果 helper 正常工作,请不要这样做,否则你在 helper 中做的所有更改都会丢失。

7. 已知问题与局限

该 mod 还有很多功能等待完善。以下列出的是目前已知的问题与局限。列表中的问题在未来的版本中将一一尝试解决。

不过话又说回来,希望官方早日支持无障碍,这样的话,这个 mod 就可以不用继续更新了。

  1. 精灵标签页的支持跟没有差不多。
  2. window dance?那是什么东西?补充:我看了一下,貌似是可以编辑,但是我反正也看不到,有没有起作用我也不知道啊。
  3. 部分自定义选项不支持(例如自定义角色)。
  4. 书签功能不支持。
  5. 事件多选支持不够灵活。
  6. 由于另外写了属性编辑器,因此操作上应该没有原版的丝滑(虽然我也不知道原版具体有多丝滑)。

8. 常见问题

如何将游戏切换到测试分支?

如果你的游戏是 steam 版本,请按照以下步骤操作:

  1. 在 steam 的库中找到节奏医生。
  2. 右键属性。
  3. 切换到游戏版本及测试版 选项卡
  4. 选中表格中的第二项,即 beta public beta testing。
  5. 重启游戏。

如何有效反馈问题?

你可以在9.3 联系方式中找到联系我的渠道。

首先,请详细描述你的问题和复现过程。另外,最好把问题发生时的日志一并附上。

查看日志的方法:

  1. 用文本编辑器打开BepInEx/config/BepInEx.cfg
  2. 查找[Logging.Console],然后设置Enabled = true
  3. 启动游戏。此时,一个控制台窗口会和游戏主窗口一起显示。
  4. 复现你的问题。
  5. 问题成功复现后,切换到控制台窗口,并检查日志中是否有代Error前缀的日志条目,如果有,请将这条日志以及它附近的一些日志提供给我。如果没有,也请把最近的一些日志提供给我,万一就找到问题了呢。
  6. 如果不想在游戏启动时同时出现这个控制台了,请参见第二部,只需设置Enabled = false即可。

为什么 mod 没有加载?

请确保你的执行步骤是进入 main 文件夹,全选复制,到游戏主程序所在目录下粘贴,而不是直接把整个 main 文件夹复制过去。

为什么 helper 打不开?

如果你是自己闲着没事去 enter 打开它,它打不开纯属正常现象;如果你是在游戏中想要编辑事件的时候打不开,而且有报错对话框,请去下个

.NET Framework 4.8

装上试试看。

为什么问我是否保存的对话框弹出来之后直接卡死了?

这是个小概率事件,我不确定是什么问题。这就是我前面说的养成随时保存的好习惯的原因。如果你有这个习惯,那么你很幸运;如果没有……

为什么我退出关卡编辑器的时候,在是否保存的对话框里点了取消,结果所有编辑器原生快捷键全部失灵了?

经过我的测试,这似乎是游戏本身的问题?因为我尝试过在不运行 mod 的情况下进行相同操作,问题也能复现。你只能按 alt+f4,然后保存或者丢弃,退出游戏重新进入才能解决。不过这比上一种状况好太多了不是吗?

9. 附录

9.1 原生编辑器常用快捷键一览表

注意:这里仅列出一些常用快捷键,并不是完整的列表。想看更完整的,那还是去找官方文档更合适。

快捷键 作用 备注
ctrl+n 新建关卡
ctrl+o 打开关卡
ctrl+shift+o 打开上次编辑的关卡
ctrl+u 打开 url
ctrl+s 保存
ctrl+shift+s 另存为 奇怪,为什么在我这里不起作用呢?
ctrl+shift+r 将当前关卡作为独立关卡运行
ctrl+shift+p 导出以发布
alt+s 关卡编辑器设置
alt+q 退出
ctrl+z 撤销
ctrl+shift+z/ctrl+y 重做
ctrl+x 剪切
ctrl+c 复制
ctrl+v 粘贴 原版游戏行为是粘贴到试图中心的位置,mod 改为粘贴在编辑光标处。
ctrl+b/ctrl+shift+v 粘贴到下一小节
ctrl+d 克隆选中的事件
a 开关自动模式
f 开关全屏 全屏状态下时间轴会隐藏,主要用于预览关卡。在此状态下编辑光标可能无法按预期工作。
m 开关节拍器
p 播放/暂停
delete/backspace 删除选中的事件
大键盘数字 1-6 切换六个不同标签页
ctrl+大键盘 1-4 切换到不同房间 如果当前在其他标签页,会自动切换到轨道标签页。
home 回到关卡开头
pageup/pagedown 快退/快进? 我个人觉得不是很好用。
shift+home 选中当前所选事件在当前标签页(或轨道)内前面的所有事件 我知道这有点绕。
shift+end 选中当前所选事件在当前标签页(或轨道)内后续的所有事件 我也知道这也很绕。
ctrl+shift+home 选中当前所选事件前面的所有事件 这个就好多了。
ctrl+shift+end 选中当前所选事件后续的所有事件 这个也是。
shift+0 打开/关闭标签模式 详见 5.4 标签模式
esc 退出全屏/取消选择

9.2 mod 快捷键一览表

菜单操作

快捷键 作用 备注
上下光标 在菜单项之间浏览
enter 激活选中项目
空格 打开链接

基础操作

快捷键 作用 备注
f10 打开/关闭编辑器主菜单
`(反撇号) 切换单人/双人模式 这仅用于测试关卡在不同模式下的表现,不会改变关卡数据。
左右光标 在当前标签页(或轨道)内浏览事件
上下光标 在轨道/精灵标签页下切换轨道/精灵
enter 跳转到选中事件所在位置并开始播放
alt+g 打开网格设置菜单 详见4.5 网格系统
ctrl+f 打开查找对话框 详见 5.3 事件查找
f3/shift+f3 以编辑光标为基准,向后/向前查找符合查找规则的事件

编辑操作

快捷键 作用 备注
ctrl+enter 打开 helper 编辑事件
ctrl+shift+enter 执行对应事件的快捷操作
shift+enter 打开 helper 编辑轨道
大键盘 0 打开 helper 编辑元数据
insert 或 f2 在编辑光标处插入事件
ctrl+insert 或 ctrl+f2 添加轨道/精灵到所在房间(仅轨道/精灵标签页有效)
z/x 所选事件前移/后移 1 个网格单位(或 1 小节) 加 shift 为 0.1 拍,加 alt 为 0.01 拍,加 shift 和 alt 为 1 小节。详见4.4.1 移动事件
c 事件吸附到最近的网格
e/shift+e 切换当前要调节的目标属性 详见4.4.2 编辑事件属性
r/t 调节属性的值 支持修饰键,详见4.4.2 编辑事件属性
alt+c 打开所选事件的条件菜单 详见5.2 条件系统

编辑光标

快捷键 作用 备注
/(斜杠) 编辑光标移至播放头所在位置
shift+/ 朗读编辑光标的当前位置
ctrl+/ 编辑光标吸附到最近的网格
ctrl+shift+/ 打开编辑光标跳转对话框
alt+/ 跳转到编辑光标所在位置并开始播放
,(逗号)和.(句号) 编辑光标前移/后移 1 网格单位 加 shift 为 0.1 拍,加 alt 为 0.01 拍,加 shift 和 alt 为 1 小节。

虚拟选区和事件链

快捷键 作用 备注
shift+空格 将当前所选事件添加/移出虚拟选区
ctrl+shift+空格 清空虚拟选区
-(减号)/=(等号) 浏览虚拟选区中的事件 加 shift 为快速跳转到首项/尾项。
ctrl+shift+x 剪切虚拟选区中的所有事件
ctrl+shift+c 复制虚拟选区中的所有事件
ctrl+alt+空格 打开虚拟选区扩展菜单
ctrl+;(分号) 将虚拟选区内的所有事件保存为一个事件链
; 在当前编辑光标位置插入事件链

9.3 联系方式

邮箱: huangzitong94@gmail.com

qq: 1528344627

itch.io 页面

github

AudioGames 论坛帖子

9.4 赞助

如果这个 mod 有帮助到你,并且你希望支持我的开发工作,除了向更多人推荐该 mod,你也可以考虑给我一些资金上的赞助。请注意,这里的赞助是针对我个人的,与7th beat games完全无关。

由于此项目使用了 ai 辅助,开发过程中我需要持续投入资金来购买 ai 的 api 额度,如果长期累加,开发这个 mod 的总成本将变得越来越高。因此,赞助所得的资金将被全部用于购买 ai 模型的使用额度,以缓解我的资金压力。

赞助全凭自愿。无论是否赞助,都不会影响你完整使用该 Mod 的任何功能,我也不会在问题反馈或后续维护上区别对待。

注意:由于地理位置限制,我只能接受来自微信和支付宝的赞助。如果你无法使用这两个平台,那么请你放心的忽略这一小节。

微信收款码

支付宝收款码