/*
■☆CyberCity -Euphoric World Fragmented-☆
作成:さくらもどき
詳細
【推奨環境】ヘッドホン
【推奨音源】MP3,TWM2【大 音 量 推 奨 で す !】
【無断転用】可
【 編曲 】可
【ジャンル】
作成環境
【 OS 】WindoowsXP HomeEdition
【 音源 】TWM2、SoundFont
【出力環境】MDR-CD100 (ヘッドホン)
RH-300 (ヘッドホン)
HP-NC80 (ヘッドホン)
UA-101 (オーディオI/O)
◆MEMO
久しぶりの投稿になります。
実家に戻っていたりして曲をつくるタイミングを失ってましたw
さて、5年前から続く『CyberCity』シリーズもこれで6作目。
一応、電脳とかマシーンとか近未来とかそんなイメージのシリーズです。
バラバラに砕け散った素晴らしき世界、そんなイメージの曲です。
しかし・・5年というと、小学校1年だった子が今は6年。
その間、僕はどれほど上達しているのかは分かりませんがw(自爆
少しでも上達できていればいいなーと思います。
以下、曲・世界観の話です。
電波なので読まない方が吉です。
■イントロ
綺麗目のピアノ。
イメージ的には『後悔』
過去を振り返ります。
■前半
ハードコア。
イメージ的には『戦い』。
近未来の武装を手に戦場を駆け巡ります。
攻撃的なエッヂの効いたノイズと、機械的なリズムのカッコよさを楽しんでいただければ、と。
■中間
後半へ繋げるための伏線です。
ここのフレーズでルートをVIからIVへ移動しています。
基本ベースラインは過去のCyberCityシリーズから。
■後半
いつもの僕のエピック全開のフレーズです。
ユーフォリックと言っている割には、Euphoric Tranceじゃないですw
イメージ的には『浄化』
壊れてしまった世界の再生という感じです。
焼き尽くされた大地は、誰の楽園となるのでしょうか。
泣き系の旋律、幻想的な音と、フレーズの展開を楽しんでいただければ、と。
◆MP3
今回はかなり本気でミックスしました。
ぜひ、MP3で聞いてください。
エフェクトとかの小手先の技術を精一杯詰め込んでますw
かなり派手にエフェクトかけているので、最早MMLとは全く別物です。
特に後半のパートはかなり破壊的なエフェクトがかかってます。
*/
/*
■関数概要
任意フラグでのフレーズ切断(#_0~#_???のように振ったフラグで切断する。)
■書式
Substr( フラグ付き文字列 , 切り出し位置 , 部分切り出し(on/off)=off )
■例
Str Hoge = {
ab #_0 //#_数字 をフラグとして扱います。
cd #_1
ef #_2
ga #_3
}
とすると、
Substr( Hoge , 0 )
では、 #_0までを切り取ります。
つまり、出力は{ ab }です。
Substr( Hoge , 1 )
では、#_1まで、
つまり、出力は{ ab cd }です。
部分切り出しオプションをONにすると、
Substr( Hoge , 1 , on)
なら、{ cd }を切り出します。
つまり、ひとつ前のフラグから、指定したフラグまでを切り出します。
*/
Function Substr( Str String , Int Cnt , Int From =off ){
Int To = POS( "#_"+Cnt , String );
Str Res = "";
IF( To != 0){
IF( From == on ){
Str _From = "#_"+(Cnt-1)
From = POS( _From , String )
IF( From != 0 ){
From += SizeOf( _From )
}
}Else{
From = 0;
}
Res = MID( String , From , To - From );
}Else{
Res = String;
}
Result = Res
}
/*
■関数概要
文字列を実行する関数
■書式
Do( 実行文字列 )
*/
Function Do(Str ToDo){ ToDo }
曲名{"☆CyberCity - Euphoric World Fragmented -☆"}
作者{"SakuraModki"}
ResetGS
拍子4,4
テンポ(146)
調#()
Str PD={r32 y64,0 r32 y64,127 r-16}
Str PF={r32 y64,0 r-32}
Function L1(int){Result=(!1 * int)} //数小節分の長さを返す
Function R1(int){[(int)r*1]} //数小節分の休符
Function X(int){Sub{[(int)r-1]?}} //数小節戻ってから再生(デバッグ用)
Int Cnt=1
[16 TR=Cnt;V=100]
Key=3
//_Piano=============================================================================================
Str Piano1_R = {
b`c^g ^b^`c
g^^g ^fef
b`c^g ^b`c`g
`e^^`g ^`f`e`d #_0
g0 b`c^g ^b`c`e
g0`e^`dg0`c ^e^g
f0a^ra ^fga
aeab ^eab #_1
`c^^^ ^^^^ #_2
}
Str Piano1_L={>
PD "aea`c^e^"a
PD "gega ^gb`c
PD "fcfg ^bgd <
PD ceg"b ^eb`c #_0
PD "aea`c^e^"a
PD "gega ^gb`c
PD "fcfg ^`c^^
PD "edg PD "g^dga
PD a^^^ ^^^^ #_1
}
Str Piano2_R={
>PF
c^^^ ^^d^
^^^^ e^g^
d^^^ ^^16 v-60 q-50 d+64e64f64f+64 v+60 q+50 g^
c^^^< e^eg
a^^^ ^^ea
b^^^ >c^d^
d^^^ ^^^^16 v-16 q-50 c64c+64d64d+64 v+60 q+50
e^^^ #_0 ^<eab> #_1
<
}
Str Piano3_R = {
b`c^g ^b^`c
g^^g ^fef
b`c^g ^b`c`g
`e^^`g ^`f`e`d #_0
b`c^g ^b`c`e
`e^`d`c ^efg
g^^e e^gb
`cbge ^dd^
}
Str Piano3_R_ = {
b`c^g ^b^`c
g^^g ^fef
b`c^g ^b`c`g
`e^^`g ^`f`e`d #_0
b`c^g ^b`c`e
`e^`d`c ^`c^b
`c^^^ ^^^^
^^^^ ^^^^
}
Str Piano3_L = { >
PD "fcfa ^c^"f
PD "fcga ^gb`c
PD "e"beg ^bgd
PD "e"beg ^bgd
PD "d"adf ^afc
PD "d"adf ^afc
PD "c"gce ^g^"c
PD "c"gde ^dfg
<}
TR=1 q100 l8 o5 v127 V=127
/* 1 */ Piano1_R;r-1
/* 2 */ R1(8)
/* 3 */ R1(8)
/* 4 */ R1(8)
/* 5 */ R1(8)
/* 6 */ R1(8)
/* 7 */ R1(8) Sub{`c1}
/* 8 */ R1(8)
/* 9 */ R1(8)
/* 10*/ Do( Substr( Piano1_R , 1) )
/* 11*/ Do( Substr( Piano1_R , 1) )
/* 12*/ Piano2_R
/* 13*/ Do( Substr( Piano2_R , 0) )r2<
/* 14*/ R1(8)
/* 15*/ R1(8)
/* 16*/ R1(8)
/* 17*/ R1(8)
/* 18*/ R1(8)
/* 19*/ R1(8)
/* 20*/ R1(8)
/* 21*/ R1(8)
/* 22*/ Piano3_R
/* 23*/ Piano3_R_
/* 24*/ Piano3_R
/* 25*/ Piano3_R_
TR=101 q100 l8 v80 o3 CH=1
/* 1 */ Piano1_L r-1
/* 2 - 23 */ [22 R1(8) ]
/* 24 */ Piano3_L
/* 25 */ Piano3_L
//_SynAlp=============================================================================================
//こんなに手打ちしたのは久しぶりだ・・・最近はアルペジエーターでごまかしてたのがまずい・・・
Str SynAlp = {
b"e"a`c "e"ag"a g"e"ab "e"a`c"e #_0
g"gdg "gdg"g g"gdf e"gfd #_1
b"fc`c "fcg"f cbc"f `cc`g"g #_2
`egc`e gc`gg "b`fg"b `eg`d"b #_3
b"eg`c "e"gg"g "eb"e"a `c"e`e"g #_4
`edg`d d"g`c"g `cd"ge d"gg"g #_5
a"fcg "fca"f cf"fc gca"f #_6
a"gce a"gb"g #_7 ce"gc a"gb"g #_8
}
Str SynAlp_pluck = {
b"fc`c "fcg"f cbc"f `cc`g"f #_0
b"fc`c "fcg"f cbc"f `cc`g"f #_1
b"fc`c "fcg"f cbc"f `cc`g"f #_2
b"fc`c "fcg"f cbc"f `cc`g"f #_3
b"fc`c "fcg"f cbc"f `cc`g"f #_4
b"fc`c "fcg"f cbc"f `cc`g"f #_5
b"fc`c "fcg"f cbc"f `cc`g"f #_6
b"fc`c "fc``c"f c`bc"f `gc`d"f #_7
}
Str SynAlp_Main = {
brr`c rrgr grrb rr`cr #_0
grrg rrgr grrf erfr #_1
brr`c rrgr rbrr `cr`gr #_2
`err`e rr`gr r`frr `er`dr #_3
brr`c rrgr rbrr `cr`er #_4
`err`d rr`cr `crre rrgr #_5
arrg rrar rfrr grar #_6
arre arbr #_7 rerr arbr #_8
}
Str SynAlp2 = {>
crrc rrcr rrcr drdr
drrd rrdr erre grgr
drrd rrdr rdrr grgr
crrc rrcr< rerr ergr
arra rrar rarr erar
brrb rrbr> rcrr drdr
drrd rrdr rdrr drrc
erre rrer #_0 er<er arbr #_1
}
Str SynAlp3={
"b^c^ gr ["bcrgr]
"b^c^ gr ["bcrgr]
"b^c^ gr ["bcrgr]
"b^c^ gr"bc rgr`c brgr
}
TR=2 q60 l16 @40 o4 REV=50 v90
/* 1 */ R1(8)
/* 2 */ SynAlp /* Fade-In */ Sub{ [8 r-1 ] EP.T(0,127, L1(8) )}
/* 3 */ Do(Substr(SynAlp , 6)) r2 Do(Substr(SynAlp , 7 , on))
/* 4 */ SynAlp
/* 5 */ SynAlp
/* 6 */ SynAlp
/* 7 */ SynAlp
/* 8 */ R1(8)
/* 9 */ [8 Do( Substr( SynAlp , 4 , on ) ) ]
/* 10*/ SynAlp
/* 11*/ SynAlp
/* 12*/ SynAlp
/* 13*/ SynAlp
/* 14*/ [8 Do( Substr( SynAlp , 4 , on ) ) ]
/* 15*/ SynAlp_pluck
/* 16*/ SynAlp_pluck
/* 17*/ SynAlp_pluck
/* 18*/ Do( Substr(SynAlp_pluck , 6) )r1
/* 19*/ SynAlp_pluck
/* 20*/ SynAlp_pluck
/* 21*/ SynAlp_pluck
/* 22*/ SynAlp_pluck
/* 23*/ SynAlp_pluck
TR=3 q30 l16 @82,90,1 o5 REV=0 v100 CHO=110
/* 1 */ R1(8)
/* 2 */ SynAlp /* Fade-In */ Sub{ [8 r-1 ] EP.T(0,0,L1(4),0,127, L1(4) )}
/* 3 */ Do(Substr(SynAlp , 6)) r1
/* 4 */ R1(8)
/* 5 */ R1(8)
/* 6 */ SynAlp
/* 7 */ SynAlp
/* 8 */ R1(8)
/* 9 */ R1(8)
/* 10*/ R1(8)
/* 11*/ SynAlp /* Fade-In */ Sub{ [8 r-1 ] EP.T(0,127, L1(7) ,127,100, L1(1) )}
/* 12*/ SynAlp2 /* Fade-In */ Sub{ [8 r-1 ] EP.T(30,127, L1(8) )}
/* 13*/ Do( Substr( SynAlp2 , 0 ) )r2
/* 14 */ R1(8)
/* 15 */ R1(8)
/* 16 */ [SynAlp3] Sub{ [8 r-1 ] EP.T(0,0,L1(4),0,127, L1(4) )}
/* 17 */ [SynAlp3]
/* 18 */ [SynAlp3]
/* 19 */ [SynAlp3]
/* 20 */ [SynAlp3]
/* 21 */ [SynAlp3]
/* 22 */ [SynAlp3]
/* 23 */ [SynAlp3]
//_Synth=============================================================================================
TR=4 q100 l16 @85 o5 REV=50 v90 p=66 CHO=90
/* 1 */ R1(8)
/* 2 */ R1(8)
/* 3 */ R1(7) r2 v+30 Do(Substr(SynAlp_Main , 7 , on)) v-30
/* 4 */ SynAlp_Main
/* 5 */ SynAlp_Main
/* 6 */ SynAlp_Main
/* 7 */ SynAlp_Main
//END
//_BASS=============================================================================================
#BASS = { <#?1> [5 #?1 [<#?1>] ] }
#BASS_1= { "#?1 [3 #?1 : [<#?1>] ] }
#BASS_2= { [3 [<#?1>] : #?1 ] }
Str BASS1 = {
#BASS(a) #_0
#BASS(g) #_1
#BASS(f) #_2
#BASS_1(`c) #BASS_1(b) #_3
#BASS(a) #_4
#BASS(g) #_5
#BASS(f) #_6
#BASS_1(g) #_7 #BASS_2(g) #_8
}
Str BASS2={
"a [4a ["a] ] g ["a]
"a [4a ["a] ]`c ["a]
}
Str BASS3={
"a [4a ["a] ] g ["a]
#BASS_1(d)
#BASS_2(e)
}
Str BASS1_Mid1 = {
Do( Substr( BASS1 ,6) )
r2
Do( Substr(BASS1 , 7 , on) )
}
Str BASS4 = {
#BASS(f) #_0
#BASS_1(f) #BASS_2(g) #_1
#BASS(a) #_2
#BASS_1(a) #BASS_1(g) #_3
#BASS(f) #_4
#BASS_1(f) #BASS_2(g) #_5
#BASS(d) #_6
#BASS_1(e) #_7 #BASS_2(e) #_8
}
Str BASS5={
"f [4f ["f] ] e ["f]
"f [4f ["f] ] g ["f]
}
Str BASS6 = {
#BASS(f) #_0
#BASS(f) #_1
#BASS(e) #_2
#BASS(e) #_3
#BASS(d) #_4
#BASS(d) #_5
#BASS(c) #_6
#BASS(c) #_7
}
TR=5 v110 l16 @88 o3
/* 1 */ R1(8)
/* 2 */ R1(8)
/* 3 */ BASS1_Mid1 /* Fade-In */ Sub{ [8 r-1 ] EP.T(0,127, L1(8) )}
/* 4 */ BASS1
/* 5 */ BASS1
/* 6 */ BASS1
/* 7 */ BASS1
/* 8 */ [4 BASS2]
/* 9 */ [3 BASS2] BASS3
/* 10*/ BASS4
/* 11*/ BASS4
//間奏
/* 12*/ BASS4
/* 13*/ BASS4
/* 14*/ [4 BASS5] /* Fade-OUT */ Sub{ [8 r-1 ] EP.T(127,0, L1(8) )}
/* 15*/ R1(8)
/* 16*/ R1(8)
/* 17*/ R1(8)
/* 18*/ R1(8)
/* 19*/ Do(Substr( BASS6 , 6 ) )r1 /* Fade-In */ Sub{ [8 r-1 ] EP.T(0,127, L1(8) )}
/* 20*/ BASS6
/* 21*/ BASS6
/* 22*/ BASS6
/* 23*/ BASS6
//_Alert=============================================================================================
Str _Alert={
[ v70
[3 r2.d4 ]
r2 d8. [5 d16] Sub{ [10 d16 v-6] }
]
}
Str Alert={ Sub{<_Alert> } _Alert }
TR=6 q50 l16 @85 o5 REV=90 CHO=127
/* 1 */ R1(8)
/* 2 */ R1(8)
/* 3 */ R1(8)
/* 4 */ R1(8)
/* 5 */ R1(8)
/* 6 */ R1(8)
/* 7 */ R1(8)
/* 8 */ Alert
/* 9 */ Alert
/* 10*/ Alert
/* 11*/ Alert
/* 12*/ Alert
/* 13*/ Alert
/* 14*/ Alert
/* 16*/ R1(8)
/* 17*/ R1(8)
/* 18*/ Alert
/* 19*/ Alert
/* 20*/ Alert
/* 21*/ Alert
/* 22*/ Alert
/* 23*/ Alert
/* 24*/ Alert
//_SynthStrings=============================================================================================
Str PAD_in={
Sub{>e1^1<}
"f0f0a1^1
}
Str PAD={
Sub{>e1.d2 d1g1 f1e1 g1^1<}
"f0f0a1^1
"e0e0g1^1
"d0d0f1^1
"c0c0g1^1
}
TR=7 q100 l1 @51 o5 REV=90 v80
/* 1 */ R1(8)
/* 2 */ R1(8)
/* 3 */ R1(8)
/* 4 */ R1(8)
/* 5 */ R1(8)
/* 6 */ R1(8)
/* 7 */ R1(8)
/* 8 */ R1(8)
/* 9 */ R1(8)
/* 10*/ R1(8)
/* 11*/ R1(8)
/* 12*/ R1(8)
/* 13*/ R1(8)
/* 14*/ [4 PAD_in ] /* Fade-In */ Sub{ [8 r-1] EP.T(0,90,L1(4)) }
/* 15*/ PAD /* Fade-In */ Sub{ [8 r-1] EP.T(90,127,L1(8)) }
/* 16*/ PAD
/* 17*/ PAD
/* 18*/ PAD
/* 19*/ PAD
/* 20*/ PAD
/* 21*/ PAD
/* 22*/ PAD
/* 23*/ PAD
//=============================================================================================
TR=8 q100 l8 o5 v127 @82 V=0
/* 1 */ R1(8)
/* 2 */ R1(8)
/* 3 */ R1(8)
/* 4 */ R1(8)
/* 5 */ R1(8)
/* 6 */ R1(8)
/* 7 */ R1(8) Sub{`c1}
/* 8 */ R1(8)
/* 9 */ R1(8)
/* 10*/ R1(8)
/* 11*/ R1(8)
/* 12*/ R1(8)
/* 13*/ R1(8)
/* 14*/ R1(8)
/* 15*/ R1(8)
/* 16*/ R1(8)
/* 17*/ R1(8)
/* 18*/ R1(8)
/* 19*/ R1(8)
/* 20*/ R1(8)
/* 21*/ R1(8)
/* 22*/ Piano3_R
/* 23*/ Piano3_R_
//=============================================================================================
UseKeyShift=off 調-()
//=============================================================================================
Str DefHats={
Sub{v90 r8 [5 g+4][g+8.][g+8]}
Sub{v80 [[f+16]r4. :f+r4.]f+8.f+}
Sub{v90 r4 [4 d+2]}
Sub{v40 r4 [4 `e2]}
}
Str Drum1={l8
DefHats
v127 [8 c4]
}
Str Drum2={l8
DefHats
v127 [5 c4]c8 l16 [3 c]r;[2c];[rc] l8
}
Str Drum3={l8
DefHats
Sub{v80 [3a+]r r.a+16[6 a+][16a+32]}
v127 cccr rrc16cc16 ccc[c16] [4c32][8 c64][16 c64]
}
Str Drum4={l8
DefHats
v127 cccr rrc16cc16 ccc[c16] [4c32][8 c64][16 c64]
}
Str Drum5={l8
DefHats
v127 [4 c4]l16 [3c]r[c]r Sub{ r12-16[5 c12]} r4. [12 c64] //12分音符が混ざる変則的なリズム
}
Str Snare_8={
v16 [(16*7) d16 v+1 ] #_0 e2 [3 c0d16]r16;[2c0d16]r16;[1c0d16]
}
Str Snare_8_2={
v100 [(16*7) d16 ] #_0 e2 [3 c0d16]r16;[2c0d16]r16;[1c0d16]
}
Str Snare_2={
v66 [(16*2) d0c16 v+1 ]
}
TR=10 o3 l8 q40 @27,90 V=100 CHO=30
//Intro
/* 1 */ R1(8)
/* 2 */ R1(8)
/* 3 */ Snare_8
/* 4 */ [3 Drum1 ] Drum2
/* 5 */ [3 Drum1 ] Drum3
/* 6 */ [3 Drum1 ] Drum2
/* 7 */ [3 Drum1 ] Drum4
/* 8 */ [3 Drum1 ] Drum2
/* 9 */ [3 Drum1 ] Drum5
/* 10*/ [3 Drum1 ] Drum2
/* 11*/ [3 Drum1 ] Drum2
/* 12*/ [3 Drum1 ] Drum2
/* 13*/ [3 Drum1 ] Drum5 Sub{[2 r-1 ] Snare_2 }
/* 12*/ [3 Drum1 ] Drum2
/* 13*/ R1(8)
/* 14*/ R1(8)
/* 15*/ R1(8)
/* 16*/ R1(8) Sub{ [8 r-1 ] Sub{v127 c} Do( Substr( Snare_8 , 0 ) ) }
/* 17*/ R1(8) Sub{ [8 r-1 ] Sub{v127 c} Do( Substr( Snare_8_2 , 0 ) ) }
/* 18 */ [3 Drum1 ] Drum2
/* 19 */ [3 Drum1 ] Drum5 Sub{ [2 r-1 ] Snare_2 }
/* 20*/ [3 Drum1 ] Drum2
/* 21*/ [3 Drum1 ] Drum5
//_BOM=============================================================================================
Str BOM = { Sub{p.T(70,0,!1.)""c0"c1.} }
TR=13 o4 REV=127 CHO=120 @=19 v127 V=120 BR(36)
/* 1 */ R1(8)
/* 2 */ R1(8) BOM
/* 3 */ R1(8)
/* 4 */ R1(8)
/* 5 */ R1(8) BOM
/* 6 */ R1(8)
/* 7 */ R1(8)
/* 8 */ R1(8)
/* 9 */ R1(8)
/* 10*/ R1(8)
/* 11*/ R1(8)
/* 12*/ R1(8)
/* 13*/ R1(8)
/* 14*/ R1(8)
/* 15*/ R1(8)
/* 16*/ R1(8)
/* 17*/ R1(8)
/* 18*/ R1(8)
/* 19*/ R1(8) BOM
/* 20*/ R1(8)
/* 21*/ R1(8) BOM
/* 22*/ R1(8)
/* 23*/ R1(8) BOM
//_RerverseCymbal=============================================================================================
Str RC={
Sub{ r-1
p.T(127,0,L1(4))
P.T(97,30,L1(4))
EP.T(97,97,L1(2),97,60,L1(2))
"c0c0g0`c1^1^1^1
}
}
TR=14 q100 @=123,3 v67 o7 REV=127 CHO=127 BR(36)//ベントレンジに注意っ!
/* 1 */ R1(8) RC
/* 2 */ R1(8)
/* 3 */ R1(8) Sub{r-2 RC}
/* 4 */ R1(8)
/* 5 */ R1(8)
/* 6 */ R1(8)
/* 7 */ R1(8) RC
/* 8 */ R1(8)
/* 9 */ R1(8) RC
/* 10*/ R1(8)
/* 11*/ R1(8) RC
/* 12*/ R1(8)
/* 13*/ R1(8) RC
/* 14*/ R1(8) RC
/* 15*/ R1(8)
/* 16*/ R1(8)
/* 17*/ R1(8) RC
/* 18*/ R1(8)
/* 19*/ R1(8) RC
/* 20*/ R1(8)
/* 21*/ R1(8) RC
/* 22*/ R1(8)
/* 23*/ R1(8) RC
//_Picon=============================================================================================
TR=15 q100 @=1,8 v80 o8 REV=0 CHO=127
Str Picon={ Sub{ `c8 } }
/* 1 */ R1(8)
/* 2 */ R1(8)
/* 3 */ R1(8) Sub{r-1 Picon}
/* 4 */ R1(8)
/* 5 */ R1(8)
/* 6 */ R1(8)
/* 7 */ R1(8)
/* 8 */ R1(8)
/* 9 */ R1(8)
/* 10*/ R1(8)
/* 11*/ R1(8) Picon
/* 12*/ R1(8)
/* 13*/ R1(8)
/* 14*/ R1(8)
/* 15*/ R1(8)
/* 16*/ R1(8)
/* 17*/ R1(8)
/* 18*/ R1(8)
/* 19*/ R1(8) Picon
/* 20*/ R1(8)
/* 21*/ R1(8)
/* 22*/ R1(8)
/* 23*/ R1(8)