3.0.0.0-beta
Curse Maven Snippet
What's new
3.0.0.0-beta
- Ported to Minecraft 26.1.2 (NeoForge 26.1.2.116, Java 25)
Data Pack / Modpack creators
- Vanilla renamed many ids and changed many component formats between 1.21.1 and 26.1.2: data packs,
item_componentsdefinitions and json configs must be updated to the new vanilla formats- Attribute ids no longer have the
generic./player.prefix (e.g.minecraft:generic.movement_speedis nowminecraft:movement_speed), including the ones inplayers_attribute_modifiers.json minecraft:attribute_modifiersis now a list instead of an object with amodifiersfield- Food effects and eat time are no longer part of
minecraft:food, they're inminecraft:consumable
- Attribute ids no longer have the
- Removed
insanelib:enchantabilityitem component: vanilla now hasminecraft:enchantable(e.g."minecraft:enchantable": {"value": 15}) which does the same - Global loot modifiers (
insanelib:replace_loot,insanelib:drop_multiplier,insanelib:loot_purger,insanelib:disenchant) now support NeoForge'spriorityfield (default 1000, higher is applied first)- NeoForge now loads every file in
data/<namespace>/loot_modifiers/and no longer usesglobal_loot_modifiers.json; the order is given bypriority
- NeoForge now loads every file in
insanelib:recipe_removalnow checks the result shown by the recipe (recipe book display). Recipes without a display (e.g. special recipes) are never removed- Fixed loot pool injections (
loot_pool_injections) not being applied when the world is loaded (they only worked after a/reload, using the injections of the previous load) - Fixed
merge_componentsinitem_componentsre-adding a component removed by a previous definition for the same item (e.g. one targeting the item and one targeting a tag containing it). A removed component now counts as absent: the merge json alone becomes the new value, and if it's not a valid component the removal is kept and an error is logged - Fixed a
merge_componentsthat fails to decode also undoing a previous removal of that component - Fixed
insanelib:enchant_with_treasureandinsanelib:enchant_randomly_weightlessloot functions not enchanting books - Items in the copper
insanelib:equipment/*tags are now the vanilla copper tools and armor - Time Stop No Player Online
- Now stops the day time (world clocks) too, other than the game time
- The weather integrated pack now uses the
advance_weathergame rule (wasdoWeatherCycle)
- Non-curable effects (
ILMobEffect/MCUtils#createEffectInstance) can no longer be removed by anything that clears all the effects when consumed (milk, totems,minecraft:clear_all_effectsconsume effect);/effect clearstill removes them
Technical
ResourceLocationis nowIdentifierin every method signature- Removed the
MixinExtrasjar-in-jar, NeoForge already provides it - Loot conditions and functions now implement
codec()(ILConditionsandILLootFunctionsnow registerMapCodecs) - Loot modifiers constructors now take the
priorityafter the conditions AddEatEffectEventis now fired when a food item is consumed (fromConsumable#onConsume); canceling it prevents theminecraft:apply_effectsconsume effects of the food. AddedgetStack()PlayerUseItemMovSpeedEventstarting speed modifier is now the one from the item'sminecraft:use_effectscomponent.ILEventFactory#onUseItemMovementSpeedModifiertakes the original speed modifierPlayerSprintEventis now checked onLocalPlayer#isSprintingPossible, so it also stops the player from sprinting, not only from starting to sprint- Effects cures
- Removed
MobEffectInstanceAccessorandILMobEffect#fillEffectCures(NeoForge removedEffectCure) - Added
ICurableEffectInstance(implemented onMobEffectInstance),ILMobEffect#canBeCured(),MCUtils#isCurableandMCUtils#removeCurableEffects - Non-curable effect instances created with
MCUtils#createEffectInstanceare not saved: they become curable again after a reload of the entity
- Removed
MCUtils#computeFoodFormulanow takes theConsumable(nullable) to geteat_secondsMCUtils#hurtIgnoreInvulnerabilitynow useshurtServerand always returns false on client sideItemComponentsReloadListener.PROGRAMMATIC_PROVIDERSnow receive aHolderLookup.Providerinstead ofRegistryAccess- Item components patches are now computed on
DefaultDataComponentsBoundEvent(server side only) instead ofTagsUpdatedEvent, since default components are now bound after tags RecipeRemovalUtilsis now applied by aRecipeManagermixin before recipes are finalized;RecipeRemovalUtils#removeTaggedRecipes(RecipeMap, HolderLookup.Provider)replaces the old event handlersClientUtils- Removed
setRenderColorandresetRenderColor(shader color no longer exists), use the color overload ofblitVerticallyMirroredinstead blitVerticallyMirrorednow takes aGuiGraphicsExtractor
- Removed
ExplosionAccessornow targetsServerExplosionILBlockTagProviderandILItemTagProviderno longer take anExistingFileHelper; data generation now usesGatherDataEvent.ClientModNBTData#getListignores the type parameter, since lists no longer have a fixed typePoolInjectionReloadListenerhas been renamed toPoolInjectionLoaderand is no longer a reload listener: injections are loaded byReloadableServerRegistriesMixin(PoolInjectionLoader#load(ResourceManager)) right before loot tables, since loot tables are loaded before reload listeners- Removed
LootModifierManagerMixin(NeoForge now sorts loot modifiers by priority)
This mod has no additional files