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.
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.Experimental feature, may be removed or changed without further notice.
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(BlockView, BlockPos, BlockState)
provides.Use to associate blocks or fluids with block render layer other than default.
This class allows registering
BlockSetType
s.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.
Deprecated.
Please migrate to
S2CPlayChannelEvents
since this was incorrectly named.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 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.
Offers access to play stage client-side networking functionalities.
A thread-safe packet handler utilizing
FabricPacket
.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.
Deprecated.
Please migrate to
ClientPlayNetworking
.Allows the use of tags by directly loading them from the installed mods.
Deprecated.
Deprecated.
Replaced by
ColorProviderRegistry
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 resource condition and its parameters that can be serialized to JSON, meant for use in data generators.
Deprecated.
Use
ScreenHandlerRegistry.ExtendedClientHandlerFactory
instead.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.
Use
ScreenHandlerRegistry
instead.Deprecated.
Use
ScreenRegistry.Factory
instead.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.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.
Deprecated.
Replaced by access widener for
Criteria.register(Criterion)
in Fabric Transitive Access Wideners (v1).Allows an item to run custom logic when
ItemStack.damage(int, LivingEntity, Consumer)
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.
Contains
ConditionJsonProvider
s for resource conditions provided by fabric itself.Dimensional renderers render world specific visuals of a world.
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 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.Extend this class and implement
FabricAdvancementProvider.generateAdvancement(java.util.function.Consumer<net.minecraft.advancement.Advancement>)
.Interface for baked models that output meshes with enhanced rendering features.
General-purpose Fabric-provided extensions for
Block
subclasses.Fabric's version of BlockEntityType.Builder with additional convenience methods.
Fabric-provided extensions for
BlockLootTableGenerator
.Extend this class and implement
FabricBlockLootTableProvider.generate()
.Fabric's version of Block.Settings.
General-purpose Fabric-provided extensions for
BlockState
, matching the functionality provided in FabricBlock
.Counterpart of
BrewingRecipeRegistry
with methods that allow adding recipes which use Ingredients instead of Items.Extensions to
CommandSource
for client-sided commands.Extend this class and implement
FabricCodecDataProvider.configure(java.util.function.BiConsumer<net.minecraft.util.Identifier, T>)
.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.
This class consists exclusively of static methods that operate on world dimensions.
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.Extended version of
EntityType.Builder
with added registration for
server->client entity tracking values.An extended version of
FabricEntityTypeBuilder
with support for features on present on living entities
, such as default attributes.An extended version of
FabricEntityTypeBuilder
with support for features on present on mob entities
, such as spawn restrictions.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.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
.Fabric's version of Item.Settings.
Deprecated.
Please migrate to v1.
Deprecated.
Extend this class and implement
FabricLanguageProvider.generateTranslations(TranslationBuilder)
.A consumer used by
FabricLanguageProvider.generateTranslations(TranslationBuilder)
.Deprecated.
Replaced with transitive access wideners in Fabric Transitive Access Wideners (v1).
Deprecated.
Replaced with
FabricLootPoolBuilder
.Convenience extensions to
LootPool.Builder
for adding pre-built objects or collections.Deprecated.
Replaced with transitive access wideners in Fabric Transitive Access Wideners (v1).
Deprecated.
Replaced with
FabricLootTableBuilder
.Convenience extensions to
LootTable.Builder
for adding pre-built objects or collections and modifying loot pools.A base interface for Loot table providers.
Defines additional
mineable
tags for vanilla tools not covered by vanilla.Deprecated.
Replaced by access wideners for
ModelPredicateProviderRegistry
registration methods in Fabric Transitive Access Wideners (v1).A packet to be sent using Networking API.
Methods for creating particle types, both simple and using an existing attribute factory.
Extend this class and implement
FabricRecipeProvider.generate(java.util.function.Consumer<net.minecraft.data.server.recipe.RecipeJsonProvider>)
.Used to create custom registries, with specified registry attributes.
An extension to
NamedScreenHandlerFactory
.General purpose Fabric-provided extensions to
SoundInstance
.FabricSpriteProvider.
Implement this class (or one of the inner classes) to generate a tag list.
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
GameEvent
tags in the "/game_events" 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.Access to
Storage<FluidVariant>
instances.Helper functions to work with fluid storages.
An immutable association of a still fluid and an optional NBT tag.
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.
Utilities for working with netty's future listeners.
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.Deprecated.
Please use
ItemTooltipCallback
An immutable count-less ItemStack, i.e.
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.Deprecated.
Use
Registries.LOOT_POOL_ENTRY_TYPE
from vanilla instead.Deprecated.
Deprecated.
Use
LootGsons.getTableGsonBuilder()
from vanilla instead.Events for manipulating loot tables.
Deprecated.
Replaced with
LootTableEvents
.Deprecated.
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.
Provides access to block mining levels.
Deprecated.
use
ExtraModelProvider
, which supports loading of plain Identifier
sCollection of utilities for model implementations.
The model loading context used during model providing.
Interface for model resource providers.
Interface for model variant providers.
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.
Stack-aware attribute modifier callback for foreign items.
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.Deprecated.
See the corresponding play packet handler in
ClientPlayNetworking
or ServerPlayNetworking
Deprecated.
Deprecated.
Represents something that supports sending packets to channels.
A type of packet.
Registry for adding particle factories on the client for
particle types created using FabricParticleTypes (or otherwise).
A pending particle factory.
A
Storage<ItemVariant>
implementation for a PlayerInventory
.For example, a block entity may use the methods in this class to send a packet to all clients which can see the block entity in order notify clients about a change.
Deprecated.
Please use
PlayerLookup
instead.This class provides utilities to create a
PointOfInterestType
.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.
BlockRenderView
-extending interface to be used by FabricBakedModel
for dynamic model customization.Interface for
BlockEntity
s which provide dynamic model state data.This defines the instance made available to models for buffering vertex data at render time.
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.
Registration and access to resource loading 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.
Deprecated.
Please migrate to
C2SPlayChannelEvents
since this was incorrectly named.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.Deprecated.
Replaced by
Creating simple screen handler types directly with
ScreenHandlerType
using an access widener in Fabric Transitive Access Wideners (v1)
Creating extended screen handler types with ExtendedScreenHandlerType
Registering using Registries.SCREEN_HANDLER
directly
Deprecated.
Replaced with
ExtendedScreenHandlerType.ExtendedFactory
.Deprecated.
Replaced by access widener for
in Fabric Transitive Access Wideners (v1).
invalid @link
ScreenHandlerType.Factory
Events related to use of the keyboard in a
Screen
.Events related to use of the mouse in a
Screen
.Deprecated.
Use
ScreenRegistry
instead.Deprecated.
Replaced by access wideners for
in Fabric Transitive Access Wideners (v1).
HandledScreens.register(ScreenHandlerType, HandledScreens.Provider)
and
invalid @link
HandledScreens.Provider
A factory for handled screens.
Utility methods related to screens.
Provides a method for registering sculk sensor frequencies.
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
FabricPacket
.Deprecated.
Please migrate to
ServerPlayNetworking
.Deprecated.
Deprecated.
Deprecated.
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
LootTableGenerator.accept(java.util.function.BiConsumer<net.minecraft.util.Identifier, net.minecraft.loot.LootTable.Builder>)
.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()
or Storage.exactView(T)
.A registry for axe stripping interactions.
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 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 an optional NBT tag.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 registering
WoodType
s.Except as noted below, the properties exposed here match the parameters passed to
WorldRenderer.render(MatrixStack, float, long, boolean, Camera, GameRenderer, LightmapTextureManager, 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.util.math.MatrixStack, float, long, boolean, net.minecraft.client.render.Camera, net.minecraft.client.render.GameRenderer, net.minecraft.client.render.LightmapTextureManager, net.minecraft.util.math.Matrix4f)
without adding complicated and conflict-prone injections there.Deprecated.
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.