Tags
Creators
Details
v2.0.8+26.1
Compatibility
Changes
NeoOrigins 2.0.8
-
Item actions & conditions — new
ItemActionParser(merge_nbt, consume, damage, set_count) andItemConditionParser(and, or, not, empty, nbt, enchantment, ingredient) for per-stack operations.equipped_item_actionandmodify_inventorynow delegate to these parsers. -
origins:starting_equipment— multi-stack Apoli starting_equipment powers now expand to N syntheticneoorigins:starting_equipmententries. Legacy pre-1.21 SNBT tags (Potion, Enchantments, Damage, Unbreakable, CustomModelData, display.Name/Lore) are auto-translated to data components viaLegacyTagToComponents. -
modify_crafting— full Route B implementation. Per-player recipe output replacement with optional legacy tag support. -
modify_lava_speed— newLivingEntityLavaSpeedMixinwith sharedNumericModifierRegistryandOriginsModifierMath(Apoli addition + multiply_base/multiply_total collapse). -
modify_xp_gain— wired toPlayerXpEvent.XpChangethrough the same numeric modifier registry. -
prevent_sprinting— per-ticksetSprinting(false)gated by optional condition. -
origins:modify_swim_speed— now translates toattribute_modifieronwater_movement_efficiencyinstead of being silently skipped. -
raycast— block and entity raycasting with nested action dispatch;RaycastBlockContextpublishes hit position so~ ~ ~resolves correctly in sub-actions. -
inverted: true— Apoli universal condition inversion is now honoured (was silently dropped). -
action_on_eventfield aliasing —parseActionOverTimeaccepts bothconditionandentity_condition. -
#41 — 22 night_vision JSONs reverted from
enhanced_visionback tonight_vision. -
#42 —
fallFlyTicksreset to 0 afterstopFallFlying()on landing (defensive flight audio fix). -
#33 — NeoForge version range floor bumped to
21.1.224to prevent loading on stale builds. -
block_conditiononaction_on_event— was silently dropped at codec time; now parsed and applied. -
execute_command— command source positioned at the dispatch BlockPos in block-event context, so~ ~ ~resolves to the broken/placed/used block. -
conditioned_attribute— bad attribute IDs now surface in the compat log instead of failing silently. -
Air refill — aquatic origins now require head submerged (
isUnderWater) to refill air, not just feet touching water (isInWater). -
Tidal wave spam — cooldown and hunger cost now always consumed when the wave fires, regardless of whether it hit anything.
-
drop_itemsaction — inline loot table witheach(per-entry chance) andone_of(weighted single pick) modes; supports count ranges per entry. -
food_restrictionarray support —item_tagnow accepts a JSON array of tags and/or item IDs (prefix tags with#). Multiple entries are OR'd together for blacklist, NOT(OR) for whitelist.
Only inventory.container_type: hopper remains unsupported.
Optional dependencies
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:RUtQ9kfe:7QvuKiFr"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:RUtQ9kfe:7QvuKiFr"
}


