>>50516165Flash is needed for 1 mandatory area in SS only
Cut is needed once
Waterfall is needed once
Whirlpool is needed once in HG and twice in SS
You can deposit a single Pokemon and take one out of the box for those mandatory areas if it's really that bad to you.
Strength, Fly and Surf are good in game.
Rock Climb is post game only and only after 16 badges
In 99% of cases, HM are needed for optional areas where you can swap your team around accordingly. Even if they weren't, most Pokemon aren't learning 4 great moves ingame anyway so throwing away one for an HM isn't a problem. Like, what the fuck are you teaching Meganium where you can't put Cut on it? It doesn't learn Body Slam until super late in Gen 4. Strength? You don't get Strength until long after you are forced to use Cut to proceed.