- JavaScript 97.4%
- CSS 2.6%
| foundry-vtt-autorelease@167c4b41c1 | ||
| lang | ||
| scripts | ||
| styles | ||
| .gitignore | ||
| .gitmodules | ||
| module.json | ||
| README.md | ||
Region Ruffle
"AI" disclosure
Some or all of the code in this repository was generated with the assistance of LLM-based tools.
AI-generated code is not automatically owned by the person who generated it. No claim of ownership is made over third-party code or material included in this repository.
If you believe any code in this repository infringes your copyright, please contact me with the relevant details and I will review the matter and remove the material if appropriate.
This repository is intended for personal use only. The code is provided "as is", without warranties of any kind. I accept no responsibility or liability for any damage, data loss, security issues or other consequences resulting from its use.
Use this code at your own risk. You have been warned.
About
A companion module for the Foundry VTT module Core Clock that rolls random encounters within Regions as in-game time passes.
It adds a Monitor Time (Core Clock) Region behavior that:
- Starts monitoring when a token enters the region
- Triggers every Nth round, quarter, shift or day, as announced by Core Clock
- Triggers on the dot, or at a random moment within each interval
- Draws from a RollTable or runs a Macro
- Optionally stops when all tokens have left the region
Compatibility
- Foundry VTT 14
- Dragonbane/Drakar och Demoner 4.x
- Requires the Core Clock
Installation
In Foundry VTT, go to Add-on Modules → Install module and enter the manifest url: https://code.chuggybumba.com/thanius/region-ruffle/raw/branch/main/module.json
Configuration
- Open a Region's configuration and add the Monitor Time (Core Clock) behavior.
- In the behavior configuration:
- Choose the action type: RollTable or Macro
- Drop a RollTable or Macro on the field, or enter its UUID
- Choose the time unit, frequency and execution mode
- Choose the roll mode and whether to post results to chat (RollTable)
- Enable Stop When Region Is Empty (optional)
- Set the log verbosity (optional)
- RollTable draws go through every entry once before repeating, and the table is reset once all entries have been drawn (optional).
- In the RollTable sheet, single entries can be marked as repeatable with the toggle next to them
- Enable Always Roll All Entries to allow entries to repeat freely
Integration
The module listens to Core Clock hooks for rounds, quarters, shifts, days and committed time changes, and reads the clock state through game.modules.get("core-clock").api.
Macros are executed with:
regionBehavior: the triggering Region behaviorregion: its Region