ghost-fvtt / per-actor-roll-mode

A module for Foundry Virtual Tabletop that allows overriding the selected roll mode on a per-actor basis.
Other
0 stars 1 forks source link

Only partially overriding chat card privacy #19

Closed Silvestrae closed 2 years ago

Silvestrae commented 2 years ago

I was using this with betterrolls5e enabled initially. Everything was working as expected. I have since disabled BetterRolls and now it is only partially working as expected.

With BetterRolls enabled, everything clicked from the actors sheet (every item, spell and feature etc) respects and follows the roll mode override when going to chat.

However with BetterRolls disabled, all items, spells and features clicked from actor sheet will ignore the override and still follow the default roll mode selected. The only things that respect and follow the roll mode override are the called roll dialogs (e.g. the roll boxes that appears when you click attack or damage)

Not sure if this is a bug, or how it has been designed/working all along? I expect that the intention is to have all items etc clicked from an actor's sheet to respect that actor's override.

ghost91- commented 2 years ago

So, you are saying you want the roll mode also to apply to messages that are not actually... rolls...? That doesn't make much sense to me, to be honest. It's definitely not a bug, the current implementation explicitly checks if the message is a roll message, and only affects those.

The problem is: If it affected all messages from that actor, it would become impossible to send a regular message from that actor to all players (i.e. speak as that actor).

And there is no easy way to detect if a message was triggered by a click on something in the sheet, or simply by entering a message via the chat box, so that's also not really an option.

Silvestrae commented 2 years ago

That is correct. The intended purpose is that any and all chats, abilities or features used from said actor would respect the roll mode so as to be hidden from or shown to other players. The global roll mode affects all items, rolls and chats, why shouldn't an override?

The most likely use scenario for the module (and indeed our use from roll20 days, and likely the hopes of other roll20 users who grab it), is that a GM can leave their default roll mode to private GM. Thus covering all chat, items and rolls the GM triggers from any actor so that GM can read details, track usages and have quantities etc still update. As GMs quite often keep npc and enemy rolls and info private.

Then, for the very few actors that the GM wants to be public, such as friendly Npcs or GM controlled party members, the GM can set those few actors to public and have all rolls, items, and chats public for sharing with the other players.

Its primarily supposed to be a GM tool for speeding up privacy. A lot of GMs hide enemy rolls and abilities used etc from players. So in combat you don't have to keep flicking from public to private between friendly and hostile Npcs. It could even be limited to just being visible to GMs so players can't choose an override as the idea is mostly for DM QoL.

On Sat, 11 June 2022, 1:31 am Johannes Loher, @.***> wrote:

So, you are saying you want the roll mode also to apply to messages that are not actually... rolls...? That doesn't make much sense to me, to be honest. It's definitely not a bug, the current implementation explicitly checks if the message is a roll message, and only affects those. The problem is: If it affected all messages from that actor, it would become impossible to send a regular message from that actor to all players (i.e. speak as that actor). And there is no easy way to detect if a message was triggered by a click on something in the sheet, or simply by entering a message via the chat box, so that's also not really an option.

— Reply to this email directly, view it on GitHub https://github.com/ghost-fvtt/per-actor-roll-mode/issues/19#issuecomment-1152485735, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANLE27GBS4ELN2ICRJJHUD3VONNTTANCNFSM5X2U3NRA . You are receiving this because you authored the thread.Message ID: @.***>

ghost91- commented 2 years ago

I mean, I mostly created the module for you, and it's trivial to remove that check, so if you prefer that, I can do it. But be aware that you would then need to adjust the roll mode override of an actor, if you publicly want to send an actual chat message from that actor (i.e. speak in character for that actor). As I said, there is no way to distinguish between messages sent from the chat box, and messages sent via a click somewhere in the actor sheet, so it affects either both cases, or none.

Silvestrae commented 2 years ago

Yes, we're totally appreciative of that. It was not something you had to do, so we truly thank you!

Removing that check would suit our purpose better. On the very rare occasion that GM needs to send a chat as the overridden actor, that change wouldnt be too troublesome to make. We dont personally use Chat very often to communicate, We RP in voice and video. So we would definitely prefer it affects all cases sent to chat if that's the only way to do it.

On a side note, it is very odd that how it functions with BetterRolls enabled is all features, items and rolls from the actor follows the override selection, but any typed chats sent while the actor is selected is always public regardless of any roll modes. 🤔 So whether its impossible to distinguish between messages from the actor sheet vs the chat box, it appears it is at least happening accidentally with something better rolls is doing.

Edit: after some testing, it appears BetterRolls might be setting all item and feature cards as roll cards before sending to chat. In either case, if the easiest way for you to do it is to just remove the check so it applies to everything from the actor, that is a perfectly acceptable solution.

ghost91- commented 2 years ago

Done