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

  • Player
    • SimulatedPlayer

Constructors

Properties

dimension: Dimension

Dimension that the simulated player is currently within.

Throws

This property can throw when used.

headLocation: Location

Location of the center of the head component of the player.

Throws

This property can throw when used.

headRotation: XYRotation

Rotation of the head across pitch and yaw angles.

Throws

This property can throw when used.

id: string

Unique identifier of the player. 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.

Throws

This property can throw when used.

isSneaking: boolean

True if the player is currently using a sneaking movement.

isSprinting: boolean
level: number
location: Vector3

Current location of the player.

Throws

This property can throw when used.

name: string

Name of the player.

Throws

This property can throw when used.

nameTag: string

Optional name tag of the player.

onScreenDisplay: ScreenDisplay

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

rotation: XYRotation

Main rotation of the entity.

Throws

This property can throw when used.

scoreboard: ScoreboardIdentity

Returns a scoreboard identity that represents this entity.

Throws

This property can throw when used.

selectedSlot: number

Manages the selected slot in the player's hotbar.

target: Entity

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

Throws

This property can throw when used.

totalXpNeededForNextLevel: number
typeId: string

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

Throws

This property can throw when used.

velocity: Vector

Current speed of the player across X, Y, and Z dimensions.

Throws

This property can throw when used.

viewDirection: Vector3
xpEarnedAtCurrentLevel: number

Methods

  • Parameters

    • effectType: EffectType

      Type of effect to add to the entity.

    • duration: number

      Amount of time, in ticks, for the effect to apply.

    • Optional amplifier: number

      Optional amplification of the effect to apply.

    • Optional showParticles: boolean

    Returns void

    Remarks

    Adds an effect, like poison, to the entity.

    Throws

    This function can throw errors.

  • Parameters

    • amount: number

      Amount of experience to add.

    Returns number

    Remarks

    Adds a set of experience to the simulated player.

    Throws

    This function can throw errors.

  • Parameters

    • amount: number

    Returns number

  • Parameters

    • tag: string

      Content of the tag to add.

    Returns boolean

    Remarks

    Adds a specified tag to a simulated player.

    Throws

    This function can throw errors.

  • Parameters

    • amount: number
    • Optional source: EntityDamageSource

    Returns boolean

  • Returns boolean

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • entity: Entity

    Returns boolean

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • blockLocation: BlockLocation

      Location of the block to interact with.

    • Optional direction: Direction

      Direction to place the specified item within.

    Returns boolean

    Remarks

    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.

    Throws

    This function can throw errors.

  • Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • Optional useEffects: boolean

    Returns boolean

  • Parameters

    • Optional options: BlockRaycastOptions

      A set of additional options for how to consider which block to select.

    Returns Block

    Remarks

    Gets the first block from the view direction of this player.

    Throws

    This function can throw errors.

  • 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 IEntityComponent

    Remarks

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

  • Returns IEntityComponent[]

    Remarks

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

  • Parameters

    • identifier: string

    Returns undefined | string | number | boolean

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

    Remarks

    Returns a property value.

    Throws

    This function can throw errors.

  • Parameters

    • effectType: EffectType

    Returns Effect

    Effect object for the specified effect, or undefined if the effect is not present.

    Remarks

    Returns the effect for the specified EffectType on the entity, or undefined if the effect is not present.

    Throws

    This function can throw errors.

  • Returns Effect[]

  • Parameters

    • Optional options: EntityRaycastOptions

      A set of additional options on how to select the entities.

    Returns Entity[]

    Remarks

    Gets a set of entities from the simulated players' view direction.

    Throws

    This function can throw errors.

  • Parameters

    • itemCategory: string

      Specifies the cooldown category to retrieve the current cooldown for.

    Returns number

    Remarks

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

    Throws

    This function can throw errors.

  • Returns string[]

    Remarks

    Returns all tags associated with this simulated player.

    Throws

    This function can throw errors.

  • Returns number

  • Parameters

    • itemStack: ItemStack

      Item to give.

    • Optional selectSlot: boolean

      Whether to set the selected slot once given.

    Returns boolean

    Remarks

    Gives the simulated player a particular item stack.

    Throws

    This function can throw errors.

  • 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

    Remarks

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

  • Parameters

    • tag: string

      Identifier of the tag to test for.

    Returns boolean

    Remarks

    Tests whether a simulated player has a particular tag.

    Throws

    This function can throw errors.

  • Returns boolean

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • blockLocation: BlockLocation

      Location of the block to interact with.

    • Optional direction: Direction

      Direction to place the specified item within.

    Returns boolean

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • entity: Entity

      Entity to interact with.

    Returns boolean

    Remarks

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

    Throws

    This function can throw errors.

  • Returns boolean

    Remarks

    Returns true if the simulated player has operator permissions.

    Throws

    This function can throw errors.

  • Returns boolean

    True if a jump was performed.

    Remarks

    Causes the simulated player to jump.

    Throws

    This function can throw errors.

  • Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • blockLocation: BlockLocation

    Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • entity: Entity

    Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • location: Location

    Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • westEast: number
    • northSouth: number
    • Optional speed: number

    Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • leftRight: number
    • backwardForward: number
    • Optional speed: number

    Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • blockLocation: BlockLocation
    • Optional speed: number

    Returns void

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • location: Location
    • Optional speed: number

    Returns void

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • blockLocation: BlockLocation
    • Optional speed: number

    Returns NavigationResult

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • entity: Entity
    • Optional speed: number

    Returns NavigationResult

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • location: Location
    • Optional speed: number

    Returns NavigationResult

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • locations: Location[]

      A list of locations to use for routing.

    • Optional speed: number

      Net speed to use for doing the navigation.

    Returns void

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • soundID: string

      Identifier of the sound to play.

    • Optional soundOptions: SoundOptions

      Additional optional options for the sound.

    Returns void

    Remarks

    This method is inherited from Player, but is inoperative in the case of a SimulatedPlayer.

    Throws

    This function can throw errors.

  • Parameters

    • id: string

      Identifier of the message.

    • value: string

      Value of the message.

    Returns void

    Remarks

    Internal method for posting a message to consuming client scripts.

    Throws

    This function can throw errors.

  • Parameters

    • identifier: string

    Returns boolean

    Remarks

    Removes a specified property.

    Throws

    This function can throw errors.

  • Parameters

    • tag: string

      Content of the tag to remove.

    Returns boolean

    Remarks

    Removes a specified tag from a simulated player.

    Throws

    This function can throw errors.

  • Returns void

  • Returns boolean

    Remarks

    Respawns the particular simulated player.

    Throws

    This function can throw errors.

  • Parameters

    • angleInDegrees: number

    Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • 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.

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • geoData: string
    • base64ImageData: string
    • skinResourcePatch: string

    Returns void

    Remarks

    Applies a test skin to the simulated player.

    Throws

    This function can throw errors.

  • Parameters

    • angleInDegrees: number

    Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • identifier: string
    • value: string | number | boolean

      Data value of the property to set.

    Returns void

    Remarks

    Sets a specified property to a value.

    Throws

    This function can throw errors.

  • Parameters

    • gameMode: GameMode

      Game mode to set.

    Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • itemStack: ItemStack

      Item to set.

    • slot: number

      Slot to place the given item in.

    • Optional selectSlot: boolean

      Whether to set the selected slot once set.

    Returns boolean

    Remarks

    Sets a particular item for the simulated player.

    Throws

    This function can throw errors.

  • Parameters

    • seconds: number
    • Optional useEffects: boolean

    Returns boolean

  • Parameters

    • isOp: boolean

    Returns void

  • Parameters

    • degreesX: number
    • degreesY: number

    Returns void

    Remarks

    Sets the main rotation of the entity.

    Throws

    This function can throw errors.

  • Parameters

    • velocity: Vector3

      X/Y/Z components of the velocity.

    Returns void

    Remarks

    Sets a velocity for the entity to move with.

    Throws

    This function can throw errors.

  • Parameters

    • itemCategory: string

      Specifies the cooldown category to retrieve the current cooldown for.

    • tickDuration: number

      Duration in ticks of the item cooldown.

    Returns void

    Remarks

    Sets the item cooldown time for a particular cooldown category.

    Throws

    This function can throw errors.

  • Returns void

    Remarks

    Stops destroying the block that is currently being hit.

    Throws

    This function can throw errors.

  • Returns void

    Remarks

    Stops interacting with entities or blocks.

    Throws

    This function can throw errors.

  • Returns void

    Remarks

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

    Throws

    This function can throw errors.

  • Returns void

    Remarks

    Stops using the currently active item.

    Throws

    This function can throw errors.

  • Parameters

    • location: Vector3

      New location for the player.

    • dimension: Dimension

      Dimension to move the selected player to.

    • xRotation: number

      X rotation of the player after teleportation.

    • yRotation: number

      Y rotation of the player after teleportation.

    • Optional keepVelocity: boolean

    Returns void

    Remarks

    Teleports the selected player to a new location

    Throws

    This function can throw errors.

  • Parameters

    • location: Vector3

      New location for the player.

    • dimension: Dimension

      Dimension to move the selected player to.

    • facingLocation: Vector3

      Location that this player will be facing.

    • Optional keepVelocity: boolean

    Returns void

    Remarks

    Teleports the selected player to a new location, and will have the player facing a specified location.

    Throws

    This function can throw errors.

  • Parameters

    • message: string | RawMessage | (string | RawMessage)[]

    Returns void

    Remarks

    For simulated players, this API is effectively a no-op as simulated players do not have a connected client.

    Throws

    This function can throw errors.

  • Parameters

    • eventName: string

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

    Returns void

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • itemStack: ItemStack

      Item to use.

    Returns boolean

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • slot: number

      Index of the inventory slot.

    Returns boolean

    Remarks

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

    Throws

    This function can throw errors.

  • Parameters

    • slot: number

      Index of the slot to use.

    • blockLocation: BlockLocation

      Location to use the item upon.

    • Optional direction: Direction

      Direction to place the specified item within.

    • Optional faceLocationX: number

      Block-face-relative X position where to place the item.

    • Optional faceLocationY: number

      Block-face-relative Y position where to place the item.

    Returns boolean

    Remarks

    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.

    Throws

    This function can throw errors.

  • Parameters

    • itemStack: ItemStack

      Item to use.

    • blockLocation: BlockLocation

      Location to use the item upon.

    • Optional direction: Direction

      Direction to place the specified item within.

    • Optional faceLocationX: number

      Block-face-relative X position where to place the item.

    • Optional faceLocationY: number

      Block-face-relative Y position where to place the item.

    Returns boolean

    Remarks

    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.

    Throws

    This function can throw errors.