Change/Create Public variables in runtime

Ah, I think I see what you are asking for. My apologies for the confusion.

In C++, object properties(variables) can go through specialized code that shows/hides/re-arranges them based on whatever logic you want. All those variables on the Camera Actor were always there, they’re just hidden based on what value you set your Projection Mode to.

However, there isn’t anything like that for Blueprints.

You could probably automate the creation of a class/detail layout customization, but you’d need some intermediate data structure (like an Excel spread sheet or simple text file using some custom scripting language), and then a tool that runs and spits out all the C++ classes (which can be Blueprints) when you build the game. Do-able, but it would require some hefty C++ work and you’d lose one of the main benefits of Blueprints which is you don’t have to recompile the project when you add a new Blueprint variable.