Skip to content

Add rarity filter for affixes, sigils, and tributes#786

Open
chrisoro wants to merge 2 commits into
mainfrom
rarity-filter
Open

Add rarity filter for affixes, sigils, and tributes#786
chrisoro wants to merge 2 commits into
mainfrom
rarity-filter

Conversation

@chrisoro

@chrisoro chrisoro commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

fixes #771 #502

Every rarity-bearing object can now be gated on item rarity. Lets
crafters keep a rare/magic base while ignoring the equivalent
legendary that matches the same affixes.

- Affixes: ItemFilterModel gains a `rarity` constraint, an item-level
  gate alongside itemType/minPower. Keep paths (legendary aspect,
  GlobalUniques, mythic-always-keep) are unchanged.
- Sigils: SigilFilterModel gains a global `rarity` gate. Rarity is
  derived from sigil affixes via the sigils.json rarities map;
  unresolved rarity is fail-closed and logged at debug.
- Tributes: canonical key is now singular `rarity`; `rarities` stays
  as a back-compat validation alias. One shared rarity normalizer.
- Fix sigil editor so a top-level affix can be blacklisted globally
  without picking a dungeon; affix-kind rows hide the condition UI.

Refs ADR-0001, ADR-0002, ADR-0003. Closes #502.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Comment thread src/gui/models/dialog.py Outdated
Comment thread src/gui/profile_editor/sigils_tab.py
Comment thread src/gui/profile_editor/sigils_tab.py Outdated
Comment thread src/gui/profile_editor/sigils_tab.py
Comment thread src/item/filter.py Outdated
Comment thread tests/gui/importer/test_mobalytics.py
Comment thread README.md Outdated
Comment thread README.md Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add ability to filter on rarity (Including sigils)

2 participants