Closed philote closed 2 months ago
Paraphrasing myself on Discord DMs:
The system assumes the playbook
property of attributes is either exclusive to a single playbook or common to all playbooks, so having an empty feature shouldn't be happening, similar to a misconfiguration.
With that said, it is clear there is middle-ground where an attribute might be common to some playbooks and not all of them, so I'll introduce a change to allow the playbook
property to also be an array, which should make it easier to filter out attributes that aren't common to all playbooks.
Implementation: TOML
[character.attributes.foo]
playbook = ["bar", "test"]
Javascript
// game.pbta.sheetConfig
character = {
attributes: {
foo: {
playbook: ["bar", "test"]
}
}
}
Currently Attribute grant values are set when a playbook is added to the actor sheet but not unset when it is removed. This leads to playbook specific data lingering on the playbook if you do not add a new playbook or the new playbook specifically does not grant a value for that attribute.
Example: Playbook 1 has attr1 with value "test" Playbook 2 has attr1 with value unset
If you add playbook1 to the actor sheet "test" into the variable 'attr1' then you switch to playbook2 -> on the actor sheet: