Skip to content

Releases: apace100/apoli

Apoli 2.12.0-alpha.14 (Minecraft 1.21.1)

18 Dec 11:13
f0ebf2f
Compare
Choose a tag to compare

Changes

  • The modifier/modifiers field(s) are now required in the modify_item_cooldown power type
  • The tooltip texts in the tooltip power type are no longer wrapped in string when serialized to NBT

Fixes

  • Fixed class casting issue in offset block condition type
  • Fixed ID of the action_on_key_press power type
  • Fixed initializing issues with power types
  • Fixed abnormal behavior with add_velocity entity/bi-entity action types
  • Fixed default offset values of spawn_particles entity action type
  • Fixed area_of_effect entity/block action types accepting a positive integer/floating point radius value instead of a non-negative integer/floating point value respectively
  • Fixed action_on_block_break power type evaluating its block condition too late (evaluating the block at the mined position after it's been mined)
  • Fixed typo in fields for encoding the modify_food power type
  • Fixed choice meta action type executing all the defined actions instead of just one
  • Fixed give entity action type only working once (per game/server restart) due to the provided item stack not being copied
  • Fixed *_inventory entity action/condition types being provided slots that aren't within the bounds of an entity's inventory (or inventory of a power that uses the inventory power type)
  • Fixed modify_harvest power type evaluating its block condition too late (evaluating the block at the mined position after it's been mined)
  • Fixed attacker damage condition type requiring an entity condition

Changelogs

Apoli 2.12.0-alpha.13 (Minecraft 1.21.1)

30 Nov 22:55
64b49b5
Compare
Choose a tag to compare

Additions

  • Added legacy aliases for meta condition types;
    • and --> all_of
    • or --> any_of
    • chance --> random_chance

Changes

  • Renamed some meta condition types (and added their old name as an alias)
    • and --> sequence
    • chance --> random_chance
  • Made the *_inventory action/condition types use slot ranges (e.g: hotbar.*, armor.*, etc.)
  • Made the keep_inventory power type use slot ranges (e.g: enderchest.*, inventory.*, etc.)
  • Renamed the simple power type to dummy (and added its old name as an alias)
  • Renamed the active_self power type to action_on_key_press (and added its old name as an alias)
  • [For addon developers] Added PowerUtil, a utility class for modifying/querying resource values, and validating if a power type is considered a resource.
  • [For addon developers] Made container type an interface. There's also a new registry, ApoliRegistries#CONTAINER_TYPE, where addons can register their container types to be used by the inventory power type. Currently, there are two types of container type:
    • Preset container type, which re-uses a screen handler/screen of a pre-existing container
    • Dynamic container type, which has definable rows, columns, title alignment, and texture via data; also has its own screen handler/screen (currently incomplete and unsupported)
  • [#254] [For addon developers] Overhauled power/action/condition (types);
    • Power/action/condition types no longer use type factories, but type configurations (that has its ID (via TypeConfiguration#id), and its TypedDataObjectFactory (via TypeConfiguration#dataFactory), which is an extension of Calio's DataObjectFactory that contains its CompoundSerializableDataType)
    • Power/action/condition types now use a similar structure for consistency
    • Actions/conditions now have their own classes (e.g: EntityAction instead of Consumer<Entity> or ActionTypeFactory<Entity>.Instance)

Fixes

  • Fixed amount field of modifiers being prioritized over the resource field (it should be the other way around)
  • Fixed /power remove command and revoking powers in general
  • Fixed NullPointerException issue (crash) when checking for power types in entities
  • Fixed action_on_item_pickup power type not properly executing its actions
  • Fixed inventory power type giving ghost items when the power is lost
  • Fixed in_entity_set bi-entity condition type causing a crash when either the actor or target do not exist

Changelogs

Apoli 2.12.0-alpha.12 (Minecraft 1.21.1)

02 Oct 18:03
9e0946e
Compare
Choose a tag to compare

Warning

Make sure to check out https://gist.github.com/eggohito/510eb0cf7d36d40f906ac1fcef74ee96#file-alpha_9-md for more details about this update!

Changes

  • [#247] Crafting recipes defined in powers are now visible in the recipe book.
  • Fields that accept action types can now accept an array as a shorthand for using the and meta action type.
  • Renamed the following meta condition types for consistency with vanilla:
    • chance --> random_chance
    • and --> all_of
    • or --> any_of
  • The slot parameters of the has_power and power_count item condition types are now optional.
  • The apoli:powers item component will no longer error when a non-existent power is defined.
  • Power names/descriptions can now be translated with the respective power.<namespace>.<path>.name/description translation keys, even when not using the translate JSON text component.

Fixes

  • Fixed crash caused by encoding global power sets.
  • Fixed some aspects of global power sets being replaced when merging.
  • Fixed minor issue with printing JSON as text where JSON keys with null values are being printed (affects the /power dump command.)
  • Fixed determining logic in the game_event_listener power type used for determining whether a game event should be accepted.
  • Fixed on_block entity condition type incorrectly evaluating a block at the wrong position.
  • Fixed crash caused by the modify_projectile_damage power type.
  • Fixed spawn_particles entity action type miscalculating its spread.
  • Fixed default translatable text (aka. the ApoliDataTypes#DEFAULT_TRANSLATABLE_TEXT data type) not being translatable by default.

Apoli 2.12.0-alpha.11 (Minecraft 1.21)

30 Aug 09:40
d97236f
Compare
Choose a tag to compare
Pre-release

Changes

  • The name of sub-powers is now validated before the sub-power itself is parsed.
  • The modify_type_tag power type can now account for when the defined tag in the power is nested in multiple parent tags.

Apoli 2.12.0-alpha.10 (Minecraft 1.21)

30 Aug 00:29
e63b9d4
Compare
Choose a tag to compare
Pre-release

Warning

Make sure to check out https://gist.github.com/eggohito/510eb0cf7d36d40f906ac1fcef74ee96#file-alpha_7-md for more details about this update!

Fixes

  • Fixed sub-powers being decoded first before its Fabric resource conditions are evaluated (it should be evaluating the resource conditions first.)
  • Fixed some action/condition types using the wrong IDs. This affected the following types:
    • modify_status_effect_duration power type (it used modify_status_effect_amplifier.)
    • riding_action entity action type (it used passenger_action.)
    • air entity condition type (it used food_level.)
  • Fixed fire_projectile entity action/power types having inconsistent implementations.
  • Fixed if_else meta action type causing a crash if the optional else_action field is not present.
  • Fixed advancement entity condition type not working properly.
  • Fixed target_action bi-entity action type executing on the 'actor' in a bi-entity context.
  • Fixed how the biome entity condition type is evaluated.
  • Fixed attacker damage condition type not accounting for when the attacker is non-existent like it used to.
  • Fixed damage entity action type accepting an optional damage type when it should be required.

Changes

  • The NBT structure of powers in entities has been changed for clarity and consistency with new NBTs in certain vanilla entities.
    • The Factory NBT has been renamed to type.
    • The Type NBT has been renamed to id.
    • The Sources NBT has been renamed to sources.
    • The Data NBT has been renamed to data.
  • The modify_type_tag power type can now account for tags that may include the tag specified in the power.
  • The damage entity/bi-entity action types now require any of the amount, modifier or modifiers fields to be defined.
  • The /power revokeall <targets> <source> sub-command has been changed to /power revoke <targets> all <source>.

Apoli 2.12.0-alpha.9 (Minecraft 1.21)

15 Aug 16:57
263d594
Compare
Choose a tag to compare
Pre-release

Warning

There have been major changes in this update. Make sure to check out https://gist.github.com/eggohito/510eb0cf7d36d40f906ac1fcef74ee96#file-alpha_6-md for more details about this update!

Additions

  • [#215] Added modify_type_tag power type.

Removals

  • Removed the meat item condition type.
  • Removed the category biome condition type.
  • Removed fields/types that use ApoliDataTypes#LEGACY_MATERIAL.
  • Removed fields/types that use ApoliDataTypes#DAMAGE_SOURCE_DESCRIPTION
  • Removed client and server boolean fields from add_velocity entity/bi-entity action types.
  • Removed the following aliases for certain types;
    • nbt alias for custom_data item condition type.
    • merge_nbt alias for merge_custom_data item condition type.
    • action_on_set alias for action_on_entity_set entity action type.
    • remove_from_set alias for remove_from_entity_set bi-entity action type.
    • in_set alias for in_entity_set bi-entity condition type.
    • set_size alias for entity_set_size entity condition type.
    • is_damageable alias for damageable item condition type.
    • is_equippable alias for equippable item condition type.
    • fireproof alias for fire_resistant item condition type.
    • addition alias for apoli:add_base_early attribute modifier operation.
    • multiply_base alias for apoli:multiply_base_additive attribute modifier operation.
    • multiply_total alias for apoli:multiply_total_multiplicative attribute modifier operation.
  • PowerTypeRegistry in favor of integrating its functionality to PowerManager (formerly known as PowerTypes.)

Changes

  • Renamed the value field of ApoliDataTypes#ATTRIBUTED_ATTRIBUTE_MODIFIER to amount to be consistent with vanilla.
  • Changed some fields of Modifier#DATA_TYPE to be consistent with vanilla;
    • value --> amount
    • amount is now optional; if amount and resource is absent, an error will be thrown.
  • Renamed the action field of the chance meta action type to success_action to be consistent with its fail_action field.
  • The replacable block condition type has been renamed to replaceable.
  • Re-implemented add_power and remove_power item modifier types, and has_power and power_count item condition types.
  • The textures used in a power that uses the overlay power type have to be moved to the assets/.../textures/overlay/sprites directory of a resource pack.

Apoli 2.12.0-alpha.8 (Minecraft 1.21.x)

21 Jul 10:32
a390151
Compare
Choose a tag to compare
Pre-release

Fixes

  • Fixed night_vision-related power types causing a crash.

Apoli 2.12.0-alpha.7 (Minecraft 1.21.x)

21 Jul 05:02
a355001
Compare
Choose a tag to compare
Pre-release

Warning

There have been major changes in this update (and upcoming ones in future updates.) Make sure to check out https://gist.github.com/eggohito/510eb0cf7d36d40f906ac1fcef74ee96 for more details!

Changes

  • Updated to 1.21.

Apoli 2.12.0-alpha.6 (Minecraft 1.20.4)

01 Jul 17:48
86d9064
Compare
Choose a tag to compare
Pre-release

Fixes

  • Fixed certain errors not being caught when reading sub-powers.

Apoli 2.12.0-alpha.5 (Minecraft 1.20.4)

30 Jun 17:12
f5b4a91
Compare
Choose a tag to compare
Pre-release

Additions

  • (#225) Added duration and duration_on_use fields to the spawn_effect_cloud entity action type.
  • (#227) Added sprinting power type.
  • (#228) Added pose power type.
  • (#234) Added prevent_entity_selection power type.

Changes

  • (#223) Global power sets now support Fabric's resource conditions.

Fixes

  • Fixed *_when_hit power types causing a crash when executing/evaluating actions/conditions on the possibly non-existent attacker.
  • Fixed issue with selecting entities by command tags (via the @e[tag = <tagName>] selector argument) added in the same tick.
  • Fixed inconsistent format of automatically-generated translation keys in power names and descriptions.