The Zebra Scripting Thread

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

Post

another quick hint: Mac users may want to open Console.app - it shows errors, pseudo-code of the compiled bytecode and maybe some other interesting things (execution time...)

Post

Great! Thanks for that - should be plenty to get started with... ;)
Image

Post

#defaults=no
#cm=OSC
Wave=2
<?

This must be confirmed by Urs but:

Parameter Wave:

0 = geomorph
1 = spectromorph
2 = geoblend
3 = spectroblend

Replicator trying to get the waveform madness out of he's head :)

Cheers

Post

replicator wrote:This must be confirmed by Urs but:
Looks correct!

Actually save a .h2p extended preset... combining scripts with #cm=module followed by parameter initializations is quite handy ;)

Post

Urs wrote:Actually save a .h2p extended preset... combining scripts with #cm=module followed by parameter initializations is quite handy ;)
This is very useful and interesting :) I will try to experiment with some of the parameters, guess I have to learn more about scripting now..

Cheers

Replicator

Post

replicator wrote:
Urs wrote:Actually save a .h2p extended preset... combining scripts with #cm=module followed by parameter initializations is quite handy ;)
This is very useful and interesting :) I will try to experiment with some of the parameters, guess I have to learn more about scripting now...
Whoever manages to reverse-engineer the complete Zscript might like to document all their findings and publish it somewhere :wink:

Otherwise I'll just wait for docs from Urs. Could take a few months, but it will be worth it :!:

Post

Another nice use for a script is to take a preset, and convert all VCF1 instances into an XFM1 with apprpriate filter type, and set all VCF1 modulation sources to the corresponding XFM1 parameters - and the same for VCF2.

It would be a nice quick way of exchanging filter modules to guage their effect without having to work out what's modulating the filter and reassign all that stuff.

How are the scripint docs coming along Urs? - is it something you're actively working on or have they been prempted for other more important stuff? Not chasing or anything, just an innocent question ;) (Yeah, I know you *love* questions that begin with "When..."... :D
Image

Post

When... yeah... when...

next week is Musikmesse... havn't even started MFM2 pre-order...

Post

No worries, chap! 8)
Image

Post

Been almost a year since the last post here... Urs has finally opened a discussion space for 3rd party developers, where inner details of the Zebra script language are being published / discussed. So if programmers here have ideas for new skins or scriptable functions, take a look at http://www.u-he.com/scripting/

Not much info available yet, but it's certainly a start! :shock:

Post

I'm going to take a crack at this. What would you like to see in an oscillator randomizer?

Post

kuniklo wrote:I'm going to take a crack at this. What would you like to see in an oscillator randomizer?
I would actually prefer ANY other kind of "-izer" over a randomizer! But that's just me (is it?)

Post

Well, a really dumb oscillator scrambler is easy:

Code: Select all

<?

for (int i = 1; i <= 4; i++) {
    Oscillator[i].Tune = rand(Oscillator[i].Tune.min, Oscillator[i].Tune.max);
    Oscillator[i].WaveWarp = rand(Oscillator[i].WaveWarp.min, Oscillator[i].WaveWarp.max);
    Oscillator[i].Detune = rand(Oscillator[i].Detune.min, Oscillator[i].Detune.max);
    Oscillator[i].Vibrato = rand(Oscillator[i].Vibrato.min, Oscillator[i].Vibrato.max);
    Oscillator[i].PolyWave = rand(0, 3);
    Oscillator[i].SyncTune = rand(0, 36);
    Oscillator[i].Phase = rand(0, 100);
}

?>
A couple of stumbling blocks are obvious here:
1. Functions would be very handy for this kind of thing. Are they supported?
2. Some of the parameters have spaces in their names, like "SpectraFX1 Val". How to address these directly?

Post

Howard wrote:
kuniklo wrote:I'm going to take a crack at this. What would you like to see in an oscillator randomizer?
I would actually prefer ANY other kind of "-izer" over a randomizer! But that's just me (is it?)
Sure. I just figure writing randomizers is a good way to figure out how this stuff works.

What kinds of -izers could we do?

Post

kuniklo wrote:What kinds of -izers could we do?
I really don't know what is possible, but I guess "quite a lot"! The problem is, there's not nearly enough documentation about the script language for me to even consider trying. I wish... but Urs has more important things to do :(

Post Reply

Return to “u-he”