Data Attributes: DC

Quick rating

Community listing page, reviews here may not be monitored by the author.

Data Attributes: DC

By bibiredenOwner

No reviews yet

A flexible attribute framework for Minecraft. Configure attribute bounds, connect stats, and customize entity base values through datapacks and live server settings.

Mod Loaders
Minecraft

About

Description

Data Attributes Banner

Data Attributes: DC

A data-driven entity attribute framework for Minecraft 1.21.1 on Fabric and NeoForge.

Data Attributes gives servers, modpacks, and other mods a cleaner way to work with Minecraft's entity attributes. You can expand or restrict an attribute's legal range, build follow-on attributes from other stats, and give selected entity types their own base values through datapacks or a server-authoritative Fzzy Config setup.

It does not add a progression system or a pile of content on its own. It is infrastructure: a flexible attribute layer that other systems can build on.

This is a continuation of the original Data Attributes by CleverNucleus and is maintained by Bare Minimum Studios. It is listed as Data Attributes on Modrinth and Data Attributes: DC on CurseForge.

What can it change?

Attribute Definition Overrides

These change an attribute's rules: allowed minimum/maximum, stacking formula, diminishing smoothness, and display formatting.

An override is not an entity value. Setting minecraft:generic.max_health's allowed maximum to 2048 only raises the possible ceiling; it does not set every entity to 2048 health.

Attribute Functions

A parent/source attribute can feed a child/derived attribute with additive or multiplicative behavior. This is useful for RPG-style follow-on stats without forcing every consuming mod to implement the relationship itself.

Entity Base Attributes

This layer actually assigns raw base values to entities or Data Attributes entity groups. For example, setting minecraft:player -> minecraft:generic.max_health = 2 gives players a max-health base of 2.

Configuration priority

Vanilla defaults → datapacks → server configuration

The Fzzy Config screen also exposes a Datapack Baseline Preview so server administrators can see the lower-priority datapack values before overriding them.

Datapacks are loaded from:

data/<namespace>/data_attributes/overrides/*.json
data/<namespace>/data_attributes/functions/*.json
data/<namespace>/data_attributes/entity_types/*.json

Hot reload behavior

Saving an accepted change through the Fzzy Config GUI applies it live. Existing loaded living entities adopt supplier-owned base changes on their next tick.

Changes to datapack JSON use vanilla /reload. Directly editing Fzzy's JSON5 file on disk is different: /reload reloads datapack/resources, not arbitrary Fzzy config files.

Required mods

Fabric 1.21.1

  • Fabric API
  • Fabric Language Kotlin
  • Fzzy Config

NeoForge 1.21.1

  • Kotlin for Forge (NeoForge)
  • Fzzy Config

The current version does not require OWO Lib/OOLib, OWO Sentinel, or Endec.

AttributeFix is not recommended alongside Data Attributes. Both change the same attribute bounds/capabilities layer and can conflict.

Links

Sponsor

Sponsor Banner

Use code bareminimum to get 25% off your first month!

License

Current Bare Minimum Studios releases use the Bare Minimum License (BML) v1.0. See the license for the full terms.

Data Attributes Banner

Data Attributes

A data-driven entity attribute framework for Minecraft 1.21.1 on Fabric and NeoForge.

Data Attributes makes Minecraft's attribute system much easier to shape without hard-coding every change into another mod. Server owners and pack makers can change attribute bounds and stacking behavior, derive one attribute from another, and assign base values to individual entity types or broader entity groups.

It does not add a progression system or a collection of new content by itself. Think of it as the attribute layer that datapacks, servers, and other mods can build on.

This project continues the original Data Attributes by CleverNucleus and is maintained by Bare Minimum Studios. It is listed as Data Attributes on Modrinth and Data Attributes: DC on CurseForge.

Three separate layers

Attribute Definition Overrides

Definition overrides change the rules of an attribute: its allowed minimum/maximum, stacking formula, diminishing smoothness, and display format.

They do not set entity values. If you raise minecraft:generic.max_health's maximum to 2048, you have raised the ceiling to 2048; you have not given every entity 2048 health.

Attribute Functions

Functions connect a parent/source attribute to a child/derived attribute. The parent's current value can add to or multiply the child using a configurable coefficient, which makes follow-on stats possible without baking them into every mod.

Entity Base Attributes

Entity entries are what actually assign raw base values. You can target a concrete entity such as minecraft:player, or use Data Attributes' broader entity groups and then layer specific entries on top.

For example, minecraft:player -> minecraft:generic.max_health = 2 gives players a max-health base of 2.

Datapacks + server config

Data Attributes resolves its settings in this order:

Vanilla defaults → datapacks → server configuration

The server configuration uses Fzzy Config and includes a Datapack Baseline Preview, so administrators can see what datapacks are supplying before they override it.

Datapacks use these paths:

data/<namespace>/data_attributes/overrides/*.json
data/<namespace>/data_attributes/functions/*.json
data/<namespace>/data_attributes/entity_types/*.json

Live editing

Changes accepted through the in-game Fzzy Config screen apply live. Existing loaded living entities adopt supplier-owned base changes on their next tick.

Datapack JSON changes use vanilla /reload. Manually changing Fzzy's JSON5 file on disk is separate; /reload only reloads datapack/resources and does not reread arbitrary Fzzy config files.

Requirements

Fabric 1.21.1

  • Fabric API
  • Fabric Language Kotlin
  • Fzzy Config

NeoForge 1.21.1

  • Kotlin for Forge (NeoForge)
  • Fzzy Config

OWO Lib/OOLib, OWO Sentinel, and Endec are not required by the current source.

Compatibility note: Data Attributes is not intended to be used with AttributeFix. Both modify the same attribute bounds/capabilities layer and can conflict.

Links

Sponsor

Sponsor Banner

Use code bareminimum to get 25% off your first month!

License

Current Bare Minimum Studios releases use the Bare Minimum License (BML) v1.0. See the license for the full terms.