Can I have an Event Dispatcher from the Level talk to every actor at once?

The function GetAllActorsWithInterface can be costly if you have a large amount of actors in the level. A more efficient way would be using a “dispatcher” actor, which contains many event dispatchers used for level->actor/actor->level communication and is placed on your level. Actors then use GetAllActorsOfclass to get a reference to the dispatcher and can subscribe only to the events they are interested in. The level blueprint can also subscribe to events so you can have actor->level communication.