Is it a good practice to use empty Actor as a manager?

I need a class which will act kind of a manage of some actors. Is it a good practice to create Actor to handle that? It will not be used for rendering but just for controlling some higher level logic in my app. Need something similar to singleton but do not think I need to use GameMode or GameInstance

I don’t see a problem with it. I use an actor which handles mission objectives in a level.

There are a couple of options and only you can decide what’s best for your purpose:

GameInstance - exists from start to finish of the process. GameInstance makes sense if you need this EVERYWHERE - including the main menu.

GameMode - if your game is multiplayer, then GameMode is the best place, with the manager’s exposed state in GameState. This option is better if your players will be negatively affected by cheating.

Level Blueprint - If your manager behaves differently for each level this is an option. Harder to reuse.

Actor - Simplest thing that could possibly work.

It is not multiplayer (even it is not a game but a simulation)

I need to reuse in different maps so Level Blueprint doesn’t seem to be an option.

Was wondering if is good practice in UE to use Actor to act as a manager

do note that GameInstance does not have a tick API which I learned the hard way thinking it would. You can hook into ticks using some tricks though.