Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

Custom Character Sheet Not Loading

I have a custom-built character sheet. I've given All Players ability to see and edit the sheet. If/when I open the sheet and click "Show to Players", the players report a blank window opening - they can't see the contents of the sheet. If they open the sheet themselves, it works fine. Anyone else experiencing this issue? Any ideas what's causing it and how to fix it? Perhaps there's something I need to include in the sheet workers during onLoad?
1694105703
vÍnce
Pro
Sheet Author
Given you can open a sheet and your players can open a sheet, I don't think the sheet code would have any effect on the "Show to Players" feature.  I just did a quick test and using "Show to Players" opened the sheet on the player's screen as expected.  I was using FF as GM and Player was on Chrome/Chromium.  Maybe double check if the players are using FF/Chrome.  Maybe have them try in Private/Incognito as well just to make sure there isn't anything on their end interfering. 
1694720841

Edited 1694720891
Update: It happens to all players on various browsers, with any character sheet, every time I click "Show to Players". They aren't using any pop-up blockers or ad blockers, beyond default Chrome, FF, Edge configurations. The custom sheet uses a tabbed structure to segment content. They can see the tabs on the sheet and click them, but the tab contents are empty. Again, it works fine if *they* open the sheet.  Below are the relevant code snippets. Maybe someone more experienced than me with custom sheet code might see something that could explain the above issue. Or perhaps a handout opened w. "Show to Players" has a different wrapper/process than one opened directly by the local user and that's conflicting with the approach used in the jscript and CSS. Top-level div that displays the tabs at the top of the sheet: < div class = 'button-panel' >     < input type = 'hidden' class = 'buttonstoggle' name = 'attr_sheetButtons' value = 'overview' />     < button type = 'action' class = 'btnOverview' name = 'act_overview' > Overview </ button >     < button type = 'action' class = 'btnClass' name = 'act_class' > Class </ button >     < button type = 'action' class = 'btnSkills' name = 'act_skills' > Skills </ button >     < button type = 'action' class = 'btnCombat' name = 'act_combat' > Combat </ button >         < button type = 'action' class = 'btnEquipment' name = 'act_equipment' > Equipment </ button >       < button type = 'action' class = 'btnHirelings' name = 'act_hirelings' > Hirelings </ button >     < button type = 'action' class = 'btnJournal' name = 'act_journal' > Journal </ button >     < button type = 'action' class = 'btnSettings' name = 'act_settings' > Settings </ button >     < div class = 'whispertoggle' >< label > Whisper Toggle: </ label >< input type = 'checkbox' name = 'attr_toggle_whisper' />< input type = 'hidden' name = 'attr_whispertoggle' /></ div > </ div > < input type = 'hidden' class = 'tabstoggle' name = 'attr_sheetTab' value = 'overview' /> Then, each section is contained in a top-level div, like this: < div class = 'overview' >     stuff... </ div > Here's the button handler in the sheet: // Button panel event handlers const buttonlist = ['overview','combat','skills','equipment','class','hirelings','journal','settings']; buttonlist.forEach(button => {     on(`clicked:${button}`, function() {         setAttrs({             sheetButtons: button,             sheetTab: button         });     }); }); // Button panel event handlers const buttonlist = ['overview','combat','skills','equipment','class','hirelings','journal','settings']; buttonlist.forEach(button => {     on(`clicked:${button}`, function() {         setAttrs({             sheetButtons: button,             sheetTab: button         });     }); }); Here's the related CSS: .button-panel {     padding-bottom : 15px ; } .overview , .combat , .skills , .equipment , .class , .hirelings , .journal , .settings {     display : none ; } .tabstoggle [ value = 'overview' ] ~ div.overview , .tabstoggle [ value = 'combat' ] ~ div.combat , .tabstoggle [ value = 'skills' ] ~ div.skills , .tabstoggle [ value = 'equipment' ] ~ div.equipment , .tabstoggle [ value = 'class' ] ~ div.class , .tabstoggle [ value = 'hirelings' ] ~ div.hirelings , .tabstoggle [ value = 'settings' ] ~ div.settings , .tabstoggle [ value = 'journal' ] ~ div.journal {     display : block ; } .btnOverview , .btnCombat , .btnSkills , .btnEquipment , .btnClass , .btnHirelings , .btnJournal , .btnSettings {     background-color : lightgray ;     font-weight : bold ; } .buttonstoggle [ value = 'overview' ] ~ button.btnOverview , .buttonstoggle [ value = 'combat' ] ~ button.btnCombat , .buttonstoggle [ value = 'skills' ] ~ button.btnSkills , .buttonstoggle [ value = 'equipment' ] ~ button.btnEquipment , .buttonstoggle [ value = 'class' ] ~ button.btnClass , .buttonstoggle [ value = 'hirelings' ] ~ button.btnHirelings , .buttonstoggle [ value = 'journal' ] ~ button.btnJournal , .buttonstoggle [ value = 'settings' ] ~ button.btnSettings {     background-color : white ; }
1694732822

Edited 1694732942
Scott C.
Forum Champion
Sheet Author
API Scripter
Compendium Curator
Note that show to players does not give edit access to the sheet, which is needed to see the custom character sheet. Without edit access, all a player can see in the character is the bio (assuming they have view access). I know you said that they do have edit access, but I'd double check that. Other than that, are you doing any styling to change the look or display of the default roll20 nav bar (to switch between bio, sheet, and a&a tab)
1694760577
vÍnce
Pro
Sheet Author
The sheet code is shared to everyone in the game, GM and Player alike.  AFAIK, a sheet cannot differentiate a player vs a gm.  So I would guess there's something buggy with journal permissions, and/or the "Show to Players" function. As an experiment I would try another sheet's code and see if the blank page issue persists.