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

Client and server Adventure

Created3 years ago
Updated3 months ago

Filter loader...
Filter versions...

Origins 1.10.0

by Apace on Jun 25, 2023

Updated to support 1.20 and 1.20.1.

Thanks @halbrg, @eggohito and @MerchantPug for updating Origins' dependencies and new Apoli features and fixes.

Read more about Apoli changes in the Apoli 2.9.0 changelog.

The above changelog should be read by datapack developers due to deprecation of the material block condition.

Players using a lot of mods and upgrading their world to 1.20 should also read the above notice and make use of the material tag generation tool.

  • Updated Turkish translation (thanks BoranYEET on Discord)
  • Added missing, new translation keys to all language files
  • Updated the mod dependency metadata, which fixes unexpected crashes when using outdated FAPI versions

Note to add-on (not datapack) developers: this build currently includes a locally built version of ReachEntityAttributes which has updated mod metadata to allow it to run on 1.20. This means your gradle build script will not be able to resolve the dependency. You can build this JAR from this fork and publish it to your local maven for development.

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

Thanks to BiFT, ThatRobin, eggohito, Dahminh, and diamonddevv for their contributions (listed in no particular order).


[O] Added Ukrainian translation (thanks BiFT#3428 on Discord)

[A] New power type: grounded

[A] New entity actions: grant_advancement, revoke_advancement, selector_action

[A] New block action: area_of_effect

[A] New damage condition: in_tag

[A] Global powers


[O] Updated to 1.19.4

[A] Damage sources have been deprecated in favor of damage types. If you create datapacks, read more about this change here.

[A] action_on_item_use has two new fields: trigger and priority

[A] projectile damage condition has a new field: projectile_condition

[A] enchantment item condition will now check for the total amount (not level) of enchantments on the item if the enchantment field isn't specified

[A] modify_food power type now supports Apoli's custom modifiers

[A] /power command has been reworked

[A] mixin.entity.collisions.suffocation is now automatically disabled if Lithium is installed, preventing problems with phasing

[A] high_humidity and precipitation biome conditions may behave differently than before, due to irreconcilable Vanilla changes

Bug Fixes

[A] A few bug fixes.

More information

Make sure to read the Apoli release notes, as they contain more detailed information, whereas this list is just a condensed version.

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


  • [O] Added Orb of Origin to the Tools & Utilities creative tab (thanks @halbrg)
  • [A] Fixed add_velocity actions adding velocity in wrong directions (thanks @halbrg)
  • [A] Made multiple power type ignore fields starting with $, as those are considered JSON meta fields (thanks @S-K-Tiger)
  • [A] Made destruction_type field in explode actions backwards compatible and fixed explode actions crashing

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

@-mentions are GitHub usernames. Thanks to all contributors!


  • [O] Added Finnish translation (thanks @Maxmani)
  • [A] block_collision entity condition now has a block_condition field (thanks @eggohito)
  • [A] particle power type has new fields: visible_while_invisible, count, spread, offset_y (thanks @Dahminh)
  • [A] replace_inventory entity action has new field merge_nbt (thanks @eggohito)
  • [A] drop_inventory entity action has new field amount (thanks @eggohito)
  • [A] Added entity condition: glowing (thanks @LimonBlaze)
  • [A] invisibility power type has new field render_outline which allows control over whether glowing outlines are visible (thanks @LimonBlaze)


  • [O] Updated to 1.19.3 (thanks @halbrg)
  • [O] Updated Korean translation (thanks @Snaplan)
  • [A] invisibility power type does not completely cancel rendering anymore when render_armor is false (thanks @LimonBlaze)
  • [A] (Internal/technical) Active.Key objects are now comparable, added hashCode and equals method (thanks @MerchantPug)

Fixes the bug of powers not loading when using Quilt instead of Fabric.

Should work on 1.19.1 and 1.19.2.

  • [O] /origin command now has a "random" sub-command to randomize a player's origin (thanks eggohito)
  • [O] /origin command now only shows origins available on the selected layer (thanks eggohito)
  • [A] Fix crash on 1.19.1/1.19.2 with command execution (thanks seeruk)
  • [A] Fix incompatibility with Fluidlogged by (thanks Leximon)

[O] denotes changes to Origins, while [A] denotes changes to Apoli, which has been updated to 2.5.1.

  • [O] Fixed shaped recipe badges not showing correctly
  • [O] Fixed incorrect translation keys for the empty origin (thanks Golder06)
  • [O] Updated Spanish translation (thanks Golder06)
  • [O] Updated Russian translation (thanks CoringPlay)
  • [O] Updated Brazilian Portuguese translation (thanks rwmb)
  • [A] Fixed modify_swim_speed and modify_lava_speed not supporting conditions
  • [A] Fixed meta conditions crashing for biome condition types
  • [A] Fixed tooltip from prevent_item_use having no translation for goat horn tooting
  • [A] Fixed item_action in replace_inventory action not applying to the replaced stack
  • [A] Fixed damage modifying powers not applying to players when original source did not deal damage
  • [A] Fixed modify_projectile_damage not applying to all types of projectiles

Fixed dedicated servers crashing on startup.

New Features

  • Added automatic badges for recipe powers (thanks @LimonBlaze)
  • Added config options for disabling origins or powers


  • Updated to 1.19
  • Updated Apoli to version 2.5.0, bringing fixes and new features
  • Currently uses a locally built branch of my Reach Entity Attributes fork. Will update to an official version once that releases
  • Reworked the badge system (thanks @LimonBlaze)
  • Changed config to use JSON instead of toml
  • Fixes INGREDIENT data type not being sent in a way that's friendly to later tag updates, which caused a bug with any powers relying on custom tags not working correctly when first joining a world. (thanks slapjd)

[A] indicates changes in Apoli (updated to 2.3.2), [O] indicates changes in Origins.


  • [O] Layer files now have an additional field called gui_title with two sub-fields view_origin and choose_origin, which override the default prompt at the top of the choose/view origin GUI for that layer. (thanks eggohito)
  • [O] The origin loot condition now also optionally supports a layer field. (thanks eggohito)
  • [A] Added Spanish translations. (thanks Golder06)


  • [A+O] Updated to 1.18.2. (thanks slapjd for the effort, even though I didn't end up using all of your code)
  • [O] Added integration for Enchantment Descriptions. (thanks Darkhax)
  • [O] Updated Spanish translations. (thanks Golder06)
  • [O] Updated the swim_speed power to be an attribute power instead of using the modify_swim_speed power type.


  • [A] Fixed modify_block_state checking incorrect fields for integer properties, causing it to not function.
  • [A] Fixed distance_from_spawn and distance_from_coordinates conditions crashing when no offset or coordinates are specified.
  • [O] Updated the power phantomize_overlay to be hidden.
  • Fixed compatibility with Spectrum (thanks DaFuqs for your work on making this happen)
  • Now relies on (included in the jar) for the following power types: modify_swim_speed, modify_lava_speed and lava_vision. Please use the respective attributes with the attribute power type instead of these powers, since the power types are now considered deprecated and might be removed in a future update. The attribute IDs are: additionalentityattributes:water_speed, additionalentityattributes:lava_speed and additionalentityattributes:lava_visibility, respectively.
  • Updated Turkish translation (thanks Hexasan)
  • Updated Chinese translation (thanks LimonBlaze and Neubulae)
  • Added support for Enchantment Descriptions in English (thanks Darkhax)
  • Specified that this version does not work with 1.18.2, so users get a more legible error message when they try to use it

[A] indicates changes in Apoli (updated to 2.2.2), [O] indicates changes in Origins.


  • [A] Added a tooltip to items which can't be used due to a power (such as "Vegetarian", "Carnivore" or "Unwieldy"). Configurable in the config file or via the config screen accessible with Mod Menu installed.


  • [O] Updated English localization to be a bit more inclusive, and include Phantom's new hunger condition in the phantomize power description.
  • [O] Updated all translation files to include the untranslated translation keys, which should make it easier for translators to update their translations.


  • [A] Fixed modify_status_effect_duration and modify_status_effect_amplifier power types crashing the game.

[A] indicates changes in Apoli (updated to 2.2.0), [O] indicates changes in Origins.


  • [O] Forgot in 1.2.0 patch notes: Phantom's phantomized mode now ends when food reaches 3 full hunger chunks. You need to be able to sprint to phantomize.
  • [O] The phantomized overlay now changes color as the player's hunger approaches 3 full hunger chunks, acting as a visual indicator that the phantomization is about to end.
  • [O] Sandstone, smooth sandstone, as well as the red variants, now count as "natural stone" for Feline's "Weak Arms" and Shulk's "Strong Arms".
  • [A] Made the block_state condition return true if the property exists and no specific value is desired.


  • [A] Added entity_action field to action_on_block_use power type
  • [A] Added damage bientity action
  • [A] Generalized actions, making and, chance, choice, if_else, if_else_list, delay and nothing available for all action types
  • [A] Added fail_action field to chance meta actions


  • [A] Fixed action_on_land power type also triggering its actions during air time
  • [A] Fixed swing_hand entity action only working when called from clients
  • [A] Fixed modify_status_effect_duration and modify_status_effect_amplifier power types not being registered
  • [A] Fixed a bug where only one action_on_hit power would fire its actions when multiple are present
  • [A] Fixed a bug where only one tooltip power would work at a time
  • [A] Fixed raycast_action crashing when command_hit_offset is specified
  • [A] Fixed crafting_table action not producing output
  • [A] Fixed ability powers (e.g. creative_flight) crashing when granted via grant_power action
  • [A] Fixed the climbing condition not account for climbing powers

Origins 1.2.0

  • Updated to 1.18.
  • Made badge tooltips wrap automatically if they would not fit on the screen.
  • Does not use FallFlyingLib anymore (replaced by functionality in Fabric API).

Apoli (updated to 2.1.0)


  • Added power types: modify_slipperiness, action_on_block_use, prevent_entity_collision, prevent_feature_render, modify_status_effect_amplifier and modify_status_effect_duration
  • Added entity actions: swing_hand, raycast, spawn_particles, explode, area_of_effect, crafting_table and ender_chest
  • Added block actions: explode, modify_block_state and bonemeal
  • Added entity conditions: raycast, power_type, ability, distance_from_coordinates and distance_from_spawn
  • Added block conditions: slipperiness, hardness, blast_resistance, distance_from_coordinates and distance_from_spawn
  • Added item condition: smeltable


  • Added a none render type to the phasing power type
  • Added bientity_condition to prevent_entity_render
  • Added bientity_condition and bientity_action field to modify_damage_taken and modify_damage_dealt power types. When provided in a modify_damage_taken power, the power will be ignored if no attacker is present.
  • Added prevent_effects, replace_stack and item_action fields to modify_food power type
  • Added result_from_on_stack field to item_on_item power type
  • Made the ticking of action_over_time more consistent
  • Changed the particle parameter in the particle power type to optionally take a full particle effect object with type and params
  • Added client and server boolean fields to add_velocity to control where the velocity is applied
  • Made set_block and add_block take a full "block with state", e.g. minecraft:redstone_lamp[lit=true] is now a valid entry for the block field
  • Added an optional source field to the power entity condition

Bug Fixes

  • Fixed local and velocity space X/Y axes for the add_velocity entity action
  • Fixed furnace_smelt loot function to be used in item modifiers by the modify item action

Thanks @Alluysl, @eggohito, @MerchantPug and @Jarva for contributing to this update.


  • Fixed an occasional but game-breaking bug in which origins would load without powers
  • Made key badges show the key ID instead of just "unbound" when the key is unbound, so players know what to look for

Apoli (updated to 2.0.5)

  • Fixed entity_glow not working on non-living entities


  • Fixed key badges showing "none" instead of the primary active key when no key is explicitly specified in the power

Apoli (updated to 2.0.4)

  • Made status effects synchronize to clients, so the status_effect condition works on client-side powers (like entity_glow or invisibility) (Thanks Pug)
  • Removed debug outputs from the modify item action
  • Fixed an error that occured when syncing some powers
  • Fixed on_block not properly checking for the actual block the player's standing on if that isn't a full block (e.g. soul sand)
  • Fixed modify_break_speed crashing when no block_condition is provided
  • Fixed powers which prevent entity actions (prevent_entity_use and prevent_being_used) not working correctly


  • Made use of more readable way to specify classes with attribute_modify_transfer in like_air power
  • Fixed view origin screen showing "Choose your Origin" instead of the correct text
  • Improved caching of keybinds for badges, they should now update properly when powers are changed
  • Optimized assets a bit, reducing file size of the mod (thanks RDKRACZ)
  • Fixed a misspelling in the Polish translation (thanks RDKRACZ)

Apoli (updated to 2.0.3)

  • Prevented testdata from showing up in builds
  • status_bar_texture now also affects the experience bar
  • Fixed a crash which occured with in_block_anywhere
  • modify_swim_speed no longer affects upward movement in lava
  • modify_swim_speed now properly affects vertical speed while swimming
  • Added more power-related callbacks
  • Made power synchronization more efficient, causing less stress on servers
  • Fixed modify_damage_dealt only working with player entities
  • Fixed snowballs not causing a hit
  • Fixed multiple ability powers for the same ability (e.g. multiple creative_flight powers) conflicting with each other
  • Fixed modify_food not syncing properly when food or saturation were modified to be 0.
  • Un-hardcoded the phasing overlay
  • Fixed a bug where joining players would not correctly receive the powers of other players
  • Fixed mount not synchronizing properly when players are mounted
  • Fixed modify_crafting not calling the entity_action and block_action
  • Fixed prevent_entity_use only triggering its bientity_action on the server
  • Fixed crash when using the grant_power entity action
  • Fixed revoke_power entity action not removing sub-powers
  • active_self now has a default cooldown of 1 and a hidden hud_render by default
  • command condition now also respects the execute_command config
  • can_see now only considers visual obstructions, not physical colliders
  • attacker condition now works properly on the client-side

External resources

Project members





Technical information

Client side
Server side
Project ID