grid definitely gives the most immediate playability, but you can use cheat codes gridless!

:shushing_face:easter egg:shushing_face:
if you navigate to the [loops] page, you can hold K1 and turn E1 to scroll through the different pads of each bank (a1-a16, for example). this way you can set scroll through each pad (without a grid attached!) and choose unique loop points, level, panning and filtering options. once you adjust everything to taste, you can basically stay on the [loops] page and use K1 and E1 to scroll through pads (1-16) on the different banks (a,b,c).

but yeh, way more immediate on grid :grinning:

9 Likes

I love everything about this, but especially the help menu, the detailed documentation, the vertical design concept and the attention to detail. Can’t wait to dig into it!

3 Likes

@dan_derks
holy shit!!! Cheat Codes sets a new bar for well though out scripts with wonderful documentation. The grid + arc implementation is beautiful and elegant. Thank you so much for putting it out there.
I got lost in Cheat Codes + OP-1 until my Norns battery died and I had to return to the real world :sob:

Is there any chance you could find a way to implement envelopes in the one shot mode?
It would be so nice for creating melodic/percussive patterns out of drones or other material.
Just a thought

Thanks for this beauty

13 Likes

Agreed!

BTW, I’ve always been meaning to ask, is there a way to change the orientation in grid/arc in general? For instance, if you boot up MLR the orientation is such that the usb cord has to stick out of the left side of the grids. if I wanted to turn it around 180 degrees so that it is still horizontally oriented and the usb cord sticks out of the right side, is there an easy way to do that?

same for Arc. I always wanted to use it vertically oriented , but then the Arc Rings LED lights wouldnt be at " the botton" anymore if that makes sense.

Anyway, hoping to get some time to dive in to Cheat Codes this weekend

3 Likes

This script is so good, and the documentation is just ::chef’s kiss::

1 Like

aww man, thank y’all so much for the positive feedback! it’s been wonderful seeing the script in others’ hands :slight_smile:

DOPE thought, yeah! i’ll take a peek at exposing the softcut envelope param and sneak it in over the next few days :slight_smile:

I’m really stoked to hear some OP-1 + cheat codes…no rush but, like, for real tho.

yes! upcoming, system level change.

6 Likes

Jaw drop!
What a xmass present :grinning:

1 Like

One tiny bug report, or perhaps user-error on my part, but I seem to occasionally get myself in a situation where the loop seems to be “stuck” at the end point of my defined loop region. This results in just a solid tone since it’s looping on a fixed location. I can’t seem to figure out what I did, or how to undo it.

1 Like

weird! can you move your start point back before it? next time it happens, if you’re able, plz DM any steps to reproduce. i’m curious if it happens while you’re switching the buffer you’re playing from, or doing random loop point jumps, anything like that? oh, or maybe arc stuff? i noticed u had a loop point displaced in ur IG video

1 Like

so, the script looks f’ing insane but i have not dug in yet

i’m not exactly sure what is described…

is it: around loop endpoints, in xfade period, there are volume “bumps” with repeated passes with nonzero pre level?

that is explored in this old issue:

in a nutshell, there is no good solution to this that doesn’t require expensive analysis of the input signal (i think) - there are only compromises. the default compromise gives you small volume “bump” with continuous high-intensity input. (see graphs in issue.) there are some “hidden” parameters in softcut that change the balance of this compromise, which we can get into if you want

other possibility: does the script manipulate rec_offset at all? i’d recommend just leaving that alone. currently it is possible to end up with a situation where you record with one offset, and then change the offset, and the old region will never be hit. here is the issue https://github.com/monome/norns/issues/898

but i wasn’t really committed to “fixing” this, because its a weird edge case (the real purpose of the offset is just to keep read/write heads out of each other’s resampling windows) and a fix would have performance impact.

1 Like

oy, yes, the script is a lot of stuff. before the abstractions it was a single 2500 line scroll. i’ll continue streamlining things as i learn more :sweat_smile:

i think i know what’s happening and it’s all just script-level maths (variables are manipulated, which then pass arguments to softcut)— the loop point variables are somehow getting pushed outside of the expected boundary of the controls (which operate with a clamped range) and likely the start point got assigned somewhere past the end point during sunbeamer’s usage. loop points have a ton of modulators/controllers, so i think i just missed something on some fringe uses, probably around arc — super tiny ranges, which push softcut to the sonic edge of granular synthesis (single tone), coupled with the controls not knowing how to respond to the unexpected loop points.

i’ll push the arc interaction through its paces this week and should run into it (and will fix!)

(for due diligence, there’s no manipulating rec_offset – totally just math stuff)

3 Likes

what does cheat code & op1 look / sound like?

marcus_fischer:

Is there any chance you could find a way to implement envelopes in the one shot mode?
It would be so nice for creating melodic/percussive patterns out of drones or other material.

DOPE thought, yeah! i’ll take a peek at exposing the softcut envelope param and sneak it in over the next few days :slight_smile:

Why not implementing a general envelope mode for both one shots AND loops? :upside_down_face:

1 Like

for sure, good q. i think the param affects both modes! i won’t limit it to only 1-shot if it can work on both :envelope_with_arrow:

edit: woop, iiiiiiii completely misremembered what fade_time does. it’s for cross-fading between position jumps (already set to 0.01 for non-clicky jumping). afaik, there is not an envelope param for softcut – apologies y’all.

@marcus_fischer: in 1-shot, you should be able to bring the end point pretty close to the start point (careful not to cross over, tho this will get fixed in the next update) to get quick percussive clip playback. does that get you close?

2 Likes

woop! doing some debugging and noticed that in the maiden project manager, I listed the script as cheat codes, and the space in between makes directory management weird.

I have updated the project manager to cheat_codes – if you have a cheat codes (no underscore) copy on your device, please:

  • refresh your community catalog
  • download cheat_codes
  • delete cheat codes from code (just so you don’t have an outdated copy :slight_smile: )
  • you can also safely get rid of the cheat folder in data

doesn’t cause any troubles, but it’s much cleaner this way.

2 Likes

this is a deep app and a lot of fun! I just wanted to thank you for taking the time to write up all this documentation. I almost typed 3 questions in here and then went back through and reread and the answers were right there each time, hah. Few hours in and it’s starting to click and feel super powerful and useful

2 Likes

Yeah I’ve played around with trimming the end points on the one shot but I was hoping to be able to control the decay so you could give it a more natural sound rather than sounding clipped. With short delay settings at lower volume I could get I could kind of fake it but then then I give up having a usable delay for the other channels.

2 Likes

mmmmm ok, yeah, i have an idea. thanks marcus!

2 Likes

You should be able to queue up slew and level changes to make envelopes?

2 Likes

exactly what i’m thinking – queuing using a metro, right? wouldn’t work just by stacking like this:

if enveloped then
     softcut.level_slew_time = 0.3
     softcut.level(2,0)
     softcut.level(2,1)
end

…which makes sense, but just wanted to confirm. running low on metro’s :sweat_smile: