ActiveRole considered Harmful
Description
The idea of an active role is not needed, and its presence represent one additional thing for users to learn and manage when using the CPR foundry module. It also represents work for the dev team to maintain when they could be drinking. Removing active role will make the system easier for players to use and devs to maintain.
ActiveRole comes in two flavors. We consider the case against each flavor separately.
- The NetActiveRole is used by the system to find the actors Interface rank when rolling for actions in a NetArchitecture. Currently, this value must be explict set, even though there the only rules legal option is to set it to the Netrunner role. It would simplify things for users if the system simple used the correct value automatically, without requiring users to configure it manual before it worked.
The argument for requiring the user to set it, rather than automatically picking the NetRunner role, is that homebrew roles might like to set something different. Players that have homebrew that adjusts the interface ability, or provides an alternative for net actions, can add a Netrunner role with the appropriate rank. The dialog box on the roll offers another avenue for making adjustments.
- The ActiveRole is an entirely cosmetic option, allowing for the promient display of one, and only one, of the characters roles on the left hand pane. This cosmetic option consumes a significant amount of code and translation effort, which must be maintained and kept up to date.
Characters may have more than one role, and if they do, the the role box is misleading. Worse, it is not large enough to accurate display multiple roles (without playing games with font size). If some kind of role summary is desired at the top level of the character sheet, the better option would be have a free form "title" field. Characters could then be labeled as "Solo" or "Netrunner" or "Nomad/Fixer" or "Street Samurai", etc as the player preferred.
Proposed feature
Auto select the Netrunner role for actions that require the Interface ability. Delete the Role box from the character sheet. Cleanup all the code related to active role.
PR to implement => https://gitlab.com/JasonAlanTerry/fvtt-cyberpunk-red-core/-/merge_requests/650