mirror of
https://github.com/WWhiteDreamProject/wwdpublic.git
synced 2026-04-18 05:59:03 +03:00
# Description This PR gently reworks the traits and loadouts system to where both systems have a new Datafield for "Slots", which declares how many selections the trait/loadout occupies. The actual implementation of these differs between the two, since Traits has an actual selection limit, while Loadouts do not(but instead respect CharacterItemGroups). In both cases, Slots are defaulted to 1, and can be omitted in most cases. Where this shines particularly is in Traits, where it serves as a new second line for trait balancing. Traits such as Accents, which are completely worthless, otherwise would never be taken at all since they compete with other traits for Opportunity Cost. Conversely, there's only so many points we can increase a powerful trait to, (literally, they cannot cost more than the current trait maximum). So traits can be made to occupy >1 slot selections. Slots can be defined for Item Groups as well, which is what this datafield does on Loadouts, which both of these share. But since Traits have two different places that their slots are used, I've opted to create a split slot datafield for Traits. To simplify things, their ItemGroupSlots defaults to their Slots datafield, but can be independently changed as desired. <details><summary><h1>Media</h1></summary> <p> https://github.com/user-attachments/assets/99dddfe1-76d2-445a-a94a-1998d3d39c51 </p> </details> # Changelog 🆑 - tweak: Accents no longer cost trait slots. (cherry picked from commit d760c5813d5dd29b3eddebd8d671bf3ed6e86b3e)