Not sure if this is helpful, but this is the general battle guide I am using in Fallen Hero, my supervillain game, which has just got through a very fight heavy part of the game.
1: Pre-battle.
These are the events prior to the battle. Sometimes the MC’s choices there can lead to them getting advantages/disadvantages as the fight opens. For example, if you are prone to getting distracted by monologuing, it is easier to get the drop on you and get the first strike in.If you proceed carefully, you will have less risk of an ambush, but a greater chance of people catching up and so on.
2:Style.
Now the fight have started. Perhaps there was already a blow struck, perhaps it starts from a blank slate. The first choice I have the MC make here determines the style of the rest of the battle. For example, the MC has a suit which can have a combination of two out of four advantages: Speed/strength/armor/telepathy booster. In addition, special circumstances might come into the fight, for example if you are fighting your nemesis of which you have specific knowledge. I let the MC pick what tactic they use, and this will lead to how I write the flavor text. For example, picking a SpeedFight will lead to a fast and furious battle, while relying on ArmorFight will be a different beast. Depending on your opponent, these might be variously effective. There’s some flavor text going back and forth, maybe some damage taken to either party, and then it’s the next choice.
3: Stats.
Now that I have the flavor of the fight, I pause at a pivotal moment, so the MC can decide on how to proceed.
This all depends on what kind of stats you have, I have no fighting stats, but I do have personality stats.
For example, for telepathy I have 2 stats, one determines your strength, one determines your subtlety. If you choose to try some fiddly manipulations, you’d better have some good subtlety to pull it off. Of course some tactics might be better than others, so depending on the fight it might still be smarter to try with your lower stats just because the threshold for success might be lower.
In a physical fight, I have the cautious/daring stat to determine how big risks you like to take. If you choose a risky maneuver with a good payoff, it will be easier to pull off if you have high daring. Otherwise you might hesitate at a pivotal moment, and fail. Conversely, if you hang back and wait for your opening, having a high daring might screw you over because you simply don’t have the patience to wait for your shot. That being said, sometimes you can reward a MC acting against type, just because doing so might surprise your opponent if they know you well.¨
This is also the stage where you can have the option to use one-shot advantages/items/information which you have gained earlier in the game.
Another thing which can be done here is to try to switch the playing field entirely, running from a fight, going for a telepathic attack in the middle of a physical fight and so on.
4: Results
Now I describe the result of the attack, which will depend on the stats as well. For example, let’s say someone choose a SpeedFight, and then manages to hit with a high daring attack. If they also have high strength, I will describe the result differently than if they had high armor. If this is meant to be a longer fight, I try to describe the result so they will know if their tactic was a good bet or not, or of they want to switch tactics.
5: Repeat as needed
Step 3-4 can be repeated as many times as you want to, depending on how much you write for them, and how you want it to proceed.
6: Denouement
Now the battle have been decided/won/lost and it is time to make it matter. There’s no use having fights if you don’t get to feel the result. Did you win? Give the MC a chance to gloat if they want to, kick someone when they’re down, make sure their opponent is okay or otherwise feel that they really have won. Did things go badly? Then have the denouement be about trying to escape, beg for mercy, have allies come in and help or just accept your fate with grace. This is THE most important part of a fight in my opinion, at least in the bigger ones that truly matters.
My standard fight path:
In general I start with the following structure for a fight:
Pre --> Style --> Stat —> advantage/disadvantage result --> Stat --> Perfect/good/meh/poor final result.
So, if you get an advantage after the first attack you can get a good/poor result. If you get a disadvantage you can get a meh/poor one. And these will flavor how I write the denouement.
This can all be written as complicated as I want them too, I have a lot of minor variables in each step as well, everything from the personality/relationships of the MC to style choices like if they have a cape or not.
In conclusion: My goal for the fight is that the player never should need to look at their stats, they should just play their character from the heart and see where it takes them.