Landscape deformation based on vertex paint on runtime

My goal is to have an event driven landscape deformation based on passing vertex information to the landscape material as a some sort of a parameter to offset verts to a set position.

I want in my game that explosions would do some deformations to the landscape.

But im not sure how to link or set that for example if a character would shoot and the place where the explosive would hit an grayscale texture would deform localy landscape. I hand an idea to somehow use brush size and falloff to offset vertex of the material on runtime.
Or maybe use a saved alpha-greyscaled texture that somehow use it as a decal to point out the size, location and the way landscape should be deformed…

Something like this:

starting 2:35 - the way how the unit explodes deforms locally terrain.

Please give a hint what is the proper way of handling this task!