Just thinking out loud again, but I think that for #1 you could put in the condition line:
(getpos unitname) select 2 <=1
so when then unit is less than 1 meter high, the trigger will fire.
As for #2, if the artillery (or some object) damage is greater than say .5, then trigger fires.
As I am still at work, all answer need to be tested in game but I hope that this helps.
Wadmann