All Projects → ElfFriend-DnD → foundryvtt-gmScreen

ElfFriend-DnD / foundryvtt-gmScreen

Licence: MIT license
A module which creates a modular GM Screen

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
SCSS
7915 projects
Handlebars
879 projects

Projects that are alternatives of or similar to foundryvtt-gmScreen

Bryans-Preferred-Modules-for-FoundryVTT
My personally cultivated list of FoundryVTT Modules for Dungeons and Dragons 5e and Pathfinder 2e that play nicely together without creating an overwhelming amount of UI options or causing noticeable FPS drops.
Stars: ✭ 119 (+376%)
Mutual labels:  foundry-vtt, foundryvtt
foundry-factory
An interactive command line tool to bootstrap new modules and systems for Foundry Virtual Tabletop
Stars: ✭ 17 (-32%)
Mutual labels:  foundry-vtt, foundryvtt
FoundryVTT-Module-Template
A template repository for FoundryVTT module development that comes with versioned CI/CD
Stars: ✭ 72 (+188%)
Mutual labels:  foundry-vtt, foundryvtt
foundryvtt-simple-calendar
A simple calendar module for the FoundryVTT system
Stars: ✭ 25 (+0%)
Mutual labels:  foundry-vtt, foundryvtt
ernies-modern-layout
A clean and themeable visual update for Foundry VTT. Discord: Ernie#4453 or Ernie on the Foundry channel.
Stars: ✭ 12 (-52%)
Mutual labels:  foundry-vtt, foundryvtt
fvtt-module-narrator-tools
Special tools to increase immersivity in your game.
Stars: ✭ 15 (-40%)
Mutual labels:  foundry-vtt, foundryvtt
perfect-vision
Foundry VTT Module: Lighting Drawings and Vision Limitation.
Stars: ✭ 45 (+80%)
Mutual labels:  foundry-vtt
Tokenmagic
A Foundry VTT module that allows you to add animations and graphic effects to tokens, tiles, templates and drawings.
Stars: ✭ 28 (+12%)
Mutual labels:  foundry-vtt
JB2A DnD5e
Templates of spells from the DnD5e ruleset (SRD and PHB), to use on FoundryVTT
Stars: ✭ 28 (+12%)
Mutual labels:  foundry-vtt
modules
FVTT Community Modules - This repo has been replaced by: https://foundryvtt.wiki/en/community/community-unlisted-modules
Stars: ✭ 21 (-16%)
Mutual labels:  foundry-vtt
foundry-5e-monster-maker
A D&D 5e monster maker module for the Foundry VTT. Build new monsters with level-appropriate, balanced stats in seconds.
Stars: ✭ 26 (+4%)
Mutual labels:  foundryvtt
fvtt-module-jitsiwebrtc
Jitsi WebRTC client for FVTT
Stars: ✭ 32 (+28%)
Mutual labels:  foundry-vtt
fvtt-data-toolbox
Foundry VTT Data Toolbox
Stars: ✭ 17 (-32%)
Mutual labels:  foundry-vtt
FoundryVTT-Sequencer
This module implements a basic pipeline that can be used for managing the flow of a set of functions, effects, sounds, and macros.
Stars: ✭ 25 (+0%)
Mutual labels:  foundry-vtt
Numenera-FoundryVTT
Numenera support for the Foundry virtual tabletop
Stars: ✭ 26 (+4%)
Mutual labels:  foundry-vtt
PDFoundry
A fully featured PDF viewer module for Foundry VTT, including form fillable actor sheets, journal links, and more!
Stars: ✭ 38 (+52%)
Mutual labels:  foundry-vtt
chat-images
A module for Foundry VTT that adds image support for the chat.
Stars: ✭ 19 (-24%)
Mutual labels:  foundry-vtt
foundry-vtt-types
Unofficial type declarations for the Foundry Virtual Tabletop API
Stars: ✭ 80 (+220%)
Mutual labels:  foundry-vtt
wiki
FVTT Community Wiki - This repo has been replaced by: https://foundryvtt.wiki
Stars: ✭ 32 (+28%)
Mutual labels:  foundry-vtt
fvtt-lib-wrapper
Library for Foundry VTT which provides module developers with a simple way to modify core Foundry VTT code, while reducing the likelihood of conflict with other modules.
Stars: ✭ 21 (-16%)
Mutual labels:  foundry-vtt

GM Screen

All Contributors

Latest Release Download Count Forge Installs Foundry Hub Endorsements Foundry Hub Comments

Foundry Core Compatible Version Manifest+ Version

ko-fi patreon

GM Screen Cover Image

Creates a tabbed modular grid that GMs can populate with journal entries, rollable tables, actors, and items. Customize your "GM Screen" by dragging and dropping items into cells and have its information available at any time from a button on the bottom right of the UI, near the sidebar. Roll rollable tables, open linked entities, and even place actor sheets into these cells. Obviously the space constraints mean some sheets will work better than others.

Additionally, any screen you create as GM can be set to be shared with players, so you can provide them with a cheat sheet that is always readily available to them. Be sure you set the permissions correctly on the entities themselves before trying to share them with players on a screen!

Usage

Tab Configuration Demo Video

  • Set up tabs in the Module Settings, and optionally share some with your players.
  • Drag and Drop Journal Entries, Rollable Tables, even Actors and Items into cells on the GM Screen.
  • Each cell has settings which allow for that cell to span multiple columns or rows.
  • Clicking the little icon on the top-right of the cell will pop out the full sized sheet for whatever entity is in the cell. The GM Screen is intended to be read-only, so edits to things inside it will happen for the most part by popping the entity out.
  • Tabs can be reordered from either the settings or by directly dragging and dropping them in the drawer display.

Installation

Module JSON:

https://github.com/ElfFriend-DnD/foundryvtt-gmScreen/releases/latest/download/module.json

Screenshots

GM View

GM Screen Grid Tab with Combat information. GM Screen Grid Tab with Rules information. GM Screen Grid Tab with Notes information. GM Screen Grid Tab with a Player Cheat Sheet.

Player View (with a tab set to be shared)

Demonstration of the GM Screen Grid from the player's perspective.

Configuration

Screenshot of the GM Screen Configuration

Name Scope Default Description
Grid Tabs world Menu Allows the user to configure multiple tabs of the grid. Each grid tab created can have its own Column Override and Row Override if the default setting isn't what you want for that particular tab.
Columns world 4 Sets the number of columns in the grid.
Rows world 3 Sets the number of rows in the grid.
Display as Drawer client true Controls whether the GM Screen appears as a normal popup dialog or as a drawer. To use the PopOut module with the GM Screen, this needs to checked.
Drawer Only: Right Margin client 0(vw) Sets the offset from the sidebar to the right side of the GM Screen. This number affects the maximum possible width of the screen.
Drawer Only: Height client 60(vh) Sets the height of the GM Screen Drawer.
Drawer Only: Width client 100(%) Calculated as a percentage of the available screen width after the sidebar and right margin are taken into account.
Drawer Only: Opacity client 100(%) Controls how opaque the drawer is.
Condensed GM Screen Button client false Removes the text from the GM Screen Button.
Reset Grid world false Saving with this checkbox checked will reset the grid (useful if you end up somehow causing it to fail to render).

Note that changing the grid dimensions after populating the grid might cause unexpected results, and odds are you will have to clear the grid and repopulate things.

Tab Configuration

Screenshot of the GM Screen Tab Configuration

Name Description
Tab Label The name of this tab, this is visible to players if the tab is shared.
Columns Override Override the number of columns in this specific grid tab.
Rows Override Override the number of rows in this specific grid tab.
Shared Controls whether or not this tab is also visible to players. If there are no shared grids, the players do not see the Screen at all.
Delete Removes a Tab.

There is no current way to reorder tabs once created.

Entity Sheet Configuration

It is possible to select a specific sheet for use when an Entity is rendered in the GM Screen which the same entity will not use during normal usage. The best example of this would be to use a specifically designed compact sheet for GM Screen view, but have the normal sheet for usual usage.

Screenshot of the Entity Sheet Configuration

Compatibility

I'm honestly not sure how well this will play with modules that make changes to how journal articles or roll tables interact.

Name Works Notes
OneJournal ✔️ Works as expected.
MEME ✔️ Markdown Renders as expected.
Inline Webviewer ✔️ Journal entries with webviews work as expected.
Kanka-Foundry ✔️ Journal entries are displayed as expected.
Monk's Enhanced Journal Not compatible.
PDF Foundry Currently not possible to embed pdfs into the GM Screen.

API

After the hook gmScreenReady is fired, the following api methods are expected to be on game.modules.get('gm-screen')?.api:

toggleGmScreenVisibility(isOpen: boolean)

Opens or Closes the GM Screen. By default will toggle the current state.

game.modules.get('gm-screen')?.api?.toggleGmScreenVisibility(false); // always closes
game.modules.get('gm-screen')?.api?.toggleGmScreenVisibility(true); // always opens
game.modules.get('gm-screen')?.api?.toggleGmScreenVisibility(); // always toggles

Hooks.callAll('gmScreenOpenClose', cb)

This hook is called when the GM Screen Opens of Closes with the following as the callback:

(app: Application, options: {isOpen: true}) => void

Known Issues

  • The grid does not refresh automatically when settings are changed, click the "refresh" button.
  • The titles of cells do not refresh automatically when the entity is renamed.
  • Some information will appear to players if they are shared a screen that contains things they do not have permission to view normally.
  • It is possible to overlap your cells with column/row spanning. It should not be possible to make it so you cannot recover from such a situation manually.

Acknowledgements

Bootstrapped with Nick East's create-foundry-project.

Mad props to the League of Extraordinary FoundryVTT Developers community which helped me figure out a lot.

Contributors

Thanks goes to these wonderful people (emoji key):


Saif Addin

💻

zeel

💻

Git-GoR

🌍

José E. Lozano

🌍

CarnVanBeck

🌍

DarKDinDoN

💻

Brother Sharp

🌍

Earl Shuggaloaf

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].