Add opt-in quest task filtering - #1240
Closed
DannyM300 wants to merge 1 commit into
Closed
Conversation
Collaborator
|
This explanation makes no sense to me. Also do you have a screenshot? |
Author
Collaborator
|
And what's the use case? |
Author
Collaborator
|
So it sounds like you are just chasing the boosted-odds event quests. Given that there are just a few for each event, the currently supported path just requires a few clicks to set up. On the other hand, the long term complexity for both the codebase and end user does not appear to be worth it: the UI is unintuitive and difficult to grasp for the uninitiated and the filtering complexity further muddies the logic. |
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.




Summary
Add an opt-in Tasks tab to quest filters so users can select quests by task, with optional narrowing to particular rewards.
This was requested by users who wanted to find a task directly rather than first selecting every reward that task may currently grant.
Behaviour
Task filters use a stable
k<title>-<target>key and support:Reward-first and task-first filters are additive: a quest is included when either its reward filter or its task filter matches.
Task filters default to off, so adding the feature does not keep quests visible unexpectedly or change existing reward-filter defaults. Users opt into task matching from the new tab.
SQL and Golbat support
Task-to-reward mappings are generated on both available-data paths:
/api/fort/available.For Golbat DNF queries, enabled task keys are expanded into the reward keys that task can grant before translation. A task narrowed through its advanced settings expands only to the selected rewards. The SQL/in-memory path performs the equivalent task-and-reward match directly.
Task conditions are exposed with the available map data and used to build translated/searchable entries in the drawer.
The virtualised selector grid is mounted only while its tab and drawer are visible. This prevents the new Tasks grid reopening with stale hidden-container measurements.
Profile note
The feature itself is independent of profile storage. However, every dynamic task adds another default filter entry to the merged client filter tree, which can make existing full-state profile payloads considerably larger on maps with many tasks.
The general profile payload compaction is therefore submitted separately in #1239 so it can be reviewed independently and, ideally, merged before or alongside this feature.
Validation
main(8ce212ff).Happy to adjust the key format, API shape or UI placement if the maintainers prefer another approach.