Tags
Creators
Details
Licensed ARR
Published 4 years ago
Updated 14 hours ago
All versions
3.0.0.0-beta
Beta
3.0.0.0-betalast week 86
Compatibility
Minecraft: Java Edition
26.1.2
Platform
NeoForge
Supported environments
Client and server
Changes
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)
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:USZyvOJq:Tpb9S7pl"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:USZyvOJq:Tpb9S7pl"
}

