COWMODSКаталог модов
AttributeSetter

ВЕРСИИ (31)

release

AttributeSetter 2.3-neoforge

2.3-neoforge
31 авг. 2026 г.1,2 тыс.Minecraft: 1.21.1neoforge
Скачать
Что нового
# AttributeSetter 2.3 ## Block editing (new folder: `attributesetter/block`) A new target type for changing block properties. Blocks have no NBT or data components, so those selectors are unavailable here, but id, tag, regex, `@namespace`, `*`, and the `!` / `&&` / `||` combinators all work. - **Hardness**: retunes `destroySpeed` with `multiplier` (default 1.0) and `offset` (default 0.0), result clamped to zero or above. Blocks vanilla marks unbreakable are skipped unless you pass an explicit `value`. - **Explosion resistance**: same multiplier/offset rules on `explosionResistance`. Alias `blast_resistance`. - **Mining speed**: applies multiplier/offset to the player's dig speed through the break-speed event. This one is per player, dynamic, and stacks with other break-speed modifiers. Alias `break_speed`. - **Replace**: swaps a block for another every time it generates or is placed (worldgen, entity and dispenser placement, pistons, fluids). Blocks already in loaded chunks convert when the game next writes that position. - **Remove**: `REMOVE` / `DELETE` in the `block` folder turns every generated or placed copy into air and removes the block's item. ## Recipe editing (new folder: `attributesetter/recipe`) Select recipes, then remove or rewrite them. Edits apply during the datapack reload and ride the game's own recipe sync to clients, so `/reload` is enough and deleting the entry restores the recipe. - **Remove**: `{ "minecraft:diamond_sword": "remove" }`. - **Replace result**: `replace_result` with `with` and `count`. Accepts a full item string, so components work. - **Replace ingredient**: `replace_ingredient` with `match` (an item selector, every matching ingredient is swapped) and `with` (an id, `#tag`, or array). - New recipe selectors: recipe id (`minecraft:x`, `regex:`, `@mod`, combinators), `type:minecraft:smelting` / `recipe_type`, `recipe_type_regex`, `ingredient:` / `contains_ingredient`, `result:` / `contains_result`. The ingredient and result matchers take a full item selector as their value. - `replace_result` and `replace_ingredient` rebuild the recipe, so they cover shaped and shapeless crafting, smelting/blasting/smoking/campfire, and stonecutting. A recipe type the mod cannot rebuild is left alone with a log warning. `remove` works on any recipe. ## Removing items, entities, and blocks `REMOVE` / `DELETE` was expanded well past what 2.2.1 did. A removed **item** now disappears from: - the creative inventory and creative search, and therefore JEI - every recipe (recipes producing it are dropped, and recipes that can no longer be crafted because an ingredient lost all its items are dropped, but a tag ingredient that only lost one item is kept) - every loot table (block, mob, chest, fishing, gift rolls) - villager and wandering trader offers - the world (dropped item entities are deleted as they spawn) - player inventories and ender chests, swept once a second, so pre-existing copies go away too A removed **entity** never joins a level (natural spawns, spawners, spawn eggs, breeding, entities already saved in a chunk). Its spawn egg is removed as an item, and the spawn placement check denies it early so it does not eat the mob cap. Players are never removed. Removals recompute from scratch on every `/reload`, and loot tables and recipes are filtered rather than rewritten, so deleting the entry brings everything back. The two things that do not come back: trades already stripped off a villager, and items already swept out of an inventory. Spawn-egg removal and the early placement check need a selector that resolves to entity types on its own (id, tag, regex, mob category, and their combinations); an entity entry relying only on NBT or `isEnemy` still removes the entity but skips those two extras. ## Unique caps (`make_unique` / `make_unique_shared`) Caps how many copies of an item or entity may ever be created in a save. Past the cap, new copies are blocked the way a removed thing is, but the item stays in the creative tab and JEI, and creative grabs and `/give` do not count. - `make_unique` (alias `unique`): the limit applies to each matched type on its own. - `make_unique_shared` (alias `unique_shared`): pools every type the entry matched into one counter. - Fields: `limit` (required), `broadcast` (announce in chat on hitting the cap), `message` (custom text with `%name%`, `%limit%`, `%count%` placeholders). - What counts: items count when produced by a loot table or a crafting recipe; entities count on spawn (natural, spawner, breeding, spawn egg, `/summon`). Over-cap loot rolls drop the item, over-cap crafting yields nothing, over-cap spawns are denied. Counted unique entities are marked persistent so they never despawn. - Counting is lifetime and monotonic per save. Destroying a copy does not free a slot. Counts are stored in the overworld's saved data, so they survive restarts and `/reload`. Removing the datapack entry drops the cap but keeps the count. - Entities already saved in a chunk before the cap existed are grandfathered in, not culled or counted. - New command: `/attributesetter unique <item|entity|group> <id> [get | set <n> | add <n> | remove <n> | reset]`, permission level 2. With no verb it prints the count and the active limit. - New server config `config/attributesetter-server.toml` with `defaultBroadcastMessage` and `broadcastByDefault`. ## Selectors Selectors now work out what they support from what the target actually is, rather than being listed per folder. Because an item stack is a specific item, every item selector (id, tag, regex, namespace, `isFood`, and so on) works on item stacks with no extra work. A selector can now be written three ways that mix freely: - a string (the existing shorthand) - an object with a `type` field for one selector spelled out, or without a `type` for "all of these at once" - an array, which matches if any entry matches Object-form options: `invert: true` flips a selector, `specificity` (alias `priority`) overrides how specific it counts as for ordering. New and expanded selectors: - `@somemod` / `{"namespace": "somemod"}` for everything a mod added - `*` / `{"type": "always"}` for everything - `component:minecraft:food` / `has_component` for any data component by id, a list meaning "has all of them" - more item component checks: `isTool`, `isDyeable`, `isFireResistant`, `hasAttributes`, alongside the existing `isFood`, `hasDurability`, `isEnchanted`, `isPotion` - a word for every vanilla mob category: `isMonster`, `isCreature`, `isAmbient`, `isWaterCreature`, and the rest, plus `{"mob_category": [...]}` - `regex` gained `ignore_case` and `match` set to `full` (default), `path`, or `namespace` - NBT can be written as a plain JSON object (`{"IsBaby": 1}`) as well as SNBT - `not`, `any`, and `all` nest to any depth, and each entry is itself a full string, object, or array selector ## File format and shorthands - A single setter no longer needs to be wrapped in an array. - A setter can be written as a string. Grammar is `<operation> [token]...`, where a token is `key=value`, `x2` / `*2` (multiplier), `+5` / `-5` (offset), or a positional argument. Double quotes group a token with spaces. Covers `remove`, `unique 3`, `durability x2`, `max_stack 16`, `hardness x0.5`, `attribute minecraft:generic.max_health 40`, `tooltip <line>`, `replace_ingredient <match> <with>`, and more. - A selector can be a JSON object when the entry carries a `selector` field (aliases `select`, `target`), turning the key into a plain label, or the whole file can be an array of entries. - `setters` aliases: `apply`, `modifiers`, `operations`. `operation` alias `op`. - An entry can carry `name` (alias `id`) used as its label in modifier ids and log lines instead of the array index. - Keys starting with an underscore are ignored, so `"_comment"` works as a note. - **File and entry priority**: a top-level integer `priority` key sets the default for every entry in the file, and an individual entry can override it. Matching entries apply lowest priority first, so a higher-priority entry applies last and overrides the ones it overlaps with, whatever their selectors look like. This is how one datapack can override or effectively delete another datapack's entry. Ties fall back to specificity ordering. This is separate from the `priority` alias for `specificity` inside a selector object. - The `item` folder now accepts both per-stack operations (attribute modifiers, tooltips) and per-item operations (durability, food, stack size); each setter is handed to whichever half understands it. `item_type` still works and still means item-level only. Plural folder names (`entities`, `items`, `blocks`, `recipes`, `attributes`) are accepted. ## Curios - New slot value `"curio"` (also `"curio:*"`) applies the modifier in every Curios slot the item fits, without naming one. This never depends on Curios' slot list, so it is the reliable option for multi-slot items. - Reworked the "slot omitted" path. When Curios' slot data has not loaded yet, the entry is registered both as a Curios entry and as a normal item modifier, and the choice is made per attribute query with a logged warning, instead of guessing wrong at load time. That fallback skips the reload-time bake into `ATTRIBUTE_MODIFIERS`, so writing the slot out explicitly is still better. - `CuriosCompat` was substantially rewritten around this. ## Fixes - **Armor modifiers were invisible to the mod.** `ArmorItem` and every mod item copying its shape keep their modifiers in a memoized supplier, not in the `ATTRIBUTE_MODIFIERS` component, so reading the component alone reported every armor piece as having no modifiers. `TrueDefaults` now resolves modifiers the same way NeoForge's `ItemStack#getAttributeModifiers` does, falling back to `getDefaultAttributeModifiers`, and snapshots them before any reload so a bake cannot be counted twice. - **Reading an ingredient during the reload corrupted recipes for the session.** `Ingredient#getItems()` resolves tag ingredients against registry tags and caches the result forever, but the server only binds the reload's tags after every reload listener finishes. Calling it from the mod's listener dissolved tag ingredients against the previous reload's tags, or against nothing on first world load. New `IngredientItems` helper reads ingredient contents from the reload's own condition context instead, and recipe matching and removal both go through it now. - **Attribute tooltip lines were duplicated or left stranded.** The client tooltip code now rebuilds the "When in Main Hand" block from real modifier data instead of scraping localized text, and it accounts for NeoForge replacing vanilla's attribute tooltip section with its own. Missing translation-key prefixes had made the section scan stop early and leave the original lines below the merged block. It also restores the original lines if anything goes wrong, so it will not break another mod's tooltip. - Durability and max-stack setters reworked to the shared `value` / `multiplier` / `offset` model used by the block setters. ## Internal - New util classes: `JsonHelper`, `Shorthand`, `RecipeRewriter`, `RegistryValues`, `IngredientItems`. - New API classes: `BlockDefaults`, `BlockReplacementRegistry`, `RecipeProcessor`, `UniqueRegistry`, `UniqueCounts`, expanded `RemovalRegistry` and `TargetType`. - New selectors: `AlwaysSelector`, `NamespaceSelector`, `ProjectedASSelector`, `EntityTypeResolver`, and the recipe selector package (`IngredientSelector`, `RecipeTypeSelector`, `ResultSelector`, `RecipeMatching`). - Per-target-type classes under `targettypes/` (`BlockTargetType`, `RecipeTargetType`, and friends). - New mixins: `BlockBehaviourAccessor`, `BlockStateBaseAccessor`, `LevelChunkMixin`, `ProtoChunkMixin`, `CreativeModeTabMixin`, `LootTableMixin`, `AbstractVillagerMixin`. - `TargetType.registerEntry` now takes a priority and flattens composite setters before bucketing them by event, so a builder can return one composite holding setters for different events. - Version bumped `2.2.1-neoforge` to `2.3-neoforge`.
release

AttributeSetter 2.2.1-neoforge

2.2.1-neoforge
20 июн. 2026 г.1,4 тыс.Minecraft: 1.21.1neoforge
Скачать
Что нового
Fixed setters trying to register before TargetTypes are loaded Fixed AttributeInjection duration and stacking glitch Fixed concurrent access crash on AttributeSetterAPI usage
release

AttributeSetter 2.2-neoforge

2.2-neoforge
7 июн. 2026 г.335Minecraft: 1.21.1neoforge
Скачать
Что нового
Rewrite of the project. Added food setters Added tooltip setters Added caching for a bunch of Selectors(HUUUGE performance boost) Added Attribute Merging Added isEnemy selector Added MaxStack setter Added isFood selector Added hasDurability selector Added isEnchanted selector Added isPotion selector Added isMonster selector Added isCreature selector Better support for /reload New documentation
release

AttributeSetter 2.1-fabric

2.1-fabric
4 мая 2026 г.1,5 тыс.Minecraft: 1.20.1fabric
Скачать
release

AttributeSetter 2.1.1-neoforge

2.1.1-neoforge
4 мая 2026 г.635Minecraft: 1.21.1neoforge
Скачать
release

AttributeSetter 2.1.1-forge

2.1.1-forge
1 апр. 2026 г.12,1 тыс.Minecraft: 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6forge
Скачать
Что нового
- Fixed attributes not being applied to baby entities
release

AttributeSetter 2.1-forge

2.1-forge
10 февр. 2026 г.1,2 тыс.Minecraft: 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6forge
Скачать
Что нового
- Added regex selectors - Added attribute conversion - Added attribute dependency
release

AttributeSetter 2.0-forge

2.0-forge
4 февр. 2026 г.112Minecraft: 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6forge
Скачать
Что нового
- MANY bugfixes, too many to list. - Better compat with ApothicAttributes - Better attribute merging - Better performance(rewrote the entire project) - The ability to select items and entities based on NBT - The ability to select items and entities based on more than one tag(or nbt) at once - The ability to select all items and entities that DON'T fit the selector - The "durability" operator, which changes an item's max durability.
beta

AttributeSetter 1.11-neoforge

1.11-neoforge
22 авг. 2025 г.3,7 тыс.Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8neoforge
Скачать
Что нового
Attempt at a 1.21 port. Tooltip rendering is not working just yet!
release

AttributeSetter 1.10-fabric

1.10-fabric
19 мая 2025 г.2,4 тыс.Minecraft: 1.20.1fabric
Скачать
Что нового
Fixed bug where attributes weren't stacking in different armor pieces Removed need for UUIDs altogether, although you can still specify them
release

AttributeSetter 1.11-forge

1.11-forge
19 мая 2025 г.6,3 тыс.Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
Fixed bug where attributes weren't stacking in different armor pieces Removed need for UUIDs altogether, although you can still specify them Fixed bug where if you had two items in the same curios slot(E.g two rings) the attributes didn't stack
release

AttributeSetter 1.9.1-fabric

1.9.1-fabric
6 дек. 2024 г.408Minecraft: 1.20.1fabric
Скачать
Что нового
Many bugfixes
release

AttributeSetter 1.10.1-forge

1.10.1-forge
6 дек. 2024 г.6,1 тыс.Minecraft: 1.20.1forge
Скачать
Что нового
Bug fixes Changed how curio slots works, check Github
release

AttributeSetter 1.9-fabric

1.9-fabric
18 нояб. 2024 г.182Minecraft: 1.20.1fabric
Скачать
Что нового
Added shorthand entity and item ids based on filename Entity default operation now is BASE Fixed wrong values appearing as green attributes
release

AttributeSetter 1.10-forge

1.10-forge
18 нояб. 2024 г.306Minecraft: 1.20.1forge
Скачать
Что нового
Added shorthand entity and item ids based on filename Entity default operation now is BASE Fixed wrong values appearing as green attributes
release

AttributeSetter 1.8-fabric-hotfix

1.8-fabric-hotfix
15 нояб. 2024 г.227Minecraft: 1.20.1fabric
Скачать
Что нового
Fixed a crash about non number attribute tooltips
release

AttributeSetter 1.9-forge-hotfix

1.9-forge-hotfix
15 нояб. 2024 г.117Minecraft: 1.20.1forge
Скачать
Что нового
Fixed a crash about non-number attribute tooltips
release

AttributeSetter 1.9-forge

1.9-forge
14 нояб. 2024 г.82Minecraft: 1.20.1forge
Скачать
Что нового
Added support for CuriosAPI
release

AttributeSetter 1.8-forge

1.8-forge
2 нояб. 2024 г.266Minecraft: 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6forge
Скачать
Что нового
Fixed attributes not showing up when clients are connected to server.
release

AttributeSetter 1.8-fabric

1.8-fabric
2 нояб. 2024 г.170Minecraft: 1.20.1fabric
Скачать
Что нового
Fixed clients not showing correct attributes when connected to a server Fixed incompatibilities with some mods.
release

AttributeSetter 1.7-forge

1.7-forge
1 нояб. 2024 г.118Minecraft: 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6forge
Скачать
Что нового
Fixed some incopatibilities
release

AttributeSetter 1.6-forge

1.6-forge
24 окт. 2024 г.145Minecraft: 1.20.1forge
Скачать
Что нового
Added auto-slot recognition so you don't have to manually type the slot for every armor attribute.
release

AttributeSetter 1.6-fabric

1.6-fabric
24 окт. 2024 г.104Minecraft: 1.20.1fabric
Скачать
Что нового
Added auto-slot recognition, so you don't have to manually type the slots for each armor attribute.
release

AttributeSetter 1.5-forge-hotfix

1.5-forge-hotfix
21 окт. 2024 г.104Minecraft: 1.20.1forge
Скачать
Что нового
Added support for forge!
release

AttributeSetter 1.5

1.5
21 авг. 2024 г.230Minecraft: 1.20.1fabric
Скачать
Что нового
Fixed UUID problem Negative modifiers now collapse into green modifiers
release

AttributeSetter 1.4-hotfix

1.4-hotfix
4 авг. 2024 г.4,2 тыс.Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
Fixed crash in server
alpha

AttributeSetter 1.4

1.4
4 авг. 2024 г.66Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
Added changes tooltips to correctly display attributes in tools. THIS VERSION CRASHES ON SERVERS, DOWNLOAD THE 1.4 HOTFIX
release

AttributeSetter 1.3

1.3
3 авг. 2024 г.85Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
Added BASE option for items.
release

AttributeSetter 1.2

1.2
30 июл. 2024 г.94Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
Removed some console spam Added default tags for some MC entities
release

AttributeSetter 1.1

1.1
21 июл. 2024 г.85Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
Renamed the whole project to AttributeSetter Added support for Item Attributes
release

CustomEntityAttributes 1.0

1.0
14 июл. 2024 г.104Minecraft: 1.20.1fabric
Скачать