Super excited! thanks Dan :pray:

I finally had the chance to sit down and play with cheat codes. What an amazing tool! Thank you so much!

Something I noticed: arc-button 4 (to select filters) does not work. It doesn’t light up and the arc itself remains on whatever button arc was previously set to. Bug?

…and, while I’m here, would you consider adding in a reverb send like you did for the delay? I know there’s a global reverb, but that’s of no use to me. I love your implementation of the delay!

Thank you for all your work on this!

EDIT: I should note that I’m using the newest Norns firmware and v 1.2.2 of cc.
EDIT 2: no lights for bank 1 and 2. Bank 3 filter button works, but functionality does not (as above)

hey hey! happy you’re digging in and digging the tool :slight_smile:

this button no longer exists :slight_smile:

i think that should get you where you need – i’m not sure what you meant by ā€œno lights for bank 1 and 2ā€ but lmk if you need anything else on this!

not possible, unfortunately – softcut is routed to reverb as a bus, so there’s no way to send individual voices. delay is actually just using softcut – i can see about making very small delay times so you can get a reverb-ish effect, tho. won’t be soon, tho – global clock is first on the list :slight_smile:

1 Like

a really short softcut stereo ping-pong delay with lp filter in the feedback loop is very cool and very verby

3 Likes

Ah, ok, thanks for the quick reply! I was reading the manual but I guess that was in the newest release notes - my bad.

As for bank 1 and 2, that’s explained by your removal of the 4th button. However, there’s still a 4th button that works for bank 3 (but maybe it’s routed to something else now, and likely in the newest release notes!).

As for the reverb/delay - if the delay is using softcut and you can make a send/return, is that not possible for the reverb? Or am I missing something…? I guess my issue is that I want to wash some sounds with reverb, but others I want dry and with the global reverb it’s an all-or-none thing.

either way, great work and I’ll tag you on IG when I make some vids!

1 Like

Feel free to link to those insta videos here too. I and I’m sure many others find the work of fellow lines members to be inspiring!

2 Likes

no no, totally mine! i’ll be doing a manual overhaul for the global clock, as that’ll change some menus, but had opted for small supplement PDFs alongside with updates in the meantime. there’s one on that post, which might help.

yep, if you’re in pad focus mode, that 4th button will reflect whether the pads will send a crow ping :slight_smile:

correct – softcut has specific internal sends/returns for its own individual voices, and those individual voices can be a send for engines and external sources, but those individual voices cannot be isolated in the send chain to global reverb and compressor. they get summed and there’s only a single parameter to control whether/how much of all the softcut voices go to the system reverb (+ compressor).

i’ll make delay revamping a priority once we get global clock wrapped + released – there are a lot of neat things planned :slight_smile:

and please! share your work!! would love to see how you’re using it. thanks for the time + energy! :hugs:

1 Like

Thanks @dan_derks!
I see the issue. I now understand why global reverb can’t be used :slight_smile:
Is it possible that I can use something like Justmat’s Greyhole (supercolider) and use that as a send in the same manner you’ve implemented it with the delay? I understand that your project has other more important features you’re working to implement so I don’t want to burden you.

I added to the script, thanks to @dan_derks guidance, the possibility to randomize start, end point, rate and pan on all the pads in a bank (delay and filter per pad will see the light some day :slight_smile:), this way it’ll be easier to set up all the pads to play in the OSC layout instead of doing it one by one: ā€œrand bankā€

Note: I removed pad 1 of each bank from the randomization button to have a safe place to return to, you can include pad 1 in randomization by changing on line 46 of the attached code
to start in 1 instead of 2:

for i = 1,16 do

Example case: I want all the pads of bank 3 to loop to have a running base, and all the pads of bank 1 and 2 to one-shot. Currently only per loop toggle open, so I have to do it pad by pad in all the banks.

Solution: I opened the existing function ā€œloop ALLā€, this way you can set looping or one-shot trigger behavior per bank instead of per individual pad with ā€œloop padā€.

Due to the space limitations on iPhone and things getting confusing, the individual ā€œloop padā€ button is no more (you can easily edit it in, personal preference here) and added ā€œloop ALLā€ on its place.
On iPad I added both new functions to the bottom of the pads, everything else still in place.

iPad layout detail:

iPhone layout:

If you want this running go to Maiden > cheat_codes > cheat_codes.lua
select all the text (cmd/ctr + A) and paste the following:

– cheat codes_CarlosEdit.txt (126.3 KB)

I don’t want to mix this little edit with the main script, Dan will probably add the function on the next update anyway. I think this is the best way to share it.

Here’s the updated TouchOSC layouts:

cheat_codes_iPhone2.touchosc (4.4 KB)
cheat_codes_iPad.touchosc (3.7 KB)

Have fun and stay safe!

3 Likes

not sure if this is possible currently or not but when using random patterns is it possible to limit the range of certain params that are manipulated when creating a random pattern. Pitch for instance would be nice to set ranges

no. for the reasons that dan already mentioned, and more.

if everyone likes Greyhole much more than the current standard output reverb, we can just replace it. greyhole and the standard reverb are both faust programs. greyhole is more expensive.

I guess I’m confused now. I thought I understood why, but perhaps not.
Then, how is possible you can send to the delay that’s part of CC? Why couldn’t something like greyhole be used for the same purposes?

I understand why we can’t send to the master reverb, but I mean a new one that’s internal (like the delay, which isn’t part of the master FX)

the delays within cheat codes are softcut voices.
cheat codes does nothing but manipulate softcut parameters.
softcut does not include an internal arbitrary effects chain.
individual softcut voices do not have their own outputs to supercollider or the norns mixer client.

crone process routing (mixer client and softcut client):
crone-process-routing.pdf (49.3 KB)

softcut internal routing:
softcut-routing.pdf (45.7 KB)

and here is the JACK connection graph:

3 Likes

I like the current reverb as the default one! Greyhole is awesome but much more a niche/opinionated effect, I’d say.

3 Likes

ahhh, I see. So, there’s no way to achieve an fx send setup for FX then?
Also, thank you for the amazing detailed reply. That helped a lot.

1 Like

pretty much, yes — softcut is the only sound engine of cheat codes (cheat codes is, at its core, a hopefully very playable interface for softcut and a way to quickly program softcut through gesture rather than code). softcut’s position in the mixer chain doesn’t expose it to being routed through anything besides the built-in fx. that means the on-board reverb and the on-board compressor.

the delay effect is just taking advantage of softcut’s inter-voice routing. that said, i am excited by the prospect of showcasing softcut’s very broad and wild possibilities by extending the delay i cobbled together for cheat codes and allowing it to be a destination for further sonic exploration.

i am embarking on a massive overhaul of the code — with @Galapagoose’s guidance, i’ve already cut 400 lines out of its 5000. in a bit, cheat codes will be primed for approachable re-configuration :slight_smile:


edit! the above will make this:

super duper easy to reconfigure :slight_smile:

14 Likes

this is sick
not sure why it excites me so much but i love hearing things like this

5 Likes

I love hearing about people revisiting and refining complex machinery like this. When someone describes moving game engines, or why they updated versions or even why they changed what metal alloys they us in their work/product/process, I sink in to my seat and become prepared to listen to someone so much smarter than me teach me about what they love.

1 Like

Thanks the patch is amazing!

One thing I’m having troubles with is saving presets or I dont understand how they work :slight_smile: I wish they would save the position of a loop and clips that I loaded. Is it possible? I’m not using grid, just loading a sample into 1 of 3 timelines.

thanks for the kind words!

totally possible! the section about collections in the manual covers all of this :slight_smile:

please lmk if u run into any other trouble!

1 Like