0.3.7 更新内容
- 优化纵向格线设置,可指定纵向格线颜色
- 添加了在任意轨道上放置Note的功能
- 添加了A/←与D/→键快速切换选中轨道的功能
- 添加了H键连接两个轨道的功能
- 添加了复制粘贴轨道时预览轨道位置的功能
- 添加了删除非法Note的功能
- 不打开编辑面板可提高选中轨道时的加载速度
- 现在将更可能一次选中你想要点的那个轨道
- 添加了英语本地化支持,可在工具面板切换
- 修复了复制轨道时其上的Note可能超出轨道范围的问题
- 修复了一些其他的小问题
一. 项目结构
1. 谱面工程
一个包含了谱面编辑所需要的文件的文件夹被称为“谱面工程文件夹”。
从0.3.6开始,可以直接在编辑器里选择最近打开的项目和创建新项目,如下图所示。

一个谱面工程包含以下文件:
| 文件类型 | 配置项 | 默认名称 | 必须 | 备注 |
|---|---|---|---|---|
| 音源文件 | musicFileName | music.mp3 |
✔ | 支持 mp3、ogg、wav 格式 |
| 曲绘文件 | coverFileName | cover.jpg |
× | 支持 jpg、png 格式 |
| 关卡信息文件 | songInfoFileName | songinfo.yaml |
× | 记录关卡相关信息,如曲名、谱面难度等 |
| 偏好文件 | preferenceFileName | preference.yaml |
× | 记录单曲设置,如流速、BPM 列表等 |
| Normal 难度谱面文件 | normalChartFileName | normal |
× | |
| Hard 难度谱面文件 | hardChartFileName | hard |
× | |
| Master 难度谱面文件 | masterChartFileName | master |
× | |
| Insanity 难度谱面文件 | insanityChartFileName | insanity |
× | |
| Ravage 难度谱面文件 | ravageChartFileName | ravage |
× |
编辑器中默认保存的谱面文件后缀为 editing.json (如 master.editing.json ),这是由于保存谱面时不可避免地需要在谱面中引入一些只有编辑器中才用的到的内容。在编辑器里将谱面工程打包为可游玩文件.t3pkg时,会自动将这些内容删除。
除了在编辑器内选择谱面工程文件夹外,也可以使用TAKANA³.exe打开.t3proj文件,这会在编辑器启动时自动载入对应的谱面。
随着谱面创作的进行,在谱面工程文件夹中会多出两个文件夹 AutoSave 和 Logs,分别存储自动保存的谱面文件和编辑过程中出现的异常日志。如果在谱面编辑过程中出现了异常, 请将 Logs 文件夹中对应当前日期的日志文件通过提交 issue 或其他方式告知作者 。
2. 全局设置
可在编辑器右侧面板的“工具”页签下点击设置面板按钮修改相关设置。

全局设置的文件一般位于C:\Users\<你的用户名>\AppData\LocalLow\Senolytics\TAKANA³\Settings下,各设置文件均包含详细注释,可自行酌情更改。
3. 值得说明的内容
- 该编辑器中所有的时间表示均为以毫秒为单位的整数。
- 预览界面的正中心横坐标为
0,界面边界横坐标为±5,游戏边界线横坐标为±4.5。
二. UI

1. 顶部栏
- 切换Note摆放方式(0.3.7更新):有两种方式,摆放在选中的轨道上、摆放在离鼠标最近的轨道上。
- 流速:目前没有与本家对应。
- 偏移:offset,仅可为非负数。
- 时间
2. 底部栏
- 撤销/重做按钮:也可
Ctrl+Z/Ctrl+Y。 - 横向格线
- 纵向格线:间隔为两个格线之间的宽度,偏移为中心格线的位置,当偏移为
0时,中心格线即在预览界面的正中心。从0.3.7开始,可以按“Key数 + 偏移百分比”的方式进行设置。 - 创建类型:也可按
`键切换。 - 图层:详细说明见 三.4 图层 。
- 音乐速度
3. 时间块
当开启横向格线时,在预览界面右侧的右侧白色区域内会出现与格线绑定的小方块,其即为时间块。当鼠标移动到某个时间块上时,其会变宽,此时单击,会发生以下两件事:
- 将对应的时间复制到剪贴板。
- 如果在点击之前正在选中任意表示时间的输入框,则点击后会将对应的时间填入该输入框内,并完成编辑。
相机视角全部设置为0时,时间块将与格线对齐,其他情况暂时尚未进行适配
4. 右侧面板
- 信息面板:点击难度名称切换不同难度,点击右侧难度数字可以设置该难度的等级。
- 编辑面板:展示选中的轨道或者 note 的信息。具体内容在下一部分进行介绍。
- 图层面板:管理轨道图层。具体内容在第四部分中进行介绍。
- 游戏面板:调节音乐音量、音效音量,编辑 bpm 列表,调整相机角度。
- 工具面板:调整设置、全屏模式、检查更新等实用功能。
三. 谱面编辑
使用 Q/Space 切换播放状态。如果开启了左键暂停播放的设置,则在预览界面左键时会强制暂停播放。
场景中的所有物件均使用左键进行选择,选择优先级为结点 > Note > 轨道;若同时按住 Ctrl ,则为多选状态,选中新的物件时将不会取消选中之前选中的物件。
1. Note
当仅选中一条轨道时, 右键 即可在对应时间放置一个 Note。如果是 Hold,其时间长度默认为相邻两格线的间隔。
W/↑ S/↓ :以 10ms 为单位调整 Note 的判定时间
Shift+W/↑ Shift+S/↓ :将 Note 判定时间吸附到上下最近的格线上。
对于上述操作,如果在进行的同时按住 Alt ,则将以这种方式修改选中的 Hold 的结束时间。
左键按住任意 选中 的Note并进行拖拽即可快速调整Note的时间;在没有按住选中的Note的情况下拖拽则会进行 范围框选 。
F :切换 Note 的真假。假 Note 的透明度会相应降低。
2. 轨道
Shift+右键 生成一个新的轨道。当纵向格线开启时,轨道的左右两边默认位置为点击位置两边的格线位置,当纵向格线未开启时,默认宽度为 2。
A/← D/→ :切换至该轨道左/右侧的另一个轨道。
H :将选中的两个轨道拼接成一个完整的轨道。
3. 结点
当轨道被选中时,会显示其运动轨迹,上面会有圆环,称为结点。每个结点即对应运动列表中的每一项。
选中任意结点后将进入结点编辑模式,此时 右键 则会放置一个新的结点。
Tab 键可以切换选中的结点对应的曲线的类型,仅会在当前曲线所在的曲线族内切换。
每个曲线族包括六种缓动方式,分别为 [Unmove, Linear, xxxIn, xxxOut, xxxInOut, xxxOutIn] 。每当按 Tab 键时,会将选中的曲线切换为其对应的下一个曲线。例如,选中的曲线为 SineIn ,则按 Tab 后切换为 SineOut ,选中的曲线为 BackOutIn ,则按 Tab 后切换为 Unmove 。
可以在设置面板选择启动制谱器时默认选择的曲线族。可以按 0-9 数字键 切换当前使用的曲线族。
可以按住 - 键查看数字与曲线族的对应关系以及当前使用的曲线族。
结点在时间轴上的移动与 Note 类似。特别的,如果对开始或结束的结点进行移动,会同时修改轨道的开始时间或结束时间。
结点在横坐标轴上的移动可通过以下快捷键来实现:
A/← D/→ :将结点向左或右移动 0.1 的距离。
Shift+A/← Shift+D/→ :将结点位置吸附到左右最近的格线上。
结点同样可以使用类似Note的方式进行范围框选和拖拽。此外,在拖拽时按住 **Shift**,则左右两侧的结点将向反方向进行移动。
4. 图层
每个轨道都属于一个图层,创建轨道时,该轨道的图层将被初始化为默认图层。
可以在右侧图层面板中对图层进行管理,如下图所示。

以下根据图中的编号对图层面板进行解释说明:
- 新建图层:输入图层名称并点击“
+”按钮即可创建一个新的图层。 - 显示/隐藏按钮:切换当前图层的隐藏状态。可通过上方的滑动条来调整显示轨道的透明度和隐藏轨道的透明度。
- 上移/下移按钮:调整图层在面板里的排列顺序;这也会修改不同图层的轨道在游戏界面的覆盖关系。
- 装饰按钮:将图层标记为装饰层,装饰层上的轨道将不能放置 Note。
- 删除按钮:双击删除当前图层。若图层中存在轨道,这些轨道将被重新归属到默认图层。
- 调色板按钮:选择该图层的轨道的颜色。
5. 复制粘贴
Ctrl + X 进行剪切, Ctrl + C 进行复制,Ctrl + V 进行普通粘贴, Ctrl + Shift + V 进行原位粘贴。剪切或复制的内容将会存入剪贴板中,单按 V 键查看剪贴板内容。
支持对 Note、轨道、结点进行普通粘贴和原位粘贴。
- Note:
普通粘贴:需在有且仅有一个轨道被选中的情况下进行,将会把剪贴板中的所有 Note 根据时间粘贴到该轨道上。
原位粘贴:需在没有轨道被选中的情况下进行,将会把剪贴板中的所有 Note 粘贴到其原来所属的轨道上。
- 轨道:
普通粘贴:除了时间改变外,还将根据粘贴时鼠标所处的水平位置对轨道进行平移,该水平平移的效果是当纵向格线开启时,将轨道的第一个左结点吸附到鼠标所处位置左边的第一条纵向格线,否则为鼠标所处位置。
原位粘贴:仅改变时间,不改变水平位置。
实际使用中除了时间很短的轨道外,不建议使用轨道的复制粘贴,而应更多考虑能否使用结点的复制粘贴。
- 结点:
普通粘贴:会根据选中的轨道在鼠标所处时间的位置对结点位置进行水平平移,适用于在不同的轨道间复制运动效果。
原位粘贴:不进行水平平移,适用于在同一个轨道上重复某一运动效果。
6. 镜像
在选中轨道或结点时使用 Ctrl + M 将其镜像。
对轨道,还可以使用 Ctrl + Shift + M 进行镜像复制,即生成一个新的与原轨道镜像的轨道,而保留原轨道。
7. 编辑面板
每个轨道或 Note 在创建时都会被赋予一个默认的 ID,可以自行对某个物件的ID进行修改,允许重复的ID。
无论选中 Note 还是轨道,都可以在编辑面板中看到它们的详细信息。除了在游戏界面中修改物件外,同样可以通过编辑面板对物件进行编辑。
- Note:
编辑面板中的 Note 信息如下图所示。

以下根据图中的编号对 Note 编辑面板进行解释说明:
- 默认展示 ID,点击即可为物件取名。可以在搜索框中通过 ID 或名称前缀来搜索选中物件。
- 点击取消选中该物件。
- 点击删除该物件。
- 点击切换 Note 的真假。
- Note 判定时间。
- Hold 结束时间。
- 点击将取消选中所有的 Note,并选中对应 Note 所属的轨道。
- 轨道:
编辑面板中的轨道信息如下图所示。

以下根据图中的编号对轨道编辑面板进行解释说明:
- 默认展示 ID,点击即可为物件取名。可以在搜索框中通过 ID 或名称前缀来搜索选中物件。
- 点击取消选中该物件。
- 点击删除该物件。
- 轨道开始时间。
- 轨道结束时间。
- 图层下拉框,用来选择该轨道所在的图层。
- 轨道运动列表的切换按钮,点击切换展示左边界运动列表还是右边界运动列表。
- 运动列表详细内容。其中的每一项记为元组
(time, x, ease),表示time时该边界的位置为x,到下一个时间点的运动曲线为ease。
在该编辑面板内,可以以两种方式修改曲线类型:输入缓动名称缩写、输入缓动名称编号。关于具体的缩写与编号内容,请见 五.1 缓动名称-缩写-编号对照表 。
实际上编辑器更希望用户可以更多地通过可视化编辑来完成谱面创作,而非大量使用编辑面板。
当轨道上拥有大量运动结点时,编辑面板加载内容的时间会较为显著地增加。切换至别的面板可避免这段时间
四. 谱面格式
1. 概览
谱面文件采用 json 格式进行存储,从版本 0.3.5 开始,物件通过嵌套形式表示附属关系。一个包含编辑器信息的谱面组成如下所示:
1 | { |
2. 谱面物件
每个谱面物件都由以下四个内容组成,而区分它们是Note、轨道还是其他什么东西则是根据其中的model项里的内容。
1 | { |
以下将给出各类物件的model的典型组成内容。
轨道:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26{
"timeStart": 300,
"timeEnd": 26701,
"movement": {
"left": { // 左边界
"list": {
"26701": "v1e_(4.50, u)" // 缓动运动结点
},
"type": "position" // 按结点方式运动
},
"right": { // 右边界
"list": {
"26701": "v1e_(-4.05, u)"
},
"type": "position"
},
"type": "trackEdgeMovement" // 通过控制左右边界界定轨道位置
},
"editorconfig": {
"layer": {
"id": 1, // 所在的图层
"type": "layerRef"
}
},
"type": "track"
}Note:
1
2
3
4
5
6
7
8
9
10{
"timeJudge": 10950,
"timeEnd": 11025,
"type": "hold" // Hold类型
},
{
"timeJudge": 5100,
"hitType": "Tap",
"type": "hit" // Tap或Slide类型
}其他全局内容
主要包括图层和bpm列表。位于谱面的 editorconfig 下,格式如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18"layers": {
"value": [
{
"id": 0,
"name": "默认图层",
"color": "(000000, 1.00)",
"isDecoration": false,
"isSelected": true
}
],
"type": "trackLayers"
},
"bpm": {
"list": [
"(0, 200.0000)"
],
"type": "bpm"
}
五. 附录
1. 缓动名称-缩写-编号对照表
除 Unmove 、 Linear ,其余缓动的缩写均由两个字符构成,前一个字符表示缓动类型,后一个字符表示缓动方式。四种缓动方式的缩写对应关系为 In - i,Out - o,InOut - a,OutIn - b 。一般似乎提到缓动时并不常有”OutIn”这种说法,但作者认为实际写谱时也挺经常用到的,所以默认加上了。
每种缓动类型还对应一个编号,按数字键可以根据该编号切换使用的曲线族,而把该编号作为十位数,把缓动方式对应的数字作为个位数( In - 2,Out - 3,InOut - 4,OutIn - 5 ),即得到该缓动对应的编号。
编号速记:缓动类型根据Easing Functions Cheat Sheet (easings.net)上的顺序依次与 1 - 0 对应,并且 2- 5 刚好是 Quad - Quint。缓动方式对应的编号即为其在曲线族数组里的下标。
| 类型 | Sine | Quad | Cubic | Quart | Quint |
|---|---|---|---|---|---|
| 缩写 | s | 2 | 3 | 4 | 5 |
| 编号 | 1 | 2 | 3 | 4 | 5 |
| 类型 | Expo | Circ | Back | Elastic | Bounce |
|---|---|---|---|---|---|
| 缩写 | e | c | b | l | w |
| 编号 | 6 | 7 | 8 | 9 | 0 |
实际使用时也许你会觉得这 In、Out 怎么跟我想象的是反过来的?那你也许是对的。实际运动确实与编辑器中对应的名称是反过来的,这是为了与 Arcaea 里的 In、Out 从视觉上相符。 (不爽憋着)
编辑器还提供了 RPE 风格的编号,即为 RPE 内编号对应地加上 100 。对于 RPE 内没有的曲线类型,则简单地顺延编号。
RPE 风格编号仅是为熟练 RPE 的人提供一个方便的途径。如果你没有用过 RPE 或不能熟练记得 RPE 编号与曲线的对应关系,建议使用 TAKANA³ 风格编号。
以下是完整的对照表。
| 曲线名称 | 曲线缩写 | TAKANA³ 风格编号 | RPE 风格编号 |
|---|---|---|---|
| Unmove | u | x0 (x=0,1,2,3,4,5,6,7,8,9) | 100 |
| Linear | s | x1 (x=0,1,2,3,4,5,6,7,8,9) | 101 |
| SineIn | si | 12 | 103 |
| SineOut | so | 13 | 102 |
| SineInOut | sa | 14 | 106 |
| SineOutIn | sb | 15 | 132 |
| QuadIn | 2i | 22 | 105 |
| QuadOut | 2o | 23 | 104 |
| QuadInOut | 2a | 24 | 107 |
| QuadOutIn | 2b | 25 | 133 |
| CubicIn | 3i | 32 | 109 |
| CubicOut | 3o | 33 | 108 |
| CubicInOut | 3a | 34 | 112 |
| CubicOutIn | 3b | 35 | 134 |
| QuartIn | 4i | 42 | 111 |
| QuartOut | 4o | 43 | 110 |
| QuartInOut | 4a | 44 | 113 |
| QuartOutIn | 4b | 45 | 135 |
| QuintIn | 5i | 52 | 115 |
| QuintOut | 5o | 53 | 114 |
| QuintInOut | 5a | 54 | 130 |
| QuintOutIn | 5b | 55 | 136 |
| ExpoIn | ei | 62 | 117 |
| ExpoOut | eo | 63 | 116 |
| ExpoInOut | ea | 64 | 131 |
| ExpoOutIn | eb | 65 | 137 |
| CircIn | ci | 72 | 119 |
| CircOut | co | 73 | 118 |
| CircInOut | ca | 74 | 122 |
| CircOutIn | cb | 75 | 138 |
| BackIn | bi | 82 | 121 |
| BackOut | bo | 83 | 120 |
| BackInOut | ba | 84 | 123 |
| BackOutIn | bb | 85 | 139 |
| ElasticIn | li | 92 | 125 |
| ElasticOut | lo | 93 | 124 |
| ElasticInOut | la | 94 | 129 |
| ElasticOutIn | lb | 95 | 140 |
| BounceIn | wi | 02 | 127 |
| BounceOut | wo | 03 | 126 |
| BounceInOut | wa | 04 | 128 |
| BounceOutIn | wb | 05 | 141 |