Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework and unify the flow for using weapons, items, and spells. #390

Closed
mooped opened this issue Oct 15, 2023 · 6 comments
Closed

Rework and unify the flow for using weapons, items, and spells. #390

mooped opened this issue Oct 15, 2023 · 6 comments
Assignees
Labels
enhancement New feature or request

Comments

@mooped
Copy link
Contributor

mooped commented Oct 15, 2023

Weapons and items should work closer to spells, where upon clicking the item or its icon a type specific chat card is displayed.

For weapons this card would include the attack roll result, the item description, and a button to roll damage, and to force a crit or fumble roll (covering #332 and #368, and the request in #338).

For items this would slow the item's description, with specialisations by item type.

This would allow users to implement special items, or special types of attack by embedding macros or other links in the item description to describe and trigger the effects.

For spells this would work as they currently do.

@cyface
Copy link
Collaborator

cyface commented Oct 15, 2023

@mooped is it possible to make a setting to auto roll the damage and crits as it does now? 🤔

@mooped
Copy link
Contributor Author

mooped commented Oct 15, 2023

@mooped is it possible to make a setting to auto roll the damage and crits as it does now? 🤔

My thought on that was that the 'Use Standard Chat Cards' option should probably go away (it creates a lot of complexity) and a new option to automatically proceed through the flow would come in (might even make it default), but importantly there would be only one version of each step in the attack flow and the option just determines whether the next stage triggers automatically or not.

We'd lose the current combined chat card for the entire roll, though. I'm not sure how attached to it you are?

I personally like it for its simplicity, but it seems that lots of people want functionality that is incompatible with it so I'm not sure it's worth the complexity of keeping that aspect of the feature around as an option.

If we add hooks at the end of each step of the flow it becomes very easy for external modules to provide additional automation and customisation. For example a module can listen for the dcc.attackRoll hook and make a decision to trigger the next step based on the selected target (or whatever other information they want to use).

@mooped
Copy link
Contributor Author

mooped commented Oct 15, 2023

I think crits would always automatically trigger as part of the attack roll process, and could be combined into the attack roll card, it's only really rolling damage that is contentious since it's dependent on the target.

mooped added a commit that referenced this issue Oct 15, 2023
…o the chat card with options for extension later. For #390.
mooped added a commit that referenced this issue Oct 15, 2023
…sage.

Provide information on extension hooks in the readme.
For #390.
mooped added a commit that referenced this issue Oct 15, 2023
…reasure.

Placeholder function and hook for clicking the 'Funds' icon to spend funds.
For #390.
mooped added a commit that referenced this issue Oct 15, 2023
…to suppress default behaviour when required.

Implement hotbar macros for items.
For #390.
@cyface
Copy link
Collaborator

cyface commented Oct 15, 2023

Especially for NPCs, I'd really prefer some way for us not to have more than one click per attack. I'm not at all attached to how it looks in the chat. 👍🏻

@mooped
Copy link
Contributor Author

mooped commented Oct 16, 2023

You're right, as a judge it would really annoy me to have to make the extra click to get the damage amount.

I think the feedback can be broken down into a few issues:

  • Players seeing their damage before they decide to spend luck on the to hit roll
  • Judges wanting to fast roll NPC attacks
  • Judges wanting to automate checking for hits/range etc
  • Handling special weapons that don't deal damage
  • Applying the target's luck to crits
  • Automating luck spend on attacks/deeds/damage
  • Probably more I've forgotten right now

I will have a rethink of how the setting should work, I'm starting to think there should be a setting for the judge and one for the players. Having a client side setting might please some people, but the issue of seeing the damage before spending luck comes back in.

For the chat card I think it might be nice to see if we can collate any rolls made automatically in one card. That allows the extra functionality and optional automation while avoiding some clutter, and would hopefully solve the annoying issue of Foundry playing several overlapping roll sounds with the current separate chat cards flow.

We might need to look at what if any modules rely on the separate chat cards setting too.

mooped added a commit that referenced this issue Nov 21, 2023
…o the chat card with options for extension later. For #390.
mooped added a commit that referenced this issue Nov 21, 2023
…sage.

Provide information on extension hooks in the readme.
For #390.
mooped added a commit that referenced this issue Nov 21, 2023
…reasure.

Placeholder function and hook for clicking the 'Funds' icon to spend funds.
For #390.
mooped added a commit that referenced this issue Nov 21, 2023
…to suppress default behaviour when required.

Implement hotbar macros for items.
For #390.
@cyface
Copy link
Collaborator

cyface commented Sep 23, 2024

I'm pretty sure the spirit of this in general is in v0.50.0 , I tried to make items droppable in the chat, but it was not as simple as hoped. So I think that can get re-opened as a separate issue if it's still desired.

@cyface cyface added this to the Release 0.50.0 milestone Sep 23, 2024
@cyface cyface removed the v.0.50.0 label Sep 23, 2024
@cyface cyface closed this as completed Nov 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants