The Zebra Scripting Thread

Official support for: u-he.com
Post Reply New Topic
RELATED
PRODUCTS

Post

jensa wrote:
bmrzycki wrote:
Urs wrote:(I will at no time add Haskell though)
This made me smile. I'm glad I'm not alone in thinking Haskell has some of the strangest syntax.
Bring forth Lisp or Prolog! :help:
perl scripting or stfu!
An idiot on Set Theory:
"In some cases there is an object called red that contains everything that is red. In much the same way a pot is a plate."

Post

PERL!!!? Awesome ... love / hate ... can't quite decide ... but it could be very useful, especially since Zebra patches are (mostly) text format. It should be possible to create a browser based app that lets you mix and match modules from two or more patches, for example.

Peace,
Andy.
... space is the place ...

Post

ZenPunkHippy wrote:PERL!!!? Awesome ... love / hate ... can't quite decide ... but it could be very useful, especially since Zebra patches are (mostly) text format. It should be possible to create a browser based app that lets you mix and match modules from two or more patches, for example.

hmmm.

use JavaScript::ZebraParser;


(yup, there is a Javascript CPAN module for Perl)
An idiot on Set Theory:
"In some cases there is an object called red that contains everything that is red. In much the same way a pot is a plate."

Post

Urs wrote:
billstei wrote:I've managed to figure out all the OSCx module parameters, including the Blend modes Wavetable.set() function, but I can't find any info on the Keyscale, Velscale, and Morph modes data point manipulation. Probably similar to MSEGx.setSegment() and MSEGx.setMarks() I suppose. Urs can you give me a couple of clues/examples? They don't have to work or do anything, just a couple of function names and arguments, I can hack around from there.
None of these are implemented yet :oops:
Okay, similar question but I have to ask... Is there a script method to set values in the ModMapper graph? MMap.Step.Value ??

Post

billstei wrote:Okay, similar question but I have to ask... Is there a script method to set values in the ModMapper graph? MMap.Step.Value ??
Not yet...

Also no access to microtuning tables.

I looked into adding a String type (and String[]) yesterday. It seems possible. I'll experiment a bit with that. It's time to shell out a new secret beta anyway.

Sheesh, I wished I had the energy to start over with scripting. The compiler could be a bit slower without causing problems, but then it could be much easier to add new structures.

;) Urs

Post

Urs wrote:
billstei wrote:Okay, similar question but I have to ask... Is there a script method to set values in the ModMapper graph? MMap.Step.Value ??
Not yet...

Also no access to microtuning tables.

I looked into adding a String type (and String[]) yesterday. It seems possible. I'll experiment a bit with that. It's time to shell out a new secret beta anyway.

Sheesh, I wished I had the energy to start over with scripting. The compiler could be a bit slower without causing problems, but then it could be much easier to add new structures.

;) Urs
FWIW, I would rather you spent your time on other things (Uhbik, etc). But I do appreciate answers to these questions, and I have a few more (simple) questions coming.

Okay, there is one scripting bug that would be nice to fix, and I will post about it soon.

Post

Simple Question #3721 - What is the parameter name for Attack Smoothing On/Off as found under the Global/FX GUI tab? VoiceCircuit.AttackSmooth does not work (and I tried a few other guesses). :shrug:

Post

billstei wrote:Simple Question #3721 - What is the parameter name for Attack Smoothing On/Off as found under the Global/FX GUI tab? VoiceCircuit.AttackSmooth does not work (and I tried a few other guesses). :shrug:
Try VoiceMix.AttackSmooth - it's got nothing to do with the envelopes. It's merely a little ramp (16 samples or so) on the voices output volume. It prevents some sounds from clicking. This can however swallow ultra short attacks, That's why you can turn it off.

Post

Simple Question #3722 - What is VoiceCircuit.Voicing ?

Post

billstei wrote:Simple Question #3722 - What is VoiceCircuit.Voicing ?
A relic from Zebra 1.5 - back then single, dual and quad were on voice level, not on osc level. This parameter does nothing :oops:

Post

Urs wrote:
billstei wrote:Simple Question #3721 - What is the parameter name for Attack Smoothing On/Off as found under the Global/FX GUI tab? VoiceCircuit.AttackSmooth does not work (and I tried a few other guesses). :shrug:
Try VoiceMix.AttackSmooth - it's got nothing to do with the envelopes. It's merely a little ramp (16 samples or so) on the voices output volume. It prevents some sounds from clicking. This can however swallow ultra short attacks, That's why you can turn it off.
:tu: VoiceMix.AttackSmooth is correct.

Post

Simple Question #3723 - Is there a way to tell if a module is both present and/or enabled in the grid? Something like: Oscillator1.IsActive() (returning a boolean).

Post

billstei wrote:Simple Question #3723 - Is there a way to tell if a module is both present and/or enabled in the grid? Something like: Oscillator1.IsActive() (returning a boolean).

Code: Select all

int moduleID = Global.Parameter[ target ].moduleID;
            
if ( Module[ moduleID ].active )
{
   ...
}
thus (hopefully)

Code: Select all

      
if ( Oscillator[ x ].active )
{
   ...
}
or

Code: Select all

      
if ( Oscillator1.active )
{
   ...
}
or even

Code: Select all

      
if ( Selected.active ) // in Module presets
{
   ...
}

Post

Looks good, and from what I can tell by testing this, any module not on the grid is by default Not Active.

Post

Simple Question #3724 - Global.Parameter[1203] is the Bypass On/Off for the Effects grid. What is the class name that it properly belongs to? My wrong guesses: Core.Bypass, VoiceMix.Bypass, VoiceCircuit.Bypass, Master.Bypass .

Post Reply

Return to “u-he”