跳到正文

Just Enough Filtering (JEF)

JEF is a small client-side add-on for Just Enough Items (JEI) that adds extra search-bar filtering for item stats.

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

Just Enough Filtering (JEF)

Ever wanted to find the strongest weapons, tools, and armor in your modpack without reading every tooltip? That’s what JEF is for. It adds extra search-bar filtering so you can find items by their actual stats.

JEF adds no GUI. Everything is typed into the search bar you already use. It is client-side only, so servers don’t need it.

Supported hosts: JEI, EMI, and REI. JEF hooks whichever one is installed.

What Your Host Mod Already Offers

JEF keeps all native search behavior and only strips its own stat tokens before handing the rest back.

| Prefix | JEI / REI | EMI |
| — | — | — |
| @ | mod name | mod name |
| tooltip text | # ($ on newer JEI) | $ |
| tags | $ (# on newer JEI) | # |
| % | creative tab | creative tab |
| ^ | color | color |
| & | item id / resource location | item id / resource location |

Also supported: spaces = AND, | = OR, -token = exclude, and quotes for multi-word tokens such as #"attack damage".

What JEF Offers

**1) Attribute filtering with !**

Filter items by attribute value, whether the attribute is vanilla, Forge, or modded.

  • !ad>=7 – Attack Damage at least 7
  • !as<=2.4 – Attack Speed at most 2.4
  • !akb>0 – Attack Knockback above 0
  • !dps>=20 – computed DPS at least 20 (Attack Damage x Attack Speed)
  • -!ad>=7 – exclude items that match

Use a full id (!minecraft:generic.attack_damage>=7) or an alias (see Aliases below).

**2) Item stats with !**

! isn’t limited to attributes. These read the item itself, so they work on items with no attributes at all.

| Filter | Reads |
| — | — |
| !durability / !maxdamage | total durability |
| !damage | current damage on the stack |
| !remaining | durability left |
| !maxstack / !stacksize | max stack size |
| !enchantability | enchantment value |
| !repaircost | accumulated anvil cost |
| !nutrition / !food / !hunger | hunger restored, 0 if inedible |
| !saturation | saturation restored |
| !burntime / !fuel | furnace burn time in ticks |
| !enchantments | enchantment count |
| !ench:<id> | level of one enchantment, 0 if absent |

Examples:

  • !maxstack=1 – items that don’t stack
  • !durability>=1500 – high-durability gear
  • !nutrition>=6 !saturation>0.8 – genuinely good food
  • !burntime>=1600 – fuels better than coal
  • !ench:sharpness>=4 – Sharpness IV or better
  • !ench:minecraft:mending – anything with Mending
  • -!enchantments>0 – exclude everything enchanted

Notes:

  • Enchantment ids default to minecraft, so !ench:looting and !ench:minecraft:looting match the same thing. Modded ids need the namespace.
  • A stat name with no comparator means “nonzero”, so !burntime is every fuel.
  • These read Minecraft’s own data, not tooltip text, so language and tooltip-reformatting mods don’t affect them.

**3) Comparators**

| Comparator | Meaning | Example |
| — | — | — |
| >= <= > < | ordered comparison | !ad>=7 |
| = or : | equal | !maxstack=1 |
| != or <> | not equal | !maxstack!=64 |
| ~ | approximately equal, within 5% or ±0.05 | !as~1.6 |
| a..b | inclusive range | !ad=5..10 |
| lo<x<hi | chained bounds, < exclusive and <= inclusive | 5<!ad<=10 |

Notes:

  • Ranges only work with = / :. !ad>=5..10 is rejected rather than half-applied.
  • Chained bounds put the stat name mid-token, so quote multi-word tooltip labels: 3<#"entity reach"<9.
  • - negates the whole token, so -!ad=5..10 excludes items inside the range.

**4) Numeric Tooltip Filtering**

Don’t know an alias and don’t want to check the config? Add a comparator and a number to a normal tooltip search and JEF filters on the numbers in the tooltip line itself.

  • JEI / REI: #"entity reach">=3
  • EMI: $"entity reach">=3
  • #"armor negation">=30 – tooltips containing “armor negation” and a number at least 30
  • -#"crit chance">=15 – exclude matching items

Notes:

  • Text matching is case insensitive.
  • A numeric comparison needs a number. An incomplete one like #"attack damage"> falls back to a plain text search.
  • On JEI, a numeric comparison works behind either prefix, so #"attack damage">=7 works on every JEI build regardless of which prefix that build uses for tooltips.

This is mod-agnostic: if a mod prints a stat as tooltip text, JEF can usually filter it with no dedicated compat.

Tooltip vs attribute: !ad / !as / !dps read item attributes, so your tooltip may show higher numbers under Strength or similar effects. To filter the displayed number instead, use #"attack damage">=20.

Aliases

JEF builds an alias index at runtime from the attribute registry. It always includes the full attribute id, plus aliases generated from ids, translated names, and a few short conveniences like ad and as.

| File | Purpose |
| — | — |
| config/jef-aliases.generated.properties | full alias map, overwritten at runtime, don’t edit |
| config/jef-aliases.properties | your overrides, created once if missing, authoritative when present |

Single overrides can also go in config/jef.json under manualAliases:

{ "manualAliases": ["entityreach=attributeslib:entity_reach"] }

Config

| Option | Default | Effect |
| — | — | — |
| autoAliasesEnabled | true | auto-discover attributes and generate aliases |
| autoFromIds | true | generate aliases from registry ids |
| autoFromTranslations | true | generate aliases from translated names in the client language |
| enableShortAliases | true | generate short aliases like ad, as, kbres |
| enableAbbreviationAliases | false | generate abbreviations from words; off because it causes collisions |
| aliasFileEnabled | true | read and write the alias properties files |
| logAliases | false | log the resolved alias map at startup |
| showDpsTooltip | false | add a DPS: <value> line to item tooltips |
| usePlayerContextCombat | false | include your current buffs in !ad / !as / !akb / !dps so filtering matches tooltips that already do |

常见问题

Just Enough Filtering (JEF) 支持哪些 Minecraft 版本?

Just Enough Filtering (JEF) 支持 Minecraft Java 版 1.17–26.3,共 34 个版本,可用的加载器:Fabric / Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。

Just Enough Filtering (JEF) 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅客户端。

评论

登录后评论和评分

dipilodopilasaur 的其他作品

查看全部 →