Can confirm it works without crashing the editor
void ACustomVolume::BeginPlay() {
Super::BeginPlay();
FActorSpawnParameters p;
UActorFactory* PPFactory = GEditor->FindActorFactoryByClassForActorClass(UActorFactoryBoxVolume::StaticClass(), APostProcessVolume::StaticClass());
PostProcessVolume = (APostProcessVolume*) PPFactory->CreateActor(APostProcessVolume::StaticClass(), GetLevel(), FTransform::Identity, p);
PostProcessVolume->SetActorHiddenInGame(false);
}
Spawns a post process volume into the editor on play.
It has a name and transform but the brush component for some reason is not visible in the viewport. Will have to feed it a post process material to see if it changes the scene visually.
Though I did find another post regarding the same subject and the staff replied that stuff like post processing volumes should be made in the editor with the normal tools.