Realms of Shod logo

Realms of Shod

Overview
  • Getting Started

    • Quickstart
    • Storytelling
    • Using the H.U.B.
    • Sculpting Realms
    • Collaborating
    • Coins
  • Understanding the Interface

    • Navigation
    • Media Controls
    • Story Tools
  • Realms Sandbox

    • Play Modes
    • Gamestream
    • Transcripts
    • Compendium
  • World Building

    • Import / Export
    • Entities
  • Integrations

    • Discord
  • API Reference

    • Authentication
    • Realms API
    • Compendium API
    • Sessions API
  • Support

    • FAQs
    • Contact & Feedback
    • Privacy
Import / Export

World Building

Import / Export

Compendium exchange files let you seed a realm's compendium with entities and relationships before play begins, or carry lore from one realm to another.


An exchange file is a plain JSON document you upload through the realm compendium settings. When imported, every entity in the file is added to the compendium; V2 files also create the relationships between them. Existing entities with the same ID are updated in place rather than duplicated.

Exchange files come in two versions. V1 supports entities only and is suitable for simple lore drops. V2 adds a relationships array for richer world graphs.


Both versions share the same envelope fields. The version field determines which additional fields are required.

version

Must be the string "2".

entities

Array of entity objects. Each entity requires id, type, name, description, notes, and accessIds.

{
  "version": "2",
  "exportedAt": "2024-03-01T00:00:00Z",
  "exportedBy": "gamelord@example.com",
  "entities": [
    {
      "id": "ent_01",
      "type": "character",
      "name": "Seraphine Voss",
      "description": "A disgraced knight seeking redemption in the northern wastes.",
      "notes": null,
      "accessIds": null
    },
    {
      "id": "ent_02",
      "type": "city",
      "name": "Ashenveil",
      "description": "A fortified city built into the cliffside overlooking the Ember Sea.",
      "notes": null,
      "accessIds": null
    }
  ]
}

relationships

Array of relationship objects. Each requires id, fromEntityId, toEntityId, type, and accessIds. The fromEntityId and toEntityId must reference ids defined in the entities array.

{
  "version": "2",
  "exportedAt": "2024-03-01T00:00:00Z",
  "exportedBy": "gamelord@example.com",
  "entities": [
    {
      "id": "ent_01",
      "type": "character",
      "name": "Seraphine Voss",
      "description": "A disgraced knight seeking redemption in the northern wastes.",
      "notes": null,
      "accessIds": null
    },
    {
      "id": "ent_02",
      "type": "city",
      "name": "Ashenveil",
      "description": "A fortified city built into the cliffside overlooking the Ember Sea.",
      "notes": null,
      "accessIds": null
    },
    {
      "id": "ent_03",
      "type": "faction",
      "name": "The Iron Accord",
      "description": "A coalition of merchant guilds that secretly controls the city's trade routes.",
      "notes": null,
      "accessIds": null
    }
  ],
  "relationships": [
    {
      "id": "rel_01",
      "fromEntityId": "ent_01",
      "toEntityId": "ent_02",
      "type": "resides_in",
      "accessIds": null
    },
    {
      "id": "rel_02",
      "fromEntityId": "ent_01",
      "toEntityId": "ent_03",
      "type": "affiliated_with",
      "accessIds": null
    }
  ]
}

The type field on each entity must be one of the values below.

Character

TypeDescription
characterA named individual: player character, NPC, or historical figure.
creatureA non-humanoid being, monster, or animal.
speciesA biological species or lineage.
raceA cultural or racial group of humanoids.

Location

TypeDescription
cityA large, populous urban settlement.
townA mid-sized settlement with established trade.
villageA small rural community.
settlementA generic inhabited place that does not fit other location types.
regionA broad geographic area such as a kingdom or province.
territoryLand claimed or controlled by a specific faction.
landmarkA notable fixed point of interest.
natural_featureA geographic feature: mountain, forest, river, etc.
ruinThe remnants of a destroyed or abandoned place.

Organization

TypeDescription
factionA political or ideological group.
guildA trade or craft organization.
political_bodyA governing council, senate, or ruling body.
cultA secretive religious or devotional group.
religionA formalized faith or spiritual tradition.
merchantA trading enterprise or merchant company.
armyAn organized military force.
clanA kinship group or extended family unit.
dynastyA ruling lineage across generations.
sanctuaryA protected organization offering refuge.
militaryA generic military organization or branch.
residenceA noble house, estate, or household.

Item

TypeDescription
weaponA named weapon or class of weapons.
magicA spell, enchantment, or magical effect.
heirloomAn item passed down through a family or lineage.
relicA sacred or historically significant object.
toolA practical implement or instrument.
artifactA powerful or unique constructed object.
consumableA potion, food, or other single-use item.
itemA generic item that does not fit other item types.

Event

TypeDescription
battleA military engagement or skirmish.
disasterA catastrophic event: plague, flood, collapse.
upheavalA political or social revolution or shift.
festivalA celebration or recurring cultural ceremony.
meetingA significant gathering or summit.
treatyA formal agreement between parties.
eventA generic historical or in-world event.

Misc

TypeDescription
vehicleA ship, carriage, airship, or other transport.
mapA chart, diagram, or navigational document.
letterA written correspondence or message.
currencyA coin, token, or monetary system.
lawA decree, edict, or legal code.
documentA manuscript, contract, or official record.
resourceA natural or manufactured material resource.
technologyAn invention, technique, or technological system.
unknownType is not yet determined.

Establishment

TypeDescription
shopA retail store or vendor stall.
marketplaceA market district or trading post.
templeA place of worship.
businessA generic commercial establishment.
archiveA library, records hall, or repository of knowledge.
treasuryA vault or financial institution.
healing_centerA hospital, apothecary, or healing house.
political_centerA courthouse, palace, or seat of governance.
academyA school, university, or training institution.

The type field on each relationship must be one of the values below. Relationships are directional: fromEntityId is the subject and toEntityId is the object (e.g. Seraphine resides_in Ashenveil).

Organizational

TypeDescription
member_ofSubject belongs to the object organization.
affiliated_withSubject has a loose association with the object.
parent_ofSubject is a parent organization of the object.
governsSubject holds authority over the object.
regulated_bySubject is subject to rules or oversight from the object.

Locational

TypeDescription
resides_inSubject lives or is based in the object location.
exists_withinSubject is physically contained inside the object.
found_inSubject can be found or encountered in the object location.
operates_withinSubject conducts its activities in the object location.
adjacent_toSubject and object are neighboring locations.
located_nearSubject is in the general vicinity of the object.
travels_toSubject moves toward or visits the object.

Ownership

TypeDescription
ownsSubject has legal or recognized ownership of the object.
possessesSubject currently holds or carries the object.
hasSubject has a general association or attribute tied to the object.

Social

TypeDescription
ally_ofSubject and object are in a cooperative relationship.
enemy_ofSubject and object are in active opposition.
competes_withSubject and object are rivals.
trades_withSubject and object exchange goods or services.
influencesSubject has sway over the object's behavior or decisions.
seeksSubject is pursuing or searching for the object.

Employment

TypeDescription
employsSubject has hired the object.
servesSubject works for or is loyal to the object.
leadsSubject is in charge of the object.
commandsSubject has direct authority over the object.

Commerce

TypeDescription
createsSubject produces or manufactures the object.
acceptsSubject accepts the object as payment or offering.
purchasesSubject buys or has bought the object.

General

TypeDescription
associated_withA catch-all for any meaningful connection not covered by other types.

Both entities and relationships have two optional visibility fields.

accessIds

An array of player user IDs who can view this entity or relationship. Set to null to make it visible to all realm members. When importing, these IDs must correspond to existing users in the realm.

notes

A free-text field on entities for private Gamelord notes. Notes are not visible to players even if accessIds is null. Set to null to omit.


A complete V2 exchange file with three entities, two relationships, and selective access control on one entity and one relationship.

{
  "version": "2",
  "exportedAt": "2024-06-15T12:00:00Z",
  "exportedBy": "worldbuilder@example.com",
  "entities": [
    {
      "id": "ent_kael",
      "type": "character",
      "name": "Kael Dawnspire",
      "description": "A former war mage who now sells information out of a cramped tower in the merchant district.",
      "notes": "Knows about the vault beneath the old temple. Owes a debt to the thieves guild.",
      "accessIds": ["player_marlowe", "player_britta"]
    },
    {
      "id": "ent_ironhold",
      "type": "city",
      "name": "Ironhold",
      "description": "A sprawling trade hub built around a collapsed volcano, now home to the largest smithing guilds on the continent.",
      "notes": null,
      "accessIds": null
    },
    {
      "id": "ent_ashen",
      "type": "guild",
      "name": "The Ashen Circle",
      "description": "A secretive mage guild operating out of Ironhold, specializing in fire-based transmutation.",
      "notes": null,
      "accessIds": null
    }
  ],
  "relationships": [
    {
      "id": "rel_01",
      "fromEntityId": "ent_kael",
      "toEntityId": "ent_ironhold",
      "type": "resides_in",
      "accessIds": null
    },
    {
      "id": "rel_02",
      "fromEntityId": "ent_kael",
      "toEntityId": "ent_ashen",
      "type": "member_of",
      "accessIds": ["player_marlowe", "player_britta"]
    }
  ]
}
← Previous: CompendiumNext Entities →