Skip to content
This repository has been archived by the owner on May 13, 2024. It is now read-only.

Data and data files

Andrew Brehaut edited this page Aug 1, 2017 · 4 revisions

Manticore is meaningless without the data from the various 13th Age monster lists. This data is entered into the application via JSON files. The system requires at least one file, data.json that is found in the repository in the static\data\ folder. For users who wish to host their own version of Manticore with monster lists not found in the core 13th Age books, additional data can be added to custom.json in the same folder, and it will be used if found.

Datafiles

The data format trades off redundancy with clarity with the intent of making it as easy as reasonable to maintain the lists by hand as a lot of data entry happens manually.

The top level object is a mapping of book names to lists of monsters. The lists are ordered by level for convenience when editing them, and are otherwise ordered according to the monster lists in the appropriate book.

The individual monster records are tuple arrays rather than objects with named fields. This is a concession to brevity for entering the data by hand.

As a Typescript type definition this is (taken from data.ts):

//                    name,   level,  size,        type,   tags,     pagenumber
type MonsterRecord = [string, number, MonsterSize, string, string[], number];

type DataSet = {[index:string]: MonsterRecord[]};

There is a small test suite (tests/data.js) that exhaustively tests the data to ensure it matches the schema.

Datastructures

Clone this wiki locally