The language is Yankes' own, the description of all the functions is in that log output I linked to you.
Yes, I figured that. That's why I asked
What does "muldiv shieldArmor 100 shieldResistCoeff;" mean?
shieldArmor = shieldArmor * 100 / shieldResistCoeff ?
Or shieldResistCoeff = shieldResistCoeff * 100 / shieldArmor ?
It means shieldArmor = shieldArmor * 100 / shieldResistCoeff, all mathematical operations put the output in the first variable.
What about "or eq damaging_type 0 eq damaging_type 9 eq damaging_type 10 eq damaging_type 11;"?
Does or combine all 4 "damaging_type == X" or only the last 2?
How can it tell if it's binary or quaternary?
Boolean operators apply to the whole line, so the next few lines run if the damage type is any of 0, 9, 10, or 11.
What in the script sets the action that triggers the script? Or how is it triggered?
The name of the script sets that, the one you're looking at is "onHit", so it runs whenever a unit is hit.
How can a script check if the item is equipped or the item's position in the inventory?
Position in inventory isn't an available variable (see the log output file), but you can check for whether an item is in one hand or another, or whether the item has an owner (is in some unit's inventory). You also can't search for items in a unit's inventory, only check the hands, or run a script every turn for each item.