Difference between revisions of "Object Data"

From wiki.vg
Jump to navigation Jump to search
(Undo revision 7192 by Javaprophet (talk) pretty sure that's not how it works)
(formatting)
Line 1: Line 1:
== Object Data ==
+
In the [[Protocol#Spawn Object|Spawn Object]] packet, additional metadata about the spawned entity may be provided. The length and contents of this extra data depend on the type of object being spawned. No matter what, the server must send at least one integer to the client, although 0 is a valid value. If a number other than zero is provided (for all entities), the following data is appended to the end of the object data (as of [[Protocol version numbers|15w31a, protocol 49]] this data is always required):
 
 
In the "Spawn Object/Vehicle" packet, additional metadata about the spawned entity may be provided. The length and contents of this extra data depend on the type of object being spawned. No matter what, the server must send at least one integer to the client, although 0 is a valid value. If a number other than zero is provided (for all entities), the following data is appended to the end of the object data (as of [[Protocol version numbers|15w31a, protocol 49]] this data is always required):
 
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
|-
! class="col0" | Field Name
+
! Field name
! class="col1" | Field Type
+
! Field type
! class="col2" | Example
+
! Example
! class="col3" | Notes
+
! Notes
|- class="row2"
+
|-
| class="col0 centeralign" | Speed X
+
| Speed X
| class="col1 centeralign" | Short
+
| Short
| class="col2 centeralign" | <code>0</code>
+
| <code>0</code>
| class="col3" | The speed of the object, same units as [[Protocol#Entity Velocity|Entity Velocity]]
+
| The speed of the object, same units as [[Protocol#Entity Velocity|Entity Velocity]]
|- class="row2"
+
|-
| class="col0 centeralign" | Speed Y
+
| Speed Y
| class="col1 centeralign" | Short
+
| Short
| class="col2 centeralign" | <code>0</code>
+
| <code>0</code>
| class="col3" | The speed of the object, same units as [[Protocol#Entity Velocity|Entity Velocity]]
+
| The speed of the object, same units as [[Protocol#Entity Velocity|Entity Velocity]]
|- class="row2"
+
|-
| class="col0 centeralign" | Speed Z
+
| Speed Z
| class="col1 centeralign" | Short
+
| Short
| class="col2 centeralign" | <code>0</code>
+
| <code>0</code>
| class="col3" | The speed of the object, same units as [[Protocol#Entity Velocity|Entity Velocity]]
+
| The speed of the object, same units as [[Protocol#Entity Velocity|Entity Velocity]]
|}
+
|}
  
 
== Meaning of int field ==
 
== Meaning of int field ==
  
 
+
=== Minecarts (id 10) ===
=== Minecarts (id 10)===
 
  
 
The int value itself specifies the minecart's functionality:
 
The int value itself specifies the minecart's functionality:
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
|-
! class="col0" | Value
+
! Value
! class="col1" | Minecart functionality
+
! Minecart functionality
|- class="row1"
+
|-
| class="col0 centeralign" | 0
+
| 0
| class="col1 centeralign" | Empty (ride-able) minecart
+
| Empty (ride-able) minecart
|- class="row2"
+
|-
| class="col0 centeralign" | 1
+
| 1
| class="col1 centeralign" | Chest minecart
+
| Chest minecart
|- class="row3"
+
|-
| class="col0 centeralign" | 2
+
| 2
| class="col1 centeralign" | Furnace (powered) minecart
+
| Furnace (powered) minecart
|- class="row4"
+
|-
| class="col0 centeralign" | 3
+
| 3
| class="col1 centeralign" | TNT minecart
+
| TNT minecart
|- class="row5"
+
|-
| class="col0 centeralign" | 4
+
| 4
| class="col1 centeralign" | Spawner minecart
+
| Spawner minecart
|- class="row6"
+
|-
| class="col0 centeralign" | 5
+
| 5
| class="col1 centeralign" | Hopper minecart
+
| Hopper minecart
|- class="row7"
+
|-
| class="col0 centeralign" | 6
+
| 6
| class="col1 centeralign" | Command Block minecart
+
| Command Block minecart
|}
+
|}
  
 
=== Item Frame (id 71) ===
 
=== Item Frame (id 71) ===
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
|-
! class="col0" | Field Name
+
! Field name
! class="col1" | Field Type
+
! Field type
! class="col2" | Example
+
! Example
! class="col3" | Notes
+
! Notes
|- class="row1"
+
|-
| class="col0 centeralign" | Orientation
+
| Orientation
| class="col1 centeralign" | int
+
| Int
| class="col2 centeralign" | <code>3</code>
+
| <code>3</code>
| class="col3" | 0-3: South, West, North, East
+
| 0–3: South, West, North, East
|}
+
|}
  
 
=== Falling Block (id 70) ===
 
=== Falling Block (id 70) ===
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
|-
! class="col0" | Field Name
+
! Field name
! class="col1" | Field Type
+
! Field type
! class="col2" | Example
+
! Example
! class="col3" | Notes
+
! Notes
|- class="row1"
+
|-
| class="col0 centeralign" | Block Type
+
| Block type
| class="col1 centeralign" | int
+
| Int
| class="col2 centeralign" | <code>12</code>
+
| <code>12</code>
| class="col3" | <code>BlockID | (Metadata << 0x10)</code>
+
| <code>BlockID | (Metadata << 0x10)</code>
|}
+
|}
  
 
=== Splash Potions (id 73) ===
 
=== Splash Potions (id 73) ===
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
|-
! class="col0" | Field Name
+
! Field name
! class="col1" | Field Type
+
! Field type
! class="col2" | Example
+
! Example
! class="col3" | Notes
+
! Notes
|- class="row1"
+
|-
| class="col0 centeralign" | Entity ID
+
| Entity ID
| class="col1 centeralign" | int
+
| Int
| class="col2 centeralign" | <code>64</code>
+
| <code>64</code>
| class="col3" | Potion data value
+
| Potion data value
|}
+
|}
  
For more information on potion data values, see [http://www.minecraftwiki.net/wiki/Data_values#Potions].
+
For more information on potion data values, see {{Minecraft Wiki|Data values#Potions}}.
  
 
=== Fishing Float (id 90) ===
 
=== Fishing Float (id 90) ===
 +
 
{| class="wikitable"
 
{| class="wikitable"
! Field Name !! Field Type !! Example !! Notes
+
! Field name
|-
+
! Field type
| Owner || int || || The entity ID of the owner
+
! Example
|}
+
! Notes
 
+
|-
 
+
| Owner
 +
| Int
 +
|  
 +
  | The entity ID of the owner
 +
|}
  
=== Projectiles ([[Entities#Objects|Any projectile]])===
+
=== Projectiles ([[Entities#Objects|Any projectile]]) ===
  
 
This includes ghast fireballs, arrows, and fishhooks (probably more).
 
This includes ghast fireballs, arrows, and fishhooks (probably more).
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
|-
! class="col0" | Field Name
+
! Field name
! class="col1" | Field Type
+
! Field type
! class="col2" | Example
+
! Example
! class="col3" | Notes
+
! Notes
|- class="row1"
+
|-
| class="col0 centeralign" | Entity ID
+
| Entity ID
| class="col1 centeralign" | int
+
| Int
| class="col2 centeralign" | <code>64</code>
+
| <code>64</code>
| class="col3" | The entity ID of the thrower
+
| The entity ID of the thrower
|}
+
|}

Revision as of 06:18, 7 January 2016

In the Spawn Object packet, additional metadata about the spawned entity may be provided. The length and contents of this extra data depend on the type of object being spawned. No matter what, the server must send at least one integer to the client, although 0 is a valid value. If a number other than zero is provided (for all entities), the following data is appended to the end of the object data (as of 15w31a, protocol 49 this data is always required):

Field name Field type Example Notes
Speed X Short 0 The speed of the object, same units as Entity Velocity
Speed Y Short 0 The speed of the object, same units as Entity Velocity
Speed Z Short 0 The speed of the object, same units as Entity Velocity

Meaning of int field

Minecarts (id 10)

The int value itself specifies the minecart's functionality:

Value Minecart functionality
0 Empty (ride-able) minecart
1 Chest minecart
2 Furnace (powered) minecart
3 TNT minecart
4 Spawner minecart
5 Hopper minecart
6 Command Block minecart

Item Frame (id 71)

Field name Field type Example Notes
Orientation Int 3 0–3: South, West, North, East

Falling Block (id 70)

Field name Field type Example Notes
Block type Int 12 (Metadata << 0x10)

Splash Potions (id 73)

Field name Field type Example Notes
Entity ID Int 64 Potion data value

For more information on potion data values, see Data values#Potions.

Fishing Float (id 90)

Field name Field type Example Notes
Owner Int The entity ID of the owner

Projectiles (Any projectile)

This includes ghast fireballs, arrows, and fishhooks (probably more).

Field name Field type Example Notes
Entity ID Int 64 The entity ID of the thrower