Difference between revisions of "Object Data"

From wiki.vg
Jump to navigation Jump to search
(Modified description and removed velocity description for Spawn Object packet.)
m (More updates - it being used to ignore velocity is not true anymore)
 
(20 intermediate revisions by 7 users not shown)
Line 1: Line 1:
== Object Data ==
+
This article documents the '''Data''' field in the [[Protocol#Spawn Entity|Spawn Entity]] packet. The field is of type Int, and the meaning of its contents depend on the [[Entity_metadata|type of entity]] being spawned, as defined in the Type field of the same packet, and is documented below.
  
In the "Spawn Object/Vehicle" packet, additional metadata about the spawned entity may be provided.  The contents of this extra data depend on the type of object being spawned, but it is always an Integer.  No matter what, the server must send one integer to the client, although 0 is a valid value.  If a number greater than zero is provided (for all entities), the velocity portion of the Spawn Object packet is sent as well.
+
== Item Frame ==
  
== Meaning of int field ==
+
{| class="wikitable"
 +
|-
 +
! Value
 +
! Orientation
 +
|-
 +
| 0
 +
| Down
 +
|-
 +
| 1
 +
| Up
 +
|-
 +
| 2
 +
| North
 +
|-
 +
| 3
 +
| South
 +
|-
 +
| 4
 +
| West
 +
|-
 +
| 5
 +
| East
 +
|}
 +
You have to set both Orientation and Yaw/Pitch accordingly, otherwise it will not work.
  
 +
Velocity in the packet is always ignored.
  
=== Minecarts (id 10)===
+
== Falling Block ==
 
 
The int value itself specifies the minecart's functionality:
 
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
|-
! class="col0" | Value
+
! Field name
! class="col1" | Minecart functionality
+
! Field type
|- class="row1"
+
! Notes
| class="col0 centeralign" | 0
+
|-
| class="col1 centeralign" | Empty (ride-able) minecart
+
| Block state ID
|- class="row2"
+
| Int
| class="col0 centeralign" | 1
+
| ID of the block state that the falling block will represent.
| class="col1 centeralign" | Chest minecart
+
|}
|- class="row3"
 
| class="col0 centeralign" | 2
 
| class="col1 centeralign" | Furnace (powered) minecart
 
|- class="row4"
 
| class="col0 centeralign" | 3
 
| class="col1 centeralign" | TNT minecart
 
|- class="row5"
 
| class="col0 centeralign" | 4
 
| class="col1 centeralign" | Spawner minecart
 
|- class="row6"
 
| class="col0 centeralign" | 5
 
| class="col1 centeralign" | Hopper minecart
 
|- class="row7"
 
| class="col0 centeralign" | 6
 
| class="col1 centeralign" | Command Block minecart
 
|}
 
  
=== Item Frame (id 71) ===
+
Velocity in the packet is always ignored.
  
{| class="wikitable"
+
== Fishing Float ==
|- class="row0"
 
! class="col0" | Field Name
 
! class="col1" | Field Type
 
! class="col2" | Example
 
! class="col3" | Notes
 
|- class="row1"
 
| class="col0 centeralign" | Orientation
 
| class="col1 centeralign" | int
 
| class="col2 centeralign" | <code>3</code>
 
| class="col3" | 0-3: South, West, North, East
 
|}
 
 
 
=== Falling Block (id 70) ===
 
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
! Field name
! class="col0" | Field Name
+
! Field type
! class="col1" | Field Type
+
! Notes
! class="col2" | Example
+
|-
! class="col3" | Notes
+
| Owner
|- class="row1"
+
| Int
| class="col0 centeralign" | Block Type
+
| The entity ID of the owner
| class="col1 centeralign" | int
+
|}
| class="col2 centeralign" | <code>12</code>
 
| class="col3" | <code>BlockID | (Metadata << 0x10)</code>
 
|}
 
  
=== Splash Potions (id 73) ===
+
Velocity in the packet is ignored, and instead should be inferred from the shooter's position.
  
{| class="wikitable"
+
{{Need Info|What's the exact algorithm for determining this?}}
|- class="row0"
 
! class="col0" | Field Name
 
! class="col1" | Field Type
 
! class="col2" | Example
 
! class="col3" | Notes
 
|- class="row1"
 
| class="col0 centeralign" | Entity ID
 
| class="col1 centeralign" | int
 
| class="col2 centeralign" | <code>64</code>
 
| class="col3" | Potion data value
 
|}
 
  
For more information on potion data values, see [http://www.minecraftwiki.net/wiki/Data_values#Potions].
+
== Projectile ==
  
=== Fishing Float (id 90) ===
 
 
{| class="wikitable"
 
{| class="wikitable"
! Field Name !! Field Type !! Example !! Notes
+
|-
|-
+
! Field name
| Owner || int || || The entity ID of the owner
+
! Field type
|}
+
! Notes
 
+
|-
 +
| Owner ID
 +
| Int
 +
  | The entity ID of the owner
 +
|}
  
 
+
[[Category:Protocol Details]]
=== Projectiles ([[Entities#Objects|Any projectile]])===
+
[[Category:Minecraft Modern]]
 
 
This includes ghast fireballs, arrows, and fishhooks (probably more).
 
 
 
{| class="wikitable"
 
|- class="row0"
 
! class="col0" | Field Name
 
! class="col1" | Field Type
 
! class="col2" | Example
 
! class="col3" | Notes
 
|- class="row1"
 
| class="col0 centeralign" | Entity ID
 
| class="col1 centeralign" | int
 
| class="col2 centeralign" | <code>64</code>
 
| class="col3" | The entity ID of the thrower
 
|}
 

Latest revision as of 11:02, 13 November 2021

This article documents the Data field in the Spawn Entity packet. The field is of type Int, and the meaning of its contents depend on the type of entity being spawned, as defined in the Type field of the same packet, and is documented below.

Item Frame

Value Orientation
0 Down
1 Up
2 North
3 South
4 West
5 East

You have to set both Orientation and Yaw/Pitch accordingly, otherwise it will not work.

Velocity in the packet is always ignored.

Falling Block

Field name Field type Notes
Block state ID Int ID of the block state that the falling block will represent.

Velocity in the packet is always ignored.

Fishing Float

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

Velocity in the packet is ignored, and instead should be inferred from the shooter's position.

Huh.png The following information needs to be added to this page:
What's the exact algorithm for determining this?

Projectile

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