The Custodians v0.6.1 — full system
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>
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
# Porting to a remote Foundry server
|
||||
|
||||
## First install
|
||||
|
||||
Stop Foundry, then clone into the data directory:
|
||||
|
||||
```bash
|
||||
cd /path/to/foundrydata/Data/systems
|
||||
git clone https://gitea.timevans.uk/slaguru666/RingBRP.git ringbrp
|
||||
```
|
||||
|
||||
Start Foundry. **The Custodians** appears under Game Systems. Create a world with it.
|
||||
|
||||
Nothing else is required: `packs/` holds the built compendia, and the system has no
|
||||
runtime dependencies. `node_modules/` is deliberately absent and is only needed to
|
||||
*rebuild* content.
|
||||
|
||||
## Updating a deployed server
|
||||
|
||||
```bash
|
||||
# STOP Foundry first if the update touches packs/ — LevelDB will not tolerate its
|
||||
# files changing underneath a running server.
|
||||
cd /path/to/foundrydata/Data/systems/ringbrp
|
||||
git pull
|
||||
```
|
||||
|
||||
Then start Foundry. Existing worlds keep their actors and items; compendium content is
|
||||
replaced by the pull.
|
||||
|
||||
## Rebuilding content on the server (optional)
|
||||
|
||||
Only if you intend to edit the catalogue there:
|
||||
|
||||
```bash
|
||||
npm install # classic-level, for writing LevelDB
|
||||
npm run check # the three guards
|
||||
npm run build # rebuilds packs/
|
||||
node tools/make-icons.mjs # redraws all icons
|
||||
node tools/make-dice-textures.mjs # regenerates the Dice So Nice textures
|
||||
```
|
||||
|
||||
`npm run build` runs the guards first and aborts if any fails, so a broken catalogue
|
||||
cannot be written into the packs.
|
||||
|
||||
## Manifest URL
|
||||
|
||||
For Foundry's *Install System → Manifest URL*:
|
||||
|
||||
```
|
||||
https://gitea.timevans.uk/slaguru666/RingBRP/raw/branch/main/system.json
|
||||
```
|
||||
|
||||
If the repository is private, Foundry cannot fetch that URL — clone over SSH or an
|
||||
access token instead, or make the repo public.
|
||||
|
||||
## Version bumps
|
||||
|
||||
`system.json` carries `version`. Foundry only offers an update when that number rises,
|
||||
so bump it before pushing anything a remote server should pick up.
|
||||
|
||||
## Health check after deploying
|
||||
|
||||
Open any character sheet. If labels read as raw keys (`RINGBRP.Sheet.Style` rather
|
||||
than "Marksmanship"), the localisation file failed to load — run
|
||||
`node tools/check-lang.mjs`, which exists precisely because one bad key silently
|
||||
un-localises the entire system with no error a user would connect to the cause.
|
||||
+3616
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user