by sirkerry
Description
Ruleset-agnostic extension for Fantasy Grounds Unity — works with any CoreRPG-based ruleset.
Overview
This lightweight extension fills a specific gap in Fantasy Grounds: it brings powerful keep/drop dice pool functionality directly to Table rolls.
Stock FGU has excellent native support for keep high/low, drop high/low, exploding dice, and more in /die rolls, character sheets, and most dice expressions. But Tables use a separate dice-handling pathway that only supports basic NdM +/- mod rolls. This extension adds the missing pool controls so your tables can evaluate rolls after keep/drop logic — exactly the way many custom tables and house rules intend.
Key Features
- Pool cycler on every Table record: - (normal) / Keep High / Keep Low / Drop High / Drop Low + amount field.
- Added cleanly between the existing Custom dice/mod and Output fields.
- Fully reimplements the necessary TableManager hooks while remaining composable with other extensions (including those that also modify table rolls).
- Keeps the original dice and mod fields untouched.
- Works on any table that rolls dice for row selection.
Example: A 3d10 table set to Keep Low 2 will sum only the two lowest dice and look up the row based on that reduced total — perfect for "roll with disadvantage" style tables, best-of rolls, or specialized mechanics like those in Shadowdark and other OSR/ indie systems.
Why It Exists
Tables were the one place where the rich dice pool syntax (3d6kl2, 4d6d1, etc.) didn't apply. This extension targets exactly that gap without duplicating functionality already present elsewhere in FGU. No new slash commands, no bloat — just the missing piece for tables.
Technical Notes
- Ruleset compatibility: No ruleset tag — loads universally on CoreRPG-based rulesets.
- Implementation: Direct but careful overrides of TableManager.performRoll and the "table" result handler (via ActionsManager for safe composition).
- Chat output: Shows only the kept dice (clean and matches stock behavior). Dropped dice are pruned before the final roll message is built.
- Tested and confirmed working in Shadowdark and other rulesets.
Installation
- Download the extension from the Forge.
- Drop the table-keepdrop folder into your Fantasy Grounds Unity extensions/ directory (or use the in-client update mechanism).
- Enable Table Keep/Drop in your campaign's extension list.
No ruleset-specific setup required. Works immediately with any table that uses dice.
Perfect For
- OSR / Shadowdark / homebrew tables that rely on keep-low or drop-high mechanics
- "Roll with disadvantage" or "best of X" random encounter / treasure / complication tables
- Any GM who wants more expressive dice control on their lookup tables
UUID deb940ba-7d6a-11f1-a411-0050562be458

