obsidian-initiative-tracker icon indicating copy to clipboard operation
obsidian-initiative-tracker copied to clipboard

RFC: RPG Systems Expansion

Open valentine195 opened this issue 9 months ago • 4 comments

Currently, the RPG Systems integration only supports calculating difficulty. I would like to significantly expand this feature to support wholesale changes across the plugin. This could include:

Considering

  • [ ] Using a specific tracker layout for a specific system (depends on #276)
  • [ ] Make the Creature class abstract and allow systems to create their own creature version
  • [ ] Automatically filtering available creatures
  • [ ] Providing hooks to get different creature stats / values / whatever
  • [ ] Custom statuses
  • [ ] Custom encounter builder layout / filter settings

valentine195 avatar May 02 '24 13:05 valentine195

Woo! Super keen for this. Things I'd like to see, with my primary interest at the moment being pf2e:

  • Custom methods to allow each system to define what "too weak" / "too strong" means for a monster - eg the little baby/skull symbol when using the 5e XP calculation. I actually had a change floating around somewhere that added this but I never got around to pushing it.
  • Automatic set up of encounter builder with columns and filters that make sense for the game system in use
  • Something to help manage end-of-round effects. Pf2e has persistent damage which occurs at the end of every round, and I often forget to apply it.
  • This one is a stretch, but a way in the encounter builder for pf2e to say that you're going to use the elite/weak variant of a creature. I know there's now a tool to generate elite/weak creatures from a normal statblock, but my use case is that I'm often trying to hit a particular encounter difficulty, and already know the creatures I'm using, so I want to see how well it works I change one of them to a weak/elite. I don't need the full statblock, I effectively only want to change the level. At the moment I need to either do the math myself, or find a placeholder creature of a higher/lower level to use for the calculation

Thinking broader, when I think of "system agnostic", I think "could it support Shadowrun?", which is probably about the most complicated system I've personally played. This is a bit ramblier, but I think there needs to be hooks to allow for more dynamic forms of initiative tracking - eg Shadowrun uses a system where actions take points which might move you up/down the initiative order, and once you run out of initiative you can no longer act. Maybe something like a general "next turn" button which has behavior that can be overridden on a per-system basis?

miscoined avatar May 02 '24 16:05 miscoined

@miscoined Yeah, Shadowrun is one on my mind. This update will likely need to go hand-in-hand with an update to the Creature class that allows for RPG System specific creatures (ie Creature becomes abstract and the Shadowrun exposes a ShadowrunCreature, maybe). Then there could be an abstract getInitiative() method on the Creature, which the tracker would use to resolve order.

valentine195 avatar May 02 '24 17:05 valentine195

Not that I am a user, but what about Initiative situations like:

  • Shadowdark (where it is constant and not just for encounters)
  • Daggerheart (where it is freeform -- probably not a use case for IT, but wanted to bring it up)

namtrah avatar May 03 '24 15:05 namtrah

Currently building out a Call of Cthulhu vault in Obsidian. That system is basically just straight DEX stat comparisons and sorting. There are decision based modifiers "I aim my rifle this turn that gives me a +50 point dex boost for next turn" - something like that. It's pretty simple.

Kerrald avatar May 04 '24 16:05 Kerrald