-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Suggestion: Match Item Tag - Toggle Tag List #15
Comments
Looking at the match mod origin flag, I think I was misunderstanding the Match Item Tag flag, and don't understand how it works. I think something like this is what I was imagining:
(It's just the match mod origin flag without the namespace portion) My ultimate goal is to not need to put every type of log in a filter to filter all log types, or every type of wool in a filter to filter all wool colors, etc. :) |
I'm not sure that blocks and items are still backed by a predefined integer (the registry system does use identifying integers underneath depending on when they were loaded in, but I haven't dug deep enough to reach it). But it's unrelated as the filter option actually looks at the item tags that the item is a part of. Truth be told, this is a horrible system. Many of the tags produce functionality that the user may not desire, such as the "guarded_by_piglins" tag. The reason it exists is because of a lack of (AFAIK) an ore dictionary in the Fabric ecosystem. I haven't thought of a better way of grouping items in an extensible, user-intuitive way. But for now I would suggest making use of the obscenely large filter inventory and even chaining the filter pipes in an OR fashion (one pipe connects to multiple filtered pipes, each one allowing opening a new path). |
I see. So, the flag is looking for an intersection in tags. For example, if I put gold in the filter- then anything with the tag "guarded_by_piglins" would pass through- because they both share that tag. That makes sense. :) |
I also think that mod tags are ignored, which is probably a good thing- unless they were toggled off by default. For example, the mod Cotton adds the tag #strip_command to a log, as well as to diorite, but putting a log in the filter does not let diorite pass through. Also, I do not think my F3 screen is showing all tags, because #stones does not show up for diorite- but it does if I search it in REI: I haven't been able to find a good mod for fabric that will let me view tags like this one for forge. So, I built this machine. It has one of every single block in those chests (took forever to populate). I have been using this to verify what will go through the filter when set to Match Item Tag. |
Looking at the source code, it think this filtering option is supposed to group items together based on their minecraft ID.
(You code very beautifully btw. Great use of comments, descriptive function names, etc.).
According to this site, the Oak Wood Plank block has an ID of 5 and the Spruce Wood Plank has an ID of 5:1. If I put oak planks in a filter with this advanced filtering option turned on- it lets both of them pass through, which was expected.
Likewise, Stone has an ID of 1, Granite has an ID of 1:1, and Polished Granite has an ID of 1:2- so I would expect all three of these to pass through the filter if I were to put stone in the filter- but none of them do, not even stone.
If I put granite (ID of 1:1) in the filter, it lets granite (ID of 1:1), diorite (ID of 1:3), and cobblestone (ID of 4) through- but not stone (ID of 1) or polished granite (ID of 1:2).
So, it does not seem to work the way I think it does.
Or, is it possible that the ID list on my server does not match up with the one on that site?
Or, is there a bug somewhere causing it to not function correctly?
The text was updated successfully, but these errors were encountered: