Wacca自制创作
自制演示:

需要用到的工具有两个:
MercuryConverter:https://github.com/esterTion/MercuryConverter
MercuryPlayer:https://github.com/esterTion/MercuryPlayer
下载点右上角绿色的Code,选择Download ZIP。
写谱的时候,主要是使用记事本编写,然后用converter对参数转换,以及插值,转换出来的成品通过player在浏览器中进行预览播放。
10月9日更新:
converter中包含了一个网页文件,可以直接使用浏览器转换谱面文件保存,支持拖入文件

自制谱格式
示例谱面
文件头
#MercuryChart
为了转换时识别,文件开头必须为#MercuryChart。
偏移
#offset <偏移量>
谱面小节与音频的偏移量,正数表示谱面提前,负数表示谱面延后。
bpm改变
#bpm 小节 位置 bpm数
(小节定位:基本所有的元素都要用的小节定位,格式我使用了小节+x分位的格式。)
小节节拍改变
#met 小节 位置 节拍分子 节拍分母
由于计算需要,变拍仅可在每小节的开始处。格式分子在前,如四三拍写为3 4。
谱面流速改变
#sfl 小节 位置 流速倍数
支持骤停(0),倒退(负数)等效果。示例:

谱面note
小节 位置 note类型 起点 长度
note类型分为七种
t:touch(粉色)
c:chain(黄色)
i:snap in | 向内划动(红色)
o:snap out | 向外划动(蓝色)
l:顺时针slide,便于记忆标记为下半部分左划(橙色)
r:逆时针slide,便于记忆标记为下半部分右划(绿色)
h:hold,特殊格式见下方
以上note类型使用大写字母表示对应的R note。
note位置及长度:wacca全屏总计60轨,以右侧正中心为第0轨道,逆时针方向递增。即上侧为15,左侧30,下侧45。
特殊note有三种
on:轨道演出效果,显示轨道
off:轨道演出效果,隐藏轨道
end:谱面结束
轨道演出的额外参数有l、m、r三种,控制过渡效果:
l为顺时针方向显示/隐藏轨道(下半部分向左)
r为逆时针方向显示/隐藏轨道(下半部分向右)
m在显示是为从中间展开,隐藏时为向中间收起
hold的分段格式
hold写法为不同段拼接,每一个分段之间空格或tab隔开,分段参数用半角逗号隔开,如示例中的:
2 6/8 h 0 30 3,0/8,30,20 3,4/8,45,15 4,0/8,75,15
表示从2小节6/8处开始的hold,开始时0轨起30宽度;3小节开头处到达30轨起20宽度;3小节一半处到达45轨起15宽度;4小节开头处到达15轨起15宽度。
为了表示方向,此处轨道起点超过了60,用来表示继续逆时针方向旋转hold。
由于并没有处理负数,所以顺时针旋转的hold请把前面的起点加上60的倍数。
10月9日更新:
hold添加了曲线拟合参数,在分段参数中追加第五个参数指定曲线类型。
曲线类型包含ci,co,cri,cro四种
ci和co分别为向前弯曲和向后弯曲,cri和cro则为加大弯曲程度的曲线。
如
1 0/4 h 41 7 1,2/4,53,7,ci 2,0/4,41,7,co
为下半部分向右弯曲的半椭圆

进行曲线拟合需要更新MercuryConverter

谱面转换
要预览自制谱面,需要将以上格式的谱面进行处理。处理器需要安装nodejs,然后在命令行中运行 node convert.js 谱面.txt 谱面.mer 输出处理过的谱面。
一般来说,严格按照格式的谱面是不会报错的,很多时候也不会报错,只是转换出一个数值异常的谱面。

谱面预览及播放
谱面播放器为浏览器网页绘制。如果出现无法加载的情况,请确认使用最新版本的firefox、edge或chrome。
浏览器中打开MercuryPlayer下的BrowserNoEditor.htm,左下角分别为谱面文件选择,音源选择,流速控制,播放控制。

选择谱面和音源后,点Load按钮,然后就可以直接播放。

文章开头的宿星审判自制谱的音源、谱面、处理后谱面均已放在MercuryConverter的example分支中,项目首页也有链接。

截止10月9日已经公开的自制视频:
谱师:

谱师:Zaid_J

谱师:Clematis vs SZAN

谱师:雷阵雨

谱师:SZAN
