🦊 CrumbMidi Pattern Library
FunkFox's Sammlung - Kopieren, Einfügen, Jammen!
🥁 BEATS
Simple Beats
// Basic
sound("bd sd")
// Four on the floor
sound("bd bd bd bd")
// Hip Hop
sound("bd ~ sd ~")
// Rock
sound("bd hh sd hh")
// Breakbeat
sound("[bd bd] sd bd sd")
// Drum & Bass
sound("bd ~ [~ bd] sd")
// Trap
sound("bd ~ ~ bd ~ ~ sd ~")
Layered Beats
// Classic Drum Kit
stack(
sound("bd ~ bd ~"),
sound("~ sd ~ sd"),
sound("hh*8")
)
// Funky
stack(
sound("bd ~ [~ bd] ~"),
sound("~ sd ~ [sd sd]"),
sound("hh*4 oh hh*3 oh")
)
// Electronic
stack(
sound("bd bd bd bd"),
sound("~ cp ~ cp"),
sound("hh*16").gain(0.4)
)
Euklid Beats
// Afrobeat
stack(
sound("bd").euclid(3, 8),
sound("sd").euclid(2, 8),
sound("hh").euclid(5, 8)
)
// Bossa Nova
sound("rim").euclid(5, 8)
// Bulgarian
sound("bd").euclid(4, 7)
🎹 MELODIEN
Einfache Melodien
// C-Dur Skala
note("c4 d4 e4 f4 g4 a4 b4 c5").s("piano")
// Arpeggio
note("c3 e3 g3 e3").s("sawtooth")
// Bass Line
note("c2 c2 g2 f2").s("square").lpf(400)
Akkord-Progressionen
// Pop Progression (I-V-vi-IV)
note("<C3 G3 Am3 F3>").chord().s("piano").slow(2)
// Sad Progression (vi-IV-I-V)
note("<Am3 F3 C3 G3>").chord().s("piano").slow(2)
// Jazz ii-V-I
note("<Dm7 G7 Cmaj7>").chord().s("piano").slow(3)
Synthesizer Melodien
// Retro Lead
note("c4 e4 g4 c5 g4 e4")
.s("square")
.lpf(1200)
.attack(0.01)
.release(0.2)
// Pad
note("<C3 Am3 F3 G3>")
.chord()
.s("sawtooth")
.lpf(800)
.attack(0.5)
.release(1)
.slow(4)
// Acid Bass
note("c2 c2 [c2 c3] c2")
.s("sawtooth")
.lpf("<400 800 1200 800>")
.resonance(10)
🎛️ EFFEKTE
Hall (Reverb)
sound("bd sd").room(0.5)
sound("bd sd").room(0.8).size(4)
Delay
sound("hh*4").delay(0.5)
sound("bd sd").delay(0.25).delaytime(0.125).delayfeedback(0.5)
Filter Sweep
note("c3").s("sawtooth").lpf(sine.range(200, 2000).slow(4))
Distortion
sound("bd sd").distort(0.5)
sound("bd sd").crush(4) // Bitcrusher
Pan
sound("hh*4").pan(sine) // Autopan
sound("bd sd").pan("<-1 1>") // Links/Rechts
🎵 VOLLSTÄNDIGE TRACKS
Lo-Fi Beat
stack(
sound("bd ~ [~ bd] ~, ~ sd ~ sd").room(0.3),
sound("hh*8").gain(0.3).pan(sine.slow(4)),
note("<C3 Am3 F3 G3>")
.chord()
.s("piano")
.lpf(800)
.room(0.5)
.slow(4)
)
Techno
stack(
sound("bd*4").distort(0.1),
sound("~ cp ~ cp").room(0.2),
sound("hh*16").gain(0.3),
note("c2 c2 c2 c3").s("square").lpf(sine.range(200, 800).slow(8))
)
Ambient
stack(
note("<C3 G3 Am3 Em3>")
.chord()
.s("sawtooth")
.lpf(600)
.attack(2)
.release(4)
.room(0.8)
.slow(8),
note("c5 g4 e5 d5")
.s("sine")
.gain(0.3)
.room(0.9)
.slow(4)
)
Jungle/DnB
stack(
sound("bd ~ [~ bd] sd [bd bd] ~ bd sd"),
sound("hh*8").gain(0.4).pan(rand),
note("c2 ~ c2 [c2 g2]").s("square").lpf(300)
).fast(1.7) // ~170 BPM feel
🎲 RANDOM & CHAOS
Zufällige Noten
note(rand.range(40, 80).floor()).s("piano")
Zufällige Sounds
sound("bd sd hh oh cp").sometimesBy(0.3, x => x.speed(2))
Glitch
sound("bd sd hh*4")
.sometimes(x => x.speed("<1 2 0.5>"))
.rarely(x => x.crush(4))
🦊 FUNKFOX SPECIAL
Crumbforest Theme
// Der offizielle Crumbforest Sound
stack(
// Waldgeräusche (Wind)
sound("wind").gain(0.1).room(0.9),
// Herzschlag des Waldes
sound("bd").euclid(3, 8).gain(0.6).room(0.3),
// Melodie der Waldwächter
note("<C4 E4 G4 A4 G4 E4>")
.s("triangle")
.lpf(1200)
.room(0.5)
.slow(2),
// Eulen-Call
note("g5 ~ ~ ~ e5 ~ ~ ~")
.s("sine")
.gain(0.3)
.room(0.8)
.slow(4)
)
📝 CHEATSHEET
| Was | Wie |
|---|---|
| Sound spielen | sound("bd") |
| Note spielen | note("c3") |
| Synth wählen | .s("sawtooth") |
| Mehrere Sounds | "bd sd hh" |
| Pause | ~ |
| Gruppe (schnell) | [hh hh] |
| Multiplikator | hh*4 |
| Alternation | <bd sd> |
| Langsamer | .slow(2) |
| Schneller | .fast(2) |
| Filter | .lpf(800) |
| Hall | .room(0.5) |
| Delay | .delay(0.5) |
| Lautstärke | .gain(0.5) |
| Pan | .pan(-1) bis .pan(1) |
| Gleichzeitig | stack(a, b, c) |
| Nacheinander | cat(a, b, c) |
| Euklid | .euclid(3, 8) |
| Stoppen | Ctrl+. |
| Ausführen | Ctrl+Enter |
🦊 FunkFox sagt: Kopieren ist kein Betrug - es ist der Anfang!
#crumbmidi #patterns #strudel #kopieren #lernen #jammen