GENERATED VIEW · PRIVATE ARCHIVE · DO NOT SERVE
RobCo Industries · Archive Museum

FO3_DATA_PROVENANCE.md



RELEASE

planning/2.8.5/data/FO3/FO3_DATA_PROVENANCE.md

sha256 b73f7e65e7ae6277 · 17278 bytes · original held in the private archive

# FO3 Data Provenance Sweep — Findings > **Analysis pass, 2026-07-15.** Branch `dev` @ `b201c42`. ANALYSIS ONLY — no code, no > commits, no data changed. This doc FINDS problems for the owner to review and later > units to fix. Source of truth: **fallout.wiki** (Protocol 3), read live via the > in-app browser (WebFetch is 403-blocked on this project, as expected). > > Scope: Fallout 3 game data only — `GAME_DEFS.FO3` (`js/core/state.js`), > `js/data/reg_fo3.js`, `js/data/db_fo3.js`. The karma engine was rebuilt with > citations on 2026-07-15 and is spot-checked here for consistency, not re-audited. --- ## ⭐ HONEST VERDICT (read this first) **The Enclave hit squad was NOT an isolated slip. It was the first pulled thread of a broader pattern of uncited / model-derived FO3 data — concentrated in two places: the PERK registry and the db_fo3 weapon-stats table.** The freshly-rebuilt **karma engine is genuinely clean** — every entry carries a `src:` citation, the numbers match the wiki, and conflicts are honestly marked UNVERIFIED. That is the standard the rest of the FO3 data does **not** yet meet. - **Quests, skill books, companions, item/weapon/armor NAMES** — spot-checked, look **clean**. These are real FO3 entities, correctly named. - **Perks** — **contains fabricated entries and systematically wrong level gates.** This is the worst category. Three perks that do not exist in Fallout 3 at all, one perk borrowed from New Vegas, one wrong name, and roughly **half** of the real perks carry the wrong unlock level. - **Bobblehead locations** — 2 of 20 point the player to the **wrong place entirely**; 1 more names the wrong room. - **db_fo3 weapon stats** — the file's header claims every row is sourced from fallout.wiki, but sampled damage, crit, fire-rate and (especially) **value** numbers **do not match the wiki** — item values are inflated roughly 10×. The citation claim is misleading. ### Count of headline findings - 🔴 **3 findings** (5 fabricated / cross-game "perks" a player would notice) - 🟠 **4 findings** (wrong perk levels · 2 wrong bobblehead locations · diverging db combat/value numbers) - 🟡 / ⚪ several minor (misclassifications, a wrong sub-room, typos, two questionable location names) ### Citation-guard recommendation (one line) **Yes — generalize the Protocol 3 `src:` requirement beyond karma, but phase it and pair it with a real re-verification pass.** A citation guard only proves a `src:` field *exists*; it does not prove the number is *right*. The perks and db table are exactly where invented data hid, so they need re-sourcing, not just annotating. (Full argument at the bottom.) --- ## 🔴 RED — invented / wrong entity a player would notice ### 🔴 F1 — Three fabricated "companion perks" that do not exist in Fallout 3 - **Where:** `js/data/reg_fo3.js:400-402` ``` { name: 'Mercy', type: 'companion', level: 0 }, { name: 'Search and Mark', type: 'companion', level: 0 }, { name: 'Sneak Bobblehead Effect',type: 'companion', level: 0 }, ``` - **Code says:** three "companion"-type perks. - **fallout.wiki says:** Fallout 3 has **no companion-perk system at all** (that is a New Vegas / Fallout 4 feature). The complete FO3 perk list — Regular, Special, Quest, Add-on, Unused — contains **none** of these three names. - "Mercy" is a unique **Fat Man** (a weapon, Broken Steel), not a perk. - "Sneak Bobblehead Effect" is the *effect* of the Sneak bobblehead, not a perk. - "Search and Mark" does not exist in FO3 in any form. - Source: [Fallout 3 Perks](https://fallout.wiki/wiki/Fallout_3_Perks) - **Severity:** 🔴 — this is the exact class of error as the Enclave hit squad: invented entities presented as real game data. A player ticking off perks sees three perks that aren't in the game. - **Cited?** No per-entry citation (the perks array has only a category-level `Data source:` comment). ### 🔴 F2 — "Laser Commander" is a New Vegas perk, wrongly listed under FO3 - **Where:** `js/data/reg_fo3.js:391` — `{ name: 'Laser Commander', type: 'regular', level: 22 }` - **Code says:** an FO3 regular perk at level 22. - **fallout.wiki says:** **Laser Commander is a Fallout: New Vegas perk** (+15% damage and +10% crit chance with laser weapons). It appears **nowhere** in the FO3 perk list. Cross-game contamination. - Source: [Laser Commander](https://fallout.wiki/wiki/Laser_Commander) (categorised under Fallout: New Vegas) · [Fallout 3 Perks](https://fallout.wiki/wiki/Fallout_3_Perks) - **Severity:** 🔴 — a real perk, but not in this game. Same trust cost as an invented one. - **Cited?** No. ### 🔴 F3 — "Scavenger" is not an FO3 perk (FO3's perk is "Scrounger") - **Where:** `js/data/reg_fo3.js:352` — `{ name: 'Scavenger', type: 'regular', level: 4 }` - **Code says:** an FO3 regular perk named "Scavenger" at level 4. - **fallout.wiki says:** FO3 has no "Scavenger" perk. The matching FO3 perk is **"Scrounger"** (level 8, Luck 5 — "find more ammunition in containers"). "Scavenger" is a Fallout: New Vegas perk. So this is either a wrong name or another NV leak — and the level (4) is wrong for Scrounger (8) either way. - Source: [Fallout 3 Perks](https://fallout.wiki/wiki/Fallout_3_Perks) - **Severity:** 🔴 (lower confidence than F1/F2 — flagged for owner confirmation, but the authoritative FO3 list has no "Scavenger"). - **Cited?** No. --- ## 🟠 ORANGE — wrong value / threshold ### 🟠 F4 — Perk level-requirements are systematically wrong (~half of them) - **Where:** `js/data/reg_fo3.js:339-392` (the `level:` field on regular perks) - **Code says vs fallout.wiki says** (sampled — every one below is confirmed against the live [Fallout 3 Perks](https://fallout.wiki/wiki/Fallout_3_Perks) table): | Perk | Code level | Wiki level | |------|-----------:|-----------:| | Child at Heart | 2 | **4** | | Entomologist | 2 | **4** | | Scoundrel | 2 | **4** | | Gun Nut | 4 | **2** | | Little Leaguer | 4 | **2** | | Cannibal | 6 | **12** | | Mysterious Stranger | 6 | **10** | | Nerd Rage! | 6 | **10** | | Night Person | 6 | **10** | | Strong Back | 6 | **8** | | Animal Friend | 8 | **10** | | Fortune Finder | 8 | **6** | | Lead Belly | 8 | **6** | | Life Giver | 8 | **12** | | Mister Sandman | 8 | **10** | | Pyromaniac | 8 | **12** | | Robotics Expert | 8 | **12** | | Sniper | 8 | **12** | | Action Boy / Action Girl | 10 | **16** | | Better Criticals | 10 | **16** | | Chem Resistant | 10 | **16** | | Infiltrator | 10 | **18** | | Light Step | 10 | **14** | | Master Trader | 10 | **14** | | Silent Running | 10 | **12** | | Computer Whiz | 14 | **18** | | Concentrated Fire | 14 | **18** | Of ~45 regular perks whose level I could check, **~28 are wrong and ~17 are right** (correct ones include Black Widow 2, Lady Killer 2, Comprehension 4, Educated 4, Bloody Mess 6, Demolition Expert 6, Commando 8, Rad Resistance 8, Finesse 10, Adamantium Skeleton 14, Chemist 14, Ninja 20, Explorer 20, Solar Powered 20, Grim Reaper's Sprint 20, Tag! 16). So it is not random noise — but roughly half the gates are wrong, which means the field as a whole cannot be trusted. - **Impact:** the ELIGIBLE PERKS survey / autocomplete tells the player a perk unlocks at the wrong level. - **Severity:** 🟠 — real perks, wrong values, but pervasive. The single biggest data-quality problem found. - **Cited?** No per-entry citations. ### 🟠 F5 — Explosives bobblehead: wrong location - **Where:** `js/data/reg_fo3.js:614` — `location: 'MINEFIELD — HOUSE #103'` - **Code says:** Minefield, House #103. - **fallout.wiki says:** **WKML Broadcast Station** — in the sealed cistern (a manhole cover tucked into the rocks behind/southwest of the station). There is no Explosives bobblehead at Minefield. - Source: [Vault-Tec Bobblehead (Fallout 3)](https://fallout.wiki/wiki/Vault-Tec_Bobblehead_(Fallout_3)) - **Severity:** 🟠 — the bobblehead is real, the location string is factually wrong. A player following it finds nothing. - **Cited?** Category-level comment only. ### 🟠 F6 — Unarmed bobblehead: wrong location - **Where:** `js/data/reg_fo3.js:679` — `location: 'SEWERS — BENEATH TEPID SEWER'` - **Code says:** beneath the Tepid Sewers. - **fallout.wiki says:** **Rockopolis** — an unmarked location due west of Smith Casey's Garage and due north of Girdershade; entrance is a large boulder under a lit party banner; bobblehead is next to Argyle's body. (This is the only bobblehead in an unmarked location — notable, and completely different from "Tepid Sewer".) - Source: [Vault-Tec Bobblehead (Fallout 3)](https://fallout.wiki/wiki/Vault-Tec_Bobblehead_(Fallout_3)) - **Severity:** 🟠 — same as F5. - **Cited?** Category-level comment only. ### 🟠 F7 — db_fo3 weapon stats diverge from fallout.wiki (values inflated ~10×) - **Where:** `js/data/db_fo3.js` `[WEAPONS.CSV]` block (lines 46-161). Columns: `Base_Damage, Crit_Damage, Crit_Multiplier, Attacks_Per_Second, Weight, Value, …` - **The file header (lines 1, 14-16) claims every row is sourced from fallout.wiki.** Sampled 6 weapons against the live wiki — most fields, and *every* value, disagree: | Weapon (line) | Field | Code | fallout.wiki | |---|---|---:|---:| | Sniper Rifle (54) | dmg / crit-mult / **value** | 55 / ×2.0 / **3500** | 40 / ×5 / **300** | | 10mm Pistol (47) | dmg / att-per-sec / **value** | 13 / 1.7 / **100** | 9 / 6 / **225** | | Combat Shotgun (52) | dmg / **value** | 60 / **600** | 55 / **200** | | Assault Rifle (53) | dmg / **value** | 30 / **400** | 8 / **300** | | Lincoln's Repeater (56) | dmg / **value** | 50 / **4000** | 50 ✓ / **500** | | Alien Blaster (100) | crit-mult / **value** | ×2.0 / **8000** | ×100 / **500** | - Source: [Fallout 3 Weapons](https://fallout.wiki/wiki/Fallout_3_Weapons) and [Sniper Rifle (Fallout 3)](https://fallout.wiki/wiki/Sniper_Rifle_(Fallout_3)) (the Sniper Rifle value of 300 is confirmed on its own page — double-verified). - **Reading of the evidence:** damage sometimes matches (Lincoln's Repeater 50), but values are systematically inflated by roughly an order of magnitude, and crit / fire rate frequently differ. These numbers look **model-derived or from a different source**, not transcribed from fallout.wiki — which directly contradicts the file's own Protocol 3 header claim. **This is a spot-check (6 of ~115 weapons); it establishes the class, not the full extent — a fuller row-by-row audit is warranted before trusting any db_fo3 combat/value figure.** - **Impact:** THREAT / CONSULT / TRADE terminals surface these numbers — wrong time-to-kill estimates and wrong barter math. - **Severity:** 🟠 (borders 🔴 because the file actively *claims* a citation it doesn't honour — a Protocol 3 violation of the "typist not authority" rule, just numeric rather than a named entity). - **Cited?** File-level header claims fallout.wiki; **no per-row citations, and the claim does not hold** on the sample. (The separate WU-D4 coefficient block — barter / vats / maxRads, `state.js:1765-1784` — *does* carry inline citations and those looked reasonable.) --- ## 🟡 YELLOW — uncited-but-plausible / minor / needs owner eyes - **🟡 F8 — Medicine bobblehead names the wrong room.** `reg_fo3.js:630` says `VAULT 101 — OVERSEER'S OFFICE`; wiki says it's on **James' medical desk** (pre-G.O.A.T.) or the **clinic back-room** (during Trouble on the Homefront) — right vault, wrong room. ([bobblehead page](https://fallout.wiki/wiki/Vault-Tec_Bobblehead_(Fallout_3))) - **🟡 F9 — Perk type/level misclassifications.** `reg_fo3.js:394-398,392`: "Cyborg" is a **regular** perk (lvl 14), not special; "Almost Perfect" is a Broken Steel **regular** perk (lvl 30), not special; "Pitt Fighter" is a **quest** perk, not special; "Survival Expert" (line 392) is a Wasteland Survival Guide **quest-reward** perk with **no level gate** — listing it as `type: 'regular', level: 22` is wrong on both counts (the perk itself is real). ([Fallout 3 Perks](https://fallout.wiki/wiki/Fallout_3_Perks)) - **🟡 F10 — Jericho recruitment requirement is internally inconsistent.** `reg_fo3.js:508-511` says "requires negative karma **or** 1000 caps"; the karma block `state.js:1394-1399` says karmaReq `evil` **and** 1000 caps. Two different rules for the same companion in the same codebase. Owner to confirm which matches the wiki. - **🟡 F11 — Two questionable location names (UNVERIFIED, do not assert wrong).** `reg_fo3.js` locations include both `Museum of History` and `Museum of American History` (line 424) and `Smithsonian Museum` (line 448). FO3's real Mall markers are Museum of History, Museum of Technology, National Archives, Capitol Building, etc. — "Museum of American History" and "Smithsonian Museum" may not be real standalone map markers (possible duplicates/inventions), but the wiki search was inconclusive. **Flagged for owner review, not asserted.** ## ⚪ WHITE — cosmetic - **⚪ F12 — Typo:** `reg_fo3.js:671` `PARADISE FALLS — EUOLOGY'S PAD` → "Eulogy's". - **⚪ F13 — Naming drift:** `reg_fo3.js:517` "after Taking it Back!" — the quest is **"Take it Back!"**. (The karma block spells it correctly.) --- ## Karma engine spot-check (the clean exception) The 2026-07-15 karma rebuild (`state.js:1314-1757`) holds up: hit squads, 8 companions, 90 titles, and the event-action deltas each carry a `src:` citation, the UNVERIFIED / SOURCE-CONFLICT entries ship `delta: null` instead of a guess, and the companion gates match the wiki. No new problems found. **This is the model the rest of FO3 data should be brought up to.** --- ## Prioritized fix list (candidate units, in order) 1. **FIX-PERK-INVENTED (🔴 F1/F2/F3):** delete the 3 fabricated companion perks, remove or correct "Laser Commander" (NV — delete from FO3) and "Scavenger" (→ "Scrounger", level 8). Smallest, highest-trust fix. Same class as the Enclave slip. 2. **FIX-PERK-LEVELS (🟠 F4):** re-source every FO3 regular-perk `level:` against fallout.wiki and correct the ~28 wrong gates. Also fix the F9 type misclassifications in the same pass. 3. **FIX-BOBBLEHEAD-LOC (🟠 F5/F6, 🟡 F8, ⚪ F12):** Explosives → WKML Broadcast Station; Unarmed → Rockopolis; Medicine → James' clinic/medical desk; fix the Eulogy typo. All 20 are worth a quick re-verify against the single bobblehead wiki page. 4. **AUDIT-DB-STATS (🟠 F7):** full row-by-row re-verification of `db_fo3.js` `[WEAPONS.CSV]` (and by extension ARMOR/CHEMS/VENDORS) against fallout.wiki, and correct the header's false sourcing claim. Largest unit — scope it before committing. 5. **Cleanup (🟡 F10/F11, ⚪ F13):** resolve Jericho requirement conflict; owner-decide on the two questionable location names; fix "Take it Back!" naming. --- ## Citation-guard recommendation (full argument) **Recommendation: generalize the Protocol 3 `src:` citation requirement beyond karma — but phase it, and do not mistake it for a data-correctness fix.** **Why generalize:** this sweep found invented and wrong data in exactly the FO3 surfaces that carry **no per-entry citation** — the perks array and the db_fo3 tables. The karma engine, the one surface that was rebuilt *with* per-entry `src:` fields (Suite 230), is the one surface that came back clean. That is direct evidence that the citation discipline works: making a human write "where did this come from?" next to each datum is what forced the karma rebuild to be honest. **Why phase it, not all-at-once:** a per-entry `src:` on every one of ~115 weapon rows + ~50 armor rows + every item/quest/location is heavy and would bury the signal. Start where the risk and the blast-radius are highest: - **Tier 1 (do first):** typed constants a player reads as fact and acts on — perk level gates, bobblehead locations, companion gates, faction thresholds, the db_fo3 coefficient block. These are few, high-trust, and are where this sweep found the damage. - **Tier 2 (later):** the bulk name lists (items, quests, locations) — lower risk because they're just names, and they spot-checked clean. A category-level citation may suffice. **The critical caveat — a citation guard is necessary but not sufficient:** Suite 230 only checks that a `src:` field *exists and is non-empty*. It cannot check that the number next to it is *correct*. F7 is the proof: `db_fo3.js` already *claims* fallout.wiki sourcing in its header, and the values are still wrong. So generalising the guard will **prevent future invention** (you can't add an uncited entry) but will **not** catch the wrong data already shipped. Those need a real re-verification pass (units 2 & 4 above) regardless of the guard. **Do both: add the guard to stop the bleeding, and run the correction units to clean what's already there.** Adding the guard *without* correcting first would just paste `src:` labels onto wrong numbers and make them look trustworthy — the worst outcome.
STAMP · generated for RELEASE v2.8.5 commit 06e5180 (06e51801b38a) · archive input-tree hash c07fbfbdd2e1ddeb · 754 files · no wall-clock timestamp (regenerates identically when nothing changed).