# prismarine-entity

> Represent a minecraft entity

Latest version **2.6.0** (published 2026-03-30) · MIT license · 0 weekly downloads

## Install

```sh
npm install prismarine-entity
pnpm add prismarine-entity
yarn add prismarine-entity
bun add prismarine-entity
```

## Health

**Score 60/100 (C)** — status: active.

Positive: has types; no vulnerabilities; has provenance; high quality score.

Warnings: low downloads; no esm support.

## Facts

| | |
|---|---|
| Version | 2.6.0 |
| Published | 2026-03-30 |
| First published | 2015-08-30 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 4 |
| Unpacked size | 12.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| GitHub stars | 24 |
| Author | Romain Beaumont |
| Maintainers | rom1504 |
| Keywords | minecraft, entity, prismarine |

## Links

- npm: https://www.npmjs.com/package/prismarine-entity
- Repository: https://github.com/PrismarineJS/prismarine-entity
- Homepage: https://github.com/PrismarineJS/prismarine-entity#readme
- Issues: https://github.com/PrismarineJS/prismarine-entity/issues
- npm.io page: https://npm.io/package/prismarine-entity

## Dependencies (4)

- [vec3](https://npm.io/package/vec3.md) ^0.1.4
- [prismarine-chat](https://npm.io/package/prismarine-chat.md) ^1.4.1
- [prismarine-item](https://npm.io/package/prismarine-item.md) ^1.11.2
- [prismarine-registry](https://npm.io/package/prismarine-registry.md) ^1.4.0

## Alternatives

- [@oh-my-pi/pi-natives](https://npm.io/package/@oh-my-pi/pi-natives.md) — 51.8K weekly downloads
- [@capgo/capacitor-light-sensor](https://npm.io/package/@capgo/capacitor-light-sensor.md) — 3.0K weekly downloads
- [@heyhuynhgiabuu/pi-diff](https://npm.io/package/@heyhuynhgiabuu/pi-diff.md) — 492 weekly downloads
- [@lotsa/verdant-lang-asm](https://npm.io/package/@lotsa/verdant-lang-asm.md) — 38 weekly downloads
- [new-era-syntax](https://npm.io/package/new-era-syntax.md) — 20 weekly downloads

## Recent versions

- 2.6.0 (latest) — 2026-03-30
- 2.5.0 — 2025-01-19
- 2.4.0 — 2023-12-31
- 2.3.1 — 2023-08-26
- 2.3.0 — 2023-08-25
- 2.2.0 — 2022-10-11
- 2.1.1 — 2022-04-11
- 2.1.0 — 2022-03-09
- 2.0.0 — 2021-12-29
- 1.2.0 — 2021-05-23
- 1.1.0 — 2020-10-20
- 1.0.0 — 2020-05-16
- 0.2.0 — 2015-11-28
- 0.1.0 — 2015-08-30

## README

# prismarine-entity
[![NPM version](https://img.shields.io/npm/v/prismarine-entity.svg)](http://npmjs.com/package/prismarine-entity)
[![Build Status](https://github.com/PrismarineJS/prismarine-entity/workflows/CI/badge.svg)](https://github.com/PrismarineJS/prismarine-entity/actions?query=workflow%3A%22CI%22)

Represent a minecraft entity

## Usage

```js
const Entity = require("prismarine-entity")('1.8.9')

const entity = new Entity(0)
console.log(entity)
```

## API

### Entity

Entities represent players, mobs, and objects.

#### entity.id

#### entity.type

Choices:

 * `player`
 * `mob`
 * `object`
 * `global` - lightning
 * `orb` - experience orb.
 * `other` - introduced with a recent Minecraft update and not yet recognized or used by a third-party mod

#### entity.username

If the entity type is `player`, this field will be set.

#### entity.mobType

If the entity type is `mob`, this field will be set.

#### entity.displayName

Field set for mob and object. A long name in multiple words.

#### entity.entityType

Field set for mob and object. The numerical type of the entity (1,2,...)

#### entity.kind

Field set for mob and object. The kind of entity (for example Hostile mobs, Passive mobs, NPCs).

#### entity.name

Field set for mob and object. A short name for the entity.

#### entity.objectType

If the entity type is `object`, this field will be set.

#### entity.count

If the entity type is `orb`, this field will be how much experience you
get from collecting the orb.

#### entity.position

#### entity.velocity

#### entity.yaw

#### entity.pitch

#### entity.height

#### entity.width

#### entity.onGround

#### entity.equipment[5]

Version dependent. 

1.8 Layout:

 * `0` - held item
 * `1` - shoes
 * `2` - legging
 * `3` - torso
 * `4` - head

1.9 and later:

 * `0` - held item
 * `1` - off-hand
 * `2` - shoes
 * `3` - legging
 * `4` - torso
 * `5` - head 

#### entity.heldItem

Equivalent to `entity.equipment[0]`.

#### entity.metadata

See http://wiki.vg/Entities#Entity_Metadata_Format for more details.

#### entity.noClip

#### entity.vehicle

Entity that this entity is riding on

#### entity.passenger

Entity that is riding on this entity

#### entity.health

The health of the player, default: 20

#### entity.food

The food of the player, default: 20

#### entity.elytraFlying

Whether or not the entity is elytra flying.

#### entity.player

The player

#### entity.getCustomName()

returns a `prismarine-chat` ChatMessage object for the name of the entity or null if there isn't one

#### entity.getDroppedItem()

returns a `prismarine-item` Item object for the dropped item, if this is a dropped item, or it will return null

## History

### 2.6.0
* [Update CI to Node 24 (#136)](https://github.com/PrismarineJS/prismarine-entity/commit/09b796f821e990c6409dc710235e1bd678c1cd62) (thanks @rom1504)
* [Fix publish condition for npm-publish v4 (#135)](https://github.com/PrismarineJS/prismarine-entity/commit/4ae0714edf4265e5ae39af6f3a0b634c311f25ba) (thanks @rom1504)
* [Switch to trusted publishing via OIDC (#134)](https://github.com/PrismarineJS/prismarine-entity/commit/e9bfe269b486e3be90e5fb13d8dcd2ee20a73760) (thanks @rom1504)
* [node 22 (#82)](https://github.com/PrismarineJS/prismarine-entity/commit/2869cd63a21e7cc08d4b0ba12d9c2914db95ee8a) (thanks @rom1504)

### 2.5.0
* [add Entity.passengers and Entity.vehicle (#75)](https://github.com/PrismarineJS/prismarine-entity/commit/e45c544e7df6ae69239d1d23473c82805d5134b9) (thanks @qwqtoday)
* [Bump @types/node from 20.14.15 to 22.2.0 (#80)](https://github.com/PrismarineJS/prismarine-entity/commit/47b7167630665b1d95b5a88c0e985355a640a012) (thanks @dependabot[bot])

### 2.4.0
* [use getter for  `.heldItem` (#73)](https://github.com/PrismarineJS/prismarine-entity/commit/4694438ab733ea3e2d5414d3330ae295ff85b660) (thanks @szdytom)

### 2.3.1
* [Use console.trace instead of console.log for deprecation message (#71)](https://github.com/PrismarineJS/prismarine-entity/commit/7262fcf02d6656c663f876d513d84cc7266a3903) (thanks @extremeheat)

### 2.3.0
* [Add default elytra flying value (#69)](https://github.com/PrismarineJS/prismarine-entity/commit/f124abd47b42a908a676b91b0fcb55b1fd1a77b9) (thanks @lkwilson)
* [Fix equipment documentation for other versions (#67)](https://github.com/PrismarineJS/prismarine-entity/commit/b2f756de52fa7ceb2675fe9c2f950fa7398bc425) (thanks @IceTank)
* [Add command gh workflow allowing to use release command in comments (#66)](https://github.com/PrismarineJS/prismarine-entity/commit/4dffa63e3dd45b8f3a42575a2f6f3c2fa47d1d50) (thanks @rom1504)
* [Update to node 18.0.0 (#65)](https://github.com/PrismarineJS/prismarine-entity/commit/7fe14b95f82089b27e20f12a14f709bc8bd5c206) (thanks @rom1504)
* [Bump @types/node from 18.16.13 to 20.2.1 (#64)](https://github.com/PrismarineJS/prismarine-entity/commit/887737f531d89b25e045c4f0db4ec66497eba9f8) (thanks @dependabot[bot])
* [Add missing type (#55)](https://github.com/PrismarineJS/prismarine-entity/commit/87a94dbaf698497f56968efbb396c3692431ae6f) (thanks @sefirosweb)
* [deprecate objectType and mobType (#53)](https://github.com/PrismarineJS/prismarine-entity/commit/e3aadc7e51dccc645d81825aa0bd40b3be88cb05) (thanks @Epirito)
* [Update package.json (#52)](https://github.com/PrismarineJS/prismarine-entity/commit/1156c9b9ae76b3e82ea57348c0f4e0cbdcb6216a) (thanks @Epirito)

### 2.2.0

* mcData to registry refactoring (step towards #2450)

### 2.1.1

* Update mcdata

### 2.1.0

* Adds Entity#getDroppedItem

### 2.0.0

* require mcversion in constructor
* add Entity#getCustomName()
* Add attributes for entity entity collision calculation (thanks @O-of)

### 1.2.0

* Add food saturation to typings
* Add id to typings
* Add effects to typings

### 1.1.0

* Added entity width property

### 1.0.0

* typescript definitions (thanks @IdanHo)

### 0.2.0

* extend EventEmitter

### 0.1.0

* Import from mineflayer

---
_Source: https://npm.io/package/prismarine-entity · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
