Hi,
I’m currently building a skill system. I have a base class in C++ called skill_base and skill_base_blueprint which provide basic functionality and variables for skills. I then create a child blueprint based on skill_base_blueprint. I’ve also create an Instanced array variable of skill_base type (Skill List) to store my skills in variables.
The problem is whenever i recompile my skills in blueprint, the name in Skill List reset to some weird names and it is not considered as an instance of my skill (Return none) thus doesn’t work in game until i manually reset it to the correct ones.
Before Compile
After Compile
Here is how the skill list array container is created in C++ :
public:
//Skill that is usable by the monster
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Instanced)
TArray<Uskill_base*> skillList;
Besides that, The default value of the skill container (Skill List) doesn’t propagate to child classes even after the child class variable are set to default and base & child class is compiled.
It would be great if someone have a solution for it as every single time it will revert back to default value when i manually set the skill again which i need to individually set different values for different monsters one by one and it is way too tedious.