Commit Graph
4 Commits
Author SHA1 Message Date
FrankandClaude Sonnet 5 60a6904b22 Update portraits-needed list to the final 41 NPCs
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-06 15:53:13 +02:00
FrankandClaude Sonnet 5 1d043c35c8 Add 101 NPC portraits (lists 1 & 2), drop spaces from all filenames
- 50 portraits cut from the "Sten Voss … Ralf Brewster" sheet
- 51 from the "Mara Brewster … Poppy Thorn" sheet (incl. one stray
  "HiyHearth" the generator invented between Eli and May Hearth)
- existing 55 files renamed to remove spaces (Garrick Voss.png ->
  GarrickVoss.png)

assets/image/npc-pictures/ now holds 156 files.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-06 15:52:30 +02:00
FrankandClaude Sonnet 5 710b383bc1 Strip parent mentions from NPC relationships text
Parents now live in the father/mother fields, so "son/daughter/child of
X [and Y]" is redundant noise in Relationships / Notes.

- app:npc:strip-parent-text removes that clause and tidies leftover
  punctuation ("Son of X, husband of Y" -> "Husband of Y"; standalone
  "Son of X and Y" -> cleared). Keeps "grandson of", "father of",
  "daughter-in-law of". 92 rows cleaned.
- data/npcs.csv regenerated from the DB with the cleaned text plus new
  Father / Mother name columns
- app:npc:import resolves those optional columns in a second pass, so a
  fresh install reproduces the parent links without app:npc:link-parents

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-06 15:41:02 +02:00
FrankandClaude Sonnet 5 1ccab6ed68 Add NPC database table with server-side DataTable and per-NPC game notes
- Npc entity (village spreadsheet columns) + game_notes text field for
  the DM's live play notes, plus updated_at touched on every change
- Race / VillageStatus / BloodCartInvolvement / MysteryImportance as
  string-backed PHP enums, rendered as dropdowns on the edit form
- /npcs: server-side DataTables (paging, global search and column sort
  all run in the backend via NpcRepository::findForDataTable); name cell
  links to the edit page, game notes shown truncated
- /npcs/{id}: Bootstrap-themed edit form (all fields + a large game
  notes textarea); Symfony forms now use the bootstrap_5 theme
- app.js: generic server-side DataTable wiring driven by data-* on the
  <table>/<th> (data-datatable-src, data-row-url, data-format)
- app:npc:import console command - upserts from data/npcs.csv by
  (family, name), never overwrites game_notes; --purge / --dry-run
- data/npcs.csv: 180 villagers exported from the working spreadsheet

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-06 15:04:39 +02:00