All plugins

Generative · MIDI drum generator

DrumGen

Transport-aware MIDI drum generator with fills, style modes, Breakbeat/Jazz/Fugue genres, and sparse pulse options.

Bundle
drumgen.vst3
Role
Drum pattern generator
DrumGen plugin interface

Opinion

I’m pleased wit this one, it does its job admirably. The UI could probably do with tweaking a little, but that’s low priority, it works.

Functionality

DrumGen emits MIDI drum patterns that stay aligned with host transport. It can create new patterns, mutate the current pattern, target fills, and switch between straight, folk-oriented, breakbeat-inspired, Jazz, and sparse Fugue metrical vocabularies.

Conductor integration

DrumGen accepts MIDI input for Conductor CC control. Set Conductor Ch (0 = off, 1–16) to the channel Conductor uses for its output (default 16). Conductor CC 21 drives density, CC 22 drives variation, CC 23 drives mutation rate, and CC 24 (value 127) triggers a new pattern on each section boundary. See MIDI Mapping.

Automaton layer

An optional cellular-automaton layer evolves chosen lanes so a pattern keeps changing without being regenerated. Pick an Automaton rule (Off, or Wolfram rule 30, 90, 110, 150, 18, 54, 60, 22, 105 or 126) and what it plays on: Hats, Percussion (bash, cowbell, clave), Toms, all three together, or every lane.

The pattern as generated is generation 0 and plays on the first pass. On each later pass a targeted lane plays the next row of a one-dimensional automaton (wrapping at the pattern length) seeded from that lane’s own hits, so hats thin out, fill in and shift in ways that are structured rather than random. New hits take the lane’s average velocity and surviving hits keep theirs. A lane with no hits stays silent. After 64 generations a lane returns to the pattern. Kick, clap, snare and crash are never touched unless you choose All lanes.

The pass number comes from the playback position, so loops, restarts and offline renders agree, and the stored pattern is never altered (New, Mutate and Vary all still work on it). Rule 90 gives symmetric, self-similar shapes, 30 and 110 are busier and less predictable, and 150 and 105 are dense. Generation every (1-8 loops) holds each generation for that many loops, so the pattern changes slowly enough to hear each shape. The selectors are appended host parameters (ca_rule, ca_target, ca_every), off by default.

Status

Usable. The user interface and pattern generation still need some more tightening up.