Merge pull request '大量更改合并' (#56) from check into main

Reviewed-on: RDCNWebs/rd.rdlevel.cn#56
This commit is contained in:
obugs 2026-03-25 15:30:48 +08:00
commit f7dfd312d3
32 changed files with 296 additions and 34 deletions

BIN
images/edge.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
images/windowsellipse.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

BIN
images/windowsmove.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
images/windowsshake.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

BIN
images/windowssway.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

BIN
images/windowswrap.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 581 B

BIN
indexicon/glitch.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 705 B

View File

@ -10,16 +10,104 @@
窗口的显示和隐藏都在这个事件中窗口默认只有窗口1是显示其他窗口默认都是隐藏的所以如果你需要操作其他窗口需要把窗口显示出来再进行操作。
如果需要使用透明窗口,记得把背景颜色设置为透明(顶部的背景也要)
窗口板块中隐藏状态的窗口会显示灰色,可以通过这个判断你的窗口有没有忘记显示出来。
![默认状态下只有窗口1是显示的其他窗口都是隐藏的所以呈现灰色](../images/Window_Dance_Window_Hidden.png)
## 窗口动效
(谁会来补充一下我只用过移动2333)
### 移动
移动跟**移动房间**事件一样,坐标填多少就移动到哪。
![](../images/windowsmove.png)
需要注意的是参照,影响的是窗口移动的范围,这两个选项的具体情况如下:
`居中`的范围是整个屏幕如果将位置设置为0,0那么窗口只会露出一个角
`边缘`的范围是整个屏幕减去窗口大小如果将位置设置为0,0那么窗口的左下角将对齐屏幕左下角。
![居中和边缘](../images/edge.png)
### 摇摆
使窗口按特定速度和方向来回移动。
**位置:** 初始位置;
**增幅:** 移动的幅度;
**角度:** 来回移动的方向0度为向右
**频率:** 每拍移动多少次;
**运动缓速:** 每次移动时用的缓速;
**缓速类型:** 偶数次移动可以设置成相同的缓速或者镜像(如从快到慢镜像后就是从慢到快)。
![](../images/windowssway.png)
### 缠绕
像缠胶带一样将窗口绕着屏幕旋转。
**位置:** 初始位置;
**速度:** 每拍移动多少距离一圈的百分之n
**增幅:** 往另一个方向`摇摆`的距离(与移动方向垂直);
**角度:** 移动的方向0度为向右
**频率:** `摇摆`的频率(每拍移动多少次)。
![](../images/windowswrap.png)
### 椭圆
将窗口绕着一点旋转。
**位置:** 旋转中心;
**速度:** 每拍转多少度`360° * n%`
**使用循环:** 文本
**增幅:** X轴和Y轴方向分别远离这个点多远
**角度:** 从哪个角度开始旋转。
![](../images/windowsellipse.png)
### 震动
震动窗口,跟震动摄像机一样。
**位置:** 初始位置;
**增幅:** 震动时X轴和Y轴方向最远能到哪
**频率:** 每拍震动多少次;
**周期:** 每多少拍震动的移动会重复;
**运动缓速:** 每次震动时移动的缓速。
![](../images/windowsshake.png)
时长和缓速前面都说过了,就不再提了。
> 如果你想直观地看看各种移动方式的速度区别,可以[看看这里](https://easings.net/zh-cn)。
## 窗口大小重置
想要让窗口大小发生变化,或调整窗口的轴点,都需要借助**窗口大小重置**事件。这个事件的设置项目是这样的:
![](../images/Window_Dance_Window_Resize.gif)
**大小:** 窗口的目标大小,最大可以设置为`200% 200%`,如果`x``y`同时被设置为了0则窗口会立刻被重置为初始的大小`100% 100%`)。
@ -48,45 +136,104 @@
> 如果你想直观地看看各种移动方式的速度区别,可以[看看这里](https://easings.net/zh-cn)。
### 轴点的使用技巧
我们知道,在窗口大小发生变化时,调整轴点可以改变其缩放的中心。但是实际上,即使窗口不需要缩放,我们也可以通过调整轴点来改变窗口的位置,那么这种操作从效果上看和直接使用窗口移动看似没有什么区别,实际上在一些特殊的需求中,这个方法可以被很巧妙地使用。
窗口在移动时,使用的坐标是相对整个屏幕的,而由于不同设备的屏幕分辨率不同,导致有些效果如果用窗口移动来做会在不同分辨率下有不同效果,尤其是当多个窗口之间的位置有配合的时候(如两个窗口紧贴的效果)。
如在16:9的分辨率下制作的两个窗口紧挨着的效果
![16:9分辨率下两个窗口紧贴](../images/Window_Dance_169ratio.png)
在其他分辨率下即使不改变窗口的位置也可能会有不同的效果如在22:9分辨率下
![在更宽的屏幕下,两个窗口无法紧贴](../images/Window_Dance_229ratio.png)
如果想要做出在类似`2-XN`中两个窗口相撞的效果,窗口中间有距离会导致表演效果大打折扣。这时我们可能会想,能不能不以屏幕为基准定位,而是以窗口的大小为基准定位,是不是就可以做到了呢?事实上,**轴点**就解决了这样的问题。
如果想要做出在类似`2-XN`中两个窗口相撞的效果,窗口中间有距离会导致表演效果大打折扣。这时我们可能会想,能不能不以屏幕为基准定位,而是以窗口的大小为基准定位,是不是就可以做到了呢?
事实上,**轴点**就解决了这样的问题。
试想,如果两个窗口在同一个位置,而一个窗口的轴点在左边缘,另一个窗口在右边缘,就可以保证无论在什么样的分辨率下,这两个窗口都一定是紧挨着的。
![](../images/Window_Dance_169ratio_pivot.png)
![使用轴点后,无论在哪个分辨率下两个窗口都是紧挨的](../images/Window_Dance_229ratio_pivot.png)
所以当你的动画需要多个窗口之间的位置配合时,不妨试试用轴点的移动来代替直接移动窗口。
## 设置窗口数量
## 设置窗口内容
首先需要纠正一个翻译问题,这个事件的正确翻译应为**设置窗口内容**(英文原文: Set Window Content)。真正可以设置窗口数量的事件是前面提到的**隐藏窗口**事件(显示或者隐藏窗口),请大家不要搞错了。
~~这个事件以前翻译错误,译成了**设置窗口数量**,害人不浅。~~
这个事件的设置项目是这样的:
![](../images/Window_Content.png)
**内容模式:** 可以选择**一个房间**或**全部房间**,在选择**一个房间**时,下面会出现**房间目录**选项可以从4个房间里面选择一个随后这个窗口中只会显示这个房间的内容。在选择全部房间时这个窗口将会像平常一样显示全部4个房间的内容。
> 注意,在选择**一个房间**时,这个房间中的所有房间事件都不会在这个窗口中生效,包括房间移动,淡入淡出房间,房间遮罩等。
![左侧窗口是全部房间,右侧房间是一个房间(房间1),可以发现房间移动和房间遮罩在右侧房间都没有生效](../images/Window_Dance_All_or_One.png)
**位置,缩放和角度:** 类似于摄像头移动的对应参数。在内容模式为**一个房间**时,位置是对应房间区域的对应坐标(左下角是`(0%, 0%)`,右上角是`(100%, 100%)`),在选择**全部房间**时,位置是在一个**长宽均为一个房间默认长宽的2倍的大区域**中的位置(如果需要定位到一个处于默认位置和默认大小的房间的左下角,位置是`(25%, 25%)`,右上角则是`(75%75%)`,正中心依然是`(50%, 50%)`),但是由于窗口默认大小和一个窗口的默认大小是相同的,因此如果不改变窗口的大小,依然只能显示一个房间大小的区域。
**位置,缩放和角度:** 类似于摄像头移动的对应参数。
在内容模式为**一个房间**时,等同于调用房间的摄像头,`位置`是对应房间区域的对应坐标(左下角是`(0%, 0%)`,右上角是`(100%, 100%)`)
在选择**全部房间**时,等同于调用顶部摄像头,而所有房间可显示的范围为`(200%, 200%)`大小,所以当`位置`设置为`(100%, 100%)`时,实际会在(相对于一个房间默认大小的)`(200%, 200%)`的位置,默认位置的房间的`(100%, 100%)`则在`(75%, 75%)`的位置。
根据这个结论可以将4个房间分别放在显示区域的四个角上并显示`全部房间`,这样就能用`全部房间`分别显示4个房间了
![上图中黄色区域是一个处于默认位置和默认大小的房间,蓝色区域是全部房间的坐标区域](../images/Window_Dance_Coordinate_of_All_Room.png)
无论选择哪种内容模式,超出区域范围的内容都会被裁剪。
**时长和缓速:** 略
## 重新排列窗口
类似于房间板块的**重新排列房间**,可以设置窗口的上下关系。
## 设置主窗口
将对应的窗口设置为主窗口,对话,顶部护士灯光,状态牌等内容将在主窗口显示。
## 设置窗口名称
修改窗口的标题。在动作选择**设置**的时候,会直接设置窗口的标题;在动作选择**增补**的时候,会在原来标题的后面增加内容;在动作选择**重置**的时候,会将标题重置为`Rhythm Doctor`
## 设置桌面颜色
修改模拟移动时桌面的颜色,如果不打开起始颜色,则表示从当前颜色渐变为结束颜色,如果打开起始颜色,效果将类似于**自定义闪烁**。
修改模拟移动时桌面的颜色,如果不打开起始颜色,则表示从当前颜色渐变为结束颜色,如果打开起始颜色,效果将类似于**自定义闪烁**。
## 进阶内容(可能需要手术)
> 如果你不知道手术是什么,可以[看看这里](https://docs.qq.com/sheet/DQUJxb0puSFFOVWpz?tab=000004)。
### 全屏窗口
因为窗口的最大大小写死了只能为200%,所以需要用到`OutElastic`缓速。
> 如果你忘了这个缓速长什么样,可以[看看这里](https://easings.net/zh-cn)。
注意到这个缓速的一部分会超出所设置的值,所以可以先将窗口缩小到`1%,1%`大小,然后使用`OutElastic`缓速将窗口缩放到`200%,200%`大小,当窗口变大的过程中会有几帧是占满整个屏幕的,此时放一个大小为`200%,200%`、时长为999、缓速为`Linear`的**窗口大小重置事件**,窗口大小就会固定成全屏的了。
### 更多窗口(暂时不确定官方会不会修这个)
在谱面中放置一个窗口相关的事件(这个例子用`隐藏窗口`事件记住这个事件的小节、节拍和在第几行然后打开这个谱面的文件xxx.rdlevel找到{ "bar": <小节>, "beat": <节拍>, "y": <行数减一>, "type": "HideWindow", "show": true },这一行,<>里面应该是你记住的数据,将"y": 后面的数替换成一个大于3的数保存并返回编辑器重新打开这个谱面就会发现这个事件到第4行下面了接着当正常窗口使用就行。
如果想要`重新排列窗口`,同上,找到"ReorderWindows", "order": [0, 1, 2, 3],在[]中加上 窗口的编号减一 的数,还有逗号。
窗口事件名称表:
| 事件 | 名称 |
| :--- | :--- |
| 窗口动效 | NewWindowDance |
| 重置窗口大小 | WindowResize |
| 设置窗口内容 | SetWindowContent |
| 重新排列窗口 | ReorderWindows |
| 隐藏窗口 | HideWindow |
| 设置主窗口 | SetMainWindow |
| 设置窗口名称 | RenameWindow |
| 设置桌面颜色 | DesktopColor |
当然,如果你不想手术,可以安装[这个模组](https://github.com/9thCore/RDEditorPlus/releases)b站有安装教程

View File

@ -62,7 +62,7 @@
#### 朗读轨道信息
![](../images/narraterowinfo.png)
![](../images/readrowinformation.png)
**轨道**:选择要朗读哪条轨道的信息。
@ -77,6 +77,8 @@
**玩家**:选择在双人模式下,该轨道由哪位玩家接管。
**自定义长度**:启用后将朗读所填的轨道长度。
一般情况下,游戏会按以下的顺序来朗读:
`[玩家][类型][轨道角色][X字拍子]`

View File

@ -34,6 +34,7 @@
| 切换玩家轨道 | `Y` | [采音和节奏设计](../pages/beatpatterndesign.md) | 切换轨道的游玩者1P2P或是CPU |
| 结束关卡 | `L` | [导入与导出](../pages/importandexport.md#导出关卡) | 制作关卡必需的特效,放置三个来结束关卡 |
| 显示手 | `U` | [](../pages/hand.md#显示手) | 显示或者隐藏手 |
| 手涂色 | `Shift+U` | [](../pages/hand.md#手涂色) | 设置轨道的边框、涂色、透明度 |
| 手分配 | `Shift+Y` | [](../pages/hand.md#手分配) | 为手设置所属角色 |
| 设置播放方式 | `Shift+Z` | | 设置播放头的运动方式 |
| **环境类** | | | |
@ -46,9 +47,11 @@
| **轨道特效类** | | | |
| 隐藏轨道 | `X` | [轨道移动](../pages/moverow.md#轨道的显示与隐藏) | 改变轨道的显示和隐藏状态 |
| 移动轨道 | `O` | [轨道移动](../pages/moverow.md#轨道的移动) | 让轨道在画面中移动,缩放,旋转等 |
| 重排序:行 | `Shift+O` | | 将轨道移动到不同房间,或是重新对轨道进行排序 |
| 轨道重排序~~重排序:行~~ | `Shift+O` | | 将轨道移动到不同房间,或是重新对轨道进行排序 |
| 播放表情 | `J` | [自制角色与精灵资源](../pages/spritesheet.md#播放表情) | 改变轨道中角色的表情 |
| 改变角色 | `Shift+J` | [轨道视效](../pages/rowfx.md#轨道涂色) | 改变轨道的角色 |
| 轨道涂色 | `R` | [轨道视效](../pages/rowfx.md#轨道涂色) | 设置轨道的边框、涂色、透明度 |
| 旋转轨道 | `Shift+S` | | (仅高级模式下可用)将另一个轨道连接到角色上,实现`7-1`中的一人多轨 |
| **摄像头特效类** | | | |
| 移动摄像头 | `C` | [镜头移动](../pages/camera.md) | 设置摄像头动画 |
| 脉冲摄像机 | `Shift+C` | [轨道视效](../pages/rowfx.md#和轨道相关的特效) | 添加一个按一定时间和频次缩放画面的效果 |
@ -60,18 +63,18 @@
| 设置速度 | `S` | [轨道视效](../pages/vfx.md#设置速度) | 改变整个画面中物件及特效的运行速度 |
| 自定义闪烁 | `F` | [轨道视效](../pages/rowfx.md#适合配合轨道或节拍一起使用的特效) | 自定义屏幕闪烁的图层位置,颜色,透明度 |
| 闪烁 | `Shift+F` | [轨道视效](../pages/rowfx.md#适合配合轨道或节拍一起使用的特效) | 简单地屏幕闪烁 |
| 重低音震动 | `K` | [轨道视效](../pages/rowfx.md#适合配合轨道或节拍一起使用的特效) | 添加一次大幅度的色像差大幅度屏幕缩放 |
| 重低音震动 | `K` | [轨道视效](../pages/rowfx.md#适合配合轨道或节拍一起使用的特效) | 添加一次大幅度的色像差+大幅度屏幕缩放 |
| 颜色反转 | `I` | [镜厅](../pages/hallofmirror.md) | 给画面添加反色效果 |
| 卡带效果 | `E` | [视觉干扰](../pages/vfx.md#卡带效果) | 反复重现某个画面造成卡顿错觉 |
| 手涂色 | `Shift+U` | [](../pages/hand.md#手涂色) | 改变手的颜色 |
| 窗口动效 | `W` | [窗口移动](../pages/windowmove.md) | 把关卡变成窗口模式,并设置窗口的移动 |
| 窗口动效 | `W` | [窗口移动](../pages/WindowDance.md#窗口相关的动画) | 把关卡变成窗口模式,并设置窗口的移动 |
| **文本类** | | | |
| 显示对话 | `D` | [其他文字事件](../pages/captions.md#显示对话) | 添加一个悬浮在屏幕上方或下方的对话窗口 |
| 显示状态标识 | `Shift+D` | [其他文字事件](../pages/captions.md#显示状态牌) | 在画面左上角显示一个状态标识 |
| 浮动文字 | `A` | [浮动文字](../pages/floatingtext.md) | 在画面中显示一段文字 |
| 弹幕效果 | `Shift+A` | [其他文字事件](../pages/captions.md#弹幕效果) | 添加一个从右至左的弹幕飘过效果 |
| 弹幕效果 | `Shift+A` | [其他文字事件](../pages/captions.md#弹幕效果) | 添加弹幕飘过效果 |
| **组件类** | | | |
| 标签动作 | `O` | [标签](../pages/tag.md#设置标签事件) | 运行/禁用指定标签带有的事件 |
| 标签动作 | `O` | [标签](../pages/tag.md#设置标签事件) | 运行/禁用带有指定标签的事件 |
| 调用自定义方法 | `Z` | [自定义方法](../pages/custommethod.md) | 运行指令,执行无法用常规手段达成的效果 |
| 注释 | `M` | [标签](../pages/tag.md#让事件摆放更有条理) | 添加注释内容或插入注释型自定义方法 |
@ -79,9 +82,9 @@
| 功能 | 快捷键 | 章节 | 内容 |
| :--- | :--- | :--- | :--- |
| 排列显示房间 | `S` | [房间](../pages/room.md#排列显示房间) | 改变四个房间的前后顺序 |
| 排列显示房间 | `S` | [房间](../pages/room.md#排列显示房间) | 从上到下显示房间 |
| 移动房间 | `M` | [镜头移动](../pages/camera.md) | 让房间在画面中移动,缩放,旋转等 |
| 重新排序房间 | `O` | [房间](../pages/room.md#房间的前后关系) | 改变四个房间的前后顺序 |
| 重新排序房间 | `O` | [房间](../pages/room.md#房间的前后关系) | 改变四个房间叠放时的上下关系 |
| 设置房间内容模式 | `C` | [镜头移动](../pages/camera.md) | 设置房间在缩小时是缩放房间还是剪裁房间 |
| 房间遮罩 | `K` | [房间视效](../pages/roomfx.md#房间遮罩) | 为房间设置遮罩 |
| 淡入淡出房间 | `F` | [镜头移动](../pages/camera.md) | 设置房间的透明度 |
@ -96,7 +99,21 @@
| 绘制精灵图 | `R` | [使用精灵](../pages/decoration.md#绘制精灵图) | 设置精灵的边框、涂色、透明度 |
| 播放表情 | `J` | [使用精灵](../pages/decoration.md#播放表情) | 播放精灵的表情 |
| 显示/隐藏 | `X` | [使用精灵](../pages/decoration.md#显示/隐藏) | 显示或隐藏精灵 |
| 重排序:精灵图 | `Shift+O` | | 将精灵移动到不同房间,或是重新对精灵进行排序 |
| 精灵重排序~~重排序:行~~ | `Shift+O` | | 将精灵移动到不同房间,或是重新对精灵进行排序 |
| 平铺精灵图 | `I` | [使用精灵](../pages/decoration.md#平铺精灵图) | 显示或隐藏精灵 |
| 混合精灵图 | `B` | | 设置精灵的颜色混合模式 |
| 注释 | `M` | [标签](../pages/tag.md#让事件摆放更有条理) | 添加注释内容或插入注释型自定义方法 |
## 淡蓝色版块(窗口)
| 功能 | 快捷键 | 章节 | 内容 |
| :--- | :--- | :--- | :--- |
| 窗口动效 | `W` | [窗口相关的动画](../pages/WindowDance.md#窗口动效) | 设置窗口的移动模式,移动窗口 |
| 窗口大小重置 | `R` | [窗口相关的动画](../pages/WindowDance.md#窗口大小重置) | 改变窗口的大小、缩放模式、轴点 |
| 设置窗口内容 | `C` | [窗口相关的动画](../pages/WindowDance.md#设置窗口内容) | 设置窗口显示的内容是哪个房间或全部房间 |
| 重新排列窗口 | `O` | [窗口相关的动画](../pages/WindowDance.md#重新排列窗口) | 改变四个窗口叠放时的上下关系 |
| 隐藏窗口 | `H` | [窗口相关的动画](../pages/WindowDance.md#隐藏窗口) | 隐藏或显示窗口 |
| 设置主窗口 | `U` | [窗口相关的动画](../pages/WindowDance.md#设置主窗口) | 设置对话,顶部护士灯光,状态牌等内容在哪个窗口显示 |
| 设置窗口名称 | `N` | [窗口相关的动画](../pages/WindowDance.md#设置窗口名称) | 修改窗口的标题 |
| 设置桌面颜色 | `D` | [窗口相关的动画](../pages/WindowDance.md#设置桌面颜色) | 修改模拟移动时桌面的颜色 |
| 注释 | `M` | [标签](../pages/tag.md#让事件摆放更有条理) | 添加注释内容或插入注释型自定义方法 |

View File

@ -8,29 +8,36 @@
| <font color='red'>屏幕块2x2</font> | 把屏幕块变成2x2个相同的部分 |
| <font color='red'>屏幕块3x3</font> | 把屏幕块变成3x3个相同的部分 |
| <font color='red'>屏幕块4x4</font> | 把屏幕块变成4x4个相同的部分 |
| 自定义屏幕块 | 把屏幕块变成任意个相同的部分,注意这里是可以填写小数的 |
| 屏幕分割 | 把屏幕块变成任意个相同的部分,注意这里是可以填写小数的 |
| <font color='red'>水平滚屏</font> | 画面向左移动,并且从右方重复出现 |
| <font color='red'>垂直滚屏</font> | 画面向上移动,并且从下方重复出现;需要注意:水平垂直滚屏只能存在一个 |
| | 画面带有横条和轻微抖动,有老式录像机的感觉 |
| <font color='red'>水平滚屏+VHS</font>  | 上面两个的叠加,实际上分开放两个物块效果也是一样的 |
| <font color='red'>垂直滚屏+VHS</font> | 上面两个的叠加,实际上分开放两个物块效果也是一样的 |
| 自定义滚屏 | 允许同时设置水平和垂直的滚屏,并且自由设置滚屏速度 |
| 屏幕滚动 | 允许同时设置水平和垂直的滚屏,并且自由设置滚屏速度 |
| 过场模式 | 屏幕上下方出现黑条,类似于很多游戏出过场动画时的效果 |
| 按键低重音 | 每次按拍后画面产生震动和色像差 |
| 鱼眼 | 用鱼眼镜头拍出来的效果,中间比其他部分更大(显得更靠近屏幕),强度可以是负数 |
| | |
| **画风突变类** | |
| <font color='red'>黑屏</font> | <font color='red'>别多想,真的就是屏幕全黑了</font> |
| 倒带 | 屏幕内容左右抽搐 |
| 扫描线 | 屏幕被分割为许多极小横条,透明大横条从上往下循环移动 |
| 噪点 | 就是那种老电视收不到信号的马赛克 |
| 电影噪点 | 在保持画面的基础上加一些噪点 |
| 色调偏移 | 改变画面的色调每隔100%是一个色调循环 |
| 亮度 | 改变画面的亮度小于等于0的情况下等效于黑屏 |
| 对比度 | 改变画面的色彩对比度,负数的情况下等效于反色 |
| 饱和度 | 改变画面的色彩饱和度,负数的情况下等效于反色 |
| <font color='red'>灰度</font> | <font color='red'>画面变成黑白灰的</font> |
| 灰度 | 画面变成黑白灰的 |
| 怀旧 | 画面发黄 |
| JPEG失真 | 出现类似信号不稳定时的画面割裂效果 |
| 像素化 | 画面变成一个个像素格,“数量”其实是格子的大小 |
| 马赛克 | 与普通的打码不太一样,能感觉到画面依然清晰但是割裂成了一个个小格子 |
| 点阵 | 画面变成一个个小点,类似于`5-1N`中的背景 |
| 海底波浪 | 屏幕左右扭曲 |
| 热变 | 受高温影响屏幕逐渐扭曲和失真 |
| 玻璃碎裂 | 和`6-1`中一样的碎裂效果,一次性 |
| 放克 | 精神污染,屏幕上滚动着高饱和度的纯色 |
| 素描 | 添加一张揉皱的白纸背景,将原始画面自动抽取关键部分变成黑色画在纸上 |
| 色像差 | 有点像红蓝眼镜3D视频不戴眼镜时看到的效果 |
@ -50,11 +57,15 @@
| 矩阵 | 添加一个绿色音符上升的效果,和`1-XN`这关是一样的,可以和前景背景叠加起来显示 |
| 落花 | 屏幕上方开始落下花瓣,可以和前景背景叠加起来显示 |
| 落花即刻 | 屏幕上方落下花瓣,同时屏幕上已生成一些花瓣,可以和前景背景叠加起来显示 |
| 落叶 | 屏幕上方开始落下落叶,可以和前景背景叠加起来显示 |
| 飘雪 | 屏幕上方开始落下雪花,可以和前景背景叠加起来显示 |
| 雪花 | 屏幕上方开始落下快速的雪花,短时间内充满屏幕,可以和前景背景叠加起来显示 |
| 暴风雪 | 屏幕上方开始落下暴风雪,可以和前景背景叠加起来显示 |
| 钻石 | 屏幕上出现很多方块 |
| 气球 | 屏幕下方飘出很多气球 |
| 余烬 | 屏幕上出现飘动的火星 |
| 纸屑 | 屏幕上方落下各种颜色的纸屑 |
| 彩纸爆破 | 屏幕左下角和右下角爆出彩纸,和`5-3N`中一样 |
| 教程音符 | 屏幕铺满剧情模式教程中的音符背景,可以自定义颜色等 |
| | |
| **轨道类** | |
@ -65,7 +76,7 @@
| <font color='red'>轨道全白</font> | 把轨道变成纯白色,需要事先布置一个轨道涂色物件 |
| <font color='red'>轨道轮廓光</font> | 把轨道变成纯黑色白边,需要事先布置一个轨道涂色物件 |
| <font color='red'>轨道普通</font> | 把轨道变成普通样子,需要事先布置一个轨道涂色物件 |
| 波状轨道 | 轨道自己上下来回移动,类似于`2-3N`这关 |
| 轨道浮动 | 轨道自己上下来回移动,类似于`2-2`这关 |
| 脉冲计数 | 对普通拍子轨道有效轨道上方随节奏出现1~7的数字每个房间只能有一条轨道显示 |
| 心跳震屏 | 每个心跳拍子都会让轨道抖动一下 |
| 按键震屏 | 每个按键拍子都会让轨道抖动一下 |

View File

@ -1,5 +1,18 @@
# 更新信息
#### 2026-03-25
- 更新事件列表
- 更新预设特效列表
- 修正格式错误
- 更改“设置窗口数量”译名为“设置窗口内容”
- 补充 WindowDance 页内容
- 更新轨道涂色属性页图片
- 更新轨道重排序事件
- 更新旋转轨道事件的详细内容
- 更新默认轨道的各部分位置分布数值
- 为改变轨道事件描述添加图片
- 更新制作人员表
#### 2026-03-01
- **变量**一节被替换为[表达式](../pages/expression.md)。
- 为各种标题添加了容易辨识和定位的背景渐变条。

View File

@ -15,6 +15,7 @@
- [正宗的小绿君](https://space.bilibili.com/1782518253)
- [kuanpan](https://space.bilibili.com/1928620300)
- [obugs](https://space.bilibili.com/498017546)
- [zyx](https://space.bilibili.com/2045355693)
- 视频制作:
- [吾夜犹明](https://space.bilibili.com/29219948)
- [山不转水到渠成](https://space.bilibili.com/4870582)

View File

@ -41,7 +41,7 @@
例如 `str:Samurai`, `str:Linear`
- #### 预定义变量
节奏医生为整数、浮点数、布尔类型各预定义了 10 个可读写变量,分别以 `i`, `f`, `b` 开头,即 `i0`~`i9`, `f0`~`f9`, `b0`~`b9`
节奏医生为整数、浮点数、布尔类型各预定义了 10 个可读写变量,分别以 `i`, `f`, `b` 开头,即 `i0`-`i9`, `f0`-`f9`, `b0`-`b9`
一些只读或只写的变量可在[自定义方法表](../pages/appendix_custommethods.md)查到。
## 运算类型

View File

@ -4,7 +4,7 @@
制作一个自制谱的第一步就是导入一首音乐。虽然编辑器本身对音频文件格式无严格要求,但还是**请使用.ogg格式的音频文件**以减少出BUG的可能性对后续的调整偏移和选关界面试听也有帮助。如果你需要.ogg格式但是手头只有.mp3可以使用[aconvert](https://www.aconvert.com/cn/audio/mp3-to-ogg)等软件转换。**音乐的文件名尽量只包含字母、数字和半角符号**。
点击左上角的**菜单→新关卡**来创建新关卡编辑器会帮我们选择到默认位置C:\用户\你自己的用户名\文档\Rhythm Doctor。如果你有长期做谱的需求建议另取一个独立文件夹会方便管理。在这个文件夹里创建的文件夹就代表着你制作的不同的谱面。创建文件夹后进入输入好谱面文件名点击确定就成功创建了一个谱面。
点击左上角的**菜单→新关卡**来创建新关卡,编辑器会帮我们选择到默认位置(`C:\用户\你自己的用户名\文档\Rhythm Doctor`)。如果你有长期做谱的需求,建议另取一个独立文件夹,会方便管理。在这个文件夹里创建的文件夹,就代表着你制作的不同的谱面。创建文件夹后进入,输入好谱面文件名,点击确定,就成功创建了一个谱面。
> 在编辑已保存的关卡时,编辑器会每隔 5 分钟在此关卡相同目录生成一个 `backup.rdlevel` 备份文件并覆盖原有 `backup.rdlevel` 文件,如果做到一半编辑器崩了没保存就可以打开这个文件来恢复数据。
@ -20,7 +20,7 @@
## 调整曲速和偏移
接下来一点十分重要那就是调节BPM也就是一分钟有多少拍的意思只有设置对了BPM才能让游戏节奏和音乐速度保持一致。排除掉一些变速曲我们可以用[ArrowVortex](https://arrowvortex.ddrnl.com/)。或者你不想额外下载软件的话,也有一些在线网站可以测试,比如[all8](https://www.all8.com/tools/bpm.htm)。
接下来一点十分重要那就是调节BPMBeats Per Minute每分钟节拍数只有设置对了BPM才能让游戏节奏和音乐速度保持一致。如果你在制作的曲目是匀速的可以使用一些软件如 [ArrowVortex](https://arrowvortex.ddrnl.com/),或是一些在线网站,比如[all8](https://www.all8.com/tools/bpm.htm)。
调整好BPM之后还需要调整偏移。我们看一下下面波形图案点击```+`两个按钮进行缩小和放大。

View File

@ -69,6 +69,8 @@
**缓速:**动画的速度变化,可自行尝试。这东西在很多需要持续一段时间的特效里都会存在,里面会有很多模式,只要把握以下原则就能快速明白了:`In`代表由慢至快,`Out`代表由快至慢,`InOut`代表由慢至快再变慢。后面不同的形式也就是快慢速的细微差距,可以根据自己的需要慢慢尝试。
**加速/减速:**在一段时间内加速/减速,相当于自定义缓速。如果此处填写`0`则是瞬间完成加速/减速。填写负数则视为`0`
> 如果你想直观地看看各种移动方式的速度区别,可以[看看这里](https://easings.net/zh-cn)。
## 轴点
@ -122,12 +124,51 @@
如果想要实现`6-2`马克一人多轨的情况就可以使旋转轨道事件。
先准备两个轨道,使用`连接`将轨道2连接到轨道1上此时心会自动变成裂纹状态如果不想要这个效果可以用下一章轨道涂色里的`心`设置回默认。
### 连接
在连接后,通过`分割`可以将两个轨道都显示出来,这两个轨道都会对被连接到的轨道对应角色产生影响。
![](../images/moverow1_SpinningRows_Connect.png)
`断开`后这些轨道都会回复正常状态
`轨道`**连接**`到轨道`
### 断开
![](../images/moverow2_SpinningRows_Disconnect.png)
`轨道`**断开**。
### 旋转
![](../images/moverow3_SpinningRows_Rotate.png)
`轨道`**旋转**`角度`度。
### 均速旋转
![](../images/moverow4_SpinningRows_ContinuousRotation.png)
`轨道`在每拍**均速旋转**`角度`
### 波动旋转
![](../images/moverow5_SpinningRows_WavyRotation.png)
`轨道`在每拍`频率`次**波动旋转**`增幅`度。
### 合并
![](../images/moverow6_SpinningRows_Merge.png)
`轨道`转到`角度`度是**合并**no key是选择是否有烟雾。
### 分割
![](../images/moverow7_SpinningRows_Split.png)
`轨道`从主轨道上**分割**出来,并旋转到`角度`度。
## 轨道重排序~~重排序:行~~
将轨道转移到其他房间,或者改变轨道的层级
## 演示关卡

View File

@ -71,6 +71,18 @@
**过渡方式**:顺滑(有烟雾特效);即刻(瞬间显示/隐藏);全动画(仅限“动作”中选择“显示”,有完整的出场及轨道延伸动画)。
## 改变轨道
可以在中途改变轨道上的角色。
![](../images/rowfx_Change_Character.png)
**轨道**:需要改哪个轨道上的角色。
**角色**:改成哪个角色。
**过渡方式**:跟隐藏轨道一样,顺滑有烟雾特效,即刻没有。
## 适合配合轨道或节拍一起使用的特效
**闪烁:**屏幕白色闪烁,分为短,中,长三种。

View File

@ -1,6 +1,9 @@
# 视觉干扰
> 在关卡中出现对比度较高画面快速交替如红蓝、黑白快速闪烁必须开启癫痫警告。使用“放克”特效必须开启癫痫警告。使用“干扰”特效较多建议开启癫痫警告。一秒出现3次以上快速闪烁建议开启癫痫警告。
> 在关卡中出现对比度较高画面快速交替,如红蓝、黑白快速闪烁,必须开启癫痫警告。
> 使用“放克”特效,必须开启癫痫警告。
> 使用“干扰”特效较多,建议开启癫痫警告。
> 一秒出现3次以上快速闪烁建议开启癫痫警告。
> 即使开启了癫痫警告,也不要设计出会伤害视力的干扰效果。

View File

@ -6,16 +6,16 @@ let rowx;
let columny;
let positions = {
"c1": { "x": 64, "name": "第一拍" },
"c2": { "x": 88, "name": "第二拍" },
"c3": { "x": 112, "name": "第三拍" },
"c4": { "x": 136, "name": "第四拍" },
"c5": { "x": 160, "name": "第五拍" },
"c6": { "x": 184, "name": "第六拍" },
"c7": { "x": 249, "name": "第七拍" },
"c1": { "x": 66, "name": "第一拍" },
"c2": { "x": 90, "name": "第二拍" },
"c3": { "x": 114, "name": "第三拍" },
"c4": { "x": 138, "name": "第四拍" },
"c5": { "x": 162, "name": "第五拍" },
"c6": { "x": 186, "name": "第六拍" },
"c7": { "x": 251, "name": "第七拍" },
"ccharacter": { "x": 35, "name": "角色" },
"ccenter": { "x": 176, "name": "中心" },
"cheart": { "x": 317, "name": "心" },
"cheart": { "x": 315, "name": "心" },
"r1": { "y": 162, "name": "四轨时的第四轨" },
"r2": { "y": 141, "name": "三轨时的第三轨" },
"r3": { "y": 120, "name": "二轨时的第一轨/四轨时的第三轨" },

View File

@ -1313,3 +1313,18 @@ del {
transition: background-color 0.3s, transform 0.2s;
z-index: 20;
}
.controlSpan {
border-radius: 8px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-family: "d9", sans-serif;
font-size: 16px;
height: 30px;
width: 30px;
transition: background-color 0.3s, transform 0.2s;
z-index: 20;
}