Перейти к содержимому
Mineforgian

Data Attributes

Overhauls the entity attribute system and exposes it with datapacks.

315K загрузок26 подписчиковMITfabric

Обновлён 11 июня 2023 г. · опубликован 19 июня 2022 г.

Data Attributes

What is Data Attributes?

Data Attributes is a Minecraft mod, initially released for Minecraft 1.17.1 using the Fabric ecosystem. The mod does two things: overhauls Minecraft's entity attribute system to be more dynamic and to include follow on attributes (something found in many other games); and exposes entity attributes to datapack manipulation - allowing servers/pack makers easy customisation of every aspect of the entity attribute system.

Why

Originally, Data Attributes existed as part of the PlayerEx mod. However, the system implemented in 1.16.5 was the "first draft", and was clunky and badly optimised (not to mention full of bugs). My mod group and I wanted to use this datapack attributes system as part of some other mods that we were working on, so I developed this as a more robust and standalone project.

Usage

By itself, this mod adds no in-game content. It simply allows entity attributes to be customised/added using datapacks. Please read the wiki before using the mod.

Notice

Data Attributes is not compatible with AttributeFix - they have the same capabilities!

Wiki

For documentation, please head over to the wiki

Requires Fabric API

Версии

ВерсияКаналИграЗагрузчикиДатаСкачать
1.4.6+1.19.2Релиз1.19.2fabric11 июня 2023 г..jar (100 КБ)
1.4.5+1.19.2Релиз1.19.2fabric3 июня 2023 г..jar (100 КБ)
1.4.4+1.19.2Релиз1.19.2fabric30 апреля 2023 г..jar (110 КБ)
1.4.3+1.19.2Релиз1.19.2fabric8 апреля 2023 г..jar (108 КБ)
1.4.2Релиз1.19.2fabric5 февраля 2023 г..jar (111 КБ)
1.3.2Релиз1.18.2fabric5 февраля 2023 г..jar (112 КБ)
1.4.1Релиз1.19.2fabric28 января 2023 г..jar (111 КБ)
1.3.1Релиз1.18.2fabric28 января 2023 г..jar (111 КБ)
1.4.0Релиз1.19.2fabric2 января 2023 г..jar (109 КБ)
1.3.0Релиз1.18.2fabric2 января 2023 г..jar (109 КБ)
1.2.8Релиз1.19.2fabric4 декабря 2022 г..jar (106 КБ)
1.1.13Релиз1.18.2fabric4 декабря 2022 г..jar (106 КБ)
1.2.7Релиз1.19.2fabric28 августа 2022 г..jar (105 КБ)
1.2.6Релиз1.19fabric28 августа 2022 г..jar (105 КБ)
1.1.12Релиз1.18.2fabric28 августа 2022 г..jar (105 КБ)

Показаны последние 15 из 27 версий. Все версии — на Modrinth.

Ченджлог

1.4.6+1.19.2Релиз1.19.2 · 11 июня 2023 г.

Changelog

-Reverted back to Fabric Loader 0.14.10 as config dependencies built using newer versions seem to not work in the dev environment.

This change does not impact end-users (who can continue to use this on more recent loader releases), only developers.

1.4.5+1.19.2Релиз1.19.2 · 3 июня 2023 г.

Changelog

This is primarily a bug-fixing and optimisation update.

*Changed the way /reload works to refresh attributes:

  • No longer saves the updateFlag to the level's nbt data.
  • No longer injects the updateFlag into vanilla packets.
  • Instead, we only use the updateFlag in runtime - not saving it at all, anywhere.

*Fixed #80: attribute tracking is handled differently now.

*Likely fixed an incompatibility between Data Attributes and ReplayMod: we no longer mess around with world properties at all.

*May have fixed long-standing issues 24 and 10: almost all networking has been removed - now we only send/receive two custom packets in the whole mod: on game join and when /reload is executed.

*Various performance improvements.

1.4.4+1.19.2Релиз1.19.2 · 30 апреля 2023 г.

Changelog

+Added hierarchy entity types that can be used to apply attributes to all entities that are an instance of an entity class. Currently supported types are as follows:

Identifier Class Type
dataattributes:living_entity LivingEntity
dataattributes:mob_entity MobEntity
dataattributes:path_aware_entity PathAwareEntity
dataattributes:hostile_entity HostileEntity
dataattributes:passive_entity PassiveEntity
dataattributes:animal_entity AnimalEntity

These have a hierarchy of:

LivingEntity
  ┗ MobEntity
      ┗ PathAwareEntity
          ┣ HostileEntity
          ┗ PassiveEntity
              ┗ AnimalEntity

This feature is useful for when you want to modify the attributes of many different mobs, but do not know every mob's EntityType identifier.

1.4.3+1.19.2Релиз1.19.2 · 8 апреля 2023 г.

Changelog

+Fixed minor bug that could sometimes result in max health percentages being incorrectly calculated if the Player spam died.

1.4.2Релиз1.19.2 · 5 февраля 2023 г.

Fixed client attribute sync issue present in previous release.

1.3.2Релиз1.18.2 · 5 февраля 2023 г.

Fixed client attribute sync issue present in previous release.

1.4.1Релиз1.19.2 · 28 января 2023 г.

*Changed how datapack is synced S2C:

Before, sent raw NBT through network. Now:

  1. converts NBT to SNBT;
  2. uses Java's Deflater to compress the SNBT;
  3. converts the compressed SNBT to byte array;
  4. sends the byte array over network;
  5. Reverses this using java's Inflater on the client.

This reduces the raw NBT network packet from aprox. 4KB to ~0.9KB. This was done in attempt to fix packet size issue with Velocity plugin, but also in general the player connection packet has the potential to get really massive really quickly depending on the datapack.

-Removed version checking between client and server. This was done in an attempt to make this compatible with Velocity plugin, which tends to get upset if we use regular Minecraft's connection packets.

*Changed MutableIntFlag to be implemented further up in the hierarchy (MutableWorldProperties). Added relevant casting checks. This is an attempt to fix bugs caused when other mods want to make 'dummy world properties' that don't respect the world properties hierarchy nor the client/server divide.

+Incremented version.

1.3.1Релиз1.18.2 · 28 января 2023 г.

*Changed how datapack is synced S2C:

Before, sent raw NBT through network. Now:

  1. converts NBT to SNBT;
  2. uses Java's Deflater to compress the SNBT;
  3. converts the compressed SNBT to byte array;
  4. sends the byte array over network;
  5. Reverses this using java's Inflater on the client.

This reduces the raw NBT network packet from aprox. 4KB to ~0.9KB. This was done in attempt to fix packet size issue with Velocity plugin, but also in general the player connection packet has the potential to get really massive really quickly depending on the datapack.

-Removed version checking between client and server. This was done in an attempt to make this compatible with Velocity plugin, which tends to get upset if we use regular Minecraft's connection packets.

*Changed MutableIntFlag to be implemented further up in the hierarchy (MutableWorldProperties). Added relevant casting checks. This is an attempt to fix bugs caused when other mods want to make 'dummy world properties' that don't respect the world properties hierarchy nor the client/server divide.

+Incremented version.

Полная история изменений — на Modrinth.

Комментарии

Загружаем…