Character Vault
Any Concept / Any System
Your System Come To Life
Roll20 for Android
Streamlined for your Tablet
Roll20 for iPad
Streamlined for your Tablet

Personal tools

Character Sheet Development/Bugs & Quirks

From Roll20 Wiki

Revision as of 12:41, 9 June 2024 by Andreas J. (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This page lists observed Bugs and odd quirks of the Character Sheet-system, especially those related to coding, editing & updating character sheets.

  • See Restrictions for quirks that aren't explicit bugs.
  • See BCS/Updates for previously fixed bugs, of bugs that may have a fix under public testing on the Dev Server

Note: The "Month Year" mention at end is a guaranteed last observation of the bug, or when it was documented.



  • Inline Styles Sanitization(Forum) - Uploading new sheets to roll20 causes any inline CSS in the HTML to no longer work, and this isn't seen in Sheet Sandbox. - May 2024


Sheet code/editing bugs that doesn't fit other categories.


  • translation special character bug discussion(Forum) May 2021
    • avoid placing symbols & special characters in translations. Could HTML Entities be used instead?
  • language-dependent sheet changes doesn't seem to work. See #9053 for details. Summer 2021. Discussions of the bug:
  • Sheet Sandbox & Translation key refresh issue -- May 2022
    • you need to manually reload page if you use getTranslationByKey() and have uploaded new translation.json in the sandbox
    • getTranslationByKey() throws a the key is not in the translation object error when the key is in the translation file, in the sandbox if you don't make the page reload.
    • seems the translation object as far as getTranslationByKey() is concerned is not updated when you use the sandbox widget to upload a fresh translation.json

Repeating Sections

div.repcontainer:not(.editmode) div.repitem td button[type="action"],
div.repcontainer:not(.editmode) div.repitem th button[type="action"] {
    position: relative;
  • Sometimes Roll20 adds the repitembroken CSS class to repeating section row, which adds a red outline to the repeating item. The exact circumstances in which the repeating item is deemed broken are unclear:
    • this forum post from the Roll20 team says this happens when a deleted row is re-created with the same RowID
    • this forum post from Scott C. says this happens when creating new row and editing existing rows with a single setAttrs()
    • this post says that it happens when two rows share the same RowID. When that happens, all interactions with the repeating section using that RowID will affect both rows, since they are essentially indistinguishable.
    • It has also been observed when creating new, non-duplicated rows with custom RowID using setAttrs() in a new blank character, so there might be other circumstances that trigger this behavior


Bugs in how sheetworkers function.

JavaScript Restrictions


Bugs related to Character Sheet Enhancement(CSE).

  • HTML replacement characters have been observed to sometimes be converted prematurely after the CSE update was made which can cause sheet roll macros to break.
    • Only appears to happen in CSE-mode. reported by Ayethin & Vince
    • Workaround: since nested quotes and/or queries that include special characters may break in CSE-mode, try substituting the ampersand character as well. ie " should be changed to ".
    • Roll20 have under testing(Forum) improvements to make html characters redundant

Legacy Sheet

Bugs that only affect Legacy Character Sheets(LCS).

  • In legacy mode, the number comparison functions stop working if the number you are comparing is below zero. mention June 2021(Forum)


API/Mod changes to linked token bars do not trigger sheetworkers, however Mods can be modfified to detect if a linked bar has been changed and in turn, change the linked attribute. TokenMod has been updated to detect and change linked attributes in this manner.


Bug affecting how sheets uploaded to the sheet repo work or function.

See Also