JEF is a small client-side add-on for Just Enough Items (JEI) that adds extra search-bar filtering for item stats.
Have you ever wanted to find out what the strongest weapons, tools, and armor were in your modpack, but didn't want to painstakingly read through all the tooltips? Then this is the mod for you! JEF offers additional search-bar filtering options within JEI to easily find the items with your desired attributes.
JEI already has several built-in "prefix" searches. The most important ones are:
@modname — filter by mod#text — search tooltip text$tag — search tags%tab — search a specific creative tab^color — search by color&namespace:path — search by item id or resource locationJEI also supports the following:
| = OR-token = exclude tokenJEF adds the additional attribute filtering prefix, "!", allowing you to filter items by their attribute values.
!ad>7 — filters by items with an Attack Damage of at least 7!as<=2.4 — filters by items with an Attack Speed of at most 2.4!akb>0 — filters by items with Attack Knockback greater than 0!dps>=20 — filters by items with a computed DPS of at least 20-!ad>7 — excludes items that match the attribute expression (items with an Attack Damage of at least 7)To filter by a specific item attribute, you can use full attribute ids: !minecraft:generic.attack_damage>=7, or you can use aliases (see "Aliases below). Supported comparators include the following: >=, <=, >, <, =.
JEF automatically builds an alias index at runtime from the attribute registry, creating an editable config list of full atribute ids (e.g. minecraft:generic.attack_damge) and their auto-generated aliases from ids and translated names.
On the client, JEF writes these files:
config/jef.aliases.generated.properties — this is the full alias map, and is automatically overwritten at runtime, and should not be touched.config/jef-aliases.properties — this is the authoritative list of aliases that you can edit to change what attributes map to what aliases.Both files use the format: namespace:path=alias1,alias2,alias3
I.E.: attribute id = comma-separated list of aliases
You can also add overrides in the Forge client config aliases.manual by putting entries such as: entityreach=attributeslib:entity_reach
What do you do if you don't know the alias for something and don't want to check the config? That's what plaintext tooltip filtering is for. You can use the # tooltip search operator to search for a token within a tooltip, followed by a comparator and value to filter directly from the numbers within tooltips.
#"entity reach">=3 — filters for items with tooltips that contain the text, "entity reach" (case insensitive) and a number greater than or equal to 3.#"armor negation">=30 — filters for items with tooltips that contain the text, "armor negation" and a number greater than or equal to 30-#"crit chance">=15 — excludes items with a tooltip that match the attribute expression.config/jef-client.toml offers some useful options for configuring the mod:
Conversation