Modularize Crafting - #32
Open
RandyChihuahua wants to merge 14 commits into
Open
Conversation
Proposes collapsing the per-hero KnownEnchantmentBlueprints lists into a single campaign-scoped set owned by the Crafting module, and moving skill gating from purchase time to enchanting-table time. Documents three existing defects the per-hero storage causes: stacking career cost reduction, the Runelord button not seeing companion-learned runes, and the quest-counter desync already noted in RunelordQuest.cs:46. Includes a phased plan of attack ordered so the save-format change lands before anything reads it, with balance decisions separated from refactor steps. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01R2XCeNASCmYBaosUX44kxN
Z3rca
reviewed
Sep 9, 2026
| /// Grey Lord's "ForbiddenScrollsOfSapheryPassive3": -1% enchantment cost per known spell. | ||
| /// Tagged PassiveEffectType.Special in GreyLordCareerChoices.cs (opts out of the generic | ||
| /// CareerHelper dispatch since it needs a per-hero-computed multiplier, not a flat value). | ||
| /// </summary> |
Contributor
There was a problem hiding this comment.
i dont remember this design but it sounds cool :D.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Aim for this is to allow the module to operate on it's own, with as little external code references as possible.
If we add cross-module dependency, it's best left in Framework to document this dependency.
It'll need constant vigilance but makes coding changes have less of a blast radius.