[Standard boilerplate that the following is merely a suggestion and is in no way intended to be an assertion that this is how you should run a game]
The concept is simple: in order to give your players incentive to do something besides “I hit him again”, tell the players what the monster is about to do a turn in advance, so that they can plan for and react to it.
If your players are facing, say, a Lich, in most d20 games that Lich is going to be able to cast a spell with a Standard Action sight unseen and blast any given target with some spell damage on its turn.
In your specific game, there might be abilities that will let the players proactively stop the Lich, or let them take a reaction to stop the spell once its cast (i.e., Counterspell), but for the most part players tend to not do anything more interesting than kill whatever looks like the biggest or most immediate threat because whatever a monster does is always instantaneous and hidden behind an impenetrable veil of your own unspoken intentions.
But what if you told the players that the Cleric was going to get the next Frostbolt to the face?
What if you had a bunch of goblin archers on a balcony and you declared that they were starting to aim for the Wizard? Might that not encourage the Fighter to rush up the stairs for the sake of getting in melee range of the archers?
What if you had a brutish minotaur and you declared that it was rearing up and would charge in this direction on its turn?
This is not giving the game away, because if the Cleric runs around a corner to break LOS with the Lich, someone else still draws fire (but the party can exert a measure of control over who that is!). The Fighter can still take an opportunity attack from the melee goblin standing at the foot of the stairs. The players might know where the minotaur is going, but that doesn’t mean clearing out of its way doesn’t have its own tradeoffs.
Or to put it another way, if you never revealed the raid boss doing a Whirlwind every 30 seconds, the players would never react to it until they figured it out from trial-and-error. But we typically don’t do the whole “you failed, run the exact fight over again” thing in a TRPG, so I’m proposing that you expose this information to the players so that they’ll do something with it.
They can still fail because attacks and spellcasts are still subject to the whim of the dice, and depending on how precise or how vague your declarations are they might not react the way you expect them to, but at least this way they have more to work with than just standing still and bashing on the enemy until someone keels over.
This also gives you a bit of a psychological out when it comes to playing to win. The archers are going to shoot the Wizard because they’re the biggest threat, but since you tipped off the players that you’re about to do it, they’re not going to feel cheated or dicked-over (as much) if you already gave them an opportunity to stop it and they didn’t (or it didn’t work).
This also works well for “save-or-die” type spells. Hitting a player with Phantasmal Killer on round 2 with zero warning is going to feel cheap as hell, but if the players know that the Phantasmal Killer is coming, then there’s tension and a sense of desperation as player 1 tries to stop it and fails, and player 2 tries to stop it and fails, and now we’re down to player 3.