Maybe it is a good idea to start up an item with some feedback from a user point of view regarding to the macro page design.
After one month, and after a lot of hours of experementing with it, i can say that it is perfectly possible to make your own macro page designs.
To add to this: i think H6 more or less completely opens up the Steinberg engines which is fantastic.
But i did encouter some serious pitfalls and had quite some stressy moments, just because the workflow is very strict, and if you do not respect the workflow the result is simple: you have no result.
That being said that i am not someone who is reading manuals from a to z.
But if you, like me, are new to synth design, in my humble opinion it is just not possible to understand it without help files.
What is also important: the help files are NOT in the manual.
Steinberg has set up quite a good help center and when making macro pages reading these pages is a must.
Certainly in the beginning, having permanent access to these pages is almost a necessity.
In an ideal situation you have a second laptop/computer next to your design computer that is there for consultation of the online help files.
Next pitfall for me were the value boxes that each item on the macro has.
These value boxes are most of the time not “values” as we know it from the natural world, but they are “references” to a certain element in the tree.
For starters it is easy to understand what to do once you know what these value field are expected to contain.
e.g. you have a program called program 1, one layer called layer 1, one zone alled zone 1, and one bus alled bus 1
The difficulty is that programs, layers and zones all can have macro pages and maybe you werd making a macro at the layer level… But if you want a HSSE preset layer as an endresult the macro page must be made at the program level, or once you convert your program to a HSSE layer and starting to build a library: the end result will be “no macro page found”. (there is not much on these things in the help files, and this can be quite confusing in the beginning)
SO in our example we start building a template at the program level.
To access a certain template (f.e. a knob H6) you need to “adress” it to the correct position.
Once you did this succesfully it is very easy in fact, but it is seeing it work for the first time that is essential.
Adressing is simple: You use the “@”, then in our case we just take the first item “0”, and then we give the name of the item
Then a correct adres looks like this: @0:zone 1 or @0:bus 1.
What it says is: go the the first item in the tree with the name zone 1 or bus1.
But if you make a HSSE layer then your macro is made one level higher and the adressing is as follows:
@0:layer 1/@0:zone 1 or @0:layer 1/@0:bus 1
So you must “walk” trough the tree with your “adress” untill you reach the level where the item is you want to connect.
So it is very easy, but it is essential to make the adres troughout the entire tree untill you reach the level where the named item is place in.
This was a very heavy pitfall for me in fact.
Nex pitfall were the id’s. Accessing certain functions do expect certain ID’s to be added.
E.g. accessing visual playback of a waveform with an engine MUST HAVE ID:a0064 attached to it.
The correct adress is in our example:
@0:layer 1/@0:zone 1/@ID:a0064
Do something different, and it doesn’t work.
Another thing is that once an ID is correctly set, the ID is not visible anymore, but instead a parameter name and name"adressing"is given.
This is very weird ar first, but no fear. Just copy and past, and voila there are those ID’s again.
Also a pitfall.
These were some of the most important issues i encountered.
Once you see the meaning of those things, the rest is quite simple (for macro building, scripting is something different)
So, FWIW some ideas and feedback of where you could face trouble in quickly getting around the macro page designer.
Maybe this is interesting for someone to read.