Skip to content

Releases: CleverNucleus/data-attributes

1.4.6+1.19.2

11 Jun 13:01
cf26571
Compare
Choose a tag to compare

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

03 Jun 10:59
39a526e
Compare
Choose a tag to compare

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

30 Apr 20:13
a15651d
Compare
Choose a tag to compare

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

09 Apr 15:26
01611b3
Compare
Choose a tag to compare

Changelog

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

DataAttributes

05 Feb 13:28
Compare
Choose a tag to compare

For MC1.19.2.

Fixed client attribute sync issue present in previous release.

DataAttributes

05 Feb 13:28
Compare
Choose a tag to compare

For MC1.18.2.

Fixed client attribute sync issue present in previous release.

DataAttributes

28 Jan 15:32
Compare
Choose a tag to compare

For MC1.19.2.

*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.

DataAttributes

28 Jan 15:32
Compare
Choose a tag to compare

For MC1.18.2.

*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.

DataAttributes

01 Jan 20:19
Compare
Choose a tag to compare

For MC1.19.2.

+Added multiplier based attribute functions.

Why: among other things such as being a requested enhancement, flat Attack Speed buffs are too OP and really need a multiplier type mechanic.

How: when defining attribute functions in JSON, instead of the value being a number/double, it is an object containing aforementioned number as well as a FunctionBehaviour reference. This lets the game know how the value should be used.

This is a breaking change, hence the buff in middle version number. All mods/datapacks will need to adjust their data JSON accordingly.

DataAttributes

01 Jan 20:18
Compare
Choose a tag to compare

For MC1.18.2.

+Added multiplier based attribute functions.

Why: among other things such as being a requested enhancement, flat Attack Speed buffs are too OP and really need a multiplier type mechanic.

How: when defining attribute functions in JSON, instead of the value being a number/double, it is an object containing aforementioned number as well as a FunctionBehaviour reference. This lets the game know how the value should be used.

This is a breaking change, hence the buff in middle version number. All mods/datapacks will need to adjust their data JSON accordingly.