-
Notifications
You must be signed in to change notification settings - Fork 3
Troubleshooting
Symptoms, likely causes, fixes. Feature pages carry more specific advice. This one covers the problems that cross the whole module.
- Confirm Shadowdark Extras is enabled for the current world.
- Confirm Foundry shows every required dependency installed and enabled: socketlib, libWrapper, Sequencer, portal-lib, and TokenMagic FX.
- Open the browser console with
F12. - Reload and hunt for the first error mentioning
shadowdark-extras. That first one usually tells you more than the cascade behind it. - Confirm the release is complete. One missing imported
.mjsfile aborts the entire module at startup.
Hard-refresh with Ctrl+Shift+R. A normal Foundry reload will happily keep
serving cached CSS, templates, or JavaScript after an update.
Check the Settings Reference. Settings marked Reload attach their behavior at startup, so the world needs a reload after you change them.
Work down the list. Sequencer active? A JB2A pack installed and active? In Configure Animations, does the preset path actually resolve in the Sequencer database? Select a token before you press preview. Then confirm both the category and the item's own override are enabled. If visuals work and sound doesn't, check the per-client sound toggle and volume.
The psfx module is optional. A preset that references psfx will animate
silently when the sound pack is absent.
Automated Animations and SDX are probably both configured for the item. Keep the SDX AA integration enabled, then look for a second module running its own chat or workflow animation hook.
Current versions guard chat-history re-renders. When it happens anyway, the client is usually still running an older module version. Confirm the version, then hard-refresh.
Cross-owner changes get sent to an active GM over socketlib. Four things have to be true: a GM is connected, socketlib is active, the player owns the source actor or token, and the GM has access to the active scene and the target documents.
That's the default. The GM has to enable Allow Players to Paint Dungeons, and painting still needs a connected GM to perform the scene mutation.
Visibility and authority are separate concerns. Map generation, pin management, scene import, Regions, and destructive cleanup all stay GM actions.
Open Configure Combat Settings and enable Show Damage Card. If only the GM sees it, enable Show Damage Card for Players as well. On a miss, check Hide Damage Card on Failed Attack. Beyond the settings, confirm the item produced a Shadowdark attack or damage chat workflow that SDX recognizes.
Auto-Apply Damage ships on. Turn it off in Combat Settings. Use GM Only Apply Damage when the card should stay visible but only the GM may commit it.
Both checks default to None. Set each to Warn or Block in Combat Settings. For this check SDX treats Close as 5 ft and Near as 30 ft, and Far isn't blocked by distance at all.
Confirm Enhance Spells is on, and reload if you only just enabled it. Open the item's Activity tab and check the configuration actually saved. On a Scroll or Wand, confirm its referenced spell UUID still resolves. Run-as-GM macros want the caster and target tokens on a scene the receiving client can resolve, since cross-scene token placeables cannot be manufactured. And run Medkit if the actor is holding an older copy of an SDX-enhanced item.
Current behavior applies the per-turn result only after a successful native focus check. Confirm the spell is marked as a focus spell in Shadowdark data, and that old copied items have been through Medkit.
Update to a current SDX release. The module carries a Foundry v14 compatibility repair for frozen and corrupted Shadowdark compendium index data.
Start with Show Medkit Icon being on, and the actor owning a Spell, Scroll, or Wand that can be matched at all. A Scroll or Wand needs a valid referenced spell UUID. The source pack has to be registered, though the SDX item pack always is. Worth remembering: a same-named unrelated item won't necessarily count as a valid source match.
Nested containers can be disabled separately, so check that first. Items have to
belong to the same actor for normal owned-container moves. Hold Ctrl wherever
the UI indicates move-versus-copy behavior. And decide what happens to a
container's contents before you delete the container.
Expected. The feature hides the true name and description from players while preserving GM visibility. Identification runs on Shadowdark 4.x's native identified state.
Enable SDX Tray is client-scoped, so turn it on for the affected user and reload. Also check the browser window is wide enough, and that no theme or module is covering the left edge.
The tray reads the currently controlled and owned tokens plus the configured party state. Select a token, add world Player actors to a Party actor, or let the GM tray show NPCs, depending on what you're after.
Confirm the crown tool points at the leader you intended and that every client has received the current marching state. Toggle Marching Mode off and on after an update if a stale client held onto old state.
Keep Block Drawing While Typing enabled. Change or disable the hold-to-draw keybinding under Foundry's Configure Controls when it collides with another module.
Run Format Map before painting or procedural generation. Choose the hex orientation and dimensions you want, and leave the scene grid alone afterward unless you're rebuilding the tile layout too.
Update to a current release. Older builds added extra fit and buffer space. Current formatting sizes the scene to the width and height you selected, with Foundry's normal half-hex edge behavior where it applies.
Confirm the generator is running the bundled local build that capture requires. Wait for its canvas to finish rendering. Reopen the generator rather than importing from a stale window, and check the console for a missing render transform or geometry warning.
Some generators degrade to an image-only import when structured geometry is unavailable, which leaves walls, doors, or levels out.
Generation acts on the current scene and level context, so activate the correct scene and elevation level first. Duplicate important scenes before generating.
Confirm the scene is hexagonal and Hex Fog is active, then check Hex Fog: Default Reveal Radius. Shader effects are optional, and disabling Enable Fog Effects should buy back performance while the underlying fog state keeps working.
Try Enable Pixel perfect on Pins and adjust the alpha threshold. For hex-sized image pins, use Fit to hex grid in the Pin Style Editor.
Original-mode mechanical outcomes go through the GM-only Apply action. Review its preview and confirm. Narrative outcomes get appended to character notes rather than guessed into unsupported mechanics.
When Carousing Wealth Base includes gear, the loss can be calculated from total valued wealth while collection still comes out of coins. Whatever remains unpaid becomes a zero-slot Carousing Debt item.
Use the supported labeled or pipe-separated formats and review the editor afterward. Linking an Original-format table to an Expanded section, or the reverse, is not a conversion SDX can make for you.
Include the Foundry version and build, the Shadowdark system version, the Shadowdark Extras version, and your active dependency versions. List any other active modules likely to touch the same sheet, chat, or canvas workflow. Paste the first relevant console error with its stack trace. Then give exact steps, the expected result, and what actually happened, and say whether it reproduces as GM, as player, or both.
Report it through GitHub issues or the Discord community.
Related: Installation & Setup · Settings Reference