Modjaq’s Swimmer is a rare, deep-sea creature, trawled up from the depths of the Max for Live world. This is not your general-purpose modulation source. Think of it like an idiosyncratic Eurorack module — a source of specific gestures and a beautiful, briny gift from the ocean.

I recommend embracing the oddness, but even so, Swimmer’s manual could use a rewrite or editor. So — let me do my best here. If it seems weird, that’s kind of what makes this fun: this is a different way of generating these sorts of results, but the regularity of the structure, with repeating blocks, makes it easy to hear musically. It’s a wonderful oceanic toy.

Swimmer is divided into four blocks. These four always play in sequence from left to right. You can set each to one of four types in any combination, and each block type has a different behavior and parameters. Those are:

  1. Noise (Perlin noise)
  2. Linear
  3. Saw
  4. Sah (sample and hold)

The idea is this: the “swimmers” act as playheads advancing through the four blocks, with each swimmer assignable to two modulation destinations in Live devices or plug-ins. All four operate on the same clock — either free-clocked in Hz or synced to a time division — but you can alter the spacing between them by adjusting the Phase control. Set phase to 0, and the swimmers more or less overlap in time. Set phase to 1, and they’ll be evenly spaced from one another. (Sy = “sync”; Hz = free-running.)

In addition to spacing in time, each block will cause the swimmers to deviate from one another according to defined shapes and added randomization/noise.

Set paths: Modjaq has introduced “pins” and “connections” to let you route your swimmers through different areas of space as they enter and exit each block. That’s this area of the UI:

Determine diversity/randomization: So that your four swimmers don’t all follow exactly the same path, in addition to phase/spacing in time, you can determine how far they deviate from the grid with randomness and diversity. The easiest way to visualize this is to set phase to 0 and then observe how far the swimmers deviate from one another.

So your workflow is something like this:

  • Assign the four swimmers to the parameters you wish to control (modulation destinations).
  • Set the main clock and adjust spacing.
  • Configure each block’s behaviors, setting pin paths and determining how each deviates in each.

The modulation destinations can be set to “remote” mode, where they take over parameters, or “mod,” where they add (or add/subtract) values to wherever you set the controls on your Device. I tend to find the latter more useful. You can also set min/max (remote) or scale amounts and unipolar or bipolar operation (mod).

Put it all together, and you can get some wonderful results:

Here, watch what happens as I change timing settings — particularly as you see how all these different swimmers can overlap or phase, and how they deviate based on randomization:

What you get is a combination of envelope/path generator and aleatoric modulation source. And that’s actually pretty great. Yes, you could get this via other methods, but it’s atypically easy to these some particular variations — a really brilliant source of choreographed mayhem.

It’s a great match for Beatsurfing’s RANDOM and RANDOM Metal, which are on sale now as a bundle:

If you buy something from a CDM link, we may earn a commission.

RANDOM Metal + RANDOM Bundle

Swimmer is available now from our friends at Isotonik Studios, for both Live 11 and Live 12:

Swimmer by Mudjaq