home/ atoms/ tidal-randcat

randcat plays patterns from a list in random order; wrandcat adds probability weights to the selection

The randcat function concatenates patterns like cat (playing them one per cycle) but chooses which pattern to play in random order rather than sequentially. wrandcat adds probability weights so some patterns appear more often. These functions accept any number of patterns and work with any parameter (not just sound names). Combined with somecycles and other random functions, they create non-repeating, varied sequences of patterns — a core tool for live coding long-form variation.

Examples

d1 $ sound (randcat ["kick snare:4 [~ kick] snare:5", "kick snare:4 . hc(5,8)"]) — random alternation. d1 $ sound (wrandcat [("bd sn(3,8)", 1), ("arpy clap", 0.5), ("cpu(5,8)", 0.25)]) — weighted choice.

Assessment

Write a pattern that randomly cycles between three different rhythms with probabilities 50%, 30%, 20%. How does randcat differ from using the <> mini-notation for alternation?

“randcat on the other hand, plays them in random order”
corpus · tidalcycles-course-1-structured-4-week-course · chunk 14