You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Ever since Long War 2 the modding community standard for custom classes has shifted to 8 ranks with 3 abilities per rank. While more than 2 abilities per rank are fairly easily implemented more than 7 ranks is not.
Ideally 7 rank soldiers and soldiers with higher amount of ranks should peacefully coexist. But the moment you implement an experience table rank entry for 8 or higher things go wonky. And the solutions tend to live in XComGameState_Unit.
I'm not aware enough of the codebase as a whole go give comprehensive suggestions for what to do here but I've got some starting points.
First and most obvious:
2:57 PM] robojumper: Right, `GET_MAX_RANK is global for everyone
[2:58 PM] robojumper: X2SoldierClassTemplate has a function GetMaxConfiguredRank()
[2:58 PM] robojumper: We should probably replace calls to `GET_MAX_RANK with those
[2:59 PM] robojumper: Care to open an issue in the HL?
Second:
When calling a XComGameState_Unit.GetRankAbilities(int Rank) for an unavailable rank it returns the squaddy rank Abilities. I suggest it instead return EmptyRankAbilities.
The text was updated successfully, but these errors were encountered:
Ever since Long War 2 the modding community standard for custom classes has shifted to 8 ranks with 3 abilities per rank. While more than 2 abilities per rank are fairly easily implemented more than 7 ranks is not.
Ideally 7 rank soldiers and soldiers with higher amount of ranks should peacefully coexist. But the moment you implement an experience table rank entry for 8 or higher things go wonky. And the solutions tend to live in XComGameState_Unit.
I'm not aware enough of the codebase as a whole go give comprehensive suggestions for what to do here but I've got some starting points.
First and most obvious:
Second:
When calling a XComGameState_Unit.GetRankAbilities(int Rank) for an unavailable rank it returns the squaddy rank Abilities. I suggest it instead return EmptyRankAbilities.
The text was updated successfully, but these errors were encountered: