Skip to content

Creating sheets

In RPG Desk, a sheet is a web page: HTML for the fields, CSS for the looks and, if needed, JavaScript for the math. rpgdesk.js, RPG Desk’s library, connects the page to the room:

  • what the player writes is kept in the room and shows up right away for the game master;
  • roll buttons roll in the chat, with the 3D dice, for everyone;
  • only the sheet’s owner and the game masters write; others only read, and rpgdesk.js locks the fields by itself;
  • parts of the sheet can be for the game master only, and they never even reach the players.

The sheet below is working. Type in the fields and click Roll Strength:

Minimal sheetDownload the .htmlOpen in a new tab ↗

Test mode: the data stays in this browser only. The band in the corner switches the role (GM, sheet owner, another player) and shows the log of rolls.

It does not have a single line of JavaScript: each field has a data-field attribute, and each roll button, a data-roll.

With an AI

Copy RPG Desk’s guide to the AI (ChatGPT, Claude, Gemini…), describe the sheet and install the file it gives back. See Create with an AI.

By hand, in one file

One .html file, with the manifest inside and the two rpgdesk.js lines. Start with the tutorial.

In a package

Several files (HTML, CSS, JavaScript, images, fonts) in a .zip, with more than one sheet or table. See Packages with several files.

  1. Test it in the browser: open the sheet’s file (double-click it). Outside RPG Desk, rpgdesk.js enters test mode, with the data in the browser and a band in the corner to switch roles.
  2. Install it in the room: as game master, in Room settings → Plugins → Install plugin…, choose the .html (or the .zip). RPG Desk checks the file and tells you what to fix, if anything.
  3. Use it: the sheet shows up in New sheet…, in the library.

For details, the Reference has the manifest, the attributes, the rpgdesk.js API, the verifier and the limits.