BUG: The MIDI Module Library->Protect Module menu option is not present

Hi Folks,

I’m tying to protect a Lua Script layer and follow the instructions in various parts of the
developer documentation.

On the Protecting Layers page:

It says:

To hide the password in addLayerPassword, you must also protect the script module. See > Managing Script Modules > for details.

And then on the Managing Script Modules page:

It says:

  1. In the Program Tree, right-click the script module that you want to protect.
  2. On the submenu MIDI Module Library, select Protect Module.

But when I try this, the option does not appear - see screenshot.

I’m using Halion 6.1.15 and have looked everywhere for this option and read the help
over and over.

It would appear that it is not currently possible to protect a script layer.

Any assistance would be gratefully received.


For anyone else who is wondering about this, I’ve discovered that the Protect Scripts option is
available in the Library Creator Editor:


It’s not clear to me what the documentation that I linked to above was referring to, but it is good
to know that Script protection is available.

I would still be interested to know if protecting the scripts on a specific layer (rather than
globally) in a manner similar to the documentation linked above were actually possible,
since I think that might suit me better.

Right click the top there where it says “name” in your picture to see the layer protection and toggle where you would like it. Remember to have the password in the beginning of the code or you will lock yourself out of your script. I would suggest creating a duplicate preset as a back up just in case you make an error.

Thanks @abject39, that’s all good for layer protection, which is another option I could use!

I’m still keen to protect just a script on it’s own (like those docs say) if such a thing were possible.

However, between the answer I posted above, and your accurate comment, I do have two viable
options to be going on with.

I would suggest creating a duplicate preset as a back up just in case you make an error.
Indeed - always good advice!

Thanks again,


You should be able to use the protect script option in the library to remove access to the script. Using the tree locks any layer which should include the script if it’s in it. Adding the password to the script will allow access to the script if the script calls for anything outside of the layer (global).

I should mention that protecting the script will stop the user from editing the user script but using the actual lock will prevent the user from even being able to see what is within the layer.

Hi abject39,

Thanks again for your helpful comments. :slight_smile: