I looked all over the forums for an answer to this question, but alias, to no avail.
Is it possible to create a shield that absorbs all the damage, even if that attack would normally damage hull? For example, say a siege tank has 1 shield, and an immortal attacks it, dealing 50 damage. All of that damage will take down the shield, but the hull of the tank is completely unscathed.
Yes it is, you have to use a behaviour and use the damage reponse field in the behaviour, then set chance to 1 and set the location field within the damage response to defender, this will cause any damage the unit with the behaviour takes to trigger the ability, then to reduce incoming damage to zero you have two options, within the behaviour response fields there are two fields named "Maximum" and "Modify Fraction", if you set any of these fields to zero, the behaviour response will reduce all incoming damage to zero.
That being said if you want to be a one time only ability, do the following, you can either set the fields "Count (Start)" and "Count (Use)" of the damage response charge section to 1, which makes the behaviour start with one charge and spend 1 after using the damage response, rendering it unable to be used any farther, another option would be to create a remove behabiour effect, select the shield behaviour as the behaviour to be removed under the "Effect: Behaviours" field of the remove behaviour effect and set effect unit to source within the remove behaviour effect, then in the damage response of the shield behaviour locate the field "handled" and add the effect that removes the behaviour.
Also if you want this as an ablity with a cooldown ignore everything in the second paragraph, and go to the "Time Use" field under the cooldown section of the behaviour's damage response, there if you change it from 0 to 30, this will make the damage response to go into a 30 second cooldown after activating, if left at zero the damage response will always reduce to zero any incoming damage.