assign only existing modulations in the matrix

The main reason for the ui script is to handle the destinations related to pitch. So you can set it in semitones.

Does that mean it is not necessary?

Connect Modulation Depth parameter to a knob or slider of macro page. The range is from -100 to +100. When you select Pitch as modulation destination then in zone editor you can set the Modulation Depth in semitones but the macro page knob will still show the value as percentage. You can also check this in parameter list where it’s also set as percentage. To overcome this there is a UI script which converts the percentage to semitones and vice versa if the destination is related to pitch.

So do you need the UI script? No, if you don’t use pitch as modulation destination or don’t mind setting it as percentage.

Here’s a preset with both UI script and program tree script for modulation matrix. It’s based on Hot Brass.
Modulation Matrix Template.zip (10.7 KB)