All Classes and Interfaces
Class
Description
A map meant to be used as the backing storage for custom
ApiLookup
instances,
to implement a custom equivalent of BlockApiLookup#get
.Deprecated, for removal: This API element is subject to removal in a future version.
A fast thread-safe copy-on-write map meant to be used as the backing storage for registered providers.
Armor renderers render worn armor items with custom code.
A registry for custom
AtlasSourceType
s.Class used to create and register
AttachmentType
s.A builder for creating
AttachmentType
s with finer control over their properties.Marks all objects on which data can be attached using
AttachmentType
s.An attachment allows "attaching" arbitrary data to various game objects (entities, block entities, worlds and chunks at the moment).
Callback for left-clicking ("attacking") a block.
Callback for left-clicking ("attacking") an entity.
Indicates that this
Event
is auto-invoking:
it calls the event callback implemented by a context parameter type automatically and without registration.Provides methods for modifying biomes.
Allows
Biome
properties to be modified.Provides an API to modify Biomes after they have been loaded and before they are used in the World.
Context given to a biome selector for deciding whether it applies to a biome or not.
Provides several convenient biome selectors that can be used with
BiomeModifications
.A transfer variant storage view that contains a blank variant all the time (it's always empty), but may have a nonzero capacity.
Defines how sprite pixels will be blended with the scene.
A
BlockApiLookup
bound to a ServerWorld
and a position, providing much faster API access.An object that allows retrieving APIs from blocks in a world.
Deprecated.
Use
AttackBlockCallback
instead and check for the block.Deprecated.
This module has been moved into fabric-rendering-v1.
Deprecated.
Replaced with transitive access wideners in Fabric Transitive Access Wideners (v1).
Convenience interface for blocks that want more stack picking context than what
Block.getPickStack(WorldView, BlockPos, BlockState)
provides.Use to associate blocks or fluids with block render layer other than default.
This class allows easy creation of
BlockSetType
s.Block state resolvers are responsible for mapping each
BlockState
of a block to an UnbakedModel
.The context for block state resolution.
Represents a function that accepts a boolean-valued argument and produces a result.
Deprecated.
Please use
BuiltinItemRendererRegistry.DynamicItemRenderer
instead.This registry holds builtin item renderers for items.
Dynamic item renderers render items with custom code.
Offers access to events related to the indication of a connected server's ability to receive packets in certain channels.
Offers access to events related to the indication of a connected server's ability to receive packets in certain channels.
Entrypoint to expose cauldrons to the Fluid Transfer API.
Manages client-sided commands and provides some related helper methods.
Callback for when client commands are registered to the dispatcher.
Offers access to events related to the configuration connection to a server on a logical client.
Deprecated.
replaced by
ClientConfigurationConnectionEvents.Complete
Offers access to configuration stage client-side networking functionalities.
A packet handler utilizing
CustomPayload
.Offers access to events related to the connection to a server on the client while the server is processing the client's login request.
Offers access to login stage client-side networking functionalities.
This event is emitted during the block-picking process.
Deprecated.
0.3.0
Deprecated.
This event is emitted at the beginning of the block picking process in
order to find any applicable ItemStack.
Offers access to events related to the connection to a server on a logical client.
Contains client side events triggered by block breaking.
Offers access to play stage client-side networking functionalities.
A thread-safe payload handler utilizing
CustomPayload
.This event fires every tick when the attack key (left mouse button by default) is pressed
(including clicking and holding the attack key).
Contains client-side events triggered when receiving messages.
Contains client-side events triggered when sending messages.
Allows the use of tags by directly loading them from the installed mods.
Deprecated.
Replaced by
ColorProviderRegistry
The registry for custom
ColorResolver
s.A
Storage
wrapping multiple slotted storages.A
Storage
wrapping multiple storages.Deprecated.
Please migrate to v2.
Callback for when a server registers all commands.
Deprecated.
Please migrate to v2.
Registry of items to 0.0-1.0 values, defining the chance of a given item
increasing the Composter block's level.
A context that allows an item-queried
Storage
implementation to interact with its containing inventory,
such as a player inventory or an emptying or filling machine.Deprecated.
Please use
ConventionalBiomeTags
See
BiomeTags
for vanilla tags.Deprecated.
Please use
ConventionalBlockTags
See
BlockTags
for vanilla tags.Deprecated.
Please use
ConventionalEnchantmentTags
Deprecated.
Please use
ConventionalEntityTypeTags
See
EntityTypeTags
for vanilla tags.Deprecated.
Please use
ConventionalFluidTags
See
FluidTags
for vanilla tags.Deprecated.
Please use
ConventionalItemTags
See
ItemTags
for vanilla tags.See
StructureTags
for vanilla tags.Called when core shaders (shader programs loaded from
assets/<namespace>/shaders/core
)
are loaded to register custom modded shaders.A context object used to create and register core shader programs.
Allows an item to run custom logic when
ItemStack.damage(int, LivingEntity, EquipmentSlot)
is called.Utility class for creating custom game rule categories outside of the categories
Minecraft provides
.Interface that modders can implement to create new behaviors for
Ingredient
s.Serializer for a
CustomIngredient
.An entry point for data generation.
Factory methods for the custom ingredients directly provided by Fabric API.
Events to modify the default
ComponentMap
of items.An unbaked model that returns another
BakedModel
at bake time.Dimensional renderers render world specific visuals of a world.
Contains methods for registering and accessing dynamic registries.
Flags for configuring dynamic registry syncing.
This event gets triggered before a dynamic registry is being loaded.
A view providing access to the registries that are currently being loaded.
Base implementation of a fluid storage for an empty item.
An enum that describes the contexts in which the game checks whether an enchantment can be applied to an item.
Events relating to enchantments, allowing for finer control of what enchantments can apply to different items.
An object that allows retrieving APIs from entities.
Events related to elytra flight for living entities.
Deprecated.
This module has been moved into fabric-rendering-v1.
A helpers for registering entity model layers and providers for the layer's textured model data.
Deprecated.
Convenience interface for entities that want more stack picking context than what
Entity.getPickBlockStack()
provides.Deprecated.
This module has been moved into fabric-rendering-v1.
Helper class for registering EntityRenderers.
Contains a function to register an entity selector option.
Events about the sleep of living entities.
Events related to a tracking entities within a player's view distance.
A provider for the preferred equipment slot of an item.
Base class for Fabric's event implementations.
Helper for creating
Event
classes.An extension of
NamedScreenHandlerFactory
that can write additional data to a screen opening packet.A
ScreenHandlerType
for an extended screen handler that
synchronizes additional data to the client when it is opened.A factory for creating screen handler instances from
additional opening data.
A
Storage
that supports extraction, and not insertion.Interface for baked models that output meshes with enhanced rendering features.
Fabric-provided helper methods for
BakedModelManager
.General-purpose Fabric-provided extensions for
Block
subclasses.General-purpose Fabric-provided extensions for
BlockEntityType
.General-purpose Fabric-provided extensions for
BlockEntityType.Builder
.Deprecated.
Use
BlockEntityType.Builder
directly.Deprecated.
Use
.
invalid reference
BlockEntityType.BlockEntityFactory
Fabric-provided extensions for
BlockLootTableGenerator
.Extend this class and implement
FabricBlockLootTableProvider.generate()
.Deprecated.
replace with
AbstractBlock.Settings
General-purpose Fabric-provided extensions for
BlockState
, matching the functionality provided in FabricBlock
.General-purpose Fabric-provided extensions for
BlockView
subclasses.An extension of
BrewingRecipeRegistry.Builder
to support ingredients.Use this event to register custom brewing recipes.
Extensions to
CommandSource
for client-sided commands.Extend this class and implement
FabricCodecDataProvider.configure(BiConsumer, RegistryWrapper.WrapperLookup)
.Fabric provided extensions to
CreativeInventoryScreen
.An extension to vanilla's
DataGenerator
providing mod specific data, and helper functions.A factory of a data provider.
A factory of a data provider.
Extends
DataOutput
to keep track of the ModContainer
that it originated from.Allows registering custom default attributes for living entities.
A provider to help with data-generation of dynamic registry objects,
such as biomes, features, or message types.
An interface that can be implemented on an item to provide custom elytra flight when it is worn in the
EquipmentSlot.CHEST
slot.Fabric extension to
EntitySelectorReader
, implemented
using interface injection.General-purpose Fabric-provided extensions for
EntityType
.General-purpose Fabric-provided extensions for
EntityType.Builder
.A builder for additional properties of a living entity, use via
FabricEntityType.Builder.createLiving(EntityType.EntityFactory, SpawnGroup, UnaryOperator)
.A builder for additional properties of a mob entity, use via
FabricEntityType.Builder.createMob(EntityType.EntityFactory, SpawnGroup, UnaryOperator)
.Deprecated.
replace with
EntityType.Builder
Deprecated.
use
invalid reference
EntityType.Builder#createLiving(EntityType.EntityFactory, SpawnGroup, UnaryOperator)
Deprecated.
An extended game rule visitor which supports Fabric's own rule types.
This interface can be optionally implemented on your test class.
Fabric-provided extensions for
Ingredient
.General-purpose Fabric-provided extensions for
Item
subclasses.Fabric-provided extensions for
Item.Settings
.Contains a method to create an item group builder.
This class allows the entries of item groups to be modified by the events in
ItemGroupEvents
.Deprecated.
Please migrate to v1.
Deprecated.
Convenience extensions to
LootPool.Builder
for adding pre-built objects or collections.Convenience extensions to
LootTable.Builder
for adding pre-built objects or collections and modifying loot pools.A base interface for Loot table providers.
Deprecated.
Replaced by access wideners for
ModelPredicateProviderRegistry
registration methods in Fabric Transitive Access Wideners (v1).Methods for creating particle types, both simple and using an existing attribute factory.
Extend this class and implement
FabricRecipeProvider.generate(net.minecraft.data.server.recipe.RecipeExporter)
.Used to create custom registries, with specified registry attributes.
An extension to
NamedScreenHandlerFactory
.Fabric-provided extensions for
ServerConfigurationNetworkHandler
.General purpose Fabric-provided extensions to
SoundInstance
.FabricSpriteProvider.
General-purpose Fabric-provided extensions for
TagKey
subclasses.Implement this class (or one of the inner classes) to generate a tag list.
Extend this class to create
BlockEntityType
tags in the "/block_entity_type" tag directory.Extend this class to create
Block
tags in the "/blocks" tag directory.Extend this class to create
Enchantment
tags in the "/enchantments" tag directory.Extend this class to create
EntityType
tags in the "/entity_types" tag directory.Extend this class to create
Fluid
tags in the "/fluids" tag directory.Extend this class to create
Item
tags in the "/items" tag directory.A "fake player" is a
ServerPlayerEntity
that is not a human player.A base
Storage
implementation that delegates every call to another storage,
except that it only allows insertion or extraction if FilteringStorage.canInsert(T)
or FilteringStorage.canExtract(T)
allows it respectively.A registry for shovel flattening interactions.
Constants for fluid transfer.
Interface for handling the rendering of a FluidState.
Registry for
FluidRenderHandler
instances.A class containing some utilities for rendering fluids.
Access to
Storage<FluidVariant>
instances.Helper functions to work with fluid storages.
An immutable association of a still fluid and data components.
Defines the common attributes of fluid variants of a given Fluid.
Common fluid variant attributes, accessible both client-side and server-side.
Defines how fluid variants of a given Fluid should be displayed to clients.
Client-side display of fluid variants.
Base class for specialized model implementations that need to wrap other baked models.
Registry of items to 0-32767 fuel burn time values, in in-game ticks.
Base implementation of a fluid storage for a full item.
A utility class containing factory methods to create game rule types.
A utility class which allows for registration of game rules.
Interface for "identifiable" resource reload listeners.
A
Storage
that supports insertion, and not extraction.Deprecated.
Replaced by
InvalidateRenderStateCallback
Called when the world renderer reloads, usually as result of changing resource pack
or video configuration, or when the player types F3+A in the debug screen.
An implementation of
Storage<ItemVariant>
for vanilla's Inventory
, SidedInventory
and PlayerInventory
.An object that allows retrieving APIs from item stacks.
Holds events related to
ItemGroups
.Access to
Storage<ItemVariant>
instances.An immutable count-less ItemStack, i.e.
Provides a callback for setting the sort priority of object keys in generated JSON files.
Helper for registering
KeyBinding
s.Deprecated.
Please migrate to v1.
A registry to associate block states with specific path node types.
A functional interface that provides the
PathNodeType
, given the block state world and position.Generic provider, this is a marker interface.
A functional interface that provides the
PathNodeType
, given the block state.Deprecated.
This module has been moved into fabric-rendering-v1.
Called when
feature renderers
for a living entity renderer
are registered.Deprecated.
This module has been moved into fabric-rendering-v1.
A delegate object used to help register feature renderers for an entity renderer.
Events related to living entity
FeatureRenderer
s.Represents something that supports sending packets to login channels.
Events for manipulating loot tables.
Describes where a loot table has been loaded from.
Finds standard
RenderMaterial
instances used to communicate
quad rendering characteristics to a RenderContext
.Getter methods for
RenderMaterial
(immutable) and MaterialFinder
(mutable).A bundle of one or more
QuadView
instances encoded by the renderer,
typically via Renderer.meshBuilder()
.Similar in purpose to
BufferBuilder
but simpler
and not tied to NIO or any other specific implementation,
plus designed to handle both static and dynamic building.Provides custom comparator output for minecarts resting on detector rails.
A registry for custom minecart comparator logic.
Collection of utilities for model implementations.
A model loading plugin is used to extend the model loading process through the passed
ModelLoadingPlugin.Context
object.Contains interfaces for the events that can be used to modify models at different points in the loading and baking
process.
The context for an after bake model modification event.
The context for a before bake model modification event.
The context for an on load model modification event.
Model resolvers are able to provide a custom model for specific
Identifier
s.The context for model resolution.
To achieve a predictable order for biome modifiers, and to aid with mod compatibility, modifiers need to declare
the phase in which they will be applied.
Interface implemented by mod-provided resource packs.
A mutable
QuadView
instance.Deprecated.
Use the constants in
NbtElement
instead.API that exposes the internals of Minecraft's nether biome code.
Provides methods for registering oxidizable and waxable blocks.
Helper methods for working with and creating
PacketByteBuf
s.Represents something that supports sending packets to channels.
Registry for adding particle factories on the client for
particle types created using FabricParticleTypes (or otherwise).
A pending particle factory.
Events related to particle rendering.
A registry for payload types.
Contains server side events triggered by block breaking.
A
Storage<ItemVariant>
implementation for a PlayerInventory
.Helper methods to lookup players in a server.
This class provides utilities to create a
PointOfInterestType
.A model loading plugin is used to extend the model loading process through the passed
ModelLoadingPlugin.Context
object.Specialized
MutableQuadView
obtained via MeshBuilder.getEmitter()
to append quads during mesh building.Interface for reading quad data encoded by
MeshBuilder
.The remapping process functions as follows:
RegistryEntryRemovedCallbacks are called to remove any objects culled in the process, with the old numeric ID.
Deprecated.
Use
FabricBlockView
instead.Deprecated.
Use
RenderDataBlockEntity
instead.This defines the instance made available to models for buffering vertex data at render time.
Deprecated, for removal: This API element is subject to removal in a future version.
Extensions that allow
BlockEntity
subclasses to provide render data.Interface for rendering plug-ins that provide enhanced capabilities
for model lighting, buffering and rendering.
Registration and access for rendering extensions.
All model quads have an associated render material governing
how the quad will be rendered.
An immutable object storing both a resource and an amount, provided for convenience.
A resource condition.
Contains default resource conditions and the condition registry.
A type of resource conditions.
Helper for working with
ResourceManager
instances, and other resource loader generalities.Represents the resource pack activation type.
This class contains default keys for various Minecraft resource reload listeners.
Offers access to events related to the indication of a connected client's ability to receive packets in certain channels.
Offers access to events related to the indication of a connected client's ability to receive packets in certain channels.
Holds events related to
Screen
s.Events related to use of the keyboard in a
Screen
.Events related to use of the mouse in a
Screen
.Utility methods related to screens.
Provides a method for registering sculk sensor frequencies.
Offers access to events related to the connection to a client on a logical server while a client is configuring.
Offers access to configuration stage server-side networking functionalities.
A packet handler utilizing
CustomPayload
.Events related to entities in combat.
Events related to an entity being moved to another world.
Various server-side only events related to living entities.
Offers access to events related to the connection to a client on a logical server while a client is logging in.
Offers access to login stage server-side networking functionalities.
Allows blocking client log-in until all futures passed into
ServerLoginNetworking.LoginSynchronizer.waitFor(Future)
are completed.A class for registering a
MessageDecorator
.Contains server-side events triggered when broadcasting messages.
Offers access to events related to the connection to a client on a logical server while a client is in game.
Deprecated.
Use the more general
ServerLivingEntityEvents.ALLOW_DEATH
event instead and check for instanceof ServerPlayerEntity
.Offers access to play stage server-side networking functionalities.
A thread-safe packet handler utilizing
CustomPayload
.Optional helper class that can be implemented on block entities that wish to provide a sided fluid storage
and/or a sided item storage without having to register a provider for each block entity type.
A simple fluid render handler that uses and loads sprites given by their
identifiers.
A simplified version of the "resource reload listener" interface, hiding the
peculiarities of the API.
A simplified version of the "resource reload listener" interface, hiding the
peculiarities of the API and ensuring all data is loaded on the main thread.
A storage that can store a single fluid variant at any given time.
A storage that can store a single item variant at any given time.
A storage that is also its only storage view.
An item variant storage backed by an
ItemStack
.Base implementation of a fixed-capacity "continuous" storage for item-provided storage APIs.
A storage that can store a single transfer variant at any given time.
A
Storage
implementation made of indexed slots.A base participant implementation that modifies itself during transactions,
saving snapshots of its state in objects of type
T
in case it needs to revert to a previous state.Indexes a texture atlas to allow fast lookup of Sprites from
baked vertex coordinates.
An object that can store resources.
Preconditions that can be used when working with storages.
Helper functions to work with
Storage
s.A view of a single stored resource in a
Storage
, for use with Storage.iterator()
.A registry for axe stripping interactions.
Deprecated.
Please use
TagUtil
A Helper class for checking whether a
TagKey
contains some entry.API that exposes some internals of the minecraft default biome source for The End.
A registry for hoe tilling interactions.
Allows registering a mapping from
TooltipData
to TooltipComponent
.Utilities to help with registration of trade offers.
A builder for rebalanced wandering trader offers.
A global operation where participants guarantee atomicity: either the whole operation succeeds,
or it is completely aborted and rolled back.
A subset of a
Transaction
that lets participants properly take part in transactions, manage their state,
or open nested transactions, but does not allow them to close the transaction they are passed.A callback that is invoked when a transaction is closed.
A callback that is invoked after the outer transaction is closed.
The result of a transaction operation.
An immutable association of an immutable object instance (for example
Item
or Fluid
) and data components.Represents a boolean value which can be true, false or refer to a default value.
Callback for right-clicking ("using") a block.
Callback for right-clicking ("using") an entity.
Callback for right-clicking ("using") an item.
A type of game rule which can validate an input.
Registries for modifying villager interactions that
villagers have with the world.
Deprecated.
Replaced by access widener for
VillagerProfession(java.lang.String, java.util.function.Predicate<net.minecraft.registry.entry.RegistryEntry<net.minecraft.world.poi.PointOfInterestType>>, java.util.function.Predicate<net.minecraft.registry.entry.RegistryEntry<net.minecraft.world.poi.PointOfInterestType>>, com.google.common.collect.ImmutableSet<net.minecraft.item.Item>, com.google.common.collect.ImmutableSet<net.minecraft.block.Block>, net.minecraft.sound.SoundEvent)
in Fabric Transitive Access Wideners (v1).Deprecated.
Replaced by access wideners for
VillagerType.create(java.lang.String)
and VillagerType.BIOME_TO_TYPE
in Fabric Transitive Access Wideners (v1).This class allows easy creation of
WoodType
s.Except as noted below, the properties exposed here match the parameters passed to
WorldRenderer.render(net.minecraft.client.render.RenderTickCounter, boolean, net.minecraft.client.render.Camera, net.minecraft.client.render.GameRenderer, net.minecraft.client.render.LightmapTextureManager, org.joml.Matrix4f, org.joml.Matrix4f)
.Used in
BLOCK_OUTLINE
to convey the parameters normally sent to
WorldRenderer.drawBlockOutline
.Mods should use these events to introduce custom rendering during
WorldRenderer.render(net.minecraft.client.render.RenderTickCounter, boolean, net.minecraft.client.render.Camera, net.minecraft.client.render.GameRenderer, net.minecraft.client.render.LightmapTextureManager, org.joml.Matrix4f, org.joml.Matrix4f)
without adding complicated and conflict-prone injections there.An interface to be implemented by models that wrap and replace another model, such as
ForwardingBakedModel
.
ApiLookupMap.LookupConstructor
should be used instead as it also passes the identifier.