Cause:
Enforcer's Skills and SkillFamilies are not named, causing them to not save in the UserProfile correctly. They're recorded as having the SkillFamily name "" and skillname "" (both blank).
(The XML file is all one line, I indented it in this comparison so it's not difficult to understand).
Normal Families are saved as (For Example, Artificer):
The game is actually saving it correctly. SkillFamily "" and SkillName "" are getting stored.
The issue is that their names aren't changed. Turns out that for a SkillDef, the skillName and the name are pretty much seperate.
So I added
(skillDef as ScriptableObject).name = skillDef.skillName;
to RegisterSkillDef so that it auto names the skills (simply skillDef.name is obsoleted due to allocations).
For the SkillFamilies, I did basically the same thing as a simple adjustment due to me being unfamiliar with the codebase (as in preventing me from naming each skillFamily as like EnforcerPrimary EnforcerSecondary, you can do this simple too by using a switch case and a modulus; I didn't because it felt unneeded for this quick fix)
Cause: Enforcer's Skills and SkillFamilies are not named, causing them to not save in the UserProfile correctly. They're recorded as having the SkillFamily name "" and skillname "" (both blank).
(The XML file is all one line, I indented it in this comparison so it's not difficult to understand). Normal Families are saved as (For Example, Artificer):
THUNDERSTORE VERSION:
MY FIX:
Meanwhile, Manipulator by ValeX:
The game is actually saving it correctly. SkillFamily "" and SkillName "" are getting stored. The issue is that their names aren't changed. Turns out that for a SkillDef, the
skillName
and thename
are pretty much seperate. So I addedto
RegisterSkillDef
so that it auto names the skills (simplyskillDef.name
is obsoleted due to allocations). For the SkillFamilies, I did basically the same thing as a simple adjustment due to me being unfamiliar with the codebase (as in preventing me from naming each skillFamily as like EnforcerPrimary EnforcerSecondary, you can do this simple too by using a switch case and a modulus; I didn't because it felt unneeded for this quick fix)