由于3MLE2是根据玛奇的音乐系统来设计的, 所以跟上古的音乐系统设定有些不同, 再加上上古的音乐系统在优化方面也有先天性不足, 于是收集了一些可能会遇到的各种问题和解决方法
在编写上古的MML谱时需要注意以下事项:
(因应5.5.1改版, 部份系统和问题已经得到改善)
*台服于2019/8/21(三)新增【合奏】系统
1. 乐谱的基本结构
在乐谱的第一个音轨开头要加上TnOnVnLn, 每张乐谱最多支援10条音轨
*5.5.1改版后, 只需要其中一条音轨有T即可
另外建议先把MML複製到记事本再修改, 在游戏中可支援段落格式, 不会影响演奏, 而且也方便查看和编辑
(在记事本按"Ctrl+F"可以快速找到想要修改的位置)
以下是MML乐谱的基本结构範例:
T110O3V127L4..., -> 主旋律
O3V127L4..., -> 和弦1(伴奏)
...
V127L4...; -> 和弦10(伴奏)
P.S.: 英文使用大小写都可以
1a. 节拍/速度"T"的基本值差异
上古的"T"基本值是120, 而玛奇的"T"基本值是100, 在3MLE2转换玛奇谱时看到T100/T120可能需要作调整
1b. 音阶/音域"o"的基本值差异
因为上古"o"的基本值是"o5", 所以修改时要在每个"o"的值+1
(如果3MLE中是o4, 转换成上古谱时可以省略)
1c. 音量"V"值的差异
上古的"V"值範围是0-127, 而玛奇的"V"值範围是0-15. 这时需要修改为所有值X8.46四捨五入后得到的新值, 也可以在"V"值后面补0
"V"值对应参考
(127/15*Vn)
左边是3MLE2的"V"值(0-15)
最右边是上古的"V"值(0-127)
0 = 0
1 = 8.467 ~ 9 -> 10
2 = 16.933 ~ 17 -> 20
3 = 25.4 ~ 25 -> 30
4 = 33.867 ~ 34 -> 35
5 = 42.333 ~ 42 -> 40
6 = 50.8 ~ 51 -> 50
7 = 59.267 ~ 59 -> 60
8 = 67.733 ~ 68 -> 70
9 = 76.2 ~ 76 -> 80
10 = 84.667 ~ 85 -> 85
11 = 93.133 ~ 93 -> 90
12 = 101.6 ~ 102 -> 100
13 = 110.067 ~ 110 -> 110
14 = 118.533 ~ 119 -> 120
15 = 127 -> 127
1d. 音长"L"的重要性
每个音轨开头一定要有"L", 不然会有乱拍的问题. 也可以在结尾补上, 例如: ...a2l4, ...r2l4, ...r2;
如果前面已经有"L"就不用加. 例如: T110O3V127L2...
P.S.: 使用L1,2,4,8,16,32,64以外的音长都有可能出现走拍问题
1e. 音长"L"过长的问题 (已于5.5.1改版后修正)
普通乐器避免使用超过"L1"长度的连音, 某些乐器播放会有问题, 小提琴或管乐之类支援长连音的乐器不受影响
2. 指定音"n"的问题
由于上古不支援指定音"n", 所以需要用3MLE2检查是否有"n"混在各音轨之中, 然后把它转换成一般音调
(3MLE2软件中已附上mmlParser程式, 以单独转换"n"来说明:
- 开启mmlParser程式后, 在里面输入或把从3MLE2的MML码编辑位置複製出来的n值贴上, 例如n21
- 按"Enter"就会在下一行被转换出来
- 把转换结果(忽略o值)複製贴回到3MLE2的MML码编辑位置中
- 利用">"和"<"来调整音阶, 可在3MLE2中根据音色条的位置来判断
例如"o3bbn21bb..."转换为"o3bb<<a>>bb...")
3. 连音"&"的写法问题
音长"L"不能在"&"的前面或后面, 这样在上古听到的音会比原曲多出一个音, 所以要修正为"&...L..."
例如把"cl8&cc..."修改为"c&c8l8c..."
4a. 同一音轨可能会出现的吃音问题
有在使用CW或是类似的MIDI编辑软体的人需要注意, 若在同一音轨中有2个相邻的音符重叠(音色条左右或上下互相重叠), 就会出现吃音的问题, 也就是说在MIDI输入到3MLE2时会有些音符缺失了. 这时可以把重叠的音符分开至贴齐, 也就是修改音长L来解决. 又或是把其中一个音符移到其他音轨上
以下附上一些用CW修改音符和音长的範例:
红圈中是会吃音的情况
红框是修改示範
然后顺便来说说关于音轨複製和个别音符移动时需要注意的地方
- 複製和贴上音符前要留意尺度线的位置, 滑鼠左键点击上方的尺度区域可以随时改变- 在贴上音符或音轨时会出现一个视窗, 先打开进阶选项, 这时会多出右边的选项, 这里需要更改的是事件/Clips的选项
贴成新的Clips: 是指在贴上的音轨上把原有的音符全部捨弃, 换成贴上的音符, 在複製整个音轨出来放到新的空白音轨时比较常用到
P.S.: 这里要注意, 如果想把一条音轨複製几次出来作修改, 那就要重複几次複製贴上的动作, 不这样做就会造成複製出来的音轨无法独立修改
贴入已有的Clips: 是指把複製下来的音符结合到贴上的音轨上, 这是移动音符到不同音轨时最常用的选项
为了方便对齐和转移音符, 可以用滑鼠右键点击下图红框位置, 把解析度改为"1"
P.S.: 3MLE2有ticks数读取的问题, 如果音长低于15 ticks, 有些音会在导入midi时读不到, 这情况通常发生在一些64分音符的滑音写法上, 即使分别放在不同音轨也不行
所以要先在CW修改ticks, 方法是在音色块点击滑鼠右键改持续长度
4b. 不同音轨可能会出现的吃音问题 (已于5.5.1改版后修正)
在不同音轨(或和弦)的同一音调上, 一个音轨的一个音符结束的同时, 在另外一个音轨开始演奏相同的音, 后面的音符会被吃掉
这时有三种修改方法
第一种是把前一个音符的音长L修短, 然后补上休止符R32/R64 (建议在CW修改会更方便)
修改前(吃音)
Track 1:
t75v100o5rl8e4dr2d&d16&d32l32d2rc4&c8&c16&crl2aedr4r8l4,
Track 2:
t75v100o5rl4.d4r4r16.d+4&d+32l32r2r2r8.rd2d2&dr2.r8;
修改后(正常)
Track 1:
t75v100o5rl8e4dr2d&d16&d32l32d2rc4&c8&c16&crl2aedr4r8l4,
Track 2:
t75v100o5rl4.d8&d16&d32.r64r4r16.d+4&d+32l32r2r2r8.rd2d2&d64r64r2.r8;
第二种方法是把后面的音符移到另一个音轨上 (建议在CW修改会更方便)
修改前(吃音)
Track 1:
t75v100o5rl8e4dr2d&d16&d32l32d2rc4&c8&c16&crl2aedr4r8l4,
Track 2:
t75v100o5rl4.d4r4r16.d+4&d+32l32r2r2r8.rd2d2&dr2.r8;
修改后(正常)
Track 1:
t75v100o5rl8e4rr2d&d16&d32l32d2rc4&c8&c16&crl2aerr4r8l4,
Track 2:
t75v100o5rl4.d4d8r8r16.d+4&d+32l32r2r2r8.rd2d2&dd2r2.r8;
第三种方法是把后面的音符放到另一张乐谱
修改前(吃音):
Track 1:
t75v100o5rl8e4dr2d&d16&d32l32d2rc4&c8&c16&crl2aedr4r8l4,
Track 2:
t75v100o5rl4.d4r4r16.d+4&d+32l32r2r2r8.rd2d2&dr2.r8;
修改后(正常):
Track 1:
t75v100o5rl8e4dr2d&d16&d32l32d2rc4&c8&c16&crl2aedr4r8l4,
Track 4:
t75v100o5rl4.d4r4r16.d+4&d+32l32r2r2r8.rd2d2&dr2.r8, -> 另一张乐谱
5. 节拍"T"与音长"L"的关係 (已于5.5.1改版后修正)
由于上古的音乐系统优化不佳, 如果"T"跟"L"对应不好, 就可能会出现跑调(翻车)问题, 于是DD跟吟游乐师针对此问题提出了"T/L表"的解决方案:
根据"T"尽量选"-n"相同的"L"来写谱
如果看到有其他的"L"就要把它拆成"-n"相同的"L", "R"也包括在内
只有T50, T125, T250可以完全支持用L1
建议下载放大观看
https://drive.google.com/file/d/1gpWpnK1QEgh7DoGNrDAvBpRgLeLqqvsW/view
6. RT的拍速问题 (5.5.1改版后才出现)
这是新出现的问题, 表示以前有用RT写法的谱都要修正过来才可以正常演奏
如果"T"前面有"R"值, 就会出现乱拍问题(被前面的T吃掉), 这时可以把它修改为"V0c", 然后再在"T"后面补上前面的正常"V"值. 例如: V80aRT110c可以修改为V80aV0cT110V80c
7. 迴音写法
因应5.5.1版更新对吃音问题的修复, 现在可以简单的写出有迴音效果的乐谱
原理是複製一条主旋律音轨, 然后在新音轨(和弦)贴上, 在主旋律音符前面加上一个"r"(长度不限), 并把音量减少大约一半, 範例如下:
原曲
主旋律: t100v100abcdefg...
修改后
主旋律: t100v100abcdefg...
和弦1: t100v50rabcdefg...
8. 合奏乐器的上限 (新版待测)
经测试后发现, 最多支援7-8个乐器同时演奏, 再多就会把其中一个乐器的音吃掉, 所以建议配置7个或以下的乐器
P.S.: 最近台服于2019/8/21(三)更新了"合奏"系统, 目前只能组队最多5人合奏, 个人猜测可以试试多队伍合奏, 人数(乐器数)上限待测
9. 打击乐器测试方法
上古的打击乐在游戏中的预设是由o3开始
-自由敲击鼓
低音大鼓 c
军鼓 e
脚踏钹 f+
低音桶鼓 g
中音桶鼓 b
强音钹 o4c+ / >c+
高音桶鼓 o4d / >d
高架钹 04d+ / >d+
在CW和3MLE2中试听时, 是使用chennal 10, 由o2开始, 试听完后记得要把o2改为o3再贴进游戏
低音大鼓 c
军鼓 e
脚踏钹 f+
低音桶鼓 g
中音桶鼓 b
强音钹 >c+
高音桶鼓 >d
高架钹 >d+
(玛奇的大鼓 = 低音大鼓 c, 玛奇的小鼓 = 低音桶鼓 g, 玛奇的钹 = 强音钹 >c+)
在3MLE2试听时需要在MML码输入位置的第一行加上以下定义, 然后空一行再输入MML码
//#using_extension
//#using_channel = 10
例如:
//#using_extension
//#using_channel = 10
T110V110o2ccccc...
在音轨属性把音轨类型设定为打击乐器, 可以方便分辨旋律跟打击乐器的音色块
P.S.: 在音轨属性进行音量补正, 把打击乐器音量设为126%, 旋律(一般乐器)音量设为84%, 试听效果会更好
10. 合奏谱的试音写法
关于合奏谱的试音部分, 在3MLE2编好的谱确认试听没问题后, 可以在开头加上以下MML码:
带头乐器
t120o5v127l4ccc>c<ccc>cv0cTXXv(正常值)...,
l4rrrrrrrrr...,
...
l4rrrrrrrrr...;
伴奏乐器
t120o5v127l4ccc>cv0cTXXv(正常值)...,
l4rrrrr...,
...
l4rrrrr...;
打击乐伴奏乐器
t120o3v127l4cccdv0cv0cTXXv(正常值)...,
l4rrrrr...,...
l4rrrrr...;
这个加了试音的演奏方法是带头的乐器先开始演奏, 当听到第4音响起的时候, 其他乐器再一起接着开始演奏, 直到所有乐器的音都一致对齐, 这样才算是成功的合奏, 不然的话就不断重来吧...
P.S.1: 建议另存一份加了测试音的档案
部分资料参考来源
http://forums.archeagegame.com/showthread.php?16741-The-Complete-Composing-Guide
http://forums.archeagegame.com/showthread.php?313937-SJ-s-3mle-How-To-and-Upcoming-Development-System&highlight=3mle
<===========我是分割线===========>
最后还是想要抱怨一下, 上古的音乐系统优化真不是一般的烂!
别说是刚接触上古音乐系统的人, 即使是有写谱经验的老手也会处处碰壁
在除错修正方面(特别是TL的优化问题)所花的时间可能都比实际写谱要多了, 而且还没算上合奏时不知要重来多少次才能对到拍子
可谓重重难关, 在这就已经劝退了不少想要依靠自己写谱的人
原厂真的要多重视音乐系统和做好优化, 才能吸引更多人去创作音乐
如要转贴或拿去转译, 请私讯告知, 并注明出处
发现错漏的地方, 欢迎提出修正