Python: Setting a Blueprint Property's "Type"

Hello and thanks for your time!

I’m trying to find a way using python to change the TYPE of a property. To be clearer I want to do the equivalent of this action:


For example changing the Property from an “Integer” to a “float”.

I’d love to be able to do this with Python, however, if it’s not possible I’ll explain the problem I’m trying to work around in hope of a solution:

My game has databases which hold UObject assets in blueprint exposed variables. Here is an example of my hero database:

The issue is that sometimes changes made on the C++ side of the GE_HeroData cause the properties to all revert to UObject like this:

Once this happens I have to manually click each one and set them to their correct class. This will not be sustainable for me because other databases (such as items) have over 1500 properties in them, which is hours of tedious clicking to repair if they get reset.


As a side note, I don’t want to use the engine asset system or UDatatable for my databases because it makes my project vulnerable to typos of the FName key which can appear 100s of times in various graphs / data and there’s no way to search and replace for batch changes or corrections. Many of my Data objects require inheritance as well.