Commit Graph
128 Commits
Author SHA1 Message Date
jpmschweitzerandClaude Opus 4.6 a2e5dc5b33 data(culture): improve name lists with lore-accurate patterns
Replace algorithmic Terris names (-end/-rel/-el) with lore-accurate
patterns (-ed/-wyl/-ek) matching canon names (Sazed, Tindwyl, Rashek).
Add milestone-spec noble names with proper endings (-en/-ren/-nd/-sh
for male, -enne/-ine/-ise/-ette for female). Add missing skaa names
from lore (Mennis, Lestibournes, Lessie). Add 6 noble dynasty names
(Yomen, Ffnord, Getrue, Habren, Izenry, Ostlin). Enable
founder_named_dynasties on noble list. Remove Oreseur (kandra) and
Sazed (Terris) from noble/skaa lists where misplaced.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:34:34 +01:00
jpmschweitzerandClaude Opus 4.6 feea414894 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:32:57 +01:00
jpmschweitzerandClaude Opus 4.6 1d0440f2df feat(religion): set Lord Ruler as Steel Ministry religious head
Change steel_ministry_religion from doctrine_no_head to
doctrine_spiritual_head. Create d_steel_ministry_head religious
title ("Sliver of Infinity") and assign Lord Ruler (900100) as
holder. Add religious_head reference in steel_ministry faith block.
Also includes custom Scadrial doctrines, updated tenets, and
revised holy sites for all four faiths (3.8 changes).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:32:47 +01:00
jpmschweitzerandClaude Opus 4.6 9487632c87 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:30:36 +01:00
jpmschweitzerandClaude Opus 4.6 4666a232db feat(history): add Lord Ruler character and assign e_final_empire
Add Rashek (ID 900100) as the immortal god-emperor of the Final
Empire. Full Mistborn and Feruchemist with health=10 for
immortality, compounder_modifier applied at game start. Create
dynasty_rashek and house_rashek with localization. Assign
e_final_empire to the Lord Ruler in title history, resolving
REVIEW_NOTES NOTE-03. Add safety-net on_game_start effect for
compounder_modifier.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:30:19 +01:00
jpmschweitzerandClaude Opus 4.6 8647c383e7 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:29:43 +01:00
jpmschweitzerandClaude Opus 4.6 1ffc721265 feat(hemalurgy): add kandra trait and contract mechanics
Add trait_kandra (index 266) with intrigue +8, diplomacy +2, health +2,
attraction_opinion -10. Add is_kandra_trigger and update
has_hemalurgic_spike_trigger to include kandra. Create
assign_kandra_contract_effect for contract bonding. Add trait
localization with double-prefix keys.

Also includes is_lord_ruler_trigger and is_playable_scadrian_trigger
added to the triggers file by a teammate.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:29:31 +01:00
jpmschweitzerandClaude Opus 4.6 5c5e0b06e9 docs(meta): record M1 in-game test results — all passing
Human-tested: provinces show correct culture/religion, decision menu
clean, character sheet correct, 5-year playthrough with no crashes.
305 mod-related log entries are all expected (303 vanilla cascade,
2 unused variables).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 14:16:49 +01:00
jpmschweitzerandClaude Opus 4.6 d4021f4522 fix(loc): remove 17 duplicate localization keys
Removed 10 dynasty name keys duplicated between cultures and dynasties
loc files, 5 character names (Conrad, Kayna, Mare, Miren, Shan) that
collide with vanilla, and dynnp_of already in vanilla. Moved b_bindal
title override to localization/english/replace/ for proper vanilla key
replacement.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 14:09:11 +01:00
jpmschweitzerandClaude Opus 4.6 7a92103a27 fix(mod): add replace_path for provinces and decisions
Province history for Luthadel showed vanilla Swabian/Catholic instead
of Noble Scadrian/Steel Ministry because vanilla province history was
merging with ours. Added replace_path for history/provinces to use
only our province data.

DLC decisions (Secure Mediterranean, Train for Tournament, Favor
Skilled Outsiders, etc.) leaked through because they live in
dlc_decisions/ subdirectories. Added replace_path for common/decisions
and all 12 DLC decision subdirectories.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 14:09:00 +01:00
jpmschweitzerandClaude Opus 4.6 2b2448665b docs(meta): record M1 test results in milestone doc
All 7 implementation tasks pass. All 7 static validation checks pass.
ck3-tiger: 0 fatal, 0 errors, 0 untidy. In-game testing remains as
the final step.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:32:46 +01:00
jpmschweitzerandClaude Opus 4.6 ae20bdc446 fix(modifiers): fix double-encoded BOM on modifier_icons file
The file had a double-encoded BOM (C3 AF C2 BB C2 BF instead of
EF BB BF) from being written through a Latin-1 → UTF-8 path.
CK3 requires a proper 3-byte UTF-8 BOM.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:31:51 +01:00
jpmschweitzerandClaude Opus 4.6 f0ed76d344 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:22:08 +01:00
jpmschweitzerandClaude Opus 4.6 f6d3bb1ea7 docs(meta): document modifier icon system and on_game_start scope
Added two new gotchas to the modding reference:
- Modifier icons must use common/modifier_icons/ indirection (bare
  names, not full DDS paths) to avoid doubled-path resolution
- on_game_start events must use scope=none with every_living_character
  for character initialization

Also added modifier_icons directory to the directory layout tree and
two rows to the Common Pitfalls table.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:21:52 +01:00
jpmschweitzerandClaude Opus 4.6 0426174ed9 fix(loc): fix data function errors and opinion modifier collision
- Removed invalid [ROOT.GetName] from ReligiousHeadTitleName keys
  across all 4 faiths plus fallback (ck3-tiger: Custom/GetName cannot
  follow a Scope promote)
- Renamed disappointed_opinion to disappointed_by_snapping_opinion to
  avoid collision with vanilla opinion modifier of same name
- Added loc keys for the renamed opinion modifier and
  guilty_about_snapping_opinion

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:21:44 +01:00
jpmschweitzerandClaude Opus 4.6 0d8256e658 fix(events): correct scope, range, and logic warnings
- Changed mistborn_init.0001 from character_event to scope=none with
  every_living_character, matching vanilla on_game_start pattern
- Replaced negative add_gold with remove_short_term_gold in hemalurgy
  bribe option
- Removed single-item OR wrapper around any_parent Mistborn check in
  activate_allomancy_effect

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:21:34 +01:00
jpmschweitzerandClaude Opus 4.6 2a0e444cfc fix(modifiers): use bare icon names via modifier_icons indirection
CK3 resolves modifier icons through common/modifier_icons/ definitions.
Using full DDS paths in the icon field causes the engine to double the
path (gfx/.../gfx/.../icon.dds.dds), producing ~50 missing-file
warnings. Created modifier_icons definitions for all 45 icons and
switched all modifier icon fields to bare names.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:21:28 +01:00
jpmschweitzerandClaude Opus 4.6 3b7919a40a chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:06:03 +01:00
jpmschweitzerandClaude Opus 4.6 a4ac208667 docs(meta): document localization gotchas in modding reference
Add Localization Gotchas section covering hard-won lessons:
religion custom loc mapping blocks, trait double-prefix keys,
name list name loc, county adjective keys, culture extra keys,
and province history for total conversions. Also add 3 entries
to the Common Pitfalls table.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:03:52 +01:00
jpmschweitzerandClaude Opus 4.6 d265708701 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:02:58 +01:00
jpmschweitzerandClaude Opus 4.6 809d95aa04 loc(loc): add game rule and misc localization keys
Add game rule keys (rule_mistborn_game_mode, narrative/sandbox
setting names and descriptions) and utility keys (easy, medium).
Add missing discover_metallic_arts_decision_confirm key.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:02:38 +01:00
jpmschweitzerandClaude Opus 4.6 e87faf83df loc(traits): add double-prefix trait localization keys
CK3 looks up traits with both trait_X and trait_trait_X prefixes.
Added trait_trait_* entries for all 22 metallic arts traits
(name + desc) to eliminate ck3-tiger warnings.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:01:55 +01:00
jpmschweitzerandClaude Opus 4.6 417059955e loc(culture): add culture, heritage, and tradition loc keys
Add missing keys: heritage/language _name, culture prefix and
collective_noun, tradition _name variants, and culture_parameter
bonus descriptions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:01:43 +01:00
jpmschweitzerandClaude Opus 4.6 292bf74e47 loc(religion): add complete faith custom localization
Add localization mapping blocks to all 4 religions in the
definition file — CK3 requires explicit localization = { }
blocks to map generic keys (HighGodName, PriestMale, etc.)
to faith-prefixed loc strings.

Add ~960 loc entries covering all 128 custom loc keys for
each faith (steel_ministry, survivorism, terris_worldbringers,
cult_of_ruin): deity names/pronouns, priest/bishop/devotee
titles, religious terms, afterlife, holy war names, holy site
double-prefix keys, and religion adherent names.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:01:20 +01:00
jpmschweitzerandClaude Opus 4.6 dcb1e6956a loc(titles): add county adjective localization
CK3 uses <county>_adj keys for demonyms. Added adjective forms
for all 50 counties across the six Dominances.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:00:53 +01:00
jpmschweitzerandClaude Opus 4.6 04a1d215e8 loc(culture): add localization for all name list names
Every name in the three name lists (noble_scadrian, skaa, terris)
needs a loc key for CK3 to display it. Added ~200 name entries
plus the dynnp_of dynasty prefix key.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:00:46 +01:00
jpmschweitzerandClaude Opus 4.6 b9fc315c07 data(history): slim default provinces to skip vanilla-defined IDs
Regenerated 99_default_provinces.txt to only cover 2,413 province
IDs that have no history in either vanilla or our mod. Previously
covered all 13,164 non-mod IDs, causing ~30K duplicate-field
warnings from ck3-tiger for provinces vanilla already defines.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:00:39 +01:00
jpmschweitzerandClaude Opus 4.6 e5e55c3827 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:19:23 +01:00
jpmschweitzerandClaude Opus 4.6 a2c8f96234 loc(culture): add localization for 37 custom character names
CK3 requires a loc key for every name= value in character history.
All 37 custom names from 00_mistborn_characters.txt now have entries,
clearing the remaining untidy(missing-localization) warnings.

ck3-tiger now reports 0 fatal, 0 error, 0 untidy.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:19:08 +01:00
jpmschweitzerandClaude Opus 4.6 244d064890 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:12:13 +01:00
jpmschweitzerandClaude Opus 4.6 5950d7101a fix(titles): remove deprecated color2 from all landed titles
CK3 1.18 no longer uses color2 on titles. Removing 78 instances
eliminates all untidy(unneeded) warnings from ck3-tiger.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:12:03 +01:00
jpmschweitzerandClaude Opus 4.6 49a3dd7457 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:11:00 +01:00
jpmschweitzerandClaude Opus 4.6 d9db390af9 docs(meta): improve player test instructions in test protocol
Make gameplay testing instructions more explicit — Claude Code
cannot launch CK3 or interact with the UI, so the test script
must clearly describe what the human player needs to do. Add
guidance on game speed and what to look for.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:10:33 +01:00
jpmschweitzerandClaude Opus 4.6 84deb30df4 data(history): add default province data for unused vanilla provinces
Provide holding=none defaults for all 13,164 vanilla province IDs
not used by the mod. Prevents ~27K "Province with no county data"
error log messages that were flooding the logs and making it hard
to spot real mod issues during testing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:10:26 +01:00
jpmschweitzerandClaude Opus 4.6 4fdece1ede fix(loc): remove duplicate breeding_for_allomancy_modifier key
This key was defined in both decisions and modifiers localization
files. The authoritative definition lives in mistborn_modifiers,
so remove the stale duplicate from mistborn_decisions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:10:18 +01:00
jpmschweitzerandClaude Opus 4.6 dcb8a36b93 feat(culture): add name lists with dynasty names and localization
Add custom name lists for noble_scadrian, skaa, and terris cultures
with male/female names, dynasty names, and cadet dynasty names.
Add localization for all name list and dynasty name keys. Remove
stale TODO comments from culture definitions.

Fixes ck3-tiger errors for missing name_list references and game
log warnings about 0 dynasty names.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:10:12 +01:00
jpmschweitzerandClaude Opus 4.6 6d89e00292 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 11:30:13 +01:00
jpmschweitzerandClaude Opus 4.6 0dc56e8c47 chore(meta): add PNG output directory structure convention to asset-gen skill
Document that generated PNGs should mirror the mod's gfx/ directory
structure under ~/Pictures/mcp-images/ for organization. Also note
to overwrite files on regeneration instead of creating versioned copies.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 11:29:51 +01:00
jpmschweitzerandClaude Opus 4.6 ab7b2e35e2 feat(modifiers): add missing modifier definitions, fix icon paths, generate icons
- Fix 9 modifiers pointing to wrong placeholder icons (compounder.dds,
  lord_ruler_attention.dds) — now reference their own dedicated DDS files
- Add 6 missing base modifier definitions (mist_heavy, fertile_ashland,
  full_crew, eleventh_metal_insight, duel_veteran, atium_contract_holder)
- Add 21 flavor event modifier definitions with stat blocks
- Add localization for all new modifiers (name + description)
- Generate 4 new modifier icons on the hammered-metal coin base:
  first_metalmind_strength, first_metalmind_memories,
  first_metalmind_health, savant_power_surge
- Zero modifiers now use placeholder icons (except compounder itself)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 11:29:44 +01:00
jpmschweitzerandClaude Opus 4.6 607359742d docs(meta): add character lore references to milestones
Point M3 (tasks 3.1, 3.3, 3.4), M5 (task 5.3), and M6 (task 6.1)
to the new character lore profiles in docs/bookmarks/the end of an
empire/characters/. Add design docs section to MASTERPLAN current
state noting the 19 character profiles and index exist.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:53:06 +01:00
jpmschweitzerandClaude Opus 4.6 0301d527aa chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:44:45 +01:00
jpmschweitzerandClaude Opus 4.6 3b186ecdf3 docs(history): add character lore for the end of an empire bookmark
19 character profiles plus an index/glossary for the 1020.1.1
bookmark cast. Each file documents lore summary, personality,
CK3 trait mapping, starting conditions, relationships, and
mechanical notes.

Canonical characters: Lord Ruler, Kelsier's crew (10), Venture
family (2), Shan Elariel, Kar. Four Great House heads (Hasting,
Lekal, Erikeller, Tekiel) are extrapolated from canonical house
lore and clearly marked as such.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:44:32 +01:00
jpmschweitzerandClaude Opus 4.6 d41f4d0e7d docs(meta): update project status across all tracking documents
MASTERPLAN current state reflects M1 complete, M2 ~85% done with
full inventory of what exists and what's missing. REQUIRED_ASSETS
adds completion tracking table (92/230+ assets, ~40%). Events
registry status corrected from "none implemented" to reflect M2
events and completed modifier icons/backgrounds. REVIEW_NOTES
resolves WARNING-01 (pillars), WARNING-05 (attention unified),
WARNING-06/07 (trigger distinctions), WARNING-08 (religion family),
updates NOTE-02 (province IDs), and corrects summary counts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:24:20 +01:00
jpmschweitzerandClaude Opus 4.6 cbb14ef26e chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:12:22 +01:00
jpmschweitzerandClaude Opus 4.6 59eece6015 feat(events): add 16 event scene background illustrations
16 event backgrounds at 1592x848 DXT1 DDS covering all scene
types: 3 noble interiors (court, ball, private_chamber), 3
institutional interiors (temple, dungeon, ruins), 1 noble arena
(fighting_pit), 4 skaa/underclass (streets, plantation,
underground, market), and 5 exteriors (wilderness, battlefield,
mists, ashmount_close, clear_night). Noble interiors use bright
marble and colored fabrics to contrast wealth against ash-choked
exteriors. Fighting pit designed as noble spectacle arena per
Mistborn lore.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:12:08 +01:00
jpmschweitzerandClaude Opus 4.6 1e2f4a4740 chore(meta): add event background scene-class overlays to asset-gen
Add 5 scene-class overlays for event backgrounds: Noble interior
(bright marble, colored fabrics, candlelight), Institutional interior
(cold stone, iron fixtures), Noble arena (Colosseum-style fighting
pit with house banners), Skaa/underclass (ash-stained, cramped),
and Exterior (overcast Scadrial landscape). Scene-class mapping
table routes each event scene to its overlay. Noble interiors use
bright marble instead of dark mahogany to contrast wealth against
the ash-choked exterior world.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:11:58 +01:00
jpmschweitzerandClaude Opus 4.6 6571b8f0c3 chore(meta): document modifier coin base in asset-gen skill
Adds the coin base PNG location and the prompt pattern that
keeps the model anchored to the correct coin style.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:49:11 +01:00
jpmschweitzerandClaude Opus 4.6 93d9d977a8 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:48:46 +01:00
jpmschweitzerandClaude Opus 4.6 d4dc71e123 feat(modifiers): add 21 flavor event modifier icons
Hammered-metal coin style icons for the flavor events expansion:
underground network, keeper advisor, pewter gate champion, mist
scholar/warden/denier, ruin pact, ministry insider, combat veteran,
underground contacts, house rivalry, cautious/defiant/paranoid ruler
(attention aftermath trio), mist sickness, ashfall crisis, metal
shortage, skaa loyalty/resentment, double agent, artifact corruption.

60x60 uncompressed ARGB DDS with 6 mipmap levels.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:48:32 +01:00
jpmschweitzerandClaude Opus 4.6 7d7ed454b9 chore(meta): update changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:19:30 +01:00