I’d never recommend something like this:
Hard referencing a character instance. When they die, the ref becomes invalid. How do you set it? Why not use Get Player Character instead?
a Perception component
This sounds like a great idea. Look up Pawn Sensing.