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

Personal tools

Difference between revisions of "Sheet.json"

From Roll20 Wiki

Jump to: navigation, search
m
m
(9 intermediate revisions by one user not shown)
Line 1: Line 1:
''Main Page:'' '''[[Building Character Sheets]]'''
+
{{revdate}}{{BCS}}{{stub}}
 +
 
 
{{NavSheetDoc}}
 
{{NavSheetDoc}}
{{stub}}
 
 
The '''<code>sheet.json</code>''' is a file required for character sheets that are submitted to Roll20. If you're just [[Using_Custom_Character_Sheets|using a custom sheet]] in your normal game, you don't need the <code>sheet.json</code>(in fact, you can't even use one).
 
The '''<code>sheet.json</code>''' is a file required for character sheets that are submitted to Roll20. If you're just [[Using_Custom_Character_Sheets|using a custom sheet]] in your normal game, you don't need the <code>sheet.json</code>(in fact, you can't even use one).
  
Line 11: Line 11:
 
See the instructions on {{repo|Roll20/roll20-character-sheets#creating-your-own github.com/Roll20/roll20-character-sheets#creating-your-own}}
 
See the instructions on {{repo|Roll20/roll20-character-sheets#creating-your-own github.com/Roll20/roll20-character-sheets#creating-your-own}}
  
===Description===
+
===instructions===
Write everything on a single line, and use <code>\n</code> to create line-breaks, and for non-ASCII characters, use html character code to make them display correctly.  
+
* the <code>instructions</code> field is written with [[markdown]]
 +
* Write everything on a single line, and use <code>\n</code> to create line-breaks
 +
* to write bullet points, place an extra <code>\n</code> if previous row isn't a bullet point
 +
* non-ASCII characters: use [https://html.com/character-codes/ html character code] to make them display correctly. E.g. <code>&amp;eacute;</code>, not <code>&eacute;</code>
 +
** [https://www.textfixer.com/html/html-character-encoding.php HTML Character Encoder]
 +
** also works for [https://www.w3schools.com/charsets/ref_utf_symbols.asp UTF8 symbols]: E.g. <code>&amp;#x2652;</code> or <code>&amp;#9810;</code> = &#9810;
 +
* Test result in [[Sheet Sandbox]]
  
<pre style="overflow:auto;white-space:pre-wrap;">"description": "D&#233;fini si les jets des nouvelles fiches sont public ou priv&#233;s par d&#233;faut."</pre>
+
Example:
 +
<pre data-language="markdown">"instructions": "Feuille de Personnage pour [Chroniques Oubli&amp;eacute;es Contemporain](http://www.black-book-editions.fr/produit.php?id=4349). Chroniques Oubli&amp;eacute;es Contemporain est le d&amp;eacute;riv&eacute; de Chroniques Oubli&amp;eacute;es Fantasy adapt&amp;eacute; pour jouer dans la p&amp;eacute;riode 1900-2100. Il permet de jouer des aventures du genre espionnage, commando militaire, enqu&amp;ecirc;tes polici&amp;egrave;res occultes, vampires contre garous, mutants, super-h&amp;eacute;ros, &amp;eacute;pouvante, pulp, apocalypse zombie, cyberpunk, et plus.\n\n* Version 3.9.2 (27/04/2021)\n* [Lisez-moi](https://github.com/Roll20/roll20-character-sheets/blob/master/ChroniquesOublieesContemporain/README.md)",</pre>
  
 
===Example===
 
===Example===
Line 88: Line 95:
 
}
 
}
 
</pre>
 
</pre>
 +
====translation====
 +
If your sheet uses [[i18n|translations]], you can also use them in your <code>sheet.json</code>.
 +
 +
* [https://github.com/Roll20/roll20-character-sheets/blob/master/DD5thEditionLegacy/sheet.json Old D&D 5E by Roll20 - sheet.json]
  
 
===Optional===
 
===Optional===
Line 99: Line 110:
 
* [[Sheet Sandbox]] Where you test the sheet.json
 
* [[Sheet Sandbox]] Where you test the sheet.json
 
* [[Default Sheet Settings]] optional feature
 
* [[Default Sheet Settings]] optional feature
 +
==See Also==
 +
* [https://cybersphere.me/publishing-sheets-to-github/ Publishing Sheets to GitHub] - blogpost by [[GiGs]]
  
<br>
 
<br>
 
 
[[Category:Character Sheet Creation]]
 
[[Category:Character Sheet Creation]]
 +
[[Category:Character Sheet Development]]
 +
[[Category:json]]

Revision as of 08:30, 20 July 2022


The sheet.json is a file required for character sheets that are submitted to Roll20. If you're just using a custom sheet in your normal game, you don't need the sheet.json(in fact, you can't even use one).

These can be tested with the Sheet Sandbox

Default Sheet Settings are optional things saved on the sheet.json.

Contents

Creating a sheet.json File

See the instructions on github.com/Roll20/roll20-character-sheets#creating-your-own

instructions

  • the instructions field is written with markdown
  • Write everything on a single line, and use \n to create line-breaks
  • to write bullet points, place an extra \n if previous row isn't a bullet point
  • non-ASCII characters: use html character code to make them display correctly. E.g. &eacute;, not é
  • Test result in Sheet Sandbox

Example:

"instructions": "Feuille de Personnage pour [Chroniques Oubli&eacute;es Contemporain](http://www.black-book-editions.fr/produit.php?id=4349). Chroniques Oubli&eacute;es Contemporain est le d&eacute;rivé de Chroniques Oubli&eacute;es Fantasy adapt&eacute; pour jouer dans la p&eacute;riode 1900-2100. Il permet de jouer des aventures du genre espionnage, commando militaire, enqu&ecirc;tes polici&egrave;res occultes, vampires contre garous, mutants, super-h&eacute;ros, &eacute;pouvante, pulp, apocalypse zombie, cyberpunk, et plus.\n\n* Version 3.9.2 (27/04/2021)\n* [Lisez-moi](https://github.com/Roll20/roll20-character-sheets/blob/master/ChroniquesOublieesContemporain/README.md)",

Example

sheet.json for roll20's kitchensink sheet example, contains all mandatory sections. kitchensink/sheet.json

{
  "html": "kitchensink.html",
  "css": "kitchensink.css",
  "authors": "Roll20 Team (@roll20app)",
  "roll20userid": "1",
  "preview": "kitchensink.png",
  "instructions": "**This is a test**\n\nYou can put Markdown-formatted instructions here for how to use your sheet. Please try to keep it moderately-short (500 characters or less is preferred).",
  "legacy": true
}

You can also use hyperlinks in the description-field.


Stargate-RPG/sheet.json Example:

  • "legacy": false, as the sheet have been updated to CSE
  • "useroptions" contains Default Sheet Settings that the GM can change for the game, affecting values & looks of newly created sheets.
{
  "html": "stargate.html",
  "css": "stargate.css",
  "authors": "Andreas J.",
  "roll20userid": "1223200",
  "preview": "stargate_preview.png",
  "instructions": "Official character sheet for the 'Stargate RPG' by Wyvern Gaming.\n\n* [Character Sheet Documentation](https://wiki.roll20.net/Stargate)",
  "useroptions": [
    {
      "attribute": "show_name",
      "displayname": "Show name in rolls? ",
      "type": "select",
      "options": [
        "Yes|{{subtitle=@{character_name} }}",
        "No| "
      ],
      "default": "{{subtitle=@{character_name} }}",
      "description": "Determine if newly created characters displayed their names in rolls by default. GMs can find useful to hide the names of NPCs in some situations. This option can be be later changed on individual sheets from the 'Settings-page.'"
    },
    {
      "attribute": "whisper",
      "displayname": "Whisper Rolls to GM?",
      "type": "checkbox",
      "value": "/w gm",
      "description": "Determine if newly created characters only shows their rolls to the GM by default. Players and GMs can sometime find it useful to hide a roll from the other players if a secret roll needs to be made. This option can be be later changed on individual sheets from the 'Settings-page.'"
    },
    {
      "attribute": "campaign",
      "displayname": "Campaign Name: ",
      "type": "text",
      "value": "",
      "description": "Writes the campaign name on newly created character sheets."
    },
    {
      "attribute": "td",
      "displayname": "Tension die?",
      "type": "select",
      "options": [
        "d4|d4",
        "d6|d6",
        "d8|d8",
        "d10|d10",
        "d12|d12"
      ],
      "default": "d6",
      "description": "Determine what the Tension Die is for newly created character."
    }
  ],
  "legacy": false
}

translation

If your sheet uses translations, you can also use them in your sheet.json.

Optional

Following things can be included to the file, but are not mandatory:

Related Pages

See Also