Origins

Origins

Mod

Players choose an Origin at the beginning of the game to gain benefits and drawbacks

Client and server Adventure

866.8k downloads
1,012 followers
Follow Save
90% of ad revenue goes to creators. Go ad-free while supporting creators with Modrinth Plus. Subscribe today!
Filter loader...
Filter versions...
Filter channels...

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

Additions

  • [calio] Added new data types related to recipes:
    • SerializableDataTypes#RECIPE_SERIALIZER for recipe serializers.
    • SerializableDataTypes#RECIPE_ENTRY for recipe entries.

Changes

  • [calio] Changed SerializableDataTypes#RECIPE to actually reflect recipes instead of recipe entries.
  • [apoli#247] Crafting recipes defined in powers are now visible in the recipe book.
  • [apoli] Fields that accept an action type can now accept an array as a shorthand for using the and meta action type.
  • [apoli] Renamed the following meta condition types for consistency with vanilla:
    • chance --> random_chance
    • and --> all_of
    • or --> any_of
  • [apoli] The slot parameters of the has_power and power_count item condition types are now optional.
  • [apoli] The apoli:powers item component will no longer error when a non-existent power is defined.
  • [apoli] 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.
  • [origins] The origins:origin item component will no longer error when a non-existent power is defined.
  • [origins] Origin names/descriptions can now be translated with the respective origin.<namespace>.<path>.name/description translation keys, even when not using the translate JSON text component.
  • [origins] Origin layer names can now be translated with the layer.<namespace>.<path>.name translation key, even when not using the translate JSON text component.
  • [origins] Removed OriginRegistry in favor of integrating its functionality to OriginManager.

Fixes

  • [calio] Fixed eat_seconds parameter of food components (aka. encoded/decoded via the SerializableDataType#FOOD_COMPONENT data type) accepting a non-zero positive floating point value instead of non-negative floating point value.
  • [calio] Fixed ingredients (aka. decoded/encoded via the SerializableDataTypes#INGREDIENT data type) unable to be sent to the client.
  • [calio] Fixed enum data types (aka. data types using SerializableDataType#enumValue) being case-sensitive when checking for matching additional values.
  • [apoli] Fixed crash caused by encoding global power sets.
  • [apoli] Fixed some aspects of global power sets (e.g: order) being replaced when merging.
  • [apoli] Fixed minor issue with printing JSON as text where JSON keys with null values are being printed (affects the /power dump command.)
  • [apoli] Fixed determining logic in the game_event_listener power type used for determining whether a game event should be accepted.
  • [apoli] Fixed on_block entity condition type incorrectly evaluating a block at the wrong position.
  • [apoli] Fixed crash caused by the modify_projectile_damage power type.
  • [apoli] Fixed spawn_particles entity action type miscalculating its spread.
  • [apoli] Fixed default translatable text (aka. the ApoliDataTypes#DEFAULT_TRANSLATABLE_TEXT data type) not being translatable by default.
  • [origins] Attempt to fix crash(?) with Merling's Water Breathing power (e.g: when drying out.)
  • [origins] Fixed some aspects of origin layers (e.g: name, order, gui_title, etc.) being replaced when merging.

Fixes

  • [origins] Fixed powers of origins not being granted/revoked properly.

Changes

  • [apoli] The name of sub-powers is now validated before the sub-power itself is parsed.
  • [apoli] The modify_type_tag power type can now account for when the defined tag in the power is included in a child tag of the tag being checked.

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

Additions

  • [calio] Added SerializableDataTypes#NBT_ELEMENT for encoding/decoding general NBT elements.

Fixes

  • [calio] Fixed registry key data types ignoring the defined exemptions; subsequently, this also fixed issues (again) such as vanilla dimension registry keys (e.g: minecraft:overworld, minecraft:the_nether, minecraft:the_end) not being recognized on the first time the world has been loaded.
  • [calio] Fixed wrapping of inputs/outputs in StrictListCodec<T>.
  • [apoli] Fixed sub-powers being decoded first before its Fabric resource conditions are evaluated (it should be evaluating the resource condition first.)
  • [apoli] 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.)
  • [apoli] Fixed fire_projectile entity action/power types having inconsistent implementations.
  • [apoli] Fixed if_else meta action type causing a crash if the optional else_action field is not present.
  • [apoli] Fixed advancement entity condition type not working properly.
  • [apoli] Fixed target_action bi-entity action type executing on the 'actor' in a bi-entity context.
  • [apoli] Fixed how the biome entity condition type is evaluated.
  • [apoli] Fixed attacker damage condition type not accounting for when the attacker is non-existent like it used to.
  • [apoli] Fixed damage entity action type accepting an optional damage type when it should be required.
  • [origins] Fixed carnivores unable to consume Ominous Bottles.
  • [origins] Fixed temporary cobweb having an item when it shouldn't (the item was only accessible with commands.)

Changes

  • [calio] SerializableDataTypes#NBT has been renamed to SerializableDataTypes#NBT_COMPOUND.
  • [apoli] The modify_type_tag power type can now account for tags that may include the tag specified in the power.
  • [apoli] The damage entity/bi-entity action types now requires any of the amount, modifier or modifiers fields to be defined.
  • [apoli] 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.
  • [apoli] The /power revokeall <targets> <source> sub-command has been changed to /power revoke <targets> all <source>.

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

Fixes

  • [apoli] Fixed issues with the 'on added/removed/gained/lost' power callbacks.
  • [apoli] Fixed restrict_armor power type only working partially, and preventing items from being quick-moved.
  • [apoli] Fixed modify_player_spawn power type disregarding previously set spawn points.
  • [apoli] Fixed issue with encoding the packet for show_toast entity action type.
  • [apoli] Fixed modify_food power type incorrectly calculating and assigning nutrition and saturation values.
  • [apoli] Fixed ingredients being duplicated when modifying crafting recipes with the modify_crafting power type.
  • [apoli] Fixed crash caused by the attribute entity condition type.
  • [origins] Fixed 'Conduit Power' status effect not being given to entities aside from players with the Merling origin.
  • [origins] Fixed origin invulnerability selection bypassing damage types included in the #minecraft:bypasses_invulnerability damage type tag.

[!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.

Additions

  • [apoli#225] Added duration and duration_on_use fields to the spawn_effect_cloud entity action type.
  • [apoli#227] Added sprinting power type.
  • [apoli#228] Added pose power type.
  • [apoli$234] Added prevent_entity_selection power type.

Changes

  • [apoli#223] Global power sets now support Fabric's resource conditions.
  • [origins#751] Origins and origin layers now support Fabric's resource conditions.

Fixes

  • [calio] Fixed issue with the SerializableDataTypes#RECIPE data type leniently parsing the recipe's ID and the recipe's serializer ID.
  • [apoli] Fixed *_when_hit power types causing a crash when executing/evaluating actions/conditions on the possibly non-existent attacker.
  • [apoli] Fixed issue with selecting entities by command tags (via the @e[tag = <tagName>] selector argument) added in the same tick.
  • [apoli] Fixed certain errors not being caught when reading sub-powers.
  • [apoli] Fixed inconsistent format of automatically-generated translation keys in power names and descriptions.
  • [origins] Fixed inconsistent format of automatically-generated translation keys in origins and origin layers.

Full changelogs

Changes

  • [apoli#224] Renamed action/condition types related to entity sets.
  • [apoli] Powers that use the multiple power type can now be replaced entirely with loading_priority.

Additions

  • [apoli#192] Added show_toast entity action type.
  • [apoli#211] Added modify_fov power type.
  • [apoli#219] Added new item action/condition types related to item cooldowns:
    • modify_item_cooldown item action type.
    • item_cooldown item condition type.
    • relative_item_cooldown item condition type.
  • [apoli#226] Added entity_in_radius entity condition type.
  • [apoli#232] Added leash bi-entity action type.

Fixes

  • [apoli] Fixed a potential issue with re-using serializable data of objects when serializing power/action/condition type factories.
  • [origins] Fixed badges of overridden powers not being replaced.

Changes

  • [origins#750] Made Phantom's Phasing power re-enable itself upon respawning.
  • [origins#755] Unhardcoded some powers of certain origins.

Additions

  • [apoli#180] Added has_command_tag entity condition type.
  • [apoli#186] Added compatibility with Appleskin.
  • [apoli#229] Added click_phases and priority fields to the item_on_item power type.
  • [apoli#231] Added usage_phases field to the *_block_use power types, and made them functionally consistent with the *_entity_use power types.

Fixes

  • [apoli] Fixed issues with powers that use the action_on_item_use power type not being triggered with the trigger "stop" or "during" if its priority value is less than 0.
  • [apoli] Fixed tamed entity condition type not working for certain entities.
  • [apoli] Fixed tame bi-entity action type not working for certain entities.

Origins will now be published to Ladysnake's maven. Please read this guide if you want to use the alpha/beta, and future (and old) release builds as a dependency.

The identifier aliasing system in Apoli has been refactored and moved to Calio. Please read the migration guide for steps on migrating, and for more information on the change.

[O] marks the changes in Origins, [A] marks the changes in the underlying Apoli version, and [C] marks the changes in the underlying Calio version.

Changes

  • [O][A][C] Updated to Minecraft 1.20.4
  • [A] Refactored and moved the identifier aliasing system to Calio.

[A] marks the changes in the underlying Apoli version, while [C] marks the changes in the underlying Calio version.

Changes

  • [A] Reverted supposed fix for issue with negating modified damage.
  • [A] Made the entity_set power type validate its entries upon the holder of the power being loaded.

Fixes

  • [C] Fixed argument type data types not properly printing its error in the output log.
  • [A] Fixed power HUD renders not rendering properly.
  • [A] Fixed automatic removal of entities in powers that use the entity_set power type.
  • [A] Fixed potential infinite recursion when granting powers.

Changelogs

Make sure to check out Apoli's and Calio's changelog for more information about this release:

[O] marks the changes in Origins, while [A] marks the changes in its underlying Apoli version.

Fixes

  • [O] Fixed automatically-generated badges of powers not being overridden with an empty badges field.
  • [O] Fixed origins not supporting * in identifiers.
  • [A] Fixed status_bar_texture power type not rendering regioned sprites (e.g: the "fill" portion of the experience bar) properly.
  • [A] Fixed entity_set power type executing the action_on_remove bi-entity action on discarded entities that weren't in the entity set and regardless of whether the power's condition is fulfilled.
  • [A] Fixed /power list ... <subpowers> sub-command not being accounted when specified.
  • [A] Fixed powers being removed not actually being removed from the entity, resulting in powers with empty sources.
  • [A] Fixed power addition callbacks not working reliably in certain cases (e.g: setting the value of a resource upon gaining a power, which was previously dependent on order of when the power is registered and/or granted.)
  • [A] Fixed modify_attribute power type applying vanilla modifiers twice.
  • [A] Fixed game_event_listener power type triggering advancements that use the minecraft:avoid_vibration criterion (this wasn't the case before.)
  • [A] Fixed crash caused by power types related to preventing interaction with entities.
  • [A] Fixed modify_jump power type still applying sprint-jump effects (e.g: extra horizontal velocity, exhaustion) even though the jump velocity is negated.
  • [A] Fixed oversight with syncing the power registry.
  • [A] Fixed power HUD renders not being offset properly in cases such as mounting a living entity, or being submerged underwater.
  • [A] Fixed crash that could be caused by action_on_block_break power type and block action types that may utilize directions.

Full changelog: v1.12.8...v1.12.9

Apoli changelog: v2.11.10

[O] marks the changes in Origins, while [A] and [C] marks the changes in its underlying Apoli and Calio version respectively.

Changes

  • [O] Changed Elytrian's Brittle Bones power to check for a new damage type tag: origins:kinetic.
  • [A] Slightly changed the implementation of the invisibility power type to be more optimized and compatible with other mods.

Fixes

  • [A] Fixed overlay power type rendering over screens.
  • [A] Fixed model_color power type not respecting invisibility.
  • [C] Worked around issue with the SerializableDataTypes.DIMENSION data type throwing a false error on world creation if a vanilla dimension is specified (fixes the modify_player_spawn power type.)

[O] marks the changes in Origins, while [A] marks the changes in its underlying Apoli version.

Changes

  • [O](#728) Changed Feline's Acrobatics power to check for the minecraft:is_fall damage type tag.
  • [O] Changed Enderian's Scared of Gourds power to use item tags;
    • origins:pumpkin_like/food, for preventing consumption of pumpkin-like food items (e.g: pumpkin pie.)
    • origins:pumpkin_like/equipment, for hiding entities wearing pumpkin-like equipment items (e.g: carved pumpkin.)

Fixes

  • [O](#741) Fixed badges of sub-powers being offset (in the -Y axis) at the wrong time.
  • [O] Fixed tooltip for Enderian's Scared of Gourds power not using the appropriate translation key.
  • [O] Fixed Enderian's Scared of Gourds power hiding the Enderian in its own POV when wearing a pumpkin-like equipment item.
  • [A] Fixed issue with sub-powers being disabled when overridden (via loading priority) in a multiple power.

Fixes

  • Fixed badges of sub-powers from multiple powers not being hidden if the multiple power has defined badges.

[O] marks the changes in Origins, while [A] and [C] marks the changes in its underlying Apoli and Calio versions respectively.

Changes

  • [A] Tweaked mod compatibility of certain power types.
  • [A] Made power names/descriptions translatable by default.
  • [A] Improved searching logic of legacy damage sources.
  • [A] Added missing translation keys for Apoli's config.
  • [C] Made registry key data types validate.
  • [C] Made tag data types validate.
  • [C] Made tag-like data types validate.

Fixes

  • [O] Fixed origin layers ignoring its specified title.
  • [O] Fixed issue with badge tooltips and multiple powers; the badge tooltips that corresponds to its sub-powers are now rendered properly.
  • [A] Fixed issue when preventing modified damage that deals 0 or less damage to entities.
  • [A] Fixed issues with game_event_listener power type.
  • [A] Fixed modify_attribute power type not modifying modded attributes (for real this time.)
  • [A] Fixed *_item_pickup power type not working for non-player entities.
  • [A] Fixed exposed_to_sun entity condition type not working properly.
  • [A] Fixed light_level block condition type not account for the world's ambient darkness if light_type not specified.
  • [A] Fixed name damage condition type not properly accounting for legacy damage sources.
  • [A] Fixed desync issue when dismounting from a player.
  • [A] Fixed contents of inventory power type not being synced to the client in certain cases.
  • [A] Fixed item action types not properly resetting its item stack if it's empty.
  • [A] Fixed faulty logic in the damage entity/bi-entity action types.
  • [A] Fixed unreliable behavior of action_on_callback power type in certain cases.
  • [A] Fixed entity_set power type keeping UUIDs of entities that have been discarded.
  • [A] Fixed *_hit power types not working on certain vanilla entities.

Changelogs

Make sure to check Calio, and Apoli's changelog as well for more details on the changes.

[O] marks the changes in Origins while [A] marks the changes in the underlying Apoli version.

Changes

  • [A] Simplified implementation of modify_food power type for making items always edible.
  • [A] Simplified implementation of modify_grindstone power type.
  • [A] Added support for * (current namespace/path) in REGEX_MAP data type (used by the replace_loot_table power type.)

Fixes

  • [A] Fixed condition logic in replace_loot_table power type.
  • [A] Fixed edible_item power type not working on items usable on blocks.
  • [A] Fixed exposed_to_sky and brightness entity condition types not accounting for the world's ambient darkness (in most cases.)
  • [A] Fixed modify_enchantment_level power type not working on empty item stacks (in some cases.)
  • [O] Fixed origin entity condition type crashing the game by specifying an origin layer that doesn't exist.

Apoli changelog: v2.11.5

Origins full changelog: v1.12.3...v1.12.4

[A] marks the changes in the underlying Apoli version.

Fixes

  • [A] Fixed oversight where the action_on_remove bi-entity action of the entity_set power type is only being called when removing a temporary entity from an entity set.
  • [A] Fixed entity_set power type ticking temporary entities inconsistently.

Apoli changelog: v2.11.4

[O] marks the changes in Origins while [A] marks the changes in the underlying Apoli version.

Fixes

  • [A] Fixed replace_loot_table power type ignoring block conditions.
  • [A] Fixed potential issues with the inventory power type.
  • [O] Fixed result stack of recipe badge tooltips not being modified by a power that uses the modify_crafting power type.
  • [O] Fixed concurrent modification crash edge-case issue when removing disabled powers from origins on server (re)load.

Apoli changelog: v2.11.3
Origins changelog (full): v1.12.1..v1.12.2

[O] marks the changes in Origins while [A] marks the changes in the underlying Apoli version.

Fixes

  • [O] Fixed badges not appearing in the origin screen caused by badges not being synced to the client.
  • [A] Fixed burn power type ignoring conditions.
  • [A] Fixed fire_projectile power type not accepting zero value in its interval and start_delay fields.
  • [A] Fixed entity_set power type not executing its action_on_remove bi-entity action upon removing entities from an entity set.

Warning

Item actions have been changed to operate on a Pair<World, StackReference> instead of a Pair<World, ItemStack>, so if you're an addon developer and your addon implements an item action type, please read this migration guide for the steps for migrating and for more information.

[O] marks changes in Origins, [A] marks changes in the underlying Apoli version.

Thanks to @MerchantPug for contributing!

Additions

  • [A] New power types related to placing blocks: action_on_block_place and prevent_block_place
  • [A] New power type: entity_set
  • [A] New entity action type: revoke_all_powers
  • [A] New entity action type: remove_power
  • [A] New entity action type: random_teleport
  • [A] New bi-entity action type: add_to_set
  • [A] New bi-entity action type: remove_from_set
  • [A] New bi-entity condition type: in_set
  • [A] New block action type: spawn_entity
  • [A] New /power sub-command: /power dump
  • [O] Added compatibility to Carpet's fake players in the /origin command

Changes

  • [A] The hud_render field of powers can now accept an object or an array of objects
  • [A] Made the prevent_entity_collision power type work for entities with solid collision
  • [A] Made the particle power type and spawn_particles entity action type consistent with vanilla
  • [A] Changed the default resource bar sprite sheet for backwards compatibility

Fixes

  • [A] Fixed an exception being thrown on the client when syncing a power in certain edge-cases
  • [A] Fixed application/removal of attribute modifiers of powers that use the conditioned_attribute power type
  • [A] Fixed spawnpoint of players not persisting upon being set
  • [A] Fixed moving entity condition type not working reliably
  • [A] Fixed worn armor not being damaged upon taking damage
  • [O] Fixed untranslated "can't sleep" message for the Avian origin
  • [O] Fixed issue when syncing origins from S2C
  • [O] Fixed hidden origin layers not being hidden

More information

Make sure to read Apoli and Calio's changelogs, as it contains more information compared to this release note, which is only a condensed version.

Origins full changelog: https://github.com/apace100/origins-fabric/compare/v1.11.3...v1.12.0 Apoli changelog: v2.11.0 Calio changelog: v1.13.0


Project members

Apace

Owner

eggohito

Maintainer

Details

Licensed MIT
Published 4 years ago
Updated a month ago