I don’t -think- ( without testing ) that streaming is affected by pausing, because it’s asynchronous, but it does need to be called from something that ticks during pause, like the game instance.
Either that or, unpause briefly, start the stream, and pause again.
Another option ( I use ), is to not pause the game, but just hold the player still and put up a blurring widget ( Loading… ) until the level has streamed.
If you’re using a blueprint, the Load Stream Level node will continue when it’s done loading if you set it to block on load. My guess is that pausing pauses latent blueprint actions. But even then, I don’t think it returns when the sub level is visible, it returns when the call is done. Making the level visible takes many many frames after that.
In C++, you can bind an event to OnLevelShown. But in a blueprint, they don’t give you access to the ULevelStreamingDynamic instance so you don’t have the same kind of control. If you have a project that allows C++, I can provide you a function where you can give it an event or implement a function in the BP when a level is done. This sub forum doesn’t seem to allow posting formatted code… likely because it’s the BP only forum.