Additional notes
Current HP is stored in actor.data.data.HP.value
Max HP is stored in actor.data.data.HP.max
There is no single location where damage is applied. You can only tell if something is damaged if 'value' is less than 'max'.
You might want to take a look at Drag Ruler implementation (https://foundryvtt.com/packages/drag-ruler). Systems just need to create a subclass and then register their subclass during a startup hook:
Hooks.once("dragRuler.ready", (SpeedProvider) => {
class FictionalGameSystemSpeedProvider extends SpeedProvider {
get colors() {
...
If you could implement something like that, you could push off the system integration to the system devs themselves.
BTW, Very cool work (yet again). Man, you write great stuff.
What system would you like blood-n-guts to support? GURPS: https://foundryvtt.com/packages/gurps
Provide a link to the system's repo https://github.com/crnormand/gurps
Additional notes Current HP is stored in actor.data.data.HP.value Max HP is stored in actor.data.data.HP.max There is no single location where damage is applied. You can only tell if something is damaged if 'value' is less than 'max'.
You might want to take a look at Drag Ruler implementation (https://foundryvtt.com/packages/drag-ruler). Systems just need to create a subclass and then register their subclass during a startup hook:
If you could implement something like that, you could push off the system integration to the system devs themselves.
BTW, Very cool work (yet again). Man, you write great stuff.