Alright, so you've new copied the raLayHnd racial special, but you probably can't save it. Instead you'll have to make a new special, call it "raLayHnd2", and then copy all the stuff from the original.
Step 1:
So now in the editor, you've got the old version, and your new version, switch between them copying things until they are exactly the same except for their name.
Step 2:
Delete the old one, since your new one is what we will modify.
Step 3:
You should have 2 Eval Scripts, we will call them A and B.
Script A begins like this....
~the racial version uses abValue3 to store the HD of the creature (max 20)
Script B begins like this....
~ If we're not shown, just get out now
Script A sets the value of the "abValue3" field, and Script B uses the "abValue3" field to set the number of uses the ability has, how many dice of damage each heals, and the name/summary of the power.
You need to change Script A, so that the master's levels count to increase the power of the Lay on Hands. So let's look at Script A closer. This is the important part that sets abValue3 field:
field[abValue3].value += minimum(hero.findchild[BaseRace].field[rHDFinal].value, 20)
Translated into plain English, that line means "Add to the abValue3 field either the final racial HD value of our race or 20, whichever is lower". If I understand correctly, what you want to do is add the master's total level to that. You can do that by using the "master" transition I mentioned before, like so:
~ If we are a minion (that is, a familiar)
if (hero.isminion <> 0) then
~ Then add our master's level to the abValue3 field.
field[abValue3].value += master.child[Totals].field[tLevel].value
endif
If you want to add the master's level AND the racial HD to Lay on Hands, put that code right after "field[abValue3].value += minimum(hero.findchild[BaseRace].field[rHDFinal].value, 20)" .
If you want to add the master's level ONLY, delete "field[abValue3].value += minimum(hero.findchild[BaseRace].field[rHDFinal].value, 20)" and put that code where it used to be.
Step 4:
But there is a problem. Look at the top left of Script A, see where it says Phase : PreLevels ? If the script tries to look at the masters levels, it will come up 0, because PreLevels is before any levels have been added. Look at the Phase in Script B, that says Post Attribute, so Script A has to be before that, right?
I think the best Phase for this would be PostLevels, so change Script A to that.
Step 5:
Now go back to the Silvanshee race you made, hit the bootstrap button and look for the raLayHnd. Erase that and type in the unique ID for your new version "raLayHnd2".
Step 6:
Save the file, and reload the system. Either with ctrl-R or close HL and reopen it.
Step 7:
Testing! Make a new character, give him your new Silvanshee as a familiar, add however many levels (try 10), and check out the Lay on Hands on the Silvanshee. Did it increase? Add or subtract levels and make sure it changes as expected. If not, revise Script A or Script B accordingly.