Files
RingBRP/tools/focus-baseline.json
T
slaguru666andClaude Opus 5 8dbe885a34 Add check-seam: one definition of the NPC population
collectSpecs() in tools/all-specs.mjs is the single place that decides
which specs exist. Nine modules were importing NPCS and PREGENS straight
from content.mjs instead, so each carried its own idea of the population
and measured a different subset of the game. check-lethality was the
clearest case: it scored 47 creatures and reported OK for all 184.

check-seam (guard 24, first in the suite) scans every module and fails if
anything but all-specs.mjs names NPCS or PREGENS in a content.mjs import.
The nine violators are re-pointed at the seam.

Re-recording check-focus's baseline against the full 184 raised it from
47 packs to 138 and surfaced one creature focus fire does not help: the
dun cow. Rather than re-record that away, the guard now requires the
advice section of BESTIARY.md to name every such exception, and
bestiary.mjs generates the sentence.

The first version of that check asked whether the name appeared anywhere
in BESTIARY.md, which every creature's own heading satisfies — deleting
the exception sentence still passed. It reads only the
"Shooting at something that moves" section now, and the mutation test
fails as it should.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-22 23:52:18 +01:00

1174 lines
20 KiB
JSON

{
"note": "Generated by tools/check-focus.mjs --update. Do not edit by hand.",
"party": [
"pc_holloway",
"pc_okonkwo",
"pc_nkemdirim",
"pc_ferriby"
],
"runs": 1000,
"seeds": [
11,
4242,
90210
],
"seedMode": "per-creature",
"admission": "its spread-fire odds stand clear of 0% and 100% by more than its own noise",
"reliable": {
"aboveNoise": 130,
"of": 138
},
"creatures": {
"quiet_neighbours_npc": {
"n": 6,
"spread": 47,
"focus": 54.9,
"gain": 7.9,
"noise": 2.7
},
"keepers": {
"n": 5,
"spread": 60,
"focus": 69.8,
"gain": 9.8,
"noise": 2.7
},
"cleaner": {
"n": 6,
"spread": 59.4,
"focus": 70.1,
"gain": 10.7,
"noise": 1.4
},
"cleaner_marksman": {
"n": 5,
"spread": 51.8,
"focus": 61.9,
"gain": 10.1,
"noise": 0.5
},
"revenant": {
"n": 3,
"spread": 61.9,
"focus": 75.4,
"gain": 13.5,
"noise": 2.2
},
"duplicate": {
"n": 5,
"spread": 60.5,
"focus": 69.7,
"gain": 9.2,
"noise": 2.4
},
"barghest": {
"n": 3,
"spread": 24.8,
"focus": 36.5,
"gain": 11.8,
"noise": 3.5
},
"kelpie": {
"n": 3,
"spread": 52,
"focus": 67.1,
"gain": 15.1,
"noise": 2.8
},
"redcap": {
"n": 3,
"spread": 28,
"focus": 34.3,
"gain": 6.3,
"noise": 1.4
},
"boggart": {
"n": 2,
"pinned": 100
},
"churchgrim": {
"n": 3,
"spread": 43.7,
"focus": 55.7,
"gain": 12,
"noise": 2.1
},
"supporter": {
"n": 2,
"spread": 4.5,
"focus": 7,
"gain": 2.6,
"noise": 0.8
},
"hollow_man": {
"n": 6,
"spread": 92.2,
"focus": 96.8,
"gain": 4.6,
"noise": 0.8
},
"the_tenant": {
"n": 2,
"pinned": 100
},
"the_choir": {
"n": 6,
"spread": 99.3,
"focus": 99.5,
"gain": 0.2,
"noise": 0.4
},
"precedent": {
"n": 3,
"spread": 61,
"focus": 72.2,
"gain": 11.2,
"noise": 0.7
},
"carrion_file": {
"n": 4,
"spread": 45.2,
"focus": 57.3,
"gain": 12.1,
"noise": 1.3
},
"the_understudy": {
"n": 5,
"spread": 61.5,
"focus": 73,
"gain": 11.5,
"noise": 6.3
},
"surveyor": {
"n": 2,
"spread": 28.8,
"focus": 34.4,
"gain": 5.6,
"noise": 1.9
},
"quarantine_unit": {
"n": 2,
"pinned": 0.1
},
"cuckoo_array": {
"n": 2,
"spread": 58.6,
"focus": 66.2,
"gain": 7.7,
"noise": 3.8
},
"long_walker": {
"n": 2,
"pinned": 0.4
},
"auditor": {
"n": 4,
"spread": 49.4,
"focus": 62.3,
"gain": 12.9,
"noise": 2.5
},
"washer_ford": {
"n": 2,
"pinned": 100
},
"lantern_man": {
"n": 2,
"pinned": 100
},
"grindylow": {
"n": 4,
"spread": 30.5,
"focus": 42.1,
"gain": 11.6,
"noise": 1.5
},
"knockers": {
"n": 6,
"pinned": 99.8
},
"spriggan": {
"n": 3,
"spread": 42.5,
"focus": 55.4,
"gain": 12.9,
"noise": 5.7
},
"nuckelavee": {
"n": 2,
"spread": 8.2,
"focus": 14.2,
"gain": 5.9,
"noise": 0.5
},
"hedley_kow": {
"n": 6,
"spread": 97.7,
"focus": 99.2,
"gain": 1.6,
"noise": 0.6
},
"apple_man": {
"n": 2,
"spread": 36.6,
"focus": 42.1,
"gain": 5.5,
"noise": 0.8
},
"the_committee": {
"n": 6,
"pinned": 100
},
"night_registry": {
"n": 4,
"spread": 63.1,
"focus": 73.9,
"gain": 10.7,
"noise": 2.5
},
"the_locum": {
"n": 5,
"spread": 49.2,
"focus": 63.1,
"gain": 13.9,
"noise": 1.9
},
"lost_property": {
"n": 2,
"spread": 54.3,
"focus": 63.2,
"gain": 8.9,
"noise": 1.3
},
"the_minutes": {
"n": 2,
"pinned": 100
},
"waiting_room": {
"n": 3,
"spread": 63.4,
"focus": 70.8,
"gain": 7.4,
"noise": 0.3
},
"the_predecessor": {
"n": 4,
"spread": 58.6,
"focus": 71,
"gain": 12.5,
"noise": 5.1
},
"switchboard": {
"n": 6,
"spread": 86.3,
"focus": 94.4,
"gain": 8.1,
"noise": 1.4
},
"the_census": {
"n": 3,
"spread": 64.3,
"focus": 76.5,
"gain": 12.1,
"noise": 1
},
"the_courier": {
"n": 2,
"spread": 53,
"focus": 62.2,
"gain": 9.1,
"noise": 2.3
},
"the_relay": {
"n": 2,
"spread": 52.7,
"focus": 58.9,
"gain": 6.2,
"noise": 2.8
},
"the_stanchion": {
"n": 2,
"spread": 6,
"focus": 6.3,
"gain": 0.2,
"noise": 0.9
},
"the_yield": {
"n": 2,
"spread": 46.8,
"focus": 57.8,
"gain": 11,
"noise": 1.5
},
"the_overwriter": {
"n": 3,
"spread": 64.1,
"focus": 72.7,
"gain": 8.6,
"noise": 1.9
},
"the_arrears": {
"n": 2,
"spread": 14.7,
"focus": 21,
"gain": 6.3,
"noise": 1.5
},
"the_margin": {
"n": 5,
"spread": 45.3,
"focus": 59.3,
"gain": 14.1,
"noise": 2.3
},
"hunt_master": {
"n": 2,
"spread": 6.3,
"focus": 10.9,
"gain": 4.6,
"noise": 1.2
},
"gabriel_hounds": {
"n": 5,
"spread": 58.8,
"focus": 69.1,
"gain": 10.3,
"noise": 2.6
},
"grey_mare": {
"n": 2,
"spread": 55.7,
"focus": 65.1,
"gain": 9.4,
"noise": 0.9
},
"black_annis": {
"n": 2,
"spread": 7.5,
"focus": 12,
"gain": 4.5,
"noise": 1.7
},
"cailleach": {
"n": 6,
"spread": 93.6,
"focus": 96.7,
"gain": 3.1,
"noise": 0.7
},
"jenny_greenteeth": {
"n": 4,
"spread": 61.8,
"focus": 71.8,
"gain": 10,
"noise": 3
},
"gwrach": {
"n": 2,
"pinned": 100
},
"hunky_punk": {
"n": 2,
"spread": 75.8,
"focus": 81.5,
"gain": 5.8,
"noise": 3
},
"sin_eater": {
"n": 2,
"pinned": 100
},
"lych_waiter": {
"n": 4,
"spread": 66.3,
"focus": 77,
"gain": 10.7,
"noise": 2.8
},
"crossroads_man": {
"n": 3,
"spread": 42.7,
"focus": 58.8,
"gain": 16.1,
"noise": 0.5
},
"march_stone": {
"n": 2,
"spread": 2,
"focus": 2.9,
"gain": 0.8,
"noise": 1
},
"foundation_child": {
"n": 2,
"pinned": 100
},
"bog_offering": {
"n": 6,
"pinned": 100
},
"hearth_hob": {
"n": 2,
"pinned": 100
},
"cauld_lad": {
"n": 6,
"pinned": 100
},
"the_teind": {
"n": 5,
"spread": 48.3,
"focus": 63.1,
"gain": 14.8,
"noise": 2
},
"changeling": {
"n": 2,
"pinned": 100
},
"uninvited": {
"n": 6,
"pinned": 99.7
},
"dullahan": {
"n": 2,
"spread": 22.6,
"focus": 30.7,
"gain": 8.1,
"noise": 2.5
},
"pooka": {
"n": 2,
"spread": 25.6,
"focus": 32.9,
"gain": 7.3,
"noise": 1
},
"cu_sidhe": {
"n": 2,
"spread": 59.7,
"focus": 68.1,
"gain": 8.4,
"noise": 3.6
},
"tatterfoal": {
"n": 6,
"spread": 49.8,
"focus": 64.2,
"gain": 14.3,
"noise": 3
},
"dun_cow": {
"n": 2,
"spread": 0.1,
"focus": 0,
"gain": -0.1,
"noise": 0
},
"boobrie": {
"n": 2,
"spread": 44.8,
"focus": 55,
"gain": 10.2,
"noise": 4.3
},
"harbour_dog": {
"n": 3,
"spread": 63.8,
"focus": 75.5,
"gain": 11.7,
"noise": 2.7
},
"sea_mare": {
"n": 2,
"spread": 25.1,
"focus": 32.7,
"gain": 7.6,
"noise": 1.6
},
"tangie": {
"n": 2,
"spread": 42.5,
"focus": 52.3,
"gain": 9.7,
"noise": 1.6
},
"selkie": {
"n": 5,
"spread": 50.9,
"focus": 63.6,
"gain": 12.7,
"noise": 0.8
},
"wrack_gull": {
"n": 6,
"spread": 64.3,
"focus": 74.9,
"gain": 10.6,
"noise": 0.1
},
"sea_crow": {
"n": 6,
"spread": 97.2,
"focus": 98.3,
"gain": 1.1,
"noise": 1.1
},
"shellycoat": {
"n": 4,
"spread": 35.9,
"focus": 50.1,
"gain": 14.2,
"noise": 2.2
},
"peg_powler": {
"n": 3,
"spread": 47.6,
"focus": 61,
"gain": 13.4,
"noise": 2.9
},
"greenteeth": {
"n": 3,
"spread": 51,
"focus": 62.8,
"gain": 11.8,
"noise": 5.4
},
"fen_hound": {
"n": 4,
"spread": 39.3,
"focus": 53.1,
"gain": 13.9,
"noise": 6.6
},
"cut_walker": {
"n": 4,
"spread": 67.3,
"focus": 77.4,
"gain": 10.1,
"noise": 3.6
},
"wrackman": {
"n": 3,
"spread": 31.6,
"focus": 46.6,
"gain": 15,
"noise": 0.6
},
"net_mender": {
"n": 2,
"pinned": 100
},
"mudlark_child": {
"n": 2,
"pinned": 100
},
"hulk_haunt": {
"n": 4,
"spread": 61.6,
"focus": 74.2,
"gain": 12.6,
"noise": 2.2
},
"drowned_crew": {
"n": 6,
"spread": 67.5,
"focus": 78.2,
"gain": 10.7,
"noise": 2.5
},
"lock_keeper": {
"n": 3,
"spread": 48.6,
"focus": 59.7,
"gain": 11.1,
"noise": 0.4
},
"the_undertow": {
"n": 2,
"spread": 1,
"focus": 2,
"gain": 0.9,
"noise": 0.6
},
"the_sump": {
"n": 2,
"spread": 16.4,
"focus": 23.2,
"gain": 6.8,
"noise": 1.9
},
"drowned_parish": {
"n": 6,
"pinned": 99.9
},
"the_fathom": {
"n": 2,
"pinned": 0.1
},
"eelmother": {
"n": 2,
"spread": 11.3,
"focus": 19.1,
"gain": 7.8,
"noise": 1.6
},
"lamprey_host": {
"n": 3,
"spread": 49.7,
"focus": 66.5,
"gain": 16.8,
"noise": 2.1
},
"washland_cattle": {
"n": 2,
"spread": 37.8,
"focus": 47.7,
"gain": 10,
"noise": 2.3
},
"the_heron": {
"n": 4,
"spread": 46.8,
"focus": 58.1,
"gain": 11.3,
"noise": 1.2
},
"foldwalker": {
"n": 3,
"spread": 48.8,
"focus": 64.5,
"gain": 15.6,
"noise": 3
},
"anglesmith": {
"n": 3,
"spread": 51.7,
"focus": 64.7,
"gain": 13.1,
"noise": 0.7
},
"halfpast": {
"n": 4,
"spread": 51.8,
"focus": 65.2,
"gain": 13.4,
"noise": 1.4
},
"returned_surveyor": {
"n": 6,
"spread": 71.5,
"focus": 83.1,
"gain": 11.6,
"noise": 0.9
},
"unmeasured": {
"n": 6,
"spread": 96.9,
"focus": 98.3,
"gain": 1.3,
"noise": 1.5
},
"patient_grasp": {
"n": 2,
"spread": 24.1,
"focus": 30.7,
"gain": 6.6,
"noise": 2.1
},
"the_tideline": {
"n": 2,
"spread": 72.2,
"focus": 78.4,
"gain": 6.2,
"noise": 2.2
},
"glass_auditor": {
"n": 3,
"spread": 50.8,
"focus": 60.4,
"gain": 9.6,
"noise": 1.3
},
"quorate": {
"n": 6,
"spread": 90.2,
"focus": 95.7,
"gain": 5.5,
"noise": 2.8
},
"five_of_six": {
"n": 2,
"spread": 73.2,
"focus": 81.3,
"gain": 8.2,
"noise": 1.4
},
"the_remainder": {
"n": 6,
"pinned": 99.7
},
"counterpoint": {
"n": 6,
"spread": 40.2,
"focus": 60.7,
"gain": 20.5,
"noise": 2.2
},
"the_tally": {
"n": 6,
"spread": 99.8,
"focus": 99.9,
"gain": 0.1,
"noise": 0
},
"many_hands": {
"n": 4,
"spread": 59.9,
"focus": 71,
"gain": 11.1,
"noise": 2.4
},
"the_iteration": {
"n": 3,
"spread": 25.6,
"focus": 35.5,
"gain": 9.9,
"noise": 1.2
},
"backscatter": {
"n": 2,
"spread": 7,
"focus": 8.8,
"gain": 1.9,
"noise": 3.2
},
"afterimage": {
"n": 2,
"pinned": 100
},
"second_pass": {
"n": 3,
"spread": 54.3,
"focus": 64.9,
"gain": 10.6,
"noise": 2.2
},
"turnback": {
"n": 3,
"spread": 59,
"focus": 71.9,
"gain": 12.8,
"noise": 1.1
},
"the_overflight": {
"n": 2,
"spread": 13.9,
"focus": 19.5,
"gain": 5.6,
"noise": 2.9
},
"recurrence": {
"n": 3,
"spread": 40.2,
"focus": 53,
"gain": 12.8,
"noise": 1
},
"inside_out": {
"n": 2,
"pinned": 0
},
"latecomer": {
"n": 2,
"spread": 65.6,
"focus": 73.8,
"gain": 8.2,
"noise": 3.5
},
"mirrorline": {
"n": 2,
"spread": 73.9,
"focus": 81.2,
"gain": 7.3,
"noise": 5.1
},
"carried_over": {
"n": 2,
"pinned": 100
},
"bull_azure": {
"n": 2,
"spread": 8.8,
"focus": 13.7,
"gain": 4.9,
"noise": 1.2
},
"enfield": {
"n": 4,
"spread": 31.6,
"focus": 45,
"gain": 13.3,
"noise": 3.6
},
"yale": {
"n": 2,
"spread": 71.8,
"focus": 79.3,
"gain": 7.5,
"noise": 1
},
"white_hart": {
"n": 4,
"spread": 67.3,
"focus": 82,
"gain": 14.7,
"noise": 0.3
},
"man_tyger": {
"n": 2,
"spread": 49.7,
"focus": 60.2,
"gain": 10.6,
"noise": 2.4
},
"melusine": {
"n": 4,
"spread": 57.4,
"focus": 71.8,
"gain": 14.4,
"noise": 3.3
},
"eagle_displayed": {
"n": 4,
"spread": 34.2,
"focus": 44.5,
"gain": 10.3,
"noise": 2.7
},
"gryphon": {
"n": 2,
"spread": 5.4,
"focus": 8.8,
"gain": 3.4,
"noise": 1.3
},
"sign_wyvern": {
"n": 2,
"spread": 66.9,
"focus": 75.8,
"gain": 8.8,
"noise": 1.1
},
"cockatrice": {
"n": 6,
"spread": 89.9,
"focus": 93.6,
"gain": 3.7,
"noise": 0.7
},
"martlet": {
"n": 2,
"pinned": 100
},
"piety_pelican": {
"n": 6,
"spread": 91.7,
"focus": 96.2,
"gain": 4.5,
"noise": 0.5
},
"drain_heron": {
"n": 6,
"spread": 80.5,
"focus": 85.8,
"gain": 5.4,
"noise": 2.2
},
"talbot": {
"n": 3,
"spread": 56.7,
"focus": 69.8,
"gain": 13.1,
"noise": 3
},
"gazehound": {
"n": 6,
"spread": 39.8,
"focus": 53.7,
"gain": 13.9,
"noise": 5.7
},
"bearward_bear": {
"n": 2,
"spread": 28,
"focus": 36.1,
"gain": 8.1,
"noise": 1.9
},
"heath_cow": {
"n": 2,
"spread": 0.7,
"focus": 0.9,
"gain": 0.2,
"noise": 0.2
},
"tup": {
"n": 3,
"spread": 53.2,
"focus": 65.5,
"gain": 12.3,
"noise": 3.6
},
"cade_lamb": {
"n": 2,
"pinned": 100
},
"hollow_hog": {
"n": 2,
"spread": 49.3,
"focus": 60,
"gain": 10.7,
"noise": 2.3
},
"hinny": {
"n": 4,
"spread": 31.2,
"focus": 46.2,
"gain": 15,
"noise": 3.2
},
"water_bull": {
"n": 2,
"pinned": 1.1
},
"moor_cat": {
"n": 3,
"spread": 60.8,
"focus": 72.3,
"gain": 11.4,
"noise": 2.9
},
"gaunt_grey": {
"n": 3,
"spread": 69.8,
"focus": 80.1,
"gain": 10.3,
"noise": 1.2
},
"menagerie_ape": {
"n": 2,
"spread": 76.3,
"focus": 83.5,
"gain": 7.2,
"noise": 2.7
},
"tt_bewley": {
"n": 2,
"pinned": 100
},
"tt_prosser": {
"n": 2,
"pinned": 100
},
"tt_rance": {
"n": 5,
"spread": 63.5,
"focus": 73.6,
"gain": 10.1,
"noise": 2.5
},
"tt_shard": {
"n": 6,
"spread": 81.8,
"focus": 86.8,
"gain": 5,
"noise": 1
},
"tt_cordera_man": {
"n": 6,
"spread": 89.4,
"focus": 94,
"gain": 4.6,
"noise": 2.1
},
"tt_tom_doyle": {
"n": 6,
"spread": 55.8,
"focus": 65.5,
"gain": 9.7,
"noise": 1.9
},
"tt_kell": {
"n": 2,
"pinned": 100
},
"tt_vane": {
"n": 2,
"pinned": 100
},
"tt_bligh": {
"n": 2,
"pinned": 100
},
"tt_reyes": {
"n": 2,
"pinned": 100
},
"tt_merritt": {
"n": 5,
"spread": 52.8,
"focus": 66.2,
"gain": 13.4,
"noise": 1.3
},
"tt_ambrose": {
"n": 6,
"spread": 80.5,
"focus": 87.5,
"gain": 7,
"noise": 2.1
},
"tt_coat": {
"n": 6,
"spread": 74.5,
"focus": 82.8,
"gain": 8.3,
"noise": 1.9
},
"tt_writman": {
"n": 6,
"spread": 39.6,
"focus": 52.5,
"gain": 12.9,
"noise": 3.9
},
"bp_leah": {
"n": 2,
"pinned": 100
},
"bp_martin": {
"n": 2,
"pinned": 100
},
"bp_inspector": {
"n": 5,
"spread": 54,
"focus": 67.4,
"gain": 13.4,
"noise": 2.7
},
"bp_conductor": {
"n": 3,
"spread": 69.6,
"focus": 81,
"gain": 11.4,
"noise": 3.4
},
"bp_nia": {
"n": 5,
"spread": 43.3,
"focus": 57.2,
"gain": 13.9,
"noise": 0.5
},
"bp_callum": {
"n": 2,
"spread": 21.7,
"focus": 27.2,
"gain": 5.5,
"noise": 3.4
},
"bp_mara": {
"n": 4,
"spread": 37.8,
"focus": 50.6,
"gain": 12.8,
"noise": 1.6
},
"bp_owen": {
"n": 6,
"spread": 71.6,
"focus": 80.3,
"gain": 8.7,
"noise": 2.8
},
"bp_elin": {
"n": 6,
"spread": 77.2,
"focus": 84.9,
"gain": 7.7,
"noise": 2.6
},
"bp_sennen": {
"n": 6,
"spread": 59.7,
"focus": 70.1,
"gain": 10.4,
"noise": 5.2
},
"la_enderby": {
"n": 2,
"pinned": 100
},
"la_sammy": {
"n": 2,
"pinned": 100
},
"la_marrow": {
"n": 3,
"spread": 56.8,
"focus": 68.9,
"gain": 12.1,
"noise": 3.3
},
"la_edith": {
"n": 2,
"pinned": 100
},
"la_nowak": {
"n": 2,
"pinned": 100
},
"la_tunnicliffe": {
"n": 2,
"pinned": 100
},
"od_kearsley": {
"n": 2,
"pinned": 100
},
"od_odame": {
"n": 2,
"pinned": 100
},
"od_vasey": {
"n": 2,
"pinned": 100
},
"od_ferrand": {
"n": 2,
"pinned": 100
},
"od_bewley": {
"n": 2,
"pinned": 100
},
"so_warden": {
"n": 6,
"spread": 56.1,
"focus": 67.4,
"gain": 11.3,
"noise": 3.6
},
"so_teague": {
"n": 5,
"spread": 55.5,
"focus": 67.6,
"gain": 12.1,
"noise": 2
}
}
}