<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wikivg.spaghett.dev/index.php?action=history&amp;feed=atom&amp;title=Minecraft_Pi_Protocol</id>
	<title>Minecraft Pi Protocol - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wikivg.spaghett.dev/index.php?action=history&amp;feed=atom&amp;title=Minecraft_Pi_Protocol"/>
	<link rel="alternate" type="text/html" href="https://wikivg.spaghett.dev/index.php?title=Minecraft_Pi_Protocol&amp;action=history"/>
	<updated>2026-04-05T23:14:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://wikivg.spaghett.dev/index.php?title=Minecraft_Pi_Protocol&amp;diff=8356&amp;oldid=prev</id>
		<title>imported&gt;TkTech: Added possible deprecation notice.</title>
		<link rel="alternate" type="text/html" href="https://wikivg.spaghett.dev/index.php?title=Minecraft_Pi_Protocol&amp;diff=8356&amp;oldid=prev"/>
		<updated>2015-04-15T20:46:56Z</updated>

		<summary type="html">&lt;p&gt;Added possible deprecation notice.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Box|&lt;br /&gt;
BORDER = #EA3C53|&lt;br /&gt;
BACKGROUND = #EA3C53|&lt;br /&gt;
WIDTH = 100%|&lt;br /&gt;
ICON = |&lt;br /&gt;
HEADING = Warning! |&lt;br /&gt;
CONTENT =  &lt;br /&gt;
This content may not longer be up to date. Minecraft for the Pi was an experiment that most likely will not be expanded.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
This page documents the [[Minecraft Pi]] API Protocol. The multiplayer protocol for Minecraft Pi is based on [[Pocket_Minecraft_Protocol|Minecraft PE&amp;#039;s protocol]].&lt;br /&gt;
&lt;br /&gt;
Parts of this documentation is based on the official Mojang documentation, which were [https://twitter.com/danfrisk/status/286797258048012288 released for free use.] Other parts are based on the Desktop Protocol specification.&lt;br /&gt;
&lt;br /&gt;
The Minecraft Pi client listens to TCP port 4711 by default.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- class=&amp;quot;row0&amp;quot;&lt;br /&gt;
| class=&amp;quot;col0&amp;quot; |&lt;br /&gt;
| class=&amp;quot;col1&amp;quot; | Definition&lt;br /&gt;
|- class=&amp;quot;row1&amp;quot;&lt;br /&gt;
| class=&amp;quot;col0 centeralign&amp;quot; | Player&lt;br /&gt;
| class=&amp;quot;col1&amp;quot; | When used in the singular, Player always refers to the client connected to the server&lt;br /&gt;
|- class=&amp;quot;row2&amp;quot;&lt;br /&gt;
| class=&amp;quot;col0 centeralign&amp;quot; | Entity&lt;br /&gt;
| class=&amp;quot;col1&amp;quot; | Entity refers to any item, player, or mob in the world. This definition is subject to change as Mojang extends the protocol&lt;br /&gt;
|- class=&amp;quot;row3&amp;quot;&lt;br /&gt;
| class=&amp;quot;col0 centeralign&amp;quot; | EID&lt;br /&gt;
| class=&amp;quot;col1&amp;quot; | An EID - or Entity ID - is a unique 4-byte integer used to identify a specific entity&lt;br /&gt;
|- class=&amp;quot;row4&amp;quot;&lt;br /&gt;
| class=&amp;quot;col0 centeralign&amp;quot; | XYZ&lt;br /&gt;
| class=&amp;quot;col1&amp;quot; | In this document, the axis names are the same as those used by the official protocol documentation. Y points upwards, X points South, and Z points West.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
A command in the Pi protocol consists of an ASCII line terminated with an LF character. The general format of a command is of the form&lt;br /&gt;
&lt;br /&gt;
 package.command(param1,param2,param3)&lt;br /&gt;
&lt;br /&gt;
Commands are sent by the client to the server. No authentication is required before sending commands.&lt;br /&gt;
&lt;br /&gt;
Some commands may have return values: they are also in ASCII, and terminate with an LF character.&lt;br /&gt;
&lt;br /&gt;
Locations in the Minecraft Pi protocol are relative to the spawn point of the world.&lt;br /&gt;
&lt;br /&gt;
The official Mojang documentation specifies conventions for specifying parameters:&lt;br /&gt;
&lt;br /&gt;
*x,y,z -- vector of three integers.&lt;br /&gt;
&lt;br /&gt;
*xf,yf,zf -- vector of three floats.&lt;br /&gt;
&lt;br /&gt;
*blockTypeId -- integer 0-108. 0 is air.&lt;br /&gt;
&lt;br /&gt;
*blockData -- integer 0-15. Block data beyond the type, for example wool color.&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
=== world package ===&lt;br /&gt;
&lt;br /&gt;
Contains methods that modify the world and terrain.&lt;br /&gt;
&lt;br /&gt;
==== world.getBlock(x,y,z) ====&lt;br /&gt;
&lt;br /&gt;
Gets the ID of a block in the world.&lt;br /&gt;
&lt;br /&gt;
x, y, z: coordinates of the block relative to spawn&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Returns: an integer of type blockTypeId, corresponding to a block type in Minecraft Pi.&lt;br /&gt;
&lt;br /&gt;
==== world.getBlockWithData(x,y,z) ====&lt;br /&gt;
&lt;br /&gt;
Gets the ID and Optional Parameter for a block in the world.&lt;br /&gt;
&lt;br /&gt;
x, y, z: coordinates of the block relative to spawn&lt;br /&gt;
&lt;br /&gt;
Returns: a block object corresponding toa  block type in Minecraft Pi.&lt;br /&gt;
&lt;br /&gt;
==== world.setBlock(x,y,z,blockTypeId,[blockData]) ====&lt;br /&gt;
&lt;br /&gt;
Sets the ID of a block in the world. The data parameter is optional.&lt;br /&gt;
&lt;br /&gt;
x, y, z: coordinates of the block relative to spawn&lt;br /&gt;
&lt;br /&gt;
blockTypeId: ID of the block&lt;br /&gt;
&lt;br /&gt;
blockData: metadata of the block&lt;br /&gt;
&lt;br /&gt;
==== world.setBlocks(x1,y1,z1,x2,y2,z2,blockTypeId,[blockData]) ====&lt;br /&gt;
&lt;br /&gt;
Sets all blocks in a cuboid defined by two points to a speficied type. The blockData parameter is optional.&lt;br /&gt;
&lt;br /&gt;
x1, y1, z1: coordinates of the first selection point relative to spawn&lt;br /&gt;
&lt;br /&gt;
x2, y2, z2: coordinates of the second selection point relative to spawn&lt;br /&gt;
&lt;br /&gt;
blockTypeId: ID of the block&lt;br /&gt;
&lt;br /&gt;
blockData: metadata of the block&lt;br /&gt;
&lt;br /&gt;
==== world.getHeight(x,z) ====&lt;br /&gt;
&lt;br /&gt;
Returns the Y coordinate of the last block that isn&amp;#039;t solid from top-down.&lt;br /&gt;
&lt;br /&gt;
x, z: coordinates of a column &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Returns: an integer containing the Y coordinate&lt;br /&gt;
&lt;br /&gt;
==== world.getPlayerIds() ====&lt;br /&gt;
&lt;br /&gt;
Gets the Entity IDs of all connected players.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Returns: A list of Entity IDs, seperated by the character |&lt;br /&gt;
&lt;br /&gt;
==== world.setting(key,value) ====&lt;br /&gt;
&lt;br /&gt;
Sets a world parameter (similar to GameRules on the Desktop Edition)&lt;br /&gt;
&lt;br /&gt;
key: the name of the setting:&lt;br /&gt;
*world_immutable&lt;br /&gt;
*nametags_visible&lt;br /&gt;
&lt;br /&gt;
value: a Boolean value: either 0 or 1&lt;br /&gt;
&lt;br /&gt;
==== world.checkpoint.save() ====&lt;br /&gt;
&lt;br /&gt;
Save a checkpoint that can be used for restoring the world.&lt;br /&gt;
&lt;br /&gt;
==== world.checkpoint.restore() ====&lt;br /&gt;
&lt;br /&gt;
Restores the world to the last checkpoint.&lt;br /&gt;
&lt;br /&gt;
=== chat package ===&lt;br /&gt;
&lt;br /&gt;
Contains methods to post messages to the chat display.&lt;br /&gt;
&lt;br /&gt;
==== chat.post(message) ====&lt;br /&gt;
&lt;br /&gt;
message: the message to be sent.&lt;br /&gt;
&lt;br /&gt;
=== player package ===&lt;br /&gt;
&lt;br /&gt;
Contains methods that modify the host player.&lt;br /&gt;
&lt;br /&gt;
==== player.getTile() ====&lt;br /&gt;
&lt;br /&gt;
Gets the position of the host player, to the nearest block.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Returns: The x, y, and z coordinates of the player, separated by commas.&lt;br /&gt;
&lt;br /&gt;
==== player.setTile(x,y,z) ====&lt;br /&gt;
&lt;br /&gt;
Sets the position of the host player to the specified block coordinates.&lt;br /&gt;
&lt;br /&gt;
x, y, z: the coordinates that the player is to be moved to.&lt;br /&gt;
&lt;br /&gt;
==== player.getPos() ====&lt;br /&gt;
&lt;br /&gt;
Returns the precise position of the host player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Returns: the x, y, and z coordinates of the player as floats, separated by commas.&lt;br /&gt;
&lt;br /&gt;
==== player.setPos(xf,yf,zf) ====&lt;br /&gt;
&lt;br /&gt;
Sets the position of the host player to the specified coordinates.&lt;br /&gt;
&lt;br /&gt;
xf, yf, zf: the coordinates that the player is to be moved to. Decimals are allowed.&lt;br /&gt;
&lt;br /&gt;
==== player.setting(key,value) ====&lt;br /&gt;
&lt;br /&gt;
Sets a property on the host player.&lt;br /&gt;
&lt;br /&gt;
key: the property to be set.&lt;br /&gt;
*autojump: enable or disable autojump.&lt;br /&gt;
&lt;br /&gt;
value: a Boolean value: either 1 for on or 0 for off.&lt;br /&gt;
&lt;br /&gt;
=== entity package ===&lt;br /&gt;
&lt;br /&gt;
=== camera package ===&lt;br /&gt;
&lt;br /&gt;
=== events package ===&lt;br /&gt;
&lt;br /&gt;
[[Category: Minecraft Pi]]&lt;br /&gt;
[[Category: Pocket Minecraft]]&lt;/div&gt;</summary>
		<author><name>imported&gt;TkTech</name></author>
	</entry>
</feed>