All Classes and Interfaces
Class
Description
Advancement renderers allow for custom advancement icons, frames, and backgrounds
which render in the
advancements screen
and advancement toasts.Called after the background of an advancement tab renders.
Called after the frame of an advancement renders.
Called after the icon (display item) of an advancement renders.
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 factory to create an
ArmorRenderer instance.Class used to create and register
AttachmentTypes.A builder for creating
AttachmentTypes with finer control over their properties.A predicate that determines, for a specific attachment type, whether the data should be synchronized with a
player's client, given the player's
ServerPlayer and the AttachmentTarget the data is linked to.Marks all objects on which data can be attached using
AttachmentTypes.An attachment allows "attaching" arbitrary data to various game objects (entities, block entities, levels 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 Level.
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.
A
BlockApiLookup bound to a ServerLevel and a position, providing much faster API access.An object that allows retrieving APIs from blocks in a level.
Deprecated.
Use
AttackBlockCallback instead and check for the block.The registry for
BlockTintSources.Deprecated.
Replaced with transitive access wideners in Fabric Transitive Access Wideners (v1).
Contains events triggered by players interact with blocks.
Contains block tags that add extra functionality to blocks.
This class allows easy creation of
BlockSetTypes.Represents a function that accepts a boolean-valued argument and produces a result.
Entrypoint to expose cauldrons to the Fluid Transfer API.
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.
Callback for when client commands are registered to the dispatcher.
Manages client-sided commands and provides some related helper methods.
Offers access to events related to the configuration connection to a server on a logical client.
Deprecated.
replaced by
ClientConfigurationConnectionEvents.CompleteOffers access to configuration stage client-side networking functionalities.
A packet handler utilizing
CustomPacketPayload.A registry for debug subscriptions on the client,
allowing listening to registered debug subscriptions on the client.
Context for a client gametest containing various helpful functions and functions to access the game.
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.
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
CustomPacketPayload.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.
This event gets invoked when client receives all synchronized recipes.
Contains client-side events triggered when sending messages.
Allows the use of tags by directly loading them from the installed mods.
Allows registering a mapping from
TooltipComponent to ClientTooltipComponent.The registry for custom
ColorResolvers.A
Storage wrapping multiple slotted storages.A
Storage wrapping multiple storages.Callback for when a server registers all commands.
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.An implementation of
Storage<ItemVariant> for vanilla's Container, WorldlyContainer and Inventory.See
BiomeTags for vanilla tags.See
BlockTags for vanilla tags.See
EntityTypeTags for vanilla tags.See
FluidTags for vanilla tags.See
ItemTags for vanilla tags.See
StructureTags for vanilla tags.Holds events related to
CreativeModeTabs.Allows an item to run custom logic when
ItemStack.hurtAndBreak(int, LivingEntity, EquipmentSlot) is called.Interface that modders can implement to create new behaviors for
Ingredients.Serializer for a
CustomIngredient.Implement this interface on test suites to provide custom logic for invoking
GameTest test methods.An entry point for data generation.
Provides various hooks into the server data resource loader.
Represents a resource store for data.
Represents a typed key for the data resource store.
A factory that creates a
debug subscription renderer.
Registry for custom
debug renderers.
Factory methods for the custom ingredients directly provided by Fabric API.
Events to modify the default
DataComponentMap of items.Events for manipulating dimensions.
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.
Context for mob effect events.
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.
Determines where an enchantment has been loaded from.
An object that allows retrieving APIs from entities.
A server-side registry for debug subscriptions specific
to entities or properties of entities.
Events related to elytra flight for living entities.
Deprecated.
Replaced with transitive access wideners in Fabric Transitive Access Wideners (v1).
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.Represents a result of an event that controls execution of some action.
An extension of
MenuProvider that can write additional data to a screen opening packet.A
MenuType for an extended menus that
synchronizes additional data to the client when it is opened.A factory for creating menu instances from
additional opening data.
A
Storage that supports extraction, and not insertion.Extend this class and implement
FabricAdvancementProvider.generateAdvancement(HolderLookup.Provider, Consumer).General-purpose Fabric-provided extensions for
Block subclasses.Fabric-provided extensions for
BlockBehaviour.Properties.General-purpose Fabric-provided extensions for
BlockEntityType.Use this builder to create a
BlockEntityType.General-purpose Fabric-provided extensions for
BlockGetter subclasses.Fabric-provided extensions for
BlockLootSubProvider.Extend this class and implement
FabricBlockLootSubProvider.generate().Note: This interface is automatically implemented on
BlockParticleOption via Mixin and interface injection.General-purpose Fabric-provided extensions for
BlockState, matching the functionality provided in FabricBlock.Extensions to
SharedSuggestionProvider for client-sided commands.The
fabric-client-gametest entrypoint interface.Extend this class and implement
FabricCodecDataProvider.configure(BiConsumer, HolderLookup.Provider).Fabric-provided extensions for
DataComponentMap.Builder.Fabric provided extensions to
CreativeModeInventoryScreen.Contains a method to create a creative mode tab builder.
This class allows the output of creative mode tabs to be modified by the events in
CreativeModeTabEvents.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.
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.
Allows registering custom
EntityDataSerializers in a reliable way.Extend this class and implement
FabricEntityLootSubProvider.generate().Fabric extension to
EntitySelectorParser, 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, MobCategory, UnaryOperator).A builder for additional properties of a mob entity, use via
FabricEntityType.Builder.createMob(EntityType.EntityFactory, MobCategory, UnaryOperator).Deprecated.
replace with
EntityType.BuilderDeprecated.
Deprecated.
An extended game rule type visitor which supports Fabric's own rule types.
Fabric-provided extensions for
Ingredient.General-purpose Fabric-provided extensions for
Item subclasses.Fabric-provided extensions for
Item.Properties.Fabric-provided extensions for
ItemStack.Extend this class and implement
FabricLanguageProvider.generateTranslations(HolderLookup.Provider, FabricLanguageProvider.TranslationBuilder).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.
An extension to
MenuProvider.An extension for
MobEffect subclasses adding basic events.General purpose Fabric extensions to the
Model class.Extend this class and implement
FabricModelProvider.generateBlockStateModels(BlockModelGenerators) and FabricModelProvider.generateItemModels(ItemModelGenerators).Extends
PackOutput to keep track of the ModContainer that it originated from.Methods for creating particle types, both simple and using an existing attribute factory.
An extension of
PotionBrewing.Builder to support ingredients.Use this event to register custom brewing recipes.
General-purpose Fabric-provided extensions for
RecipeAccess class.General-purpose Fabric-provided extensions for
RecipeManager class.Injected to all
RecipeOutput instances.Extend this class and implement
FabricRecipeProvider.createRecipeProvider(HolderLookup.Provider, RecipeOutput).General-purpose Fabric-provided extensions for
Registry objects.Used to create custom registries, with specified registry attributes.
General purpose Fabric extensions to the
RenderPipeline class.General purpose Fabric extensions to the
RenderPipeline.Builder class.General purpose Fabric extensions to the
RenderPipeline.Snippet class.Fabric-provided extensions for render states, allowing for the addition of extra render data.
Extensions to
Resource.Fabric-provided extensions for
ServerConfigurationPacketListenerImpl.General purpose Fabric-provided extensions to
SoundInstance.Extend this class and implement
FabricSoundsProvider.configure(HolderLookup.Provider, SoundExporter).It does the same thing as vanilla's
SpriteSet,
but in a way that's accessible to mods, and that exposes the atlas as well.Interface-injected to
TagAppender.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 "/block" tag directory.Extend this class to create
EntityType tags in the "/entity_type" tag directory.Parent class for tags providers that support adding registered values directly.
Extend this class to create
Fluid tags in the "/fluid" tag directory.Extend this class to create
Item tags in the "/item" tag directory.Fabric provided extension of ValueInput.
Fabric provided extension of ValueOutput.
A "fake player" is a
ServerPlayer 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.
Helper methods for working with and creating
FriendlyByteBufs.Contains events to aid in modifying fuels.
Use this event to register custom fuels.
Use this event to register custom fuels.
Base implementation of a fluid storage for a full item.
A utility class containing classes and methods for building
GameRules.Provides events for updating
GameRules.A functional interface used as a change callback for
GameRule updates.GameTest is an annotation that can be used to mark a method as a game test.Represents a mod added
Gui element that can be rendered on the screen.A registry of identified hud layers with methods to add layers in specific positions.
Deprecated.
Use
HudElementRegistry instead.A registry for
StatusBarHeightProvider instances, known as height providers.Deprecated.
A
Storage that supports insertion, and not extraction.Called when the level renderer reloads, usually as result of changing resource pack
or video configuration, or when the player types F3+A in the debug screen.
An object that allows retrieving APIs from item stacks.
A registry of
TooltipProvider item components.Contains events triggered by players interact with item.
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
KeyMappings.A registry to associate block states with specific path types.
A functional interface that provides the
PathType, given the block state level and position.Generic provider, this is a marker interface.
A functional interface that provides the
PathType, given the block state.Mods should use these events to introduce custom rendering during
LevelRenderer.renderLevel(GraphicsResourceAllocator, DeltaTracker, boolean, CameraRenderState, Matrix4f, GpuBufferSlice, Vector4f, boolean, ChunkSectionsToRender)
without adding complicated and conflict-prone injections there.Events related to living entity
RenderLayers.Called when
render layers for a living entity renderer are registered.A delegate object used to help register render layers for an entity renderer.
Represents something that supports sending packets to login channels.
Events for manipulating loot tables.
Describes where a loot table has been loaded from.
Provides custom comparator output for minecarts resting on detector rails.
A registry for custom minecart comparator logic.
A helpers for registering model layers and providers for the layer's definition.
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.
Deprecated.
See
ModPackResources.Additional codecs that can be used by modders.
Deprecated.
Use the constants in
Tag instead.API that exposes the internals of Minecraft's nether biome code.
Provides methods for registering oxidizable and waxable blocks.
Represents the resource pack activation type.
This class allow to easily pass context between multiple packet listeners and packet serialization.
This interface is used as a way to retrieve
PacketContext from Connection and PacketListeners.Represents something that supports sending packets to channels.
A registry for custom
ParticleGroups.Registry for adding particle providers on the client for
particle types created using
FabricParticleTypes (or otherwise).A pending particle provider.
Events related to particle rendering.
A registry for payload types.
Allows registering picture-in-picture renderers,
used to render custom gui elements beyond the methods available in
GuiGraphics.A factory to create a new
PictureInPictureRenderer instance.Contains server side events triggered by block breaking.
A
Storage<ItemVariant> implementation for a Inventory.Helper methods to lookup players in a server.
Contains events triggered by server players requesting to pick items from the level.
This class provides utilities to create a
PoiType.Since Minecraft 1.21.2, vanilla no longer syncs all recipes to the client automatically,
opting into sending only required recipe book data.
An event for when an entry is added to a registry.
The remapping process functions as follows:
RegistryEntryRemovedCallbacks are called to remove any objects culled in the process, with the old numeric ID.
Extensions that allow
BlockEntity subclasses to provide render data.A unique key representing extra data to attach to a render state.
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.
Provides various hooks into the resource loader.
Deprecated.
Deprecated.
This class contains default keys for various Minecraft reload listener.
Keys for various client reload listeners.
Keys for various server reload listeners.
Deprecated.
Use
ResourceReloaderKeys instead.Holds events related to
Screens.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.
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.
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
CustomPacketPayload.Events related to entities in combat.
Events related to an entity being moved to another level.
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
ChatDecorator.Contains server-side events triggered when broadcasting messages.
Events related to status effects in mobs.
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 ServerPlayer.Offers access to play stage server-side networking functionalities.
A thread-safe packet handler utilizing
CustomPacketPayload.Contains events that are triggered on the server every tick.
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.
Extend this class and implement
LootTableSubProvider.generate(BiConsumer).A simple fluid render handler that uses and loads sprites given by their
identifiers.
A variant of
SimplePreparableReloadListener
which passes the shared state instead of the resource manager in its methods.Deprecated.
Use
SimpleReloadListener instead.Deprecated.
Use
ResourceManagerReloadListener directly.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.Provides functionality for building entries that go into a
sounds.json file.Builder for creating a weighted sound event registration that can be played for a particular sound type.
Represents the type of weighted sound event registration.
A registry for custom
SpriteSources.Define the vertical space occupied by HUD elements, known as status bars, which are positioned on the left and right
sides above the player's hotbar.
An object that can store resources.
Preconditions that can be used when working with storages.
Helper functions to work with
Storages.A view of a single stored resource in a
Storage, for use with Storage.iterator().A registry for axe stripping interactions.
This class provides access to synchronized recipes on the client.
A Helper class for checking whether a
TagKey contains some entry.Context for a client gametest containing various helpful functions while a client level is open.
Context for a client gametest containing various helpful functions while an in-process dedicated server is running.
The client gametest input handler used to simulate inputs to the client.
Base class for screenshot customization options common to taking screenshots and comparing them.
An algorithm for finding a template subimage (the "needle") in a screenshot (the "haystack").
A thin wrapper around a raw image data array, so that algorithms can directly access the array which may be more
efficient than going through a
NativeImage each time.Options for comparing screenshots.
Options to customize a screenshot.
Context for a connection to a dedicated server containing various helpful functions while the connection is alive.
Context for a client gametest containing various helpful functions while a server (integrated or dedicated) is
running.
Context for a client gametest containing various helpful functions while a singleplayer game is open.
A builder used for creating singleplayer worlds and dedicated servers.
A handle for a singleplayer world save.
API that exposes some internals of the minecraft default biome source for The End.
A registry for hoe tilling interactions.
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.A model that copies transforms from a source model to a delegate model.
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 hud element that has an identifier attached for use in
HudElementRegistry.Provides a method for registering vibration frequencies.
Registries for modifying villager interactions that
villagers have with the world.
This class allows easy creation of
WoodTypes.
ApiLookupMap.LookupConstructorshould be used instead as it also passes the identifier.