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>
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>
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>
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>
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>
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>
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>
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>
- 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>
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>
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>
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>
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>
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>
Create docs/events-registry.md cataloging ~112 proposed flavor events:
- Part A: 17 extensions to existing event chains
- Part B: 32 chain steps across 7 new multi-event arcs
- Part C: 63 one-shot events including 8 artifact acquisition events
Update M7 milestone with task group 7.14 referencing the registry.
Update REQUIRED_ASSETS.md with 21 new modifier icons and 8 new event
backgrounds needed for the flavor events expansion (~53 total modifiers,
16 total event backgrounds).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add trait group display names (allomancy, strength, potential,
feruchemy groups)
- Add trait_trait_ prefixed keys for CK3's loc lookup convention
(mistborn, mistborn_potential, feruchemy_potential, knows_hemalurgy)
- Add terris culture loc (collective_noun, prefix)
- Add terris_worldbringers faith custom loc (deity names, priest
titles, afterlife, house of worship, religious text, etc.)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add head_determination = head_determination_domain to all three
Scadrian cultures (required by CK3 1.18)
- Move on_game_start initialization from effect block to
mistborn_init.0001 event to avoid overriding vanilla's effect block
- Replace non-existent event backgrounds (corridor.dds, battlefield.dds)
with valid vanilla keys (study, wilderness)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove group from Misting/Mistborn/potential/Feruchemy traits that
lacked a level field (CK3 unsets the group and logs errors)
- Add level = 1/2/3 to allomantic strength traits (proper progression)
- Remove inherit_chance and both_parent_has_trait_inherit_chance from
all genetic traits (CK3 1.18 considers this an error)
- Set birth values (0.0-1.0 range) to control inheritance frequency
- Fix doubled icon paths: remove gfx/interface/icons/traits/ prefix
that CK3 auto-prepends, causing double-pathed lookups
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CK3 requires UTF-8 BOM on .txt data files. Without it, every file
logs a parse warning and data loading becomes unreliable. Added BOM
(EF BB BF) to all 76 .txt files under lords_of_ash/.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add localization for: training events (4 events, 12 options),
metal supply events (4 events, 10 options), Feruchemy events
(2 events, 5 options), hemalurgy events (3 events, 9 options),
savant events (2 events, 6 options), late snapping event, sandbox
event. Add loc for new decisions (training, metal supply, black
market, sandbox). Add modifier descriptions for metal reserves,
savant power surge, Feruchemy metalminds, keeper_of_terris,
atium_reserve, and brutal_repression.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add all new yearly pulse events: metal supply, Feruchemy discovery,
Inquisitor transformation, Ruin's whispers, Hemalurgy discovery,
savant acquisition/consequences. Add duralumin/nicroburst to
compounding check. Add on_imprison hook for late snapping. Grant
starting metal reserves to Allomancers at game start (abundant for
nobles, low for skaa).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace hardcoded Coinshot trait on skaa recruits with random
Misting type via activate_allomancy_effect, matching lore that
skaa Allomancers manifest varied abilities. Replace inline
lord_ruler_attention variable changes in atium events with
decrease_lord_ruler_attention_effect for consistency.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add Feruchemy activation chain (mistborn_feruchemy.0001/0010) for
Terris characters discovering their art and creating first metalminds.
Add Allomantic training events (mistborn_training.0001/0010/0020/0030)
for mentoring family members. Add metal supply events
(mistborn_metal.0001/0010/0020/0030) for reserve management and
wartime scarcity. Add sandbox testing event (mistborn_sandbox.0001)
for voluntary metallic arts discovery.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add train_allomancer_decision for mentoring family members to
strengthen Allomantic ability. Add acquire_metal_supply_decision
and acquire_metals_black_market_decision for Allomantic metal
procurement. Add discover_metallic_arts_decision for sandbox mode
voluntary power testing. Add duralumin/nicroburst to compounding
decision trigger list.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add Feruchemy modifiers: keeper_of_terris, first_metalmind variants
for strength/memories/health. Add savant_power_surge for temporary
Allomantic flare. Add metal supply modifiers (abundant/low/depleted)
and atium_reserve. Add brutal_repression county modifier for skaa
uprising consequences. Fix county_opinion → county_opinion_add.
Add opinion modifiers: disappointed_opinion and
guilty_about_snapping_opinion for parent reactions to failed snapping.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add has_multiple_spikes_trigger for Inquisitor transformation check
(requires 3+ spike traits). Redirect trigger_snapping_effect to use
the snapping event chain (mistborn_snapping.0020) as single source
of truth for Misting type assignment, replacing inline duplication.
Fix minor formatting issue in trait_misting_coinshot definition.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CK3 does not have 'skulduggery', 'mystery', or 'learning_skill' as
valid event themes. Replaced with 'secret' and 'learning' across
all affected event files. Also changed skaa uprising to use the new
'brutal_repression' modifier instead of reusing 'ash_blight'.
Renamed mistborn_feruchemy.0010.c → mistborn_feruchemy.0010.opt_c
to avoid a MURMUR3A hash collision with a vanilla loc key.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CK3 does not support negative values for add_gold. Replaced all 14
instances across 6 event files with remove_short_term_gold, which
is the correct CK3 effect for deducting gold.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Created mistborn_game_mode game rule with narrative_mode (default)
and sandbox_mode options. Appears on the game setup screen.
Narrative mode enables curated story events; sandbox mode enables
the Discover Your Metallic Arts decision and suppresses story arcs.
Matching triggers added in prior commit.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Created empty replacement files for all vanilla CK3 decision files
to prevent non-Mistborn decisions from appearing in the decision
menu. Covers major decisions, activities, religious, lifestyle,
DLC, regional, and culture-specific decisions.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Created bookmark_portraits/ with placeholder portrait definitions
for all 4 bookmark characters (regenerate in-game with
dump_bookmark_portraits for proper visuals)
- Added bm_group_1020 bookmark group and localization
- Added start_date to vanilla bookmark suppression entries (required
field per ck3-tiger)
- Removed invalid background field from bookmark definition
- Added replace_path directives for bookmarks to mod descriptors
- Adjusted character positions on the bookmark screen
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Added color to language_scadrial and language_terris pillars to
match the vanilla CK3 pattern. Without this, the culture UI may
not display language indicators correctly.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Removed the generic lord_ruler_attention_modifier and unified both
decision checks onto the variable system (var:lord_ruler_attention).
The on_action yearly pulse now applies/removes tiered modifiers
(lord_ruler_attention_1/2/3) based on variable thresholds, giving
players visible feedback that matches the underlying variable state.
Fixes WARNING-05 from the mod review.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Split over-inclusive triggers into distinct variants:
- is_feruchemist_trigger now matches only active trait_feruchemist
- has_allomantic_potential_trigger now excludes already-snapped chars
- Added has_any_feruchemy_trigger and has_any_allomantic_ability_trigger
for broad matching when needed
- Added is_narrative_mode_trigger and is_sandbox_mode_trigger for the
new game mode system
Fixes WARNING-06 and WARNING-07 from the mod review.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replaced sequential IDs (1-105) with actual vanilla province IDs
from landed_titles (2030-3107 range). Without this fix, no province
had valid culture, religion, or holding data at game start because
CK3 matches province history by vanilla map IDs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add background DDS art for the "End of an Empire" bookmark and
reference it in the bookmark definition. Add vanilla bookmark
suppression file to hide all base-game bookmarks since this is a
total conversion.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Corrected allomantic strength trait filenames from
trait_allomantic_strength_* to trait_allomantic_* to match
actual trait definitions in code.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
All trait icons generated via Nano Banana and converted to
uncompressed ARGB DDS at 120x120. Covers the full metallic arts
system: 12 Misting types, Mistborn, 3 Allomantic strength tiers,
2 Allomantic potential tiers, Feruchemist + potential, and 6
Hemalurgy variants. Dark fantasy painterly style with consistent
visual identity across trait families.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Skill for generating CK3-native art assets using the Nano Banana
(Gemini 2.5 Flash Image) MCP tool. Includes style guide, category
prompt templates, and DDS conversion reference. Encodes learnings
from first batch: no circular frames, no vector art, no text,
dark backgrounds edge-to-edge, consistent orientation within trait
families, max 3 parallel generation calls.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Catalogues all ~200+ visual assets needed across milestones M1-M8,
with verified specs from CK3 v1.18 game files. Covers trait icons,
modifier icons, decision illustrations, map files, loading screens,
bookmark art, CoA emblems, religion icons, lifestyle assets, activity
assets, event backgrounds, portraits, and workshop thumbnail. Includes
DDS production guide, priority ordering, art style guide, and complete
gfx/ directory structure.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CLAUDE.md: add bookmarks/bookmarks/, opinion_modifiers/, and
religion_families/ to project structure tree.
MASTERPLAN.md: remove resolved trait_knows_hemalurgy item from M1.
REVIEW_NOTES.txt: update WARNING-05 to reflect that tiered attention
modifiers are now defined.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove empty ai_primary_priority block from e_final_empire (the
if block had no effect, causing a lint error)
- Move bookmarks to common/bookmarks/bookmarks/ subdirectory to
match CK3 1.18 expected path
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CK3 1.18 requires the full has_character_modifier and
add_character_modifier forms. The shorthand has_modifier and
add_modifier are not valid in character scope.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- dynasty_prestige_mult → monthly_dynasty_prestige_mult
- scheme_power_mult → owned_personal_scheme_success_chance_add
- Remove hostile_scheme_resistance_mult (removed in CK3 1.18)
- Move cultural_acceptance_gain_mult from character_modifier to
culture_modifier block where CK3 expects it
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Convert picture fields from string to block format
- Use vanilla trait names (ambitious, sadistic, greedy, callous,
compassionate) instead of trait_ prefixed versions
- Move stress from cost block to add_stress in effect block
- Fix add_opinion: add required target field, remove redundant
opinion value
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CK3 defaults to male when no gender is specified, so explicit
male = yes is unnecessary. Fixed decision picture to use reference
block syntax. Changed deprecated beautiful trait to beauty_good_3.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CK3 1.18 does not use explicit trait index assignments — they are
auto-assigned by load order. Also fixed `opposite` → `opposites`
(correct CK3 keyword) on allomantic strength traits.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add Gender Doctrine group to M3 task 3.8 with three options:
male_preference (Steel Ministry), equal (Survivorism, Terris),
irrelevant (Cult of Ruin). Women can hold titles, serve in
council, and wield Allomancy in all faiths — only inheritance
order is affected. Add gender preference to M4 government types.
Remove integrated ideas from IDEAS.md (unlanded crew → M5,
debug decisions → TESTING.md).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Create docs/TESTING.md with debug game rule, debug decisions per
milestone, log analysis commands, pre-launch validation script,
post-run analysis script, and Claude Code testing capabilities.
Add cross-reference to TESTING.md in each milestone's Testing
Checkpoints section (M1-M8).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Expand M3 with custom education system (5 tracks × 4 tiers), dynasty
legacies (5 universal + 10 house-specific), custom death reasons (12),
and character nicknames (~15). Expand M4 with custom government types
(3), factions (5), vassal contracts (6 terms), secret types (8), hooks
(3), court types (3), and portrait modifier system (10 triggers).
Update MASTERPLAN scope to reflect all new systems.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds static analysis for CK3 mod files using ck3-tiger. The Makefile
downloads the platform-specific binary and persists the CK3 game
directory path for validation runs.
Targets: make setup, make lint, make clean
Config: lords_of_ash/ck3-tiger.conf (English only, hide vanilla)
Commit skill updated with pre-commit lint step.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update MASTERPLAN.md to reflect new systems added to milestones:
- M3: custom tenets/doctrines, expanded holy sites, Inquisitor
holy order, Keeper Network secret society
- M4: council retheme + court positions, caste laws, innovation
eras, legend suppression
- M5: band council with crew roles
- M7: advanced council interactions, post-endgame throne choice
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Expand milestone docs with several major new systems:
M3: Religion overhaul — 12 custom tenets (3 per faith), 2 custom
doctrine groups (Allomantic Stance, Caste Doctrine), expanded holy
sites (~10, differentiated by faith, with conditional sites),
tradition condition fixes, dead parameter cleanup. New task 3.11:
Steel Inquisitor holy order + individual Inquisitor request mechanic,
Keeper Network secret society with progression and discovery risk.
M4: Council retheme (5 positions with 10 custom tasks), 7 court
positions (Royal Court), legend system suppression, caste law system
(3 tiers: Strict/Relaxed/Abolished with cross-caste consequence
events), innovation system (Age of the Lord Ruler pre-unlocked +
Age of Liberation locked behind lord_ruler_fallen flag).
M5: Band council with 7 crew roles, vacancy penalties, ~14 role
events, and 5 band tasks. Each crew member's Allomantic ability
enhances their assigned role.
M7: Advanced council interactions (~25 events) — kandra courtier
replacement, Court Smoker vs Seeker duels, Obligator Witness
betrayal, Terris Steward Keeper reveal. Post-endgame choice: seize
the throne or release the kingdoms. Variable standardized to
lord_ruler_fallen across all docs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add new systems across milestones: metal supply and scarcity (M2),
Royal Court artifact system with 9 core types (M3), 5 custom
Mistborn lifestyles replacing vanilla (~75 perks/events each), and
rethemed activities including multi-phase Noble Ball (M5). Also adds
stretch-goal artifacts (~20 types) and 8 Mistborn-specific activities
to M7.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Break the MASTERPLAN into 8 milestone documents (M1-M8) with a
standard template. Each milestone includes prerequisites, current
state assessment, numbered implementation tasks with file references,
testing checkpoints, acceptance criteria, and risk analysis.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Added /orient skill for lightweight context bootstrapping — reads
README.md, skill frontmatters, and mod structure without flooding
context. Added a lean README.md as the entry point for orientation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Added a Committing section directing Claude to always use the /commit
skill. Updated the CK3 version reference from 1.12 to 1.18.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The mod was targeting CK3 1.12 which is several versions behind the
current 1.18 (Crane). Added Roads to Power DLC as a dependency in
both descriptor files.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Renamed mistborn_final_empire/ to lords_of_ash/ and
mistborn_final_empire.mod to lords-of-ash.mod using git mv.
Updated all references in CLAUDE.md, ck3-game-install skill,
and commit skill.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add "The End of an Empire" bookmark with event planning, bookmark
game data, province history, and localization. Include project
masterplan and design ideas documents.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add ck3-game-install skill for log analysis and vanilla comparison.
Add commit skill for structured commit messages and changelog.
Fix create-skill name field. Add skills scope preference to
CLAUDE.md. Update REVIEW_NOTES and add missing modifier
definitions.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CK3 requires every culture to have an ethnicities block or it
crashes on load. Added ethnicities to noble_scadrian, skaa, and
terris cultures. Also added required type, is_shown, and
ai_will_do fields to heritage and language pillars — without
these the cultures were invisible in-game.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CK3 uses @ as a scripting variable prefix, not a comment character.
The @# lines were parsed as broken variable declarations, causing
cascading parse failures in triggers, effects, traditions, religion,
and holy sites. Only # is valid for comments.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Project overview, directory structure, CK3 modding conventions,
trait/event naming patterns, core systems, and known issues.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>