Class FakePlayer

java.lang.Object
net.minecraft.world.entity.Entity
net.minecraft.world.entity.LivingEntity
net.minecraft.world.entity.Avatar
net.minecraft.world.entity.player.Player
net.minecraft.server.level.ServerPlayer
net.fabricmc.fabric.api.entity.FakePlayer
All Implemented Interfaces:
AttachmentTarget, net.minecraft.core.component.DataComponentGetter, net.minecraft.core.TypedInstance<net.minecraft.world.entity.EntityType<?>>, net.minecraft.network.syncher.SyncedDataHolder, net.minecraft.util.debug.DebugValueSource, net.minecraft.world.entity.Attackable, net.minecraft.world.entity.ContainerUser, net.minecraft.world.entity.ItemOwner, net.minecraft.world.entity.SlotProvider, net.minecraft.world.level.entity.EntityAccess, net.minecraft.world.level.entity.UniquelyIdentifyable, net.minecraft.world.Nameable, net.minecraft.world.scores.ScoreHolder, net.minecraft.world.waypoints.Waypoint, net.minecraft.world.waypoints.WaypointTransmitter

public class FakePlayer extends net.minecraft.server.level.ServerPlayer
A "fake player" is a ServerPlayer that is not a human player. They are typically used to automatically perform player actions such as placing blocks.

The easiest way to obtain a fake player is with get(ServerLevel) or get(ServerLevel, GameProfile). It is also possible to create a subclass for more control over the fake player's behavior.

For good inter-mod compatibility, fake players should have the UUID of their owning (human) player. They should still have a different name to ensure the GameProfile is different. For example:

UUID humanPlayerUuid = ...;
String humanPlayerName = ...;
GameProfile fakeProfile = new GameProfile(humanPlayerUuid, "[Block Breaker of " + humanPlayerName + "]");
If a fake player does not belong to a specific player, the default UUID should be used.

Fake players try to behave like regular ServerPlayer objects to a reasonable extent. In some edge cases, or for gameplay considerations, it might be necessary to check whether a ServerPlayer is a fake player. This can be done with an instanceof check: player instanceof FakePlayer.

  • Nested Class Summary

    Nested classes/interfaces inherited from class net.minecraft.server.level.ServerPlayer

    net.minecraft.server.level.ServerPlayer.RespawnConfig, net.minecraft.server.level.ServerPlayer.SavedPosition

    Nested classes/interfaces inherited from class net.minecraft.world.entity.player.Player

    net.minecraft.world.entity.player.Player.BedSleepingProblem

    Nested classes/interfaces inherited from class net.minecraft.world.entity.LivingEntity

    net.minecraft.world.entity.LivingEntity.Fallsounds

    Nested classes/interfaces inherited from class net.minecraft.world.entity.Entity

    net.minecraft.world.entity.Entity.Flags, net.minecraft.world.entity.Entity.MoveFunction, net.minecraft.world.entity.Entity.MovementEmission, net.minecraft.world.entity.Entity.RemovalReason

    Nested classes/interfaces inherited from interface AttachmentTarget

    AttachmentTarget.OnAttachedSet<A>

    Nested classes/interfaces inherited from interface net.minecraft.util.debug.DebugValueSource

    net.minecraft.util.debug.DebugValueSource.Registration, net.minecraft.util.debug.DebugValueSource.ValueGetter<T>

    Nested classes/interfaces inherited from interface net.minecraft.world.entity.ItemOwner

    net.minecraft.world.entity.ItemOwner.OffsetFromOwner

    Nested classes/interfaces inherited from interface net.minecraft.world.waypoints.Waypoint

    net.minecraft.world.waypoints.Waypoint.Icon

    Nested classes/interfaces inherited from interface net.minecraft.world.waypoints.WaypointTransmitter

    net.minecraft.world.waypoints.WaypointTransmitter.BlockConnection, net.minecraft.world.waypoints.WaypointTransmitter.ChunkConnection, net.minecraft.world.waypoints.WaypointTransmitter.Connection, net.minecraft.world.waypoints.WaypointTransmitter.EntityAzimuthConnection, net.minecraft.world.waypoints.WaypointTransmitter.EntityBlockConnection, net.minecraft.world.waypoints.WaypointTransmitter.EntityChunkConnection
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final UUID
    Default UUID, for fake players not associated with a specific (human) player.

    Fields inherited from class net.minecraft.server.level.ServerPlayer

    BLOCK_INTERACTION_DISTANCE_VERIFICATION_BUFFER, connection, ENDER_PEARL_DIMENSION_TAG, ENDER_PEARL_TICKET_RADIUS, ENDER_PEARLS_TAG, ENTITY_INTERACTION_DISTANCE_VERIFICATION_BUFFER, gameMode, object, seenCredits, TAG_DIMENSION, wonGame

    Fields inherited from class net.minecraft.world.entity.player.Player

    containerMenu, CRAFTING_SLOT_OFFSET, CREATIVE_ENTITY_INTERACTION_RANGE_MODIFIER_VALUE, DEFAULT_BLOCK_INTERACTION_RANGE, DEFAULT_ENTITY_INTERACTION_RANGE, defaultFlySpeed, enchantmentSeed, ENDER_SLOT_OFFSET, enderChestInventory, experienceLevel, experienceProgress, fishing, foodData, HELD_ITEM_SLOT, hurtDir, inventoryMenu, jumpTriggerTime, MAX_HEALTH, SLEEP_DURATION, takeXpDelay, totalExperience, WAKE_UP_DURATION, wasUnderwater

    Fields inherited from class net.minecraft.world.entity.Avatar

    DATA_PLAYER_MAIN_HAND, DATA_PLAYER_MODE_CUSTOMISATION, DEFAULT_EYE_HEIGHT, DEFAULT_MAIN_HAND, DEFAULT_MODEL_CUSTOMIZATION, DEFAULT_VEHICLE_ATTACHMENT, POSES, STANDING_DIMENSIONS, SWIMMING_BB_HEIGHT

    Fields inherited from class net.minecraft.world.entity.LivingEntity

    ARMOR_SLOT_OFFSET, attackAnim, attackStrengthTicker, autoSpinAttackDmg, autoSpinAttackItemStack, autoSpinAttackTicks, BASE_JUMP_POWER, BODY_ARMOR_OFFSET, brain, currentExplosionCause, currentImpulseImpactPos, DATA_LIVING_ENTITY_FLAGS, dead, DEATH_DURATION, deathTime, DEFAULT_BABY_SCALE, DEFAULT_BASE_GRAVITY, DEFAULT_KNOCKBACK, elytraAnimationState, equipment, EQUIPMENT_SLOT_OFFSET, EXTRA_RENDER_CULLING_SIZE_WITH_BIG_HAT, fallFlyTicks, hurtDuration, hurtTime, INPUT_FRICTION, interpolation, INVULNERABLE_DURATION, itemSwapTicker, jumping, lastHurt, lastHurtByPlayer, lastHurtByPlayerMemoryTime, lerpHeadSteps, lerpYHeadRot, LIVING_ENTITY_FLAG_IS_USING, LIVING_ENTITY_FLAG_OFF_HAND, LIVING_ENTITY_FLAG_SPIN_ATTACK, MIN_MOVEMENT_DISTANCE, noActionTime, oAttackAnim, PLAYER_HURT_EXPERIENCE_TIME, PLAYER_NOT_WEARING_DISGUISE_ITEM, recentKineticEnemies, removeArrowTime, removeStingerTime, SADDLE_OFFSET, SLEEPING_DIMENSIONS, swinging, swingingArm, swingTime, TAG_ATTRIBUTES, TAG_BRAIN, TAG_DEATH_TIME, TAG_EQUIPMENT, TAG_FALL_FLYING, TAG_HEALTH, TAG_HURT_BY_TIMESTAMP, TAG_HURT_TIME, TAG_SLEEPING_POS, useItem, useItemRemaining, walkAnimation, xxa, yBodyRot, yBodyRotO, yHeadRot, yHeadRotO, yya, zza

    Fields inherited from class net.minecraft.world.entity.Entity

    BASE_SAFE_FALL_DISTANCE, BASE_TICKS_REQUIRED_TO_FREEZE, blocksBuilding, BOARDING_COOLDOWN, boardingCooldown, CONTENTS_SLOT_INDEX, DATA_POSE, DATA_SHARED_FLAGS_ID, DEFAULT_BB_HEIGHT, DEFAULT_BB_WIDTH, DELTA_AFFECTED_BY_BLOCKS_BELOW_0_2, DELTA_AFFECTED_BY_BLOCKS_BELOW_0_5, DELTA_AFFECTED_BY_BLOCKS_BELOW_1_0, entityData, fallDistance, firstTick, FLAG_FALL_FLYING, FLAG_GLOWING, FLAG_ONFIRE, flyDist, FREEZE_HURT_FREQUENCY, horizontalCollision, hurtMarked, invulnerableTime, isInPowderSnow, mainSupportingBlockPos, MAX_ENTITY_TAG_COUNT, MAX_MOVEMENTS_HANDELED_PER_TICK, minorHorizontalCollision, moveDist, needsSync, noPhysics, portalProcess, random, stringUUID, stuckSpeedMultiplier, TAG_AIR, TAG_CUSTOM_NAME, TAG_DATA, TAG_FALL_DISTANCE, TAG_FIRE, TAG_GLOWING, TAG_ID, TAG_INVULNERABLE, TAG_MOTION, TAG_NO_GRAVITY, TAG_ON_GROUND, TAG_PASSENGERS, TAG_PORTAL_COOLDOWN, TAG_POS, TAG_ROTATION, TAG_SILENT, TAG_UUID, tickCount, TOTAL_AIR_SUPPLY, uuid, verticalCollision, verticalCollisionBelow, wasEyeInWater, wasInPowderSnow, wasTouchingWater, xo, xOld, xRotO, yo, yOld, yRotO, zo, zOld

    Fields inherited from interface AttachmentTarget

    NBT_ATTACHMENT_KEY

    Fields inherited from interface net.minecraft.world.scores.ScoreHolder

    WILDCARD, WILDCARD_NAME

    Fields inherited from interface net.minecraft.world.waypoints.Waypoint

    MAX_RANGE, WAYPOINT_TRANSMIT_RANGE_HIDE_MODIFIER

    Fields inherited from interface net.minecraft.world.waypoints.WaypointTransmitter

    REALLY_FAR_DISTANCE
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    FakePlayer(net.minecraft.server.level.ServerLevel level, com.mojang.authlib.GameProfile profile)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    awardStat(net.minecraft.stats.Stat<?> stat, int amount)
     
    static FakePlayer
    get(net.minecraft.server.level.ServerLevel level)
    Retrieves a fake player for the specified level, using the default UUID.
    static FakePlayer
    get(net.minecraft.server.level.ServerLevel level, com.mojang.authlib.GameProfile profile)
    Retrieves a fake player for the specified level and game profile.
    @Nullable net.minecraft.world.scores.PlayerTeam
     
    boolean
    isInvulnerableTo(net.minecraft.server.level.ServerLevel level, net.minecraft.world.damagesource.DamageSource damageSource)
     
    void
    openHorseInventory(net.minecraft.world.entity.animal.equine.AbstractHorse horse, net.minecraft.world.Container inventory)
     
    openMenu(@Nullable net.minecraft.world.MenuProvider factory)
     
    void
    openTextEdit(net.minecraft.world.level.block.entity.SignBlockEntity sign, boolean front)
     
    void
    resetStat(net.minecraft.stats.Stat<?> stat)
     
    boolean
    startRiding(net.minecraft.world.entity.Entity entity, boolean force, boolean emitEvent)
     
    void
    startSleeping(net.minecraft.core.BlockPos pos)
     
    void
     
    void
    updateOptions(net.minecraft.server.level.ClientInformation settings)
     

    Methods inherited from class net.minecraft.server.level.ServerPlayer

    addAdditionalSaveData, adjustSpawnLocation, allowsListing, awardKillScore, awardRecipes, awardRecipesByKey, broadcastToPlayer, canChatInColor, canHarmPlayer, checkFallDamage, checkMovementStatistics, clearRaidOmenPosition, clientInformation, closeContainer, commandSource, completeUsingItem, copyRespawnPosition, createCommandSourceStack, createCommonSpawnInfo, createItemCooldowns, crit, debugSubscriptions, deregisterEnderPearl, die, disconnect, doCloseContainer, doTick, drop, drop, findRespawnPositionAndUseSpawnBlock, forceSetRotation, gameMode, getAdvancements, getCamera, getChatSession, getChatVisibility, getChunkTrackingView, getEnchantedDamage, getEnderPearls, getIpAddress, getKnownMovement, getKnownSpeed, getLastActionTime, getLastClientInput, getLastClientMoveIntent, getLastSectionPos, getRaidOmenPosition, getRecipeBook, getRespawnConfig, getShoulderEntityLeft, getShoulderEntityRight, getStats, getTabListDisplayName, getTabListOrder, getTextFilter, getWardenSpawnTracker, giveExperienceLevels, giveExperiencePoints, handleExtraItemsCreatedOnUse, handleShoulderEntities, hasChangedDimension, hasDisconnected, hurtServer, indicateDamage, initInventoryMenu, isChangingDimension, isReceivingWaypoints, isTextFilteringEnabled, jumpFromGround, level, loadAndSpawnEnderPearls, loadAndSpawnParentVehicle, lookAt, lookAt, magicCrit, mayInteract, onAttributeUpdated, onChangedBlock, onEffectAdded, onEffectsRemoved, onEffectUpdated, onEnchantmentPerformed, onEnterCombat, onEquippedItemBroken, onExplosionHit, onInsideBlock, onItemPickup, onLeaveCombat, onUpdateAbilities, openCommandBlock, openDialog, openItemGui, openNautilusInventory, permissions, placeEnderPearlTicket, processPortalCooldown, pushEntities, readAdditionalSaveData, registerAndUpdateEnderPearlTicket, registerEnderPearl, removeEntitiesOnShoulder, removeVehicle, requestDebugSubscriptions, requestedViewDistance, resetFallDistance, resetLastActionTime, resetRecipes, resetSentInfo, restoreFrom, rideTick, sendBuildLimitMessage, sendChatMessage, sendMerchantOffers, sendOverlayMessage, sendServerStatus, sendSystemMessage, sendSystemMessage, setCamera, setChatSession, setChunkTrackingView, setEntityOnShoulder, setExperienceLevels, setExperiencePoints, setGameMode, setKnownMovement, setLastClientInput, setLastSectionPos, setRaidOmenPosition, setRespawnPosition, setServerLevel, setShoulderEntityLeft, setShoulderEntityRight, setSpawnExtraParticlesOnFall, shouldFilterMessageTo, showEndCredits, snapTo, startSleepInBed, stopSleepInBed, swing, take, teleport, teleportRelative, teleportTo, teleportTo, tickRegeneration, trackEnteredOrExitedLavaOnVehicle, trackStartFallingPosition, triggerRecipeCrafted, updateInvisibilityStatus, updateUsingItem

    Methods inherited from class net.minecraft.world.entity.player.Player

    actuallyHurt, addItem, aiStep, animateHurt, attack, awardStat, awardStat, awardStat, blockActionRestricted, blockInteractionRange, blockUsingItem, canBeSeenAsEnemy, canDropItems, canEat, canGlide, cannotAttackWithItem, canPlayerFitWithinBlocksAndEntitiesWhen, canSimulateMovement, canSprint, canUseGameMasterBlocks, causeExtraKnockback, causeFallDamage, causeFoodExhaustion, convertParrotVariant, createAttributes, createEquipment, debugInfo, defineSynchedData, destroyVanishingCursedItems, doAutoAttackOnTouch, doesEmitEquipEvent, doWaterSplashEffect, drop, dropEquipment, entityInteractionRange, extractParrotVariant, freeAt, getAbilities, getAbsorptionAmount, getAttackStrengthScale, getBaseExperienceReward, getBlockSpeedFactor, getContainerInteractionRange, getCooldowns, getCurrentItemAttackStrengthDelay, getDeathSound, getDestroySpeed, getDimensionChangingDelay, getDismountPoses, getDisplayName, getEnchantmentSeed, getEnderChestInventory, getFallSounds, getFireImmuneTicks, getFlyingSpeed, getFoodData, getGameProfile, getHurtDir, getHurtSound, getInventory, getItemSwapScale, getLastDeathLocation, getLuck, getMaxHeadRotationRelativeToBody, getMovementEmission, getName, getPlainTextName, getProfile, getProjectile, getRopeHoldPosition, getScore, getScoreboardName, getShoulderParrotLeft, getShoulderParrotRight, getSleepTimer, getSlot, getSoundSource, getSpeed, getSwimHighSpeedSplashSound, getSwimSound, getSwimSplashSound, getVoicePitch, getWeaponItem, getXpNeededForNextLevel, handleCreativeModeItemDrop, handleEntityEvent, hasContainerOpen, hasContainerOpen, hasCorrectToolForDrops, hasEnoughFoodToDoExhaustiveManoeuvres, hasInfiniteMaterials, hurtArmor, hurtHelmet, increaseScore, interactOn, internalSetAbsorptionAmount, isAffectedByFluids, isAlwaysExperienceDropper, isAlwaysTicking, isClientAuthoritative, isCreative, isEffectiveAi, isHurt, isImmobile, isLocalClientAuthoritative, isLocalPlayer, isMobilityRestricted, isPickable, isPushedByFluid, isReducedDebugInfo, isScoping, isSecondaryUseActive, isSleepingLongEnough, isSpectator, isStayingOnGroundSurface, isSwimming, isWithinAttackRange, isWithinBlockInteractionRange, isWithinEntityInteractionRange, isWithinEntityInteractionRange, killedEntity, makeStuckInBlock, maybeBackOffFromEdge, mayBuild, mayUseItemAt, nameAndId, onAboveBubbleColumn, onAttack, onClimbable, onInsideBubbleColumn, openJigsawBlock, openMinecartCommandBlock, openStructureBlock, openTestBlock, openTestInstanceBlock, playSound, playStepSound, preventsBlockDrops, remove, resetAttackStrengthTicker, resetOnlyAttackStrengthTicker, setLastDeathLocation, setReducedDebugInfo, setRemainingFireTicks, setScore, setShoulderParrotLeft, setShoulderParrotRight, shouldBeSaved, shouldRotateWithMinecart, shouldShowName, stabAttack, startAutoSpinAttack, startFallFlying, stopSleeping, travel, tryToStartFallFlying, updateIsUnderwater, updatePlayerPose, updateSwimming, updateTutorialInventoryAction, wantsToStopRiding

    Methods inherited from class net.minecraft.world.entity.Avatar

    getDefaultDimensions, getMainArm, isModelPartShown, setMainArm

    Methods inherited from class net.minecraft.world.entity.LivingEntity

    activeLocationDependentEnchantments, addEffect, addEffect, applyInput, applyItemBlocking, applyPostImpulseGraceTime, areAllEffectsAmbient, asLivingEntity, attackable, baseTick, blockedByItem, calculateEntityAnimation, calculateFallDamage, canAttack, canBeAffected, canBeSeenByAnyone, canBreatheUnderwater, canDispenserEquipIntoSlot, canEquipWithDispenser, canFreeze, canGlideUsing, canPickUpLoot, canStandOnFluid, canUsePortal, canUseSlot, checkAutoSpinAttack, clearSleepingPos, createLivingAttributes, createWitherRose, decreaseAirSupply, doHurtEquipment, doHurtTarget, doPush, dropAllDeathLoot, dropCustomDeathLoot, dropExperience, dropFromEntityInteractLootTable, dropFromGiftLootTable, dropFromLootTable, dropFromLootTable, dropFromLootTable, dropFromLootTable, dropFromShearingLootTable, equipmentHasChanged, forceAddEffect, getActiveEffects, getActiveEffectsMap, getActiveItem, getAgeScale, getArmorCoverPercentage, getArmorValue, getArrowCount, getAttackAnim, getAttackRangeWith, getAttribute, getAttributeBaseValue, getAttributes, getAttributeValue, getBedOrientation, getBrain, getCombatTracker, getComfortableFallDistance, getDamageAfterArmorAbsorb, getDamageAfterMagicAbsorb, getDefaultGravity, getDimensions, getEffect, getEffectBlendFactor, getEffectiveGravity, getEquipmentSlotForItem, getEquipSound, getExperienceReward, getFallFlyingTicks, getFluidFallingAdjustedMovement, getHealth, getHitbox, getInterpolation, getItemBlockingWith, getItemBySlot, getItemHeldByArm, getItemInHand, getJumpBoostPower, getJumpPower, getJumpPower, getKillCredit, getKnockback, getLastAttacker, getLastClimbablePos, getLastDamageSource, getLastHurtByMob, getLastHurtByMobTimestamp, getLastHurtByPlayer, getLastHurtByPlayerMemoryTime, getLastHurtMob, getLastHurtMobTimestamp, getLiquidCollisionShape, getLocalBoundsForPose, getLootTableSeed, getMainHandItem, getMaxAbsorption, getMaxFallDistance, getMaxHealth, getNoActionTime, getOffhandItem, getPassengerRidingPosition, getPreciseBodyRotation, getRelativePortalPosition, getRiddenInput, getRiddenSpeed, getScale, getSecondsToDisableBlocking, getSleepingPos, getSoundVolume, getStingerCount, getSwimAmount, getTicksSinceLastKineticHitFeedback, getTicksUsingItem, getTicksUsingItem, getUsedItemHand, getUseItem, getUseItemRemainingTicks, getViewYRot, getVisibilityPercent, getVisualRotationYInDegrees, getWaterSlowDown, getYHeadRot, goDownInWater, handleDamageEvent, hasEffect, hasItemInSlot, hasLandedInLiquid, hasLineOfSight, hasLineOfSight, heal, igniteForTicks, increaseAirSupply, isAffectedByPotions, isAlive, isAutoSpinAttack, isBaby, isBlocking, isCurrentlyGlowing, isDeadOrDying, isEquippableInSlot, isFallFlying, isHolding, isHolding, isIgnoringFallDamageFromCurrentImpulse, isInPostImpulseGraceTime, isInvertedHealAndHarm, isInWall, isJumping, isLookingAtMe, isPushable, isSensitiveToWater, isSleeping, isSuppressingSlidingDownLadder, isTransmittingWaypoint, isUsingItem, isVisuallySwimming, jumpInLiquid, kill, knockback, lerpHeadRotationStep, lerpHeadTo, makeBrain, makePoofParticles, makeSound, makeWaypointConnectionWith, maxUpStep, onBelowWorld, onEquipItem, onRemoval, onSyncedDataUpdated, playAttackSound, playBlockFallSound, playHurtSound, postPiercingAttack, push, randomTeleport, recreateFromPacket, releaseUsingItem, rememberStabbedEntity, removeAllEffects, removeEffect, removeEffectNoUpdate, removeEffectParticles, removeFrost, resetCurrentImpulseContext, resetForwardDirectionOfRelativePortalPosition, resolveMobResponsibleForDamage, resolvePlayerResponsibleForDamage, sanitizeScale, sendEffectToPassengers, serverAiStep, setAbsorptionAmount, setArrowCount, setDiscardFriction, setHealth, setIgnoreFallDamageFromCurrentImpulse, setItemInHand, setItemSlot, setJumping, setLastHurtByMob, setLastHurtByPlayer, setLastHurtByPlayer, setLastHurtMob, setLivingEntityFlag, setNoActionTime, setRecordPlayingNearby, setSleepingPos, setSpeed, setSprinting, setStingerCount, setYBodyRot, setYHeadRot, shouldDiscardFriction, shouldDropExperience, shouldDropLoot, shouldTakeDrowningDamage, shouldTravelInFluid, skipDropExperience, spawnItemParticles, stabbedEntities, startUsingItem, stopFallFlying, stopRiding, stopUsingItem, swing, tickDeath, tickEffects, tickHeadTurn, tickRidden, travelFlying, travelFlying, travelInWater, triggerOnDeathMobEffects, tryAddFrost, tryResetCurrentImpulseContext, updateDataBeforeSync, updateEffectVisibility, updateFallFlying, updateSwingTime, updateWalkAnimation, wasExperienceConsumed, wasRecentlyStabbed, waypointIcon, wouldNotSuffocateAtTargetPose

    Methods inherited from class net.minecraft.world.entity.Entity

    absSnapRotationTo, absSnapTo, absSnapTo, addDeltaMovement, addPassenger, addTag, applyComponentsFromItemStack, applyEffectsFromBlocks, applyEffectsFromBlocks, applyGravity, applyImplicitComponent, applyImplicitComponentIfPresent, applyImplicitComponents, belowNameDisplay, blockPosition, calculateUpVector, calculateViewVector, canAddPassenger, canBeCollidedWith, canBeHitByProjectile, canCollideWith, canControlVehicle, canInteractWithLevel, canRide, canSpawnSprintParticle, canTeleport, castComponentValue, checkBelowWorld, checkDespawn, checkFallDistanceAccumulation, checkSupportingBlock, chunkPosition, clearFire, clearFreeze, clearMovementThisTick, closerThan, closerThan, collectAllColliders, collideBoundingBox, collidedWithFluid, collidedWithShapeMovingFrom, computeSpeed, considersEntityAsAlly, copyPosition, couldAcceptPassenger, countPlayerPassengers, createCommandSourceStackForNameResolution, createHoverEvent, damageSources, dampensVibrations, deflection, discard, dismountsUnderwater, dismountTo, displayFireAnimation, distanceTo, distanceToSqr, distanceToSqr, distanceToSqr, doCheckFallDamage, dropAllLeashConnections, ejectPassengers, entityTags, equals, extinguishFire, fillCrashReportCategory, fireImmune, fixupDimensions, fudgePositionAfterSizeChange, gameEvent, gameEvent, get, getAddEntityPacket, getAirSupply, getAttachments, getAvailableSpaceBelow, getBbHeight, getBbWidth, getBlockExplosionResistance, getBlockJumpFactor, getBlockPosBelowThatAffectsMyMovement, getBlockStateOn, getBlockStateOnLegacy, getBlockX, getBlockY, getBlockZ, getBoundingBox, getCollisionHorizontalEscapeVector, getControlledVehicle, getControllingPassenger, getCustomName, getDefaultPassengerAttachmentPoint, getDeltaMovement, getDirection, getDismountLocationForPassenger, getEncodeId, getEntityData, getEyeHeight, getEyeHeight, getEyePosition, getEyePosition, getEyeY, getFirstPassenger, getFluidHeight, getFluidInteractionBox, getFluidJumpThreshold, getForward, getGravity, getHandHoldingItemAngle, getHeadLookAngle, getId, getInBlockState, getIndirectPassengers, getInputVector, getLightLevelDependentMagicValue, getLightProbePosition, getLookAngle, getLootTable, getMaxAirSupply, getMotionDirection, getNearestViewDirection, getOnPos, getOnPos, getOnPosLegacy, getPassengerAttachmentPoint, getPassengers, getPassengersAndSelf, getPercentFrozen, getPickRadius, getPickResult, getPistonPushReaction, getPortalCooldown, getPose, getPosition, getPositionCodec, getPrimaryStepSoundBlockPos, getQuadLeashHolderOffsets, getRandom, getRandomX, getRandomY, getRandomY, getRandomZ, getRemainingFireTicks, getRemovalReason, getRequiresPrecisePosition, getRootVehicle, getRotationVector, getSelfAndPassengers, getSharedFlag, getStringUUID, getTeamColor, getTicksFrozen, getTicksRequiredToFreeze, getType, getTypeName, getUpVector, getUUID, getVehicle, getVehicleAttachmentPoint, getViewScale, getViewVector, getViewXRot, getX, getX, getXRot, getXRot, getY, getY, getYRot, getYRot, getZ, getZ, handleOnAboveBubbleColumn, handleOnInsideBubbleColumn, handlePortal, hasControllingPassenger, hasCustomName, hasExactlyOnePlayerPassenger, hasGlowingTag, hashCode, hasIndirectPassenger, hasMovedHorizontallyRecently, hasPassenger, hasPassenger, hasPose, hurt, hurtClient, hurtOrSimulate, igniteForSeconds, ignoreExplosion, interact, is, isAffectedByBlocks, isAlliedTo, isAlliedTo, isAttackable, isColliding, isCrouching, isCustomNameVisible, isDescending, isDiscrete, isEyeInFluid, isFlapping, isFlyingVehicle, isFree, isFreezing, isFullyFrozen, isHorizontalCollisionMinor, isIgnoringBlockTriggers, isInClouds, isInLava, isInLiquid, isInShallowWater, isInterpolating, isInvisible, isInvisibleTo, isInvulnerable, isInvulnerableToBase, isInWater, isInWaterOrRain, isLocalInstanceAuthoritative, isNoGravity, isOnFire, isOnPortalCooldown, isOnRails, isPassenger, isPassengerOfSameVehicle, isRemoved, isShiftKeyDown, isSilent, isSprinting, isSteppingCarefully, isSupportedBy, isSuppressingBounce, isUnderWater, isVehicle, isVisuallyCrawling, lavaHurt, lavaIgnite, lerpMotion, lerpPositionAndRotationStep, limitPistonMovement, load, makeBoundingBox, makeBoundingBox, markHurt, mirror, modifyPassengerFluidInteractionBox, move, moveOrInterpolateTo, moveOrInterpolateTo, moveOrInterpolateTo, moveOrInterpolateTo, moveRelative, moveTowardsClosestSpace, nextStep, notifyLeasheeRemoved, notifyLeashHolder, oldPosition, onClientRemoval, onFlap, onGround, onPassengerTurned, onSyncedDataUpdated, pick, placePortalTicket, playCombinationStepSounds, playEntityOnFireExtinguishedSound, playerTouch, playMuffledStepSound, playSound, playSwimSound, position, positionRider, positionRider, problemPath, processFlappingMovement, propagateFallToPassengers, push, push, reapplyPosition, refreshDimensions, registerDebugValues, registryAccess, removeAfterChangingDimensions, removeLatestMovementRecording, removePassenger, removeTag, repositionEntityAfterLoad, restoreFrom, rotate, save, saveAsPassenger, saveWithoutId, sendBubbleColumnParticles, setAirSupply, setAsInsidePortal, setBoundingBox, setComponent, setCustomName, setCustomNameVisible, setDeltaMovement, setDeltaMovement, setGlowingTag, setId, setInvisible, setInvulnerable, setIsInPowderSnow, setLevel, setLevelCallback, setNoGravity, setOldPos, setOldPosAndRot, setOldPosAndRot, setOldRot, setOnGround, setOnGroundWithMovement, setOnGroundWithMovement, setPortalCooldown, setPortalCooldown, setPos, setPos, setPose, setPosRaw, setRemoved, setRequiresPrecisePosition, setRot, setSharedFlag, setSharedFlagOnFire, setShiftKeyDown, setSilent, setSwimming, setTicksFrozen, setUUID, setViewScale, setXRot, setYRot, shearOffAllLeashConnections, shouldBlockExplode, shouldPlayLavaHurtSound, shouldRender, shouldRenderAtSqrDistance, showVehicleHealth, skipAttackInteraction, snapTo, snapTo, snapTo, snapTo, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnSprintParticle, startRiding, startSeenByPlayer, stopSeenByPlayer, supportQuadLeashAsHolder, syncPacketPositionCodec, teleportSetPosition, teleportSetPosition, teleportSpectators, thunderHit, toString, touchingUnloadedChunk, trackingPosition, turn, typeHolder, unRide, unsetRemoved, updateDynamicGameEventListener, updateFluidInteraction, waterSwimSound

    Methods inherited from class Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface net.minecraft.world.entity.ContainerUser

    getLivingEntity

    Methods inherited from interface net.minecraft.core.component.DataComponentGetter

    getOrDefault, getTyped

    Methods inherited from interface net.minecraft.world.scores.ScoreHolder

    getFeedbackDisplayName

    Methods inherited from interface net.minecraft.world.entity.SlotProvider

    getSlotsFromRange

    Methods inherited from interface net.minecraft.core.TypedInstance

    is, is, is, is, is, tags
  • Field Details

    • DEFAULT_UUID

      public static final UUID DEFAULT_UUID
      Default UUID, for fake players not associated with a specific (human) player.
  • Constructor Details

    • FakePlayer

      protected FakePlayer(net.minecraft.server.level.ServerLevel level, com.mojang.authlib.GameProfile profile)
  • Method Details

    • get

      public static FakePlayer get(net.minecraft.server.level.ServerLevel level)
      Retrieves a fake player for the specified level, using the default UUID. This is suitable when the fake player is not associated with a specific (human) player. Otherwise, the UUID of the owning (human) player should be used (see class javadoc).

      Instances are reused for the same level parameter.

      Caution should be exerted when storing the returned value, as strong references to the fake player will keep the level loaded.

    • get

      public static FakePlayer get(net.minecraft.server.level.ServerLevel level, com.mojang.authlib.GameProfile profile)
      Retrieves a fake player for the specified level and game profile. See class javadoc for more information on fake player game profiles.

      Instances are reused for the same parameters.

      Caution should be exerted when storing the returned value, as strong references to the fake player will keep the level loaded.

    • tick

      public void tick()
      Overrides:
      tick in class net.minecraft.server.level.ServerPlayer
    • updateOptions

      public void updateOptions(net.minecraft.server.level.ClientInformation settings)
      Overrides:
      updateOptions in class net.minecraft.server.level.ServerPlayer
    • awardStat

      public void awardStat(net.minecraft.stats.Stat<?> stat, int amount)
      Overrides:
      awardStat in class net.minecraft.server.level.ServerPlayer
    • resetStat

      public void resetStat(net.minecraft.stats.Stat<?> stat)
      Overrides:
      resetStat in class net.minecraft.server.level.ServerPlayer
    • isInvulnerableTo

      public boolean isInvulnerableTo(net.minecraft.server.level.ServerLevel level, net.minecraft.world.damagesource.DamageSource damageSource)
      Overrides:
      isInvulnerableTo in class net.minecraft.server.level.ServerPlayer
    • getTeam

      public @Nullable net.minecraft.world.scores.PlayerTeam getTeam()
      Overrides:
      getTeam in class net.minecraft.world.entity.Entity
    • startSleeping

      public void startSleeping(net.minecraft.core.BlockPos pos)
      Overrides:
      startSleeping in class net.minecraft.server.level.ServerPlayer
    • startRiding

      public boolean startRiding(net.minecraft.world.entity.Entity entity, boolean force, boolean emitEvent)
      Overrides:
      startRiding in class net.minecraft.server.level.ServerPlayer
    • openTextEdit

      public void openTextEdit(net.minecraft.world.level.block.entity.SignBlockEntity sign, boolean front)
      Overrides:
      openTextEdit in class net.minecraft.server.level.ServerPlayer
    • openMenu

      public OptionalInt openMenu(@Nullable net.minecraft.world.MenuProvider factory)
      Overrides:
      openMenu in class net.minecraft.server.level.ServerPlayer
    • openHorseInventory

      public void openHorseInventory(net.minecraft.world.entity.animal.equine.AbstractHorse horse, net.minecraft.world.Container inventory)
      Overrides:
      openHorseInventory in class net.minecraft.server.level.ServerPlayer