Foundry VTT Integration Guide
Recommended: the RollSight Foundry module
The module’s cloud connection works with browser-hosted worlds such as The Forge and with locally hosted Foundry worlds. The module links the world automatically when a GM first opens it; each person who rolls uses their own player code in the RollSight desktop app. The module supports Foundry 12–14. For this setup, you do not need a browser extension, local bridge, or shared GM key.
Keep player codes private
Each code identifies a player’s RollSight connection. Share a player’s code only with that player and enter it in their own RollSight app. Do not post it in public chat or use one player’s code for the whole group. The world link is created automatically; it is not a code to distribute.
1. Install and enable the module
- Open Foundry’s Setup → Add-on Modules and choose Install Module.
- Paste this manifest URL:
https://raw.githubusercontent.com/smegill/rollsight-integrations/main/rollsight-integration/module.json, then install RollSight Real Dice Reader. - Enable the module in your world’s Manage Modules screen, then reload the world if Foundry asks.
- Open the Foundry Settings sidebar and choose Connect RollSight. You can also open the same panel from the module’s settings.
These steps cover module 1.1.85 on Foundry 12–14. If Foundry reports an older module version, update it before following the connection steps.
2. Open the world as a GM
The first time a GM opens the world with the module enabled, RollSight automatically creates and saves the world link. Give it a moment, then open Settings → Connect RollSight. A player code means the link is ready. Already-linked worlds keep their existing connection.
If players see “This world is not linked yet,” ask the GM to check this panel and complete setup if that action is available. The world link is stored with the world; it is not the individual player code requested by the desktop app.
3. Connect each player with their own code
- Each player opens Foundry as their own user, opens Settings → Connect RollSight, and copies the code shown under Your RollSight player code. The GM does not copy one code for everyone.
- On that player’s computer, open RollSight. Choose Session → Set up or Start Session on the play panel. In the Connect dice dialog, keep Foundry selected, paste that player’s code, then choose Connect.
- Wait for RollSight to confirm the cloud connection. Keep that player’s Foundry world open under the same Foundry user while rolling.
If your RollSight app does not show this Foundry connection flow, update to a desktop version that supports Foundry player codes.
RollSight’s Foundry cloud connection can be used whether Foundry is hosted by The Forge or runs locally. The normal module flow sends results through the cloud connection, so the RollSight computer and Foundry browser do not need to be on the same machine or network.
4. Choose physical dice in Foundry
For every player who wants to roll physical dice, open Connect RollSight → Configure dice. In Foundry’s Dice Configuration, choose RollSight physical dice as the default method, then check each die’s override and save.
Dice Configuration is per Foundry user. A GM’s setting does not configure the players’ dice. Keep Foundry’s normal controls available; you can complete a waiting roll manually in Foundry if needed.
5. Test with a first roll
- With the player’s Foundry world open and RollSight connected, start a simple d20 roll in Foundry.
- Wait for Foundry’s roll prompt before rolling. Roll one physical d20 in the RollSight tray.
- Send the result from RollSight if it is not sent automatically. Confirm Foundry completes the waiting roll with that value.
Starting the roll in Foundry first lets the module match your physical result to the roll that is waiting.
Troubleshooting
“This world is not linked yet”
Ask the GM to open Connect RollSight in that world and choose Set up this world if it appears. If setup already completed, have the GM choose Reconnect to RollSight when available.
No player code appears
Check that the GM has linked the world, Receive RollSight dice is enabled in Game Settings, and Use the browser extension is off for the cloud path. Then reopen Connect RollSight or choose Reconnect to RollSight.
Foundry rolls digitally instead of waiting
Open that Foundry user’s Dice Configuration, set the default to RollSight physical dice, and check per-die overrides.
The result does not go to the waiting roll
Start the roll in Foundry first and check that the physical dice match the waiting roll’s dice. Confirm the same Foundry user remains open and connected in that player’s RollSight app.
Another Foundry window is receiving dice
Use one active Foundry tab or window for that player, and close the other Foundry window receiving under the same player code.
Already using the browser extension?
The RollSight browser extension is still present as an optional connection for existing local-bridge setups in a supported browser. The current recommended module flow above uses each player’s code and does not require the extension.
If you intentionally keep using the extension, open RollSight’s Help → Browser add-on → Install add-on for its setup instructions, then keep the extension and Foundry module configured for the same local bridge. Do not enable both the extension receiver and desktop bridge polling on the same computer for the same queue.
Once connected, start each attack, save, or other roll in Foundry, then roll and send the matching physical dice from RollSight.