How to scale objects vertically depending on proximity to an empty?
Can do it using a &quot;shrinkwrap&quot; modifier driven by a &quot;vertex weight proximity&quot; modifier.

Each cube is a separate object like this with a vertex group (only the top vertices are attached to this group with a 0 value):

Each cube as the following modifiers:


&quot;vertex weight proximity&quot; that influences the vertex group values, using the empty proximity in &quot;object&quot; proximity (so that all vertices of the group will have the same weight)

&quot;shrinkwrap&quot; to a plane placed above in &quot;project&quot; mode along Z. Tune the &quot;offset&quot; value to vary the height influence


If you need to set the modifiers to several selected objects from the active one, use CtrlL then &quot;modifiers&quot;.