Reference

Staff roles

Content type
staffRoles
Files
data/staff/roles.json, data/staff/roles/
Shape
A list of records, each with its own id
Patch target
staffRole:<id>, for example staffRole:core.staff.mental-coach
In the base game
12 records
Guide
Staff roles

Fields#

Indented fields belong to the field above them. [] marks the items of a list. A field that is not required may be left out; the default is used.

FieldTypeRequiredDefaultNotes
ididYesNamespaced id, e.g. "core.player.rory-calder"
nametext, up to 40 charactersYes
shorttext, up to 3 charactersYesTwo or three letters for badges, e.g. "DC".
icontext, up to 8 charactersAn emoji shown beside the name.
descriptiontextYes
skillslist, 1 to 4 itemsYesThe skills people in this role have; the first is their speciality.
effectslist, up to 12 items[]
effects[].hookone of the optionsYesOptions: training, practice, coachCall, confidenceFloor, moraleFloor, recovery, fatigueRecovery, injuryRecovery, injuryChance, followers, image, mediaSoften, travelCost, travelFatigue, weeklyCosts, revealFit, scouting, sponsorOffers, offerVolume, offerValue, negotiation, commission, burnout, travelLoad, kitCare.
effects[].skillone of the optionsYesThe skill that drives it: strength = value × skill / 20. Options: coaching, psychology, fitness, physio, negotiation, contacts, reach, tact, media, logistics, finance, analysis, technical, practice.
effects[].valuenumber, -100 to 100YesFull strength at skill 20
effects[].areaone of the optionstraining only: which area (all darts areas when omitted). Options: scoring, doubles, bull, fitness, mental.
availabilityobject{"tierMax": 5, "followersMin": 0}
availability.tierMaxwhole number, 1 to 55You must be in this tier or better (1 = top) to hire one
availability.followersMinwhole number, at least 00
availability.minAgewhole number, 0 to 99
wageslistYesTypical weekly wage for 1★ … 5★.
maxwhole number, 1 to 51How many you may employ at once.
candidateswhole number, 0 to 83Candidates in the market each month.
fromone of the options"staff""players": candidates are real lower-tier players from the world (a practice partner). Options: staff, players.
movestrue or falsetrue
legacyone of the optionsStaff of this old kind in saves from before roles existed become this role. Options: coach, mentalCoach, fitnessCoach.
orderwhole number100Display order (lower first).
arenaone of the optionsOptions: performance, business.

Example#

A record from the base game’s data/staff/roles.json, shortened.

{
  "id": "core.staff.mental-coach",
  "name": "Mental performance coach",
  "short": "MC",
  "icon": "🧠",
  "description": "Builds the temperament for match darts and keeps your head up after a bad week.",
  "skills": [
    "psychology",
    "tact"
  ],
  "availability": {
    "minAge": 14,
    "tierMax": 5,
    "followersMin": 0
  },
  "effects": [
    {
      "hook": "training",
      "skill": "psychology",
      "value": 0.75,
      "area": "mental"
    },
    {
      "hook": "confidenceFloor",
      "skill": "psychology",
      "value": 30
    },
    {
      "hook": "moraleFloor",
      "skill": "tact",
      "value": 30
    },
    /* … 2 more */
  ],
  "wages": [
    60,
    130,
    240,
    /* … 2 more */
  ],
  "legacy": "mentalCoach",
  "arena": "performance",
  "order": 30
}

In your pack the record’s id starts with your pack’s id instead of core, unless you mean to replace this one.

Written for Darts Player Simulator 0.50.32. Built from the game's own schemas and its base pack.