Updated For 2.8! The Baguetter, A Simple Device Swap Machine

Hello,

I finally finished my first tool. Consider it like a tool made for the fun of learning something new.
In the end, I had to finish it.

The idea behind this tool is to provide a simple FX swapper.

HOWTO:
-Select a track or the “selected tracks” option, insert devices.
-Set a timer, the tool is actually counting till “timer value” and then it enables the next device, disa$ling the previous one.
-Random: Two params. One is for modifying randomly the row count value. The other one is for randomizing the FXs sequence.
-Live button: This is for swapping on playback…
-The write button: This is for writing the commands on the pattern
-Enabling “Pattern selection” will constrain the dump to a selection.
-If you want the script to avoid “touching” some plugs, add “MCHAMMER”, “mchammer”, “SAFE” or “safe” to the name of the plug (yes, just rename to MCHAMMER, because he can’t touch this… device).

Mandatory already old screenshot:

TODO:

  • receive and take in consideration your advices.
    [s]- think about a random mode accessible through a simple checkbox.
  • if think(randomMode) then implement(randomMode) end.
    [/s]
    - debug(randomMode)
    - a better GUI ?
    - more possible options… who knows.

THANKS:

  • Conner and Danoise for the app_idle trick, it wouldn’t be here without them.
  • Esa for being the best debugger ever.
  • Vincentvc for being the first one on the first version shared on this board and his first debug :)
  • Jonas for asking for a feature I could easily implement :)

V0.8 features Jonas’s idea about adding a pattern selection mode. Also, I changed the main routines, added a track selector and a “?” dialog!

V0.9 RANANANANANANANANANANANDOM?

V0.9999 Better GUI? Random row count modifier valuebox added.

V1 Zipcleaned. Fixed one more bug and a weird behaviour when selecting other tracks (now it will stop the live mode)

V1.02 2.8

More about the tool on my blog!

great work, love it ! B)

And one more bug spotted by vincentvc, in hope it’s the last for now :)
(yes, been debugged)

Coolio, will try this one!

Edit:

Love it, great stuff! :drummer:

  • a bug too:

trying to dump switches every 3 rows to pattern of 7 native dsp effects.

Trying to hoff it gives me:

One tip: try mixing both devices and senders!

add fx and sends on a track
add baguetter
add fx and sends on sends
add baguetter

equals baguette remix :drummer:

If I may give a feature request already B) , ‘pattern dump to selection in pattern editor’ instead of always dump in the complete pattern, that way you can for example do stuff like switch effects every 3 rows for the first 16 lines if these are selected, then make another selection in the pattern and switch at another rate, for the rhythmical glitchers .

It’s actually a nice idea. Don’t know if I could easily implement it (noob renoise scripter here) but I will definitely give it a try in the coming days. Also, I thought about implementing a checkbox for the user to choose if a pattern dump clear previously dump informations or not.

Also Jonas, can you tell me if you used the latest version of my script and if yes, how did you exactly get these bugs? Thanks in advance!

Also, I may add it’s a bit tricky to removing devices while it’s playing on live mode… at some point, you could reach the end of the chain, remove a plug and the script would try to access a plug that is not here at all -> instant crash.

I can’t really avoid that I believe, unless I put a condition each time the script access a device (which is possible, I think) and/or I reset the selectedDevice variable on the live button click.

Last update of the night:

  • Better enable/hon/hoff active state management of the “Live button”… especially when removing devices.
  • function safeDeviceCheck created so at least, it won’t crash while you remove devices and the counter try to access a device that is “nil”. During a moment, the last device will appear as enable but at least, the counter still does its job and will bypass it again. It’s not PERFECT but it’s not crashing.

That MCHAMMER feature made my day :D

haha, nice!

Some words about it on my blog!
http://www.mynameiskaneel.com/blog/2011/09/23/the-baguetter-a-renoise-2-7-tool/

Who’s going to make funny screenshots with amen break private jokes and a nice logo so we can be proud of ourselves when using it?
Uh? Who?

Btw, I just retested it today at work, showing it (and off) to some collegues and it didn’t crash at all. Sounds like you can add and remove devices on live mode without crashing the hell out of your renoise!

sorry, dunno what my actions, besides already stated in the bug notice report exactly were or what version I was using, I think the second one that you’ve uploaded? Anyway, it seems to work great here now and I applaud you for this native glitch machine! :yeah:

Maybe one day :wink: you can hack Cie’s stepsequencer script and use the steps to set which effect should start/stop?

Actually, I thought about it but then I felt it would be too much like Glitch and I think I don’t want to rip off dblue’s work :)

I tried to think about your idea but didn’t find yet the way to get the “selected rows” on a track, will have to ask this to the beginner’s question board, again :)

how would that be ripping of dblue’s work? you’d basically make an fx sequencer where you can choose any fx for yourself…
jonas’ idea 'd be pretty epic. :)

Currently the script opens up on every new_song_notifier… which means if you start a new song, baguetter is there…

Who knows!
Maybe he’s already working on implementing a renoise version of glitch eheh

btw, implemented the pattern selection option, now I just wonder if you guys want to deal with bypassing the fx by yourself or if I should add a line +1 after the selection to bypass the latest effect used…

(and no, didn’t upload the new version yet, I’d like to test it before uploading… and it’s the weekend with the family :D)

Fair enough.

The main advantage of having such a step system though, is that you can easily make rhythmical patterns for the effects to start/stop. Basically I envision one big ass row tool gui in which you fill in the effect numbers, numbers as in position in your track dsp chain. When a new nr is triggered, effect is enabled, the previously enabled effect is stopped. Maybe instead of horizontal stepsequencer, you can give it your own twist, vertical? :wink: Though dumping to selection will enable similar rhythmical patterns, with a bit more setting up.

Ideally, for me, every dumpage to selection should start with the first effect in the chain and have the last effect that was enabled in a previous run, turned off. Maybe a toggle for sake of flexibility?