Giter Club home page Giter Club logo

bubbles-for-owlbear-rodeo's Introduction

Stat Bubbles for D&D Owlbear Rodeo Extension

Track hit points and armor class using this Owlbear Rodeo extension.

Stat Bubbles GitHub Image

Installing

Visit the Owlbear Rodeo store to install the extension.

How it works

This extension provides a simple way to track:

  • Hit Points
  • Maximum Hit Points
  • Temporary Hit Points
  • and Armor Class

Stat Bubbles also features:

  • A per token setting to hide stats from players
  • Name tags that will never overlap with health bars
  • A tool for applying area of effect (AEO) spells
  • Settings to configure health bar positions
  • An option to show the players segmented enemy health bars

The Basics

Right click on a token to access the context menu embed and edit a token's stats.

Player Edit Stats Menu

This extension does math for you! To add 6 to your HP type +6 and press Enter. To subtract 6 from your HP type -6 and press Enter. This works for every stat.

In a hurry? press Tab to cycle through the bubbles.

This extension works with tokens on the Prop, Mount, and Character layers.

The health bar is created automatically if a number greater than 0 is in the max health field. The temporary HP and armor class bubbles work the same way.

Name tags

Name tags can be enabled from the settings menu. Once enabled both players and GMs can set a token's name in the context menu embed. The autofill icon sets the name tag to the token's name property found under the accessibility settings. The name that you give the token will also be displayed in initiative tracking extensions.

Menu with name tag

Game / Dungeon Masters

The GM gets access to more configuration options.

Use the hide stats from players switch in the context menu to prevent your players from seeing a creature's stats, both in the context menu and on the map. A creature's health bar background turns black to indicate that it is hidden.

GM Edit Stats Menu

The AOE Tool allows GMs to quickly apply AEO damage and healing. Great for spells like fireball or mass healing word.

Use the select tool to select all the creatures you want to include, right click to open the context menu, then use the Shift + S shortcut to open the tool. Any creature that has a maximum health greater than zero will be added to the list. Accidentally select something that shouldn't be included? No need to restart, just set the multiplier to none. Set the multiplier according to whether creatures pass their saving throw or not and whether they are vulnerable or resistant to the damage type. Press confirm, and you're done. If you made a mistake the damage or healing can be undone using the undo button.

AEO Tool

The settings menu allows GMs to customize the extension to better fit their use case.

Settings Menu

Setting Description
Vertical offset Move all tokens' stats up and down to accommodate name tags or other extensions.
Origin above token Move all tokens' stats above them.
Show monster health bars to players Show just the health bar of hidden tokens to players. This won't allow players to edit the stats or see the exact health numbers.
Monster health bar segments When Show monster health bars to players is enabled the GM has the option to show a less granular version of the monsters' health to players. For example: say you only want to show when a monster drops to half health, write 2 in this field. Leaving this setting at 0 shows the exact health bar fill.
Name tags This feature adds a custom implementation of name tags to Owlbear Rodeo that will never overlap with a token's health bar.
Report Bug This button links to the Owlbear Rodeo Discord where you can report bugs. Including @Seamus in your post will help me find it faster.

Uninstalling

Refresh your page after uninstalling the extension to clear health bars and stat bubbles from the scene. Token data will not be deleted by uninstalling.

Feature Requests

I may accept feature requests but - as I have limited time and development plans of my own - being a paid member on Patreon is your best path to getting a feature implemented.

Support

If you need support for this extension you can message me in the Owlbear Rodeo Discord @Seamus or open an issue on GitHub.

If you like using this extension consider supporting me on Patreon where paid members can request features. You can also follow along there as a free member for updates.

Building

This project uses pnpm as a package manager.

To install all the dependencies run:

pnpm install

To run in a development mode run:

pnpm dev

To make a production build run:

pnpm build

License

GNU GPLv3

Contributing

Copyright (C) 2023 Owlbear Rodeo

Copyright (C) 2023 Seamus Finlayson

Feel free to fork this but if you post it to the store please do not use my extension name or logo. I am unlikely to accept pull requests.

bubbles-for-owlbear-rodeo's People

Contributors

seamusfinlayson avatar

Stargazers

 avatar  avatar Lilly Soryu avatar Nick Sheck avatar Gilles avatar Davi Silveira avatar

Watchers

 avatar

bubbles-for-owlbear-rodeo's Issues

lack Initiative value and dice

Love this feature,If possible;
Suggestion: add Initiative value and dice.
The player has permission to throw.
It is best to add an Initiative tracker.

Disable attachment behaviour copy

When a token with local attachments is copied the attachments are copied into items. Should be fixed by disabling copy attachment behaviour. Likely caused by some behind the scenes changes from OBR, I don't think this bug occurred before the recent update.

Remove players access to the hide switch

Players can currently restrict their own access to a token's stats. The hide switch is a tool for the GM to prevent players from accessing monster stats, there's no reason for players to have access and if a player accidentally clicks it they will no longer be able to see or edit their own tokens stats.

Reorganize files

When I was creating the settings popover I moved a bunch of files around as part of debugging, they need to be moved back.

I also want the index page to redirect to the store page.

Edit stats context embed revisions for 1.5

Master issue for context embed revisions

  • Increase spacing above title text - not fixing
  • Maybe lessen the outline opacity - not fixing
  • Make text in bubbles slightly transparent so it has some background tint - or another method to achieve this - not fixing
  • Press tab when context menu opens to focus first input - does this work - this would be bad for accessibility, I am considering bringing back the shift+s shortcut - doesn't seem possible
  • Revisit dark mode colors and borders to be more similar to light mode - not fixing
  • Make light mode less transparent, less washed out colors

Error in background when switching scenes

Getting this error message
image

Caused by this function
image

After switching scenes. The value parameter retrieved from the scene is not set and so is read as undefined. The result is settings from one scene being carried over to another.

Add health bar segments for monster health

From user feedback:

"Any chance you'll add an option to show just the bar to the players and not the number? And allow us to set the number of bar segments. For example: setting it to 2 would keep it full until they're at half hp, and half full until they're at 0."

  • Show just health bars has been implemented.
  • Add as an optional feature in the action popover below show monster health bars.

Prevent user from entering numbers that are invalid or caused weird behavior

  • 3 digit numbers can't be drawn on the token for Temp HP and armor class
  • Negative numbers can't be drawn for Temp HP and armor class
  • 4 digit numbers are too long to be readable in the popover
  • Letters can be saved in the token metadata but not drawn on the token
  • Weird values like a233 can be saved to token metadata but are not drawn

Support for descending AC

User feedback:

"Is it possible to add negative number support? Currently if you put a Negative or 0 in a stat bubble it does not display anything. We play a version of D&D that uses the dreaded descending AC."

Add stats as text to the map

Write current and max hit points to the map, could also add ac and temp HP to the map but would require some redesign of the bar.

Failed to load

Bug where when the page is loaded after clicking on the room icon on the OBR homepage, the extension fails to load.

Multiple on change listeners slow down OBR

After implementing the on scene ready code from mitch, the on change listener started being attached every time the scene reloads. The listener is not detached when the scene becomes not ready, so it is reapplied every time.

UI bugs

  • 11 in Temp or AC bubbles leaves the background area, the text needs to be slightly to the left
  • "Settings" in action popover does not have its color changed for light theme

Update documentation for 1.4 release

  • Button linking to documentation
  • Change “hide from players” to “hide stats from players”
  • Change name tags back to beta
  • Update documentation
    • Updated settings menu
    • New header image
    • Clearer instructions for doing math in the bubble (gif)

Refresh health bars on role change

When a users role is change they still see health bars as they were visible in the previous role. A refresh should be called on role change.

Add option to show players only the health bar but not the numbers

From user feedback:

"My players love the health bar, but I would like to keep exact numbers hidden while still allowing them to see how much they're damaging an enemy. One of the reasons we love it so much is cuz it's quite exciting to see the health bar go down when you've just dealt a large blow to an opponent.
Is there any way that in the future there could be an option to hide the exact numbers from players but not the bar itself?"

Should be fairly simple to add to the settings menu with a bit more work in helpers.ts

Weird behavior on safari

When using the context menu embed on safari the health and max health boxes get really tall if you delete their contents.

I don't have an apple device to debug on.

Implement name tags

Roll20 has a clever way of displaying name tags and health bars so they do no not overlap:
image
The health bar is directly above the occupied square, the name tag is directly below. It might be worth adding a name tag implementation to this extension that avoids overlaps but I'm not sure if its worth it. The math exists and I would probably just need to add a name field to the popover, all that to say I know how to do it. It might be a nice quality of life thing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.