Giter Club home page Giter Club logo

foundryvtt-heart's Introduction

Heart - The City Beneath

This is a simplistic implementation of Heart - The City Beneath for FoundryVTT . It provides a character sheet based on the one provided inside Heart. Includes a number of useful dynamic tools for rolling and assessing results.

Features

  • Character sheets to track all the stuff you want to track
    • Resistances, Protections
    • Name, Class, Calling
    • Beats, Equipment, Resources, Abilities, Fallout, Skills, Domains
    • Notes
  • Multiline inputs use FoundryVTT's inbuilt rich text editor
  • Skills can be checked, as expected
  • Resistances and Protections can be increased and decreased by clicking on the boxes.
  • Rollable buttons (and macros for the GM) in character sheets for rolling, stress and fallout.
  • Clickable chat messages to perform rolls.

Usage

Buttons are available in the character sheet for players, or from the hotbar via macros for the GM.

An example character sheet

Macros

Roll Requests

A roll request is a clickable chat message that allows the players to roll with specific parameters. Rolls can be made via:

  • "Request Roll" button in a Character Sheet
  • "Prepare Roll Request" Macro

Clicking on either of these will open a window like below:

Blank Roll Request window

For example, preparing a roll request like this:

Preparing a Roll Request

will create a chat message like this:

Roll Request in Chat

Rolls

This is a typical "Heart" 1d10 roll. Rolls can be made with the following:

  • "Roll" button in a Character sheet
  • "Roll" button in chat message
  • "Prepare Roll" Macro

As before, this will open a new window.

Prepare roll

Again, this might result in chat messages like:

Success roll Failure roll

Stress

We also can manage stress rolls.

Stress rolls can be made with the following:

  • "Roll Stress" button in a Character sheet
  • "Roll Stress" button in chat message
  • "Prepare Stress Roll" Macro

From the macro:

Prepare stress roll

From chat: Stress Roll button

which might result in:

Stress chat message

You can then "Take Stress" by clicking the new button. This applies the stress to the character's appropriate resistance.

Take Stress button

Fallout

We also can manage fallout rolls. Stress rolls can be made with the following:

  • "Roll Fallout" button in a Character sheet
  • "Prepare Fallout Roll" Macro

An example chat message as a result:

Fallout Chat Message

You will get a result and an accompanying button to clear the appropriate stress:

Fallout Result Message

Translations

If you're considering writing a translation, firstly: thank you! You can provide translation by submitting a pull request.

You can find the main branch here. This is the branch from which we build repos. Fork the repo, and modify the duplicate the many instances of the lang/en.json file. You can find these by searching for en.json, (e.g. in Github, by going to Find a File and typing en.json).

Contributing

It is not recommended to develop on the instance on Foundry you run games from. If you need help installing another version of Foundry or a dev environment this isn't the guide for that.

To test your changes:

Add your Foundry installation's Data location to foundryvtt.config.js it should look something like: foundryvttPath: "/home/yourusername/foundryuserdata/Data"

Inside this directory run:

npm ci
npm run build-local .

If everything is setup correctly this will create a symlink from this directory's dist folder to your Foundry systems folder. It will then build this project and the built version will appear in dist. With the symlink in place you can then open Foundry and interact with the system as normal.

TODO

  • Make a basic fillable character sheet.
  • Get a hold of the fonts, or something like them (main one is "The Bartender Condensed Serif Press" by Vintage Voyage Design Supply)
  • Convert Equipment, Resources, Abilities and Fallout from a textfield to a list of textfields
  • Make Equipment & Resources Rollable
  • Add a roller that lets you pick skill, domain, knacks & mastery, difficulty etc
  • Add a stress roller
  • Add a fallout roller
  • Cleanup translation file
  • Cleanup CSS file
  • Add ChatMessage buttons to clear stress when receiving fallout
  • Make "class" and "calling" items
  • Look into making class and calling packs
  • Add editable tags to taggables (resources, equipment etc)
  • Add ability to include and control the minor abilities defined inside Major Abilities.

foundryvtt-heart's People

Contributors

hitcherland avatar wigginns avatar stuttste avatar arcadio21 avatar

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.