Importing a system: JSON, package, tables and Roll20
The routes for bringing in a builder system: the JSON, a .zip package with its licence, tables as CSV, Excel or link, and the Roll20 sheet with code mode.
A game system from the builder (its fields, rolls, rules, sheet and content) can be brought in from outside in four ways: the system's JSON, a .zip package with its licence and files, content tables as CSV, TSV, JSON, Excel or from a link, and a Roll20 sheet with the code mode. What is not understood is discarded with a warning, never silently.
Where it is
In the system builder, in the Workshop (Systems, see System Builder: first steps):
| What | Where |
|---|---|
| The system's JSON | The whole system, Import a system |
| A package (.zip) | The More actions menu in the header, Import package (.zip) |
| A content table | The builder's content section, when adding entries to a catalogue |
| A Roll20 sheet | The builder's code mode; see Code mode (Roll20 style) |
Requirements and permissions
An account that creates systems: the plan limits how many you can have (Plans, limits and downgrading). Importing only changes the system you have open, creates no other, and it can be undone.
The system's JSON
It is the same file Download file gives you, so it works for copies and for moving a system to another account. You can paste the text or bring the file, and before applying a summary is shown of what will be imported. You can add to what is there or choose Replace. Repeated keys are renamed. The shape of the file and a downloadable example are in File formats for importing.
A package
A package is a .zip with a roliando.json and the files the system carries. It declares its licence, authors and version; before applying it a summary shows its name, version, licence and fields (Choose a package (.zip). It replaces what it carries (fields, sheet, rules, style, translations…) and leaves the rest; you can undo it.). Apply to the system applies it and it can be undone. If the package is malformed, the notice says what is missing (for example the licence or a file it mentions). See also Bazaar: shared repositories of systems, modules and packs, where packages are published and installed.
Content tables
A system's catalogues (weapons, items, spells, creatures) are filled by importing a table: pasted, from a CSV, TSV, JSON file or an Excel sheet, or from a link (Google Sheets, GitHub or any public CSV or JSON). Each column of the source is matched by itself with the target column of the same name, and you can fix it with Source column and where it goes before importing the entries; a column you do not want is marked as ignored. With a link you can ask to remember it, to bring it again when it changes.
A Roll20 sheet
The code mode compiles what you write with Roll20's words (attr_, @{}, repeating_, rolltemplate) into Roliando's engine. It is the way to take a game's sheet over without rebuilding it by hand: Code mode (Roll20 style). Roll20 characters are imported separately as sheets: Importing characters: D&D Beyond, HexSheet, Roll20 and Roliando.
Known limits
- A package is applied onto the open system: it replaces what it brings and leaves the rest.
- Your system's texts are not translated by themselves; translations are uploaded as a separate dictionary.
- Only what you have the right to use is imported: the package carries its licence in plain view.
Frequent problems
"Invalid JSON." Look at the detail the notice gives: it is usually a comma or a quote.
"The field key is missing." Each field needs its key.
"Not a Roliando package." The .zip must carry roliando.json at its root.
See also
File formats for importing, System Builder: first steps, Fields and formulas, Code mode (Roll20 style), Importing characters: D&D Beyond, HexSheet, Roll20 and Roliando, Bazaar: shared repositories of systems, modules and packs.