Reference
Medical settings
Injuries and treatment: the body parts, injury types, treatments and how likely an injury is. Every field is optional; a field left out keeps the game's default. Several mods can supply one: they apply in load order, later fields winning (per key for parts, severities, injuries and treatments; an injury or treatment given again replaces the old one). See Injuries and treatment.
- Content type
medical- Files
data/medical.json- Shape
- One settings object (a file may hold the object itself)
- Patch target
medical:<id>, for examplemedical:core.medical- In the base game
- 1 record
- Guide
- Injuries and treatment
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.
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
id | id | Yes | Namespaced id, e.g. "core.player.rory-calder" | |
parts | map (key: value) | |||
parts.<key> | object | Yes | A body part's name, what an injury there does, and the mark an aggravated one leaves. | |
parts.<key>.name | text | |||
parts.<key>.effects | object | What an injured part does to your game at moderate severity (minor and serious scale it, see severities). Percentages are how much worse. | ||
parts.<key>.effects.scoring | number, 0 to 30 | % wider on trebles and singles. | ||
parts.<key>.effects.doubles | number, 0 to 30 | % wider on doubles and the bull. | ||
parts.<key>.effects.rhythm | number, 0 to 60 | % streakier: tempo and rhythm come and go more. | ||
parts.<key>.effects.stamina | number, 0 to 60 | % faster in-match fatigue. | ||
parts.<key>.effects.eyesight | number, 0 to 20 | Eyesight points lost on the oche. | ||
parts.<key>.effects.composure | number, 0 to 20 | Composure points lost on the oche (it's on your mind). | ||
parts.<key>.effects.fatigueFloor | number, 0 to 0.6 | Fatigue never drops below this while it lasts. | ||
parts.<key>.effects.training | number, 0 to 1 | Share of training gains lost. | ||
parts.<key>.wear | object | Aggravating it (playing on and making it worse) costs this attribute for good. | ||
parts.<key>.wear.attribute | one of the options | Yes | Options: scoring, finishing, checkoutKnowledge, consistency, tempoControl, bullAccuracy, composure, resilience, crowdHandling, concentration, stamina, fitness, eyesight. | |
parts.<key>.wear.points | number, 0 to 5 | Yes | ||
severities | map (key: value) | How each severity scales a part's effects, the weeks to heal, and the healing speed. | ||
severities.<key> | object | Yes | ||
severities.<key>.effects | number, 0 to 5 | |||
severities.<key>.weeks | number, 0.1 to 5 | |||
severities.<key>.recovery | number, 0.1 to 3 | |||
risk | object | How likely an injury is, week by week. | ||
risk.base | number, 0 to 0.1 | Everyday wear, per week, for an average 30-year-old. | ||
risk.fitness | number, 0 to 0.05 | Fitness 50 is neutral; each point below adds this share (above, takes it off). | ||
risk.ageFrom | whole number, 16 to 60 | Age wear starts to add up from... | ||
risk.perYear | number, 0 to 0.3 | ...adding this share per year. | ||
risk.overtrainHours | number, 0 to 60 | Practice hours a week (not counting rest) before it's over-training... | ||
risk.perHour | number, 0 to 0.02 | ...each hour over adds this chance. | ||
risk.fatigueFrom | number, 0 to 1 | Fatigue from which the body is more fragile, and the extra share at full fatigue. | ||
risk.fatigue | number, 0 to 3 | |||
risk.tired | number, 0 to 0.1 | A tired workload adds this chance (overloaded and burnout strains are in load.json). | ||
risk.graceWeeks | whole number, 0 to 52 | Weeks after an injury clears before everyday wear can bring another. | ||
risk.max | number, 0 to 0.3 | Never above this chance a week. | ||
risk.reinjury | number, 0 to 10 | Coming back early: the same part is this much more likely to go again... | ||
risk.reinjuryWeeks | whole number, 0 to 52 | ...for this many weeks. | ||
rehab | object | |||
rehab.returnAt | number, 0.3 to 0.95 | Healed share at which you're fit to play again (the return-to-play call). | ||
rehab.taper | number, 0 to 1 | Share of an injury's effects that fade as it heals. | ||
rehab.setback | number, 0 to 1 | Healed share lost when it gets worse. | ||
defaults | map (key: value) | The treatment you start on for each severity until you choose. | ||
strain | map (key: value) | |||
sitOut | id | Namespaced id, e.g. "core.player.rory-calder" | ||
injuries | map (key: value) | |||
injuries.<key> | object | Yes | A kind of injury: where it is, how long it takes and who gets it. | |
injuries.<key>.name | text | Yes | As the physio says it, e.g. "Rotator cuff strain" | |
injuries.<key>.part | one of the options | Yes | Options: shoulder, elbow, wrist, back, knee, foot, eyes. | |
injuries.<key>.weeks | one of several shapes | Yes | Weeks to heal at moderate severity with plain rest (minor and serious scale it). | |
| Shape 1: whole number, 1 to 52 | ||||
| Shape 2: pair [whole number, 1 to 52, whole number, 1 to 52] | ||||
injuries.<key>.severity | object | How likely each severity is when it happens (default 6 / 3 / 1). | ||
injuries.<key>.severity.minor | number, at least 0 | |||
injuries.<key>.severity.moderate | number, at least 0 | |||
injuries.<key>.severity.serious | number, at least 0 | |||
injuries.<key>.weight | number, at least 0 | 1 | How often it's this one, among injuries with the same cause. | |
injuries.<key>.ageWeight | number, -1 to 1 | 0 | Extra weight per year of age over 30 (− for injuries of the young). | |
injuries.<key>.causes | list, at least 1 item | ["wear"] | ||
injuries.<key>.ai | true or false | true | Computer players in the living world can get it too (default true). | |
injuries.<key>.description | text | |||
treatments | map (key: value) | |||
treatments.<key> | object | Yes | A way of treating an injury: what it costs, how fast it heals and whether you play. | |
treatments.<key>.name | text | Yes | ||
treatments.<key>.description | text | |||
treatments.<key>.cost | whole number, 0 to 100,000 | 0 | Paid once, when you start it. | |
treatments.<key>.weekly | whole number, 0 to 10,000 | 0 | Paid each week while it lasts. | |
treatments.<key>.physioFree | true or false | false | A physio on your staff does it: no weekly cost. | |
treatments.<key>.sitOut | true or false | false | You miss events while on it (entries refunded). | |
treatments.<key>.recovery | number, 0 to 5 | 1 | Healing speed (1 = plain rest). | |
treatments.<key>.bite | number, 0 to 2 | 1 | How hard the injury bites while on it (1 = in full). | |
treatments.<key>.aggravation | number, 0 to 0.5 | 0 | Chance each week you play on it that it gets worse (a physio lowers it). | |
treatments.<key>.severities | list | Only for these severities / parts (default any). | ||
treatments.<key>.parts | list | |||
treatments.<key>.safeReturn | true or false | false | Coming back from it carries no extra risk of doing it again. | |
treatments.<key>.order | whole number | 0 | Where it sits in the list (lower first). | |
Example#
A record from the base game’s data/medical.json, shortened.
{
"id": "core.medical",
"strain": {
"minor": "core.injury.overuse",
"moderate": "core.injury.worn-shoulder"
},
"sitOut": "core.treatment.rest",
"parts": {
"shoulder": {
"name": "Throwing shoulder",
"effects": {
"scoring": 3,
"doubles": 2.5,
"stamina": 15,
"training": 0.5
},
"wear": {
"attribute": "stamina",
"points": 1
}
},
"elbow": {
"name": "Throwing elbow",
"effects": {
"scoring": 3,
"doubles": 2,
"rhythm": 20,
"training": 0.5
}
},
"wrist": {
"name": "Throwing wrist",
"effects": {
"scoring": 2,
"doubles": 4,
"rhythm": 12,
"training": 0.5
}
},
"back": {
"name": "Back",
"effects": {
"scoring": 1.5,
"doubles": 1.5,
"stamina": 20,
"fatigueFloor": 0.2,
"composure": 1,
"training": 0.6
},
"wear": {
"attribute": "fitness",
"points": 1
}
},
"knee": {
"name": "Knee",
"effects": {
"stamina": 15,
"rhythm": 6,
"fatigueFloor": 0.15,
"training": 0.3
},
"wear": {
"attribute": "fitness",
"points": 1
}
},
"foot": {
"name": "Foot and ankle",
"effects": {
"stamina": 12,
"rhythm": 8,
"fatigueFloor": 0.1,
"training": 0.25
}
},
"eyes": {
"name": "Eyes",
"effects": {
"eyesight": 10,
"doubles": 1.5,
"composure": 1,
"training": 0.1
},
"wear": {
"attribute": "eyesight",
"points": 1
}
}
},
"severities": {
"minor": {
"effects": 0.6,
"weeks": 0.5,
"recovery": 1
},
"moderate": {
"effects": 1,
"weeks": 1,
"recovery": 1
},
"serious": {
"effects": 1.7,
"weeks": 2.2,
"recovery": 0.8
}
},
"risk": {
"base": 0.005,
"fitness": 0.012,
"ageFrom": 30,
"perYear": 0.05,
"overtrainHours": 24,
"perHour": 0.0015,
"fatigueFrom": 0.5,
"fatigue": 0.6,
"tired": 0.004,
"graceWeeks": 8,
"max": 0.06,
"reinjury": 2.5,
"reinjuryWeeks": 8
},
"rehab": {
"returnAt": 0.75,
"taper": 0.6,
"setback": 0.25
},
"defaults": {
"minor": "core.treatment.manage",
"moderate": "core.treatment.rest",
"serious": "core.treatment.rest"
},
"injuries": {
"core.injury.rotator-cuff": {
"name": "Rotator cuff strain",
"part": "shoulder",
"weeks": [
2,
4
],
"weight": 3,
"ageWeight": 0.05,
"causes": [
"wear",
"training",
/* … 1 more */
]
},
"core.injury.tennis-elbow": {
"name": "Tennis elbow",
"part": "elbow",
"weeks": [
3,
5
],
"weight": 2,
"ageWeight": 0.03,
"causes": [
"training",
"wear"
]
},
"core.injury.wrist-tendon": {
"name": "Wrist tendon strain",
"part": "wrist",
"weeks": [
2,
3
],
"weight": 3,
"causes": [
"training",
"wear",
/* … 1 more */
]
},
"core.injury.lower-back": {
"name": "Lower back strain",
"part": "back",
"weeks": [
1,
3
],
"weight": 3,
"ageWeight": 0.06,
"causes": [
"wear",
"load"
]
},
"core.injury.slipped-disc": {
"name": "Slipped disc",
"part": "back",
"weeks": [
4,
7
],
"weight": 0.4,
"ageWeight": 0.05,
"severity": {
"minor": 0,
"moderate": 2,
"serious": 3
}
},
"core.injury.knee-tendinitis": {
"name": "Knee tendinitis",
"part": "knee",
"weeks": [
2,
4
],
"weight": 1.5,
"ageWeight": 0.05,
"causes": [
"wear",
"load"
]
},
"core.injury.plantar-fasciitis": {
"name": "Plantar fasciitis",
"part": "foot",
"weeks": [
3,
6
],
"weight": 1,
"ageWeight": 0.03,
"causes": [
"wear",
"load"
]
},
"core.injury.twisted-ankle": {
"name": "Twisted ankle",
"part": "foot",
"weeks": [
1,
3
],
"weight": 1,
"ageWeight": -0.02
},
"core.injury.eye-strain": {
"name": "Eye strain",
"part": "eyes",
"weeks": [
1,
2
],
"weight": 1,
"ageWeight": 0.08,
"causes": [
"wear",
"training",
/* … 1 more */
],
"severity": {
"minor": 8,
"moderate": 2,
"serious": 0
}
},
"core.injury.overuse": {
"name": "Overuse strain",
"part": "elbow",
"weeks": [
1,
2
],
"causes": [
"load"
],
"ai": false
},
"core.injury.worn-shoulder": {
"name": "Worn-out shoulder",
"part": "shoulder",
"weeks": [
2,
4
],
"causes": [
"load"
],
"ai": false
}
},
"treatments": {
"core.treatment.optician": {
"name": "Optician: new prescription",
"description": "An eye test and fresh lenses. Quick, cheap and you keep playing.",
"cost": 150,
"recovery": 3,
"bite": 0.5,
"parts": [
"eyes"
],
"safeReturn": true,
"order": 5
},
"core.treatment.manage": {
"name": "Manage it and play on",
"description": "Ice, strapping and lighter practice. You keep playing, but it heals slowly and can flare up.",
"recovery": 0.7,
"aggravation": 0.06,
"order": 10
},
"core.treatment.injection": {
"name": "Take medicine",
"description": "Masks the pain so you play close to your best, but it heals slower and hides the warning signs.",
"cost": 300,
"recovery": 0.5,
"bite": 0.4,
"aggravation": 0.12,
"severities": [
"minor",
"moderate"
],
"parts": [
"shoulder",
"elbow",
/* … 4 more */
],
"order": 20
},
"core.treatment.physio": {
"name": "Physio programme",
"description": "Rest with treatment and rehab sessions: back sooner. Free with a physio on your team.",
"weekly": 140,
"physioFree": true,
"sitOut": true,
"recovery": 1.5,
"order": 30
},
"core.treatment.specialist": {
"name": "Specialist and rehab plan",
"description": "Scans, a proper diagnosis and a structured plan. Expensive, but quick and you come back without the worry of doing it again.",
"cost": 650,
"sitOut": true,
"recovery": 1.8,
"severities": [
"moderate",
"serious"
],
"safeReturn": true,
"order": 35
},
"core.treatment.rest": {
"name": "Complete rest",
"description": "The darts go in a drawer until it heals. Free, but you miss events.",
"sitOut": true,
"recovery": 1.1,
"order": 40
},
"core.treatment.surgery": {
"name": "Surgery",
"description": "Fix it properly. The biggest bill, but the fastest way back from a serious injury, and for good.",
"cost": 3500,
"sitOut": true,
"recovery": 2,
"severities": [
"serious"
],
"parts": [
"shoulder",
"elbow",
/* … 4 more */
],
"safeReturn": true,
"order": 45
}
}
}