A Foundry VTT game system: Basic Roleplaying d100 in a drab British agency that deals with crossings, where reality keeps a record of what belongs where and can be made to get it wrong. Contents: - rules.mjs as the single authority for every rule formula, with 40 rules and 132 spot-checked values. Nothing may restate a formula it defines. - 25 postings, each with a key characteristic, trained skills, talents and its own kit; a 175-item catalogue across four eras; 231 generated icons. - Reaction Lanes initiative, re-rolled every round including the first. - Coherence, and the Quiet Arts, which only ever arrive from a crossing gone wrong. - Graded defences: only a critical stops a critical. - Borrowed Authority — access as a record rather than a hacking roll. - A case generator, and a rules journal generated from rules.mjs so the book cannot drift from the code. Built compendia are committed so a remote Foundry needs only the files. node_modules is not; `npm install` restores it for rebuilding content. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
441 lines
9.1 KiB
JSON
441 lines
9.1 KiB
JSON
{
|
|
"Actor": {
|
|
"types": [
|
|
"character",
|
|
"npc",
|
|
"expedition"
|
|
],
|
|
"templates": {
|
|
"creature": {
|
|
"characteristics": {
|
|
"str": {
|
|
"value": 13
|
|
},
|
|
"siz": {
|
|
"value": 13
|
|
},
|
|
"con": {
|
|
"value": 13
|
|
},
|
|
"int": {
|
|
"value": 13
|
|
},
|
|
"pow": {
|
|
"value": 13
|
|
},
|
|
"dex": {
|
|
"value": 13
|
|
},
|
|
"cha": {
|
|
"value": 13
|
|
},
|
|
"edu": {
|
|
"value": 13
|
|
}
|
|
},
|
|
"marksmanship": {
|
|
"style": "reflex",
|
|
"chosenStyle": "reflex"
|
|
},
|
|
"speciesProfile": "baseline",
|
|
"locationDamage": {},
|
|
"hp": {
|
|
"value": 26,
|
|
"max": 26
|
|
},
|
|
"majorWound": {
|
|
"value": 9
|
|
},
|
|
"wounds": [],
|
|
"familiarities": {
|
|
"traditions": [
|
|
"tradition_home"
|
|
],
|
|
"environments": []
|
|
},
|
|
"combat": {
|
|
"defencesThisRound": 0,
|
|
"defenceTypeLock": "",
|
|
"stance": "normal",
|
|
"secondAttackUsed": false,
|
|
"aiming": {
|
|
"active": false,
|
|
"targetUuid": "",
|
|
"bonus": 0
|
|
}
|
|
},
|
|
"notes": "",
|
|
"coherence": {
|
|
"value": 10,
|
|
"max": 10,
|
|
"drift": []
|
|
}
|
|
}
|
|
},
|
|
"character": {
|
|
"templates": [
|
|
"creature"
|
|
],
|
|
"age": {
|
|
"chronological": 30,
|
|
"physiological": 30
|
|
},
|
|
"pursuits": [],
|
|
"biography": "",
|
|
"rank": ""
|
|
},
|
|
"npc": {
|
|
"templates": [
|
|
"creature"
|
|
],
|
|
"role": "",
|
|
"morale": {
|
|
"downThreshold": 2,
|
|
"note": ""
|
|
},
|
|
"naturalArmour": {
|
|
"value": 0
|
|
},
|
|
"tactics": ""
|
|
},
|
|
"expedition": {
|
|
"supply": {
|
|
"value": 8,
|
|
"max": 10
|
|
},
|
|
"power": {
|
|
"value": 6,
|
|
"max": 10
|
|
},
|
|
"integrity": {
|
|
"value": 10,
|
|
"max": 10
|
|
},
|
|
"integrityMode": "abstract",
|
|
"assets": [],
|
|
"members": [],
|
|
"journey": {
|
|
"destinationId": "",
|
|
"destinationName": "",
|
|
"destinationKnowledge": "rumoured",
|
|
"currentLeg": 0,
|
|
"elapsedDays": 0,
|
|
"siteTableId": "",
|
|
"hazardTableId": "",
|
|
"legs": []
|
|
},
|
|
"standings": [],
|
|
"notes": "",
|
|
"across": false,
|
|
"crossingModifier": 0,
|
|
"salvageEra": "modern"
|
|
}
|
|
},
|
|
"Item": {
|
|
"types": [
|
|
"skill",
|
|
"weapon",
|
|
"armour",
|
|
"gear",
|
|
"device",
|
|
"discovery",
|
|
"project",
|
|
"material",
|
|
"group",
|
|
"talent",
|
|
"power",
|
|
"vehicle",
|
|
"authority"
|
|
],
|
|
"templates": {
|
|
"physical": {
|
|
"massKg": 0,
|
|
"quantity": 1,
|
|
"equipped": false,
|
|
"carried": true,
|
|
"traditionIds": [
|
|
"tradition_home"
|
|
],
|
|
"description": ""
|
|
},
|
|
"describable": {
|
|
"description": ""
|
|
}
|
|
},
|
|
"skill": {
|
|
"templates": [
|
|
"describable"
|
|
],
|
|
"familyId": "",
|
|
"specialisationId": "",
|
|
"categoryId": "mental",
|
|
"base": {
|
|
"mode": "flat",
|
|
"value": 5,
|
|
"formula": ""
|
|
},
|
|
"value": 5,
|
|
"trainingCap": null,
|
|
"transferGroup": "",
|
|
"experienceTicked": false,
|
|
"experienceEligible": true,
|
|
"canBeTaught": true
|
|
},
|
|
"weapon": {
|
|
"templates": [
|
|
"physical"
|
|
],
|
|
"weaponClass": "melee",
|
|
"skillFamilyId": "",
|
|
"skillSpecialisationId": "",
|
|
"damage": {
|
|
"mode": "single",
|
|
"formula": "1d6",
|
|
"short": "",
|
|
"medium": "",
|
|
"long": ""
|
|
},
|
|
"appliesDamageModifier": true,
|
|
"woundType": "blunt",
|
|
"monofilament": false,
|
|
"fireMode": "",
|
|
"ranges": {
|
|
"short": 0,
|
|
"medium": 0,
|
|
"long": 0
|
|
},
|
|
"ammo": {
|
|
"capacity": 0,
|
|
"loaded": 0,
|
|
"reserve": 0,
|
|
"reloadRounds": 1
|
|
},
|
|
"energyPerShot": 0,
|
|
"damageTags": [
|
|
"kinetic"
|
|
],
|
|
"coherenceCost": 0
|
|
},
|
|
"armour": {
|
|
"templates": [
|
|
"physical"
|
|
],
|
|
"points": 1,
|
|
"ignoredBy": [],
|
|
"degradation": {
|
|
"current": 0,
|
|
"max": 4
|
|
},
|
|
"coherenceCost": 0
|
|
},
|
|
"gear": {
|
|
"templates": [
|
|
"physical"
|
|
],
|
|
"powerDraw": 0,
|
|
"skillBonus": {
|
|
"skillFamilyId": "",
|
|
"value": 0
|
|
},
|
|
"researchFacility": "",
|
|
"coherenceCost": 0
|
|
},
|
|
"device": {
|
|
"templates": [
|
|
"physical"
|
|
],
|
|
"documentId": "",
|
|
"materialId": "standard",
|
|
"integrity": {
|
|
"value": 0,
|
|
"max": 3
|
|
},
|
|
"functions": {
|
|
"operate": {
|
|
"skillFamilyId": "",
|
|
"skillSpecialisationId": "",
|
|
"difficulty": "average",
|
|
"difficultyAfterDiscovery": "",
|
|
"analogueIn": [],
|
|
"requiredDiscoveryIds": [],
|
|
"familiarityAfterDiscovery": -20,
|
|
"requiresIntegrity": 0,
|
|
"powerCost": 0,
|
|
"powerCostAfterDiscovery": null,
|
|
"powerCostOnFailure": 0,
|
|
"powerCostOnFumble": 0,
|
|
"hoursPerAttempt": 0,
|
|
"effect": "",
|
|
"onFailure": "",
|
|
"onFumble": ""
|
|
},
|
|
"diagnose": {
|
|
"skillFamilyId": "",
|
|
"skillSpecialisationId": "",
|
|
"difficulty": "average",
|
|
"difficultyAfterDiscovery": "",
|
|
"analogueIn": [],
|
|
"requiredDiscoveryIds": [],
|
|
"familiarityAfterDiscovery": -20,
|
|
"requiresIntegrity": 0,
|
|
"powerCost": 0,
|
|
"powerCostAfterDiscovery": null,
|
|
"powerCostOnFailure": 0,
|
|
"powerCostOnFumble": 0,
|
|
"hoursPerAttempt": 0,
|
|
"effect": "",
|
|
"onFailure": "",
|
|
"onFumble": ""
|
|
},
|
|
"repair": {
|
|
"skillFamilyId": "",
|
|
"skillSpecialisationId": "",
|
|
"difficulty": "difficult",
|
|
"difficultyAfterDiscovery": "",
|
|
"analogueIn": [],
|
|
"requiredDiscoveryIds": [],
|
|
"familiarityAfterDiscovery": -20,
|
|
"requiresIntegrity": 0,
|
|
"powerCost": 0,
|
|
"powerCostAfterDiscovery": null,
|
|
"powerCostOnFailure": 0,
|
|
"powerCostOnFumble": 0,
|
|
"hoursPerAttempt": 4,
|
|
"effect": "",
|
|
"onFailure": "",
|
|
"onFumble": ""
|
|
}
|
|
},
|
|
"coherenceCost": 0
|
|
},
|
|
"discovery": {
|
|
"templates": [
|
|
"describable"
|
|
],
|
|
"discoveryId": "",
|
|
"question": "",
|
|
"unlocks": [],
|
|
"publishable": true,
|
|
"published": false,
|
|
"earned": false
|
|
},
|
|
"project": {
|
|
"templates": [
|
|
"describable"
|
|
],
|
|
"projectId": "",
|
|
"question": "",
|
|
"status": "proposed",
|
|
"maxResearchers": 3,
|
|
"currentStep": 0,
|
|
"yieldsDiscoveryId": "",
|
|
"steps": [],
|
|
"complications": []
|
|
},
|
|
"material": {
|
|
"templates": [
|
|
"describable"
|
|
],
|
|
"materialId": "standard",
|
|
"immuneTo": [],
|
|
"slowTo": [],
|
|
"blocksSensors": [],
|
|
"neutrinoAbsorption": 0
|
|
},
|
|
"group": {
|
|
"templates": [
|
|
"describable"
|
|
],
|
|
"groupId": "",
|
|
"speciesId": "",
|
|
"population": 0,
|
|
"npcTemplateId": "",
|
|
"taboos": [],
|
|
"desires": [],
|
|
"correctOfferForm": "",
|
|
"rewardsByStanding": {
|
|
"1": [],
|
|
"2": [],
|
|
"3": []
|
|
}
|
|
},
|
|
"talent": {
|
|
"templates": [
|
|
"describable"
|
|
],
|
|
"talentId": "",
|
|
"category": "agency",
|
|
"summary": "",
|
|
"rule": "",
|
|
"skillBonus": {
|
|
"skillFamilyId": "",
|
|
"value": 0
|
|
},
|
|
"grantsAction": "",
|
|
"coherenceCost": 0,
|
|
"usesPerCase": 0,
|
|
"usedThisCase": 0
|
|
},
|
|
"power": {
|
|
"templates": [
|
|
"describable"
|
|
],
|
|
"artId": "",
|
|
"summary": "",
|
|
"rule": "",
|
|
"value": 0,
|
|
"coherenceCost": 1,
|
|
"pushCost": 2,
|
|
"pushRule": "",
|
|
"origin": "",
|
|
"experienceTicked": false
|
|
},
|
|
"vehicle": {
|
|
"templates": [
|
|
"physical"
|
|
],
|
|
"skillFamilyId": "pilot",
|
|
"skillSpecialisationId": "ground_car",
|
|
"crew": 1,
|
|
"seats": 4,
|
|
"cargoKg": 200,
|
|
"speedBand": "road",
|
|
"rangeKm": 400,
|
|
"hull": {
|
|
"value": 0,
|
|
"max": 20
|
|
},
|
|
"armourPoints": 0,
|
|
"terrain": [],
|
|
"powerDraw": 0,
|
|
"coherenceCost": 0,
|
|
"era": "modern",
|
|
"notes": ""
|
|
},
|
|
"authority": {
|
|
"templates": [
|
|
"describable"
|
|
],
|
|
"holderName": "",
|
|
"holderRole": "",
|
|
"issuer": "",
|
|
"scope": "read",
|
|
"scopeNote": "",
|
|
"trust": {
|
|
"value": 1,
|
|
"max": 4
|
|
},
|
|
"expires": "",
|
|
"redFlags": [],
|
|
"dossier": [],
|
|
"establishesRemit": false,
|
|
"timesWidened": 0,
|
|
"mergeSteps": 0,
|
|
"burned": false,
|
|
"suspect": false,
|
|
"aiPosture": "",
|
|
"notes": ""
|
|
}
|
|
}
|
|
}
|