initial commit

This commit is contained in:
LupiNexMedia
2026-04-28 10:54:54 +02:00
commit 0494b1470b
7 changed files with 300 additions and 0 deletions
+35
View File
@@ -0,0 +1,35 @@
setcpm(138/4)
samples({
// Drums
kick: 'Drums/Kicks/Kick - Crrisis.wav',
closedHat: 'Drums/closedHiHats/Ghosthack CH 4.wav',
snare: 'Drums/Snares/BK-72 - 909 ish.wav',
// Basses
bassA: 'Bass/Lili Bass/Lili Bass A.wav',
bassC: 'Bass/Lili Bass/Lili Bass C.wav',
bassG: 'Bass/Lili Bass/Lili Bass G.wav',
bassF: 'Bass/Lili Bass/Lili Bass F.wav'
},'https://cdn.lupinexmedia.de/samples/')
DRUMS: s("[kick closedHat kick closedHat], [- - snare -]").fast(2).velocity(.8).gain(.7)
BASS: s("[bassA]*8 [bassC]*8 [bassG]*8 [bassF]*8").fast(.125).cpm(138/2).gain(.7)
let lead = `
[a3 a3 c4 a3 d4 a3 e4 d4] [c4 c4 e4 c4 g4 c4 e4 c4] [g3 g3 b3 g3 c4 g3 d4 c4] [f3 f3 a3 f3 c4 f3 c4 b3]
`
LEAD: note(lead).s("saw").slow(4).velocity(.6)
let basslead = `
[ [a3*4]@3 ~ ]
`
BASSLEAD: note(basslead).s("gm_lead_8_bass_lead").velocity(.8).lpf(2000) //.jux(rev)
let basslead2 = `
[ [-*4]@3 [g3 c4] ]
[ [-*4]@3 [g3 e3] ]
[ [-*4]@3 [g3 c4] ]
[ [-*4]@3 [a3*2]*2 ]
`
BASSLEAD2: note(basslead2).s("gm_lead_8_bass_lead").velocity(.8).fast(.25).lpf(2000)
+68
View File
@@ -0,0 +1,68 @@
let n = note
samples({
kick: 'Drums/Kicks/Kick_F.wav',
closedHat: 'Drums/closedHiHats/Ghosthack CH 4.wav',
snare: 'Drums/Snares/Snare - Clever.wav'
}, 'https://cdn.lupinexmedia.de/samples/')
// Part 1
let subBase1 = n(` [[e2 e3] [e1 e3] [a2 a3] [e2 a3] [g2 g3] [e2 e3] [a2 a3] [a1 a3]] [[d2 d3] [d1 d3] [c2 c3] [c1 c3] [g2 g3] [e2 e3] [a2 a3] [a1 a3]] `)
let part1 = n(` [e5 [b4 c5] d5 [c5 b4] a4 [a4 c5] e5 [d5 c5] b4 [b4 c5] d5 e5 c5 a4 a4 ~] [d5 [d5 f5] a5 [g5 f5] e5 [c5] e5 [d5 c5] b4 [b4 c5] d5 e5 c5 a4 a4 ~] `)
// Part 2
let subBase2 = n(` [[a2 a3] [e2 a3] [g2 g3] [d2 g3] [f2 f3] [c2 f3] [e2 e3] [a3 g#3]] [[a2 a3] [e2 a3] [g2 g3] [d2 g3] [f2 f3] [c2 f3] [e2 e3] [a3 g#3]] `)
let part2 = n(` [e5 c5 d5 b4 c5 a4 g#4 b4] [e5 c5 d5 b4 [c5 e5] a5 g#5 ~]`)
let drums = slider(1,0,1)
const part1Pattern =
seq(part1)
.s("saw")
.room(.3)
.gain(.6)
.lpf(750)
.sustain(.4)
.release(.5)
.stack(
seq(subBase1)
.s("sawtooth")
.lpf(400)
.gain(.9),
seq(subBase1)
.s("triangle")
.lpf(400)
.gain(.7),
s("kick").fast(16).cutoff(1000).velocity(drums).gain(.5),
s("closedHat").late(.5).fast(16).velocity(drums).gain(.1),
s("snare").late(.5).fast(8).cutoff(1500).velocity(drums)
)
const part2Pattern =
seq(part2)
.s("gm_string_ensemble_1")
.room(.8)
.gain(.6)
.lpf(750)
.sustain(4)
.release(1.3)
.stack(
seq(subBase2)
.s("sawtooth")
.lpf(400)
.gain(.9),
seq(subBase2)
.s("triangle")
.lpf(400)
.gain(.7),
s("kick").fast(16).cutoff(1000).velocity(drums).gain(.5),
s("closedHat").late(.5).fast(16).velocity(drums).gain(.1),
s("snare").late(.5).fast(8).cutoff(1500).velocity(drums)
)
const song = arrange(
[2, part1Pattern],
[1, part2Pattern]
)
song.cpm(5)