Perhaps this could help: Either create a function inside the character BP or create a separate BP that casts to the player. Set it to attach to character with whatever offset you deem appropriate. Create a particle effect using rain planes like this one I made ( Realized you can’t see it on a white background, click after “made” and you’ll find it. use it if you like it I guess, increasing the size to X:5000 Y:5000 and setting offset to -10000,+10000 for x and Y tends to give a distant stormy effect) This will simply serve as what you’ll see when you’re inside a location. Set the emitter origin to be far above the player, making sure the emitter lifetime is sufficient to fall under the player no matter what, and set the emitter to die on collision, so you wont see them clipping through caves and stuff.
Then create a rain plane which will also cast to the player’s HUD (I’ve not touched this yet, but I assume this is how it works) and set it to pan -Z with whatever value you want. This should be set to turn off when a line trace from the player cannot touch the skysphere. As gregdumb mentioned.
I should mention that I’ve not tried all of this yet, but this is what I believe needs to be done for the results you want. In the end you’ll have a bulky rain emitter that activates whenever you trigger it, and a rain plane for the character that will activate with it UNLESS a line trace on Z (up) doesn’t end with the skysphere. Alternative to the higher detail rain plane is using a secondary emitter that emits individual rain drops that turns off when it can’t see the sky, but scaled out on x and y so that sprinting doesn’t break the illusion. Resulting in visible rain out of windows and caves, but none inside with you. No flooding the kitchen, dear.