Script API - v1.20.0
    Preparing search index...

    A simulated player can be used within GameTests to represent how a player moves throughout the world and to support testing of how entities and the environment will react to a player. This type derives much of its structure and methods from the @minecraft/server.Player type.

    Hierarchy (View Summary)

    Index

    Properties

    dimension: Dimension

    Dimension that the entity is currently within.

    This property can throw when used.

    headRotation: Vector2

    Rotation of the head across pitch and yaw angles.

    This property can throw when used.

    id: string

    Unique identifier of the entity. This identifier is intended to be consistent across loads of a world instance. No meaning should be inferred from the value and structure of this unique identifier - do not parse or interpret it.

    This property can throw when used.

    isSneaking: boolean

    Whether the entity is sneaking - that is, moving more slowly and more quietly.

    This property can't be edited in read-only mode.

    isSprinting: boolean

    This property can't be edited in read-only mode.

    level: number

    The current overall level for the player, based on their experience.

    This property can throw when used.

    lifetimeState: EntityLifetimeState

    Whether the entity reference that you have is valid or not. For example, an entity may be unloaded if it moves into a chunk that is unloaded, but may be reactivated if the chunk it is within gets reloaded.

    location: Vector3

    Current location of the entity.

    This property can throw when used.

    name: string

    Name of the player.

    This property can throw when used.

    nameTag: string

    Given name of the entity.

    This property can't be edited in read-only mode.

    onScreenDisplay: ScreenDisplay

    Contains methods for manipulating the on-screen display of a Player.

    scoreboardIdentity?: ScoreboardIdentity

    Returns a scoreboard identity that represents this entity.

    This property can throw when used.

    selectedSlot: number

    Manages the selected slot in the player's hotbar.

    This property can't be edited in read-only mode.

    spawnDimension?: Dimension

    If this player has an individual spawn point set, returns the dimension that their spawn point is within.

    This property can throw when used.

    target: Entity

    Retrieves or sets an entity that is used as the target of AI-related behaviors, like attacking.

    This property can throw when used.

    totalXpNeededForNextLevel: number

    The overall total set of experience needed to achieve the next level for a player.

    This property can throw when used.

    typeId: string

    Unique identifier of the type of the entity - for example, 'minecraft:skeleton'.

    This property can throw when used.

    xpEarnedAtCurrentLevel: number

    The current set of experience achieved for the player.

    This property can throw when used.

    Methods

    • Beta

      Parameters

      • effectType: string | EffectType

        Type of effect to add to the entity.

      • duration: number

        Amount of time, in ticks, for the effect to apply. There are 20 ticks per second. Use TicksPerSecond constant to convert between ticks and seconds. The value must be within the range [0, 20000000].

      • Optionaloptions: EntityEffectOptions

        Additional options for the effect.

      Returns boolean

      Returns nothing if the effect was added or updated successfully. This can throw an error if the duration or amplifier are outside of the valid ranges, or if the effect does not exist.

      Adds or updates an effect, like poison, to the entity.

      This function can't be called in read-only mode.

      This function can throw errors.

      const villagerId = 'minecraft:villager_v2<minecraft:ageable_grow_up>';
      const villagerLoc: mc.Vector3 = { x: 1, y: 2, z: 1 };
      const villager = test.spawn(villagerId, villagerLoc);
      const duration = 20;

      villager.addEffect(EffectTypes.get('poison'), duration, { amplifier: 1 });
      const fox = overworld.spawnEntity('minecraft:fox', {
      x: targetLocation.x + 1,
      y: targetLocation.y + 2,
      z: targetLocation.z + 3,
      });
      fox.addEffect(mc.MinecraftEffectTypes.Speed, 10, { amplifier: 20 });
      log('Created a fox.');

      const wolf = overworld.spawnEntity('minecraft:wolf', {
      x: targetLocation.x + 4,
      y: targetLocation.y + 2,
      z: targetLocation.z + 3,
      });
      wolf.addEffect(mc.MinecraftEffectTypes.Slowness, 10, { amplifier: 20 });
      wolf.isSneaking = true;
      log('Created a sneaking wolf.', 1);
    • Beta

      Parameters

      • amount: number

        Amount of experience to add. Note that this can be negative.

      Returns number

      Returns the current experience of the Player.

      Adds/removes experience to/from the Player and returns the current experience of the Player.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • amount: number

        Amount to add to the player.

      Returns number

      Returns the current level of the Player.

      Adds/removes level to/from the Player and returns the current level of the Player.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • tag: string

        Content of the tag to add.

      Returns boolean

      Returns true if the tag was added successfully. This can fail if the tag already exists on the entity.

      Adds a specified tag to an entity.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      Returns void

      Applies impulse vector to the current velocity of the entity.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • directionX: number

        X direction in horizontal plane.

      • directionZ: number

        Z direction in horizontal plane.

      • horizontalStrength: number

        Knockback strength for the horizontal vector.

      • verticalStrength: number

        Knockback strength for the vertical vector.

      Returns void

      Applies impulse vector to the current velocity of the entity.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns boolean

      Causes the simulated player to make an attack 'swipe'. Returns true if the attack was performed - for example, the player was not on cooldown and had a valid target. Target selection is performed by raycasting from the player's head.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      Returns boolean

      Causes the simulated player to attack the provided target. Returns true if the attack was performed - for example, the player was not on cooldown and had a valid target. The attack can be performed at any distance and does not require line of sight to the target entity.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • blockLocation: Vector3

        Location of the block to interact with.

      • Optionaldirection: Direction

        Direction to place the specified item within.

      Returns boolean

      Destroys the block at blockLocation, respecting the rules of the server player's game mode. The block will be hit until broken, an item is used or stopBreakingBlock is called. Returns true if the block at blockLocation is solid.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns void

      Clears the spawn point that has been individually set for a player.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns void

      Sets the current velocity of the Entity to zero. Note that this method may not have an impact on Players.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns void

      Simulates and performs a disconnection of the simulated player from the world.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • OptionaluseEffects: boolean

        Whether to show any visual effects connected to the extinguishing.

      Returns boolean

      Returns whether the entity was on fire.

      Extinguishes the fire if the entity is on fire. Note that you can call getComponent('minecraft:onfire') and, if present, the entity is on fire.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      Returns Block

      Returns the first intersecting block from the direction that this entity is looking at.

      Returns the first intersecting block from the direction that this entity is looking at.

      This function can throw errors.

    • Beta

      Parameters

      • componentId: string

        The identifier of the component (e.g., 'minecraft:rideable') to retrieve. If no namespace prefix is specified, 'minecraft:' is assumed. If the component is not present on the entity, undefined is returned.

      Returns undefined | EntityComponent

      Returns the component if it exists on the entity, otherwise undefined.

      Gets a component (that represents additional capabilities) for an entity.

    • Beta

      Returns EntityComponent[]

      Returns all components that are both present on this entity and supported by the API.

      Returns all components that are both present on this entity and supported by the API.

    • Beta

      Parameters

      • identifier: string

        The property identifier.

      Returns undefined | string | number | boolean

      Returns the value for the property, or undefined if the property has not been set.

      Returns a property value.

      This function can throw errors.

    • Beta

      Parameters

      • effectType: string | EffectType

        The effect identifier.

      Returns undefined | Effect

      Effect object for the specified effect, undefined if the effect is not present, or throws an error if the effect does not exist.

      Returns the effect for the specified EffectType on the entity, undefined if the effect is not present, or throws an error if the effect does not exist.

      This function can throw errors.

    • Beta

      Returns Effect[]

      List of effects.

      Returns a set of effects applied to this entity.

      This function can throw errors.

    • Beta

      Parameters

      Returns Entity[]

      Returns a set of entities from the direction that this entity is looking at.

      Gets the entities that this entity is looking at by performing a ray cast from the view of this entity.

      This function can throw errors.

    • Beta

      Returns Vector3

      Returns the current location of the head component of this entity.

      Returns the current location of the head component of this entity.

      This function can throw errors.

    • Beta

      Parameters

      • itemCategory: string

        Specifies the cooldown category to retrieve the current cooldown for.

      Returns number

      Gets the current item cooldown time for a particular cooldown category.

      This function can throw errors.

    • Beta

      Returns Vector2

      Returns the current rotation component of this entity.

      Returns the current rotation component of this entity.

      This function can throw errors.

    • Beta

      Returns undefined | Vector3

      The individual spawn position, or undefined if there is no specific spawn position set for a player.

      Returns an individualized spawn position, if set, for a player.

      This function can throw errors.

    • Beta

      Returns string[]

      Returns the current rotation component of this entity.

      Returns all tags associated with an entity.

      This function can throw errors.

    • Beta

      Returns number

      Gets the total experience of the Player.

      This function can throw errors.

    • Beta

      Returns Vector3

      Returns the current velocity vector of the entity.

      Returns the current velocity vector of the entity.

      This function can throw errors.

    • Beta

      Returns Vector3

      Returns the current view direction of the entity.

      Returns the current view direction of the entity.

      This function can throw errors.

    • Beta

      Parameters

      • itemStack: ItemStack

        Item to give.

      • OptionalselectSlot: boolean

        Whether to set the selected slot once given.

      Returns boolean

      Gives the simulated player a particular item stack.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • componentId: string

        The identifier of the component (e.g., 'minecraft:rideable') to retrieve. If no namespace prefix is specified, 'minecraft:' is assumed.

      Returns boolean

      Returns true if the specified component is present on this entity.

      Returns true if the specified component is present on this entity.

    • Beta

      Parameters

      • tag: string

        Identifier of the tag to test for.

      Returns boolean

      Returns whether an entity has a particular tag.

      Returns whether an entity has a particular tag.

      This function can throw errors.

    • Beta

      Returns boolean

      Performs a raycast from the player’s head and interacts with the first intersected block or entity. Returns true if the interaction was successful. Maximum range is 6 blocks.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • blockLocation: Vector3

        Location of the block to interact with.

      • Optionaldirection: Direction

        Direction to place the specified item within.

      Returns boolean

      Causes the simulated player to interact with a block. The block at the specified block location must be solid. Returns true if the interaction was performed.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • entity: Entity

        Entity to interact with.

      Returns boolean

      Causes the simulated player to interact with a mob. Returns true if the interaction was performed.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns boolean

      Returns true if this player has operator-level permissions.

      This function can throw errors.

    • Beta

      Returns boolean

      True if a jump was performed.

      Causes the simulated player to jump.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns boolean

      Returns true if entity can be killed (even if it is already dead), otherwise it returns false.

      Kills this entity. The entity will drop loot as normal.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      Returns void

      Rotates the simulated player's head/body to look at the given block location.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      Returns void

      Rotates the simulated player's head/body to look at the given entity.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      Returns void

      Rotates the simulated player's head/body to look at the given location.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • westEast: number
      • northSouth: number
      • Optionalspeed: number

      Returns void

      Orders the simulated player to walk in the given direction relative to the GameTest.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • leftRight: number
      • backwardForward: number
      • Optionalspeed: number

      Returns void

      Orders the simulated player to walk in the given direction relative to the player's current rotation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • blockLocation: Vector3
      • Optionalspeed: number

      Returns void

      Orders the simulated player to move to the given block location in a straight line. If a move or navigation is already playing, this will override the last move/navigation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • location: Vector3
      • Optionalspeed: number

      Returns void

      Orders the simulated player to move to the given location in a straight line. If a move or navigation is already playing, this will override the last move/navigation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • blockLocation: Vector3
      • Optionalspeed: number

      Returns NavigationResult

      Orders the simulated player to move to a specific block location using navigation. If a move or navigation is already playing, this will override the last move/walk. Note that if the simulated player gets stuck, that simulated player will stop. The player must be touching the ground in order to start navigation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • entity: Entity
      • Optionalspeed: number

      Returns NavigationResult

      Will use navigation to follow the selected entity to within a one block radius. If a move or navigation is already playing, this will override the last move/navigation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • location: Vector3
      • Optionalspeed: number

      Returns NavigationResult

      Orders the simulated player to move to a specific location using navigation. If a move or navigation is already playing, this will override the last move/walk. Note that if the simulated player gets stuck, that simulated player will stop. The player must be touching the ground in order to start navigation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • locations: Vector3[]

        A list of locations to use for routing.

      • Optionalspeed: number

        Net speed to use for doing the navigation.

      Returns void

      Use navigation to follow the route provided via the locations parameter. If a move or navigation is already playing, this will override the last move/navigation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • animationName: string

        The animation identifier. e.g. animation.creeper.swelling

      • Optionaloptions: PlayAnimationOptions

        Additional options to control the playback and transitions of the animation.

      Returns void

      Cause the entity to play the given animation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • soundID: string

        Identifier of the sound to play.

      • OptionalsoundOptions: PlayerSoundOptions

        Additional optional options for the sound.

      Returns void

      Plays a sound that only this particular player can hear.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • id: string
      • value: string

      Returns void

      This is an internal-facing method for posting a system message to downstream clients.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • identifier: string

        The property identifier.

      Returns boolean

      Returns whether the given property existed on the entity.

      Removes a specified property.

      This function can throw errors.

    • Beta

      Parameters

      • effectType: string | EffectType

        The effect identifier.

      Returns boolean

      Returns true if the effect has been removed, false if the effect is not present, or will throw an error if the effect does not exist.

      Removes the specified EffectType on the entity, or returns false if the effect is not present.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • tag: string

        Content of the tag to remove.

      Returns boolean

      Returns whether the tag existed on the entity.

      Removes a specified tag from an entity.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns void

      Resets the level of the player.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns boolean

      Respawns the particular simulated player.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • angleInDegrees: number

      Returns void

      Causes the simulated player to turn by the provided angle, relative to the player's current rotation.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • commandString: string

        The command string. Note: This should not include a leading forward slash.

      Returns CommandResult

      A command result containing whether the command was successful.

      Runs a synchronous command on the entity.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • commandString: string

        Command to run. Note that command strings should not start with slash.

      Returns Promise<CommandResult>

      For commands that return data, returns a JSON structure with command response values.

      Runs a particular command asynchronously from the context of this entity. Note that there is a maximum queue of 128 asynchronous commands that can be run in a given tick.

      This function can throw errors.

    • Beta

      Parameters

      Returns void

      Sends a message to the player.

      This method can throw if the provided RawMessage is in an invalid format. For example, if an empty name string is provided to score.

      // Displays "Apple or Coal"
      let rawMessage = {
      translate: "accessibility.list.or.two",
      with: { rawtext: [{ translate: "item.apple.name" }, { translate: "item.coal.name" }] },
      };
      player.sendMessage(rawMessage);
      // Displays the player's score for objective "obj". Each player will see their own score.
      const rawMessage = { score: { name: "*", objective: "obj" } };
      world.sendMessage(rawMessage);
      // Displays "Hello, world!"
      world.sendMessage("Hello, world!");
      // Displays "First or Second"
      const rawMessage = { translate: "accessibility.list.or.two", with: ["First", "Second"] };
      player.sendMessage(rawMessage);
    • Beta

      Parameters

      • angleInDegrees: number

      Returns void

      Causes the simulated player to turn to face the provided angle, relative to the GameTest.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • identifier: string

        The property identifier.

      • value: string | number | boolean

        Data value of the property to set.

      Returns void

      Sets a specified property to a value.

      This function can throw errors.

    • Beta

      Parameters

      Returns void

      Sets the game mode that the simulated player is operating under.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • itemStack: ItemStack

        Item to set.

      • slot: number

        Slot to place the given item in.

      • OptionalselectSlot: boolean

        Whether to set the selected slot once set.

      Returns boolean

      Sets a particular item for the simulated player.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • seconds: number

        Length of time to set the entity on fire.

      • OptionaluseEffects: boolean

        Whether side-effects should be applied (e.g. thawing freeze) and other conditions such as rain or fire protection should be taken into consideration.

      Returns boolean

      Whether the entity was set on fire. This can fail if seconds is less than or equal to zero, the entity is wet or the entity is immune to fire.

      Sets an entity on fire (if it is not in water or rain). Note that you can call getComponent('minecraft:onfire') and, if present, the entity is on fire.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • isOp: boolean

      Returns void

      Will change the specified players permissions, and whether they are operator or not.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • rotation: Vector2

        The x and y rotation of the entity. For most mobs, the x rotation controls the head tilt and the y rotation controls the body rotation.

      Returns void

      Sets the main rotation of the entity.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • spawnPosition: Vector3

        Location of the spawn point.

      • spawnDimension: Dimension

        Dimension to place the players' individualized spawn point within.

      Returns void

      Returns undefined/void.

      Sets the individual spawn point of this player.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • itemCategory: string

        Specifies the cooldown category to retrieve the current cooldown for.

      • tickDuration: number

        Duration in ticks of the item cooldown.

      Returns void

      Sets the item cooldown time for a particular cooldown category.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns void

      Stops destroying the block that is currently being hit.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns void

      Stops interacting with entities or blocks.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns void

      Stops moving/walking/following if the simulated player is moving.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Returns void

      Stops using the currently active item.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • location: Vector3

        New location for the entity.

      • OptionalteleportOptions: TeleportOptions

        Options regarding the teleport operation.

      Returns void

      Teleports the selected entity to a new location

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • eventName: string

        Name of the entity type event to trigger. If a namespace is not specified, minecraft: is assumed.

      Returns void

      Triggers an entity type event. For every entity, a number of events are defined in an entities' definition for key entity behaviors; for example, creepers have a minecraft:start_exploding type event.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • location: Vector3

        Location to teleport the entity to.

      • OptionalteleportOptions: TeleportOptions

        Options regarding the teleport operation.

      Returns boolean

      Returns whether the teleport succeeded. This can fail if the destination chunk is unloaded or if the teleport would result in intersecting with blocks.

      Attempts to try a teleport, but may not complete the teleport operation (for example, if there are blocks at the destination.)

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      Returns boolean

      Causes the simulated player to use an item. Does not consume the item. Returns false if the item is on cooldown.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • slot: number

        Index of the inventory slot.

      Returns boolean

      Causes the simulated player to hold and use an item in their inventory.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • slot: number

        Index of the slot to use.

      • blockLocation: Vector3

        Location to use the item upon.

      • Optionaldirection: Direction

        Direction to place the specified item within.

      • OptionalfaceLocation: Vector3

        Location relative to the bottom north-west corner of the block where the item is placed.

      Returns boolean

      Causes the simulated player to use an item in their inventory on a block. The block at the specified block location must be solid. Returns true if the item was used.

      This function can't be called in read-only mode.

      This function can throw errors.

    • Beta

      Parameters

      • itemStack: ItemStack

        Item to use.

      • blockLocation: Vector3

        Location to use the item upon.

      • Optionaldirection: Direction

        Direction to place the specified item within.

      • OptionalfaceLocation: Vector3

        Location relative to the bottom north-west corner of the block where the item is placed.

      Returns boolean

      Causes the simulated player to use an item on a block. The block at the specified block location must be solid. Returns true if the item was used.

      This function can't be called in read-only mode.

      This function can throw errors.