It actually doesn’t matter where you’d do this, I mean as long as it works for you.
In general UE is designed to have GameMode class handle the rules of the game, so that would be a good choise to make a battle system in, for a single player game. In a multiplayer you’d need to use GameState instead, cause only one GameMode exists and runs on the server, and clients don’t have direct access.
Useful video: - YouTube
You could also make a new class to handle the battle system, so it’s up to you to decide what suits you best.