If you know the code or have a better built-in event to use, please tell me. I do not know how to set up such a custom event that could trigger when a specific module is installed on a vehicle, at least not to my current knowledge of Factorio API.
What I meant about UPS, is that the process of "loop through most of the equipment modules inside grid, upon impact on every rock" is not UPS-efficient.
For the vehicle damage thing...
Tank over trees does not take health reduction. (Still take shield damage, but there are no events triggered for pure shield damage, so nothing I can do.)
Car over trees take damage. Yes, I know that, but it makes the car too good if it is as powerful as tanks. I do not like buffing the car that much, at least when tanks can already do the job without damage.
For bots flying out to repair, do you know there is a "toggle personal roboport" shortcut?
I do not know ANY scripts or events to "remove.event(vehicle.collision.damage)" or prevent the damage. If it can be so easily done, I would have already done that. Or again, are you knowing such code about Factorio API that I do not know yet?