Splitting bushes into “large bush” and “small bush” would help too.
Large bushes would be few and far between in the “civilized wild” (aka the fields outside a city), more common in forests (to simulate ground cover) and THE bushes that are chosen to be landscaping/topiary around homes and businesses. Big thick shrubs that you would normally walk around in real life.
Small bushes would be, well, small. You can step on them/through them without too much issue. Some slow-down, but not the “I’m trapped in a shrubbery” thing we have now.
Hell, you could even make a 3rd “giant bush” that blocks line-of-sight for big gardens or those old folks at the end of the street that made a huge hedge-wall/maze to keep out Lookie-Lous.
As for the main discussion, the “you smashed the ____” is actually a nice idea for pretty much ALL things where you’re smacking a zombie on top of something. Nice. I could very easily see missing a zombie and smashing the fender of my car, or the tabletop it is crawling over (in addition to crushing a chunk of shrub).
… and, frankly, when a “strategy” (used very loosely) becomes THE ONLY strategy in a game, something is wrong. When an action is so profoundly and perfectly successful that everyone does it, it obviously needs a rebalance.
Things like … if zombie dogs run you down and the ONLY way to win is through shrub-warfare … then maybe they would need to be rebalanced afterwards too. Balancing things is a big process, and usually fixing one glaring error shows you several more… it ripples, and you adjust things as you go. In the end the whole game is tighter and more fun (or Fun!).
-> … and another strategy I just thought of to use instead of shrubs. Pits. Dig a pit, then it makes sense if crap falls in it and can’t get out while you wack it. Plus, it requires you actually setting a trap scenario, instead of just literally waiting next to a hedge for an hour while an impossibly large pile of corpses fills the square.