Minecraft Wiki
m (zero conditional)
(→‎Result: 1.17)
(26 intermediate revisions by 16 users not shown)
Line 1: Line 1:
 
{{exclusive|java}}
 
{{exclusive|java}}
  +
{{Infobox command
{{:commands/infobox
 
|worldborder
+
|name=worldborder
  +
|oplevel=2
|op
 
|Java Edition 1.8|Java Edition 14w17a
 
 
}}
 
}}
   
Line 10: Line 9:
 
==Syntax==
 
==Syntax==
   
  +
<code>worldborder add <distance> [&lt;time&gt;]</code>
The command has eight variations, each with different arguments:
 
* <code>worldborder add <distance> [&lt;time&gt;]</code> (increases the world border diameter)
+
: Increases or decreases the world border diameter.
* <code>worldborder center <pos></code> (recenters the world boundary)
+
<code>worldborder center <pos></code>
  +
: Recenters the world boundary.
* <code>worldborder damage amount <damagePerBlock></code> (specifies the world border damage rate)
 
* <code>worldborder damage buffer <distance></code> (specifies the world border damage buffer distance)
+
<code>worldborder damage amount <damagePerBlock></code>
 
: Sets the world border damage amount to the specified value. Any player outside the world border buffer takes this amount of damage per second per block past the world border buffer distance.
* <code>worldborder get</code> (returns the world border diameter)
 
* <code>worldborder set <distance> [&lt;time&gt;]</code> (sets the world border diameter)
+
<code>worldborder damage buffer <distance></code>
 
: Sets the world border buffer distance to the specified value. Players won't take damage until they move past this distance from the world border.
* <code>worldborder warning distance <distance></code> (specifies the world border warning distance)
 
* <code>worldborder warning time &lt;time&gt;</code> (specifies the world border warning time)
+
<code>worldborder get</code>
 
: Returns the current world border diameter.
  +
<code>worldborder set <distance> [&lt;time&gt;]</code>
 
: Sets the world border diameter.
 
<code>worldborder warning distance <distance></code>
 
: Sets the world border warning distance to the specified value.
  +
<code>worldborder warning time &lt;time&gt;</code>
  +
: Sets the world border warning time to the specified value.
   
 
==Arguments==
 
==Arguments==
   
<code><distance></code>
+
{{argument|distance|double}} (in <code>add</code> mode)
: Specifies a distance in blocks:
+
: Specifies the number of blocks to add to the world border diameter.
  +
: {{arg desc|je=double|min=-59,999,968|max=59,999,968}}
:* <code>add</code> – Specifies the number of blocks to add to the world border diameter.
 
:* <code>damage buffer</code> – Specifies the distance outside the world buffer a player must be before they start taking damage. Must be at least 0.0. Initially set to 5.0.
 
:* <code>set</code> – Specifies the new diameter for the world border. Must be between 1.0 and 60,000,000 (inclusive, without the commas).
 
:* <code>warning distance</code> – Specifies the distance from the world border at which players begins to see a visual warning of the world border's proximity. Must be at least 0. Initially set to 5.
 
   
<code><nowiki><time></nowiki></code>
+
{{argument|time|integer}} (in <code>add</code> and <code>set</code> mode)
 
: Specifies the number of seconds it should take for the world border to move from its current diameter to the new diameter. If not specified, defaults to 0.
: Specifies a time in seconds:
 
  +
: {{arg desc|je=integer|min=0}}
:* <code>add</code> – Specifies the number of seconds it should take for the world border to move from its current diameter to the new diameter. Must be at least 0. If not specified, defaults to 0.
 
:* <code>set</code> – Specifies the number of seconds it should take for the world border to move from its current diameter to the new diameter. Must be at least 0. If not specified, defaults to 0.
 
:* <code>warning time</code> – Specifies the number of seconds that a player begins to see a visual warning before a moving world border passes their position. Must be at least 0. Initially set to 15.
 
   
  +
{{argument|pos|vec2}}
<code><pos></code>
 
: Specifies the horizontal coordinates of the world border's center in form of<code><x> <z></code>. Must be between [[World border|-30,000,000 and 30,000,000]] (inclusive, without the commas). May use [[Commands#Tilde and caret notation|tilde and caret notation]] to specify coordinates relative to the command's execution.
+
: Specifies the horizontal coordinates of the world border's center.
  +
: {{arg desc|je=vec2}}
   
<code><damagePerBlock></code>
+
{{argument|damagePerBlock|float}}
: Specifies the damage a player takes per second per block past the world border buffer. For example, if <code><damagePerBlock></code> is 0.1, a player 5 blocks outside the world border buffer takes 0.5 damage per second (damage less than half a heart might not change the visual health display, but still accumulates). Must be at least 0.0. Initially set to 0.2.
+
: Specifies the damage a player takes per second per block past the world border buffer. For example, if <code><damagePerBlock></code> is 0.1, a player 5 blocks outside the world border buffer takes 0.5 damage per second (damage less than half a heart might not change the visual health display, but still accumulates). Initially set to 0.2.
  +
: {{arg desc|je=float|min=0.0}}
  +
  +
{{argument|distance|double}} (in <code>damage buffer</code> mode)
 
: Specifies the distance outside the world buffer a player must be before they start taking damage. Initially set to 5.0.
  +
: {{arg desc|je=double|min=0.0}}
  +
  +
{{argument|distance|double}} (in <code>set</code> mode)
  +
: Specifies the new diameter for the world border.
  +
: {{arg desc|je=double|min=-29,999,984|max=29,999,984}}
  +
  +
{{argument|distance|integer}} (in <code>warning distance</code> mode)
 
: Specifies the distance from the world border at which players begins to see a visual warning of the world border's proximity. Initially set to 5.
  +
: {{arg desc|je=integer|min=0}}
  +
  +
{{argument|time|integer}} (in <code>warning time</code> mode)
 
: Specifies the number of seconds that a player begins to see a visual warning before a moving world border passes their position. Initially set to 15.
  +
: {{arg desc|je=integer|min=0}}
   
 
==Result==
 
==Result==
   
  +
{{Result table|onlyje=1}}
Fails if the arguments are not specified correctly.
+
{{Result table|the arguments are not specified correctly|unparseable}}
  +
{{Result table|cmd=/worldborder add ...<br>/worldborder set ...|the size is unchanged|fail}}
  +
{{Result table|the new size is less than 1.0 or greater than 59,999,968}}
  +
{{Result table|cmd=/worldborder center ...|the center is unchanged}}
  +
{{Result table|cmd=/worldborder damage amount ...|the damage amount is unchanged}}
  +
{{Result table|cmd=/worldborder damage buffer ...|the damage buffer is unchanged}}
  +
{{Result table|cmd=/worldborder warning distance ...|the warning distance is unchanged}}
  +
{{Result table|cmd=/worldborder warning time ...|the warning time is unchanged}}
  +
{{Result table|cmd=|succeed|Manages the world border.}}
  +
{{Result table}}
   
  +
== Output ==
On success:
 
   
  +
{{Output table}}
* <code>add</code> The world border begins changing its diameter by the specified amount. If <code><distance></code> is positive, the world border turns green and start increasing; if negative, the world border turns red and start decreasing. If <code>&lt;time&gt;</code> is 0 or unspecified, the change occurs immediately; otherwise the change proceeds at a rate of (''distance''/2)/''time'' blocks per second.
 
  +
{{Output table|edition=je|On fail|0|0|0}}
* <code>center</code> The center of the world border immediately moves to the specified coordinates.
 
  +
{{Output table|cmd=/worldborder add ...|On success|1|1|the specified {{cd|<distance>}}}}
* <code>damage amount</code> – Sets the world border damage amount to the specified value. Any player outside the world border buffer takes this amount of damage per second per block past the world border buffer distance.
 
  +
{{Output table|cmd=/worldborder center ...|On success|1|1|0}}
* <code>damage buffer</code> – Sets the world border buffer distance to the specified value. Players won't take damage until they move past this distance from the world border.
 
  +
{{Output table|cmd=/worldborder damage amount ...|On success|1|1|the specified {{cd|<damagePerBlock>}}}}
* <code>get</code> – Shows the current world border diameter in the chat.
 
  +
{{Output table|cmd=/worldborder damage buffer ...|On success|1|1|the specified {{cd|<distance>}}}}
* <code>set</code> – The world border begins changing its diameter to the specified value. If <code><distance></code> is bigger than the current diameter, the world border turns green and start increasing; if smaller, the world border turns red and start decreasing. If <code>&lt;time&gt;</code> is 0 or unspecified, the change occurs immediately; otherwise the change proceeds at a rate of ((''distance''-<current diameter>)/2)/''time'' blocks per second.
 
* <code>warning distance</code> Sets the world border warning distance to the specified value.
+
{{Output table|cmd=/worldborder get|On success|1|1|the size of the world border after rounding to the nearest integer}}
  +
{{Output table|cmd=/worldborder set ...|On success|1|1|the amount of change in the width of the world border<br>(a positive number means an increase, a negative number means a decrease).}}
* <code>warning time</code> – Sets the world border warning time to the specified value.
 
  +
{{Output table|cmd=/worldborder warning distance ...|On success|1|1|the specified {{cd|<distance>}}}}
  +
{{Output table|cmd=/worldborder warning time ...|On success|1|1|the specified {{cd|<<nowiki/>time>}}}}
  +
{{Output table}}
   
== History ==
+
==Notes==
   
 
In <code>add</code> or <code>set</code> mode, if successful, the world border begins changing its diameter by the specified amount. If diameter is increasing, the world border turns green; if decreasing, the world border turns red. If <code>&lt;time&gt;</code> is 0 or unspecified, the change occurs immediately; otherwise the change proceeds at a rate of (Distance difference/2)/time blocks per second.
{{History|java}}
 
   
 
In <code>center</code> mode, if successful, the center of the world border immediately moves to the specified coordinates.
  +
  +
== History ==
  +
{{info needed section|the upcoming update for the world border's radius that [[Java Edition distance effects|controlled by float replaced by double]] }}
 
{{History|java}}
 
{{History||1.8|snap=14w17a|Added {{cmd|worldborder|link=none}}.}}
 
{{History||1.8|snap=14w17a|Added {{cmd|worldborder|link=none}}.}}
 
{{History|||snap=14w19a|Added {{cmd|worldborder|damage|link=none}}.
 
{{History|||snap=14w19a|Added {{cmd|worldborder|damage|link=none}}.
Line 70: Line 107:
   
 
[[de:Befehl/worldborder]]
 
[[de:Befehl/worldborder]]
  +
[[ja:コマンド/worldborder]]
 
[[zh:命令/worldborder]]
 
[[zh:命令/worldborder]]

Revision as of 07:41, 27 June 2021

Information icon
This feature is exclusive to Java Edition. 

These commands control the world border.

Syntax

worldborder add <distance> [<time>]

Increases or decreases the world border diameter.

worldborder center <pos>

Recenters the world boundary.

worldborder damage amount <damagePerBlock>

Sets the world border damage amount to the specified value. Any player outside the world border buffer takes this amount of damage per second per block past the world border buffer distance.

worldborder damage buffer <distance>

Sets the world border buffer distance to the specified value. Players won't take damage until they move past this distance from the world border.

worldborder get

Returns the current world border diameter.

worldborder set <distance> [<time>]

Sets the world border diameter.

worldborder warning distance <distance>

Sets the world border warning distance to the specified value.

worldborder warning time <time>

Sets the world border warning time to the specified value.

Arguments

<distance>: double (in add mode)

Specifies the number of blocks to add to the world border diameter.
Must be a Double-precision floating-point format number. It must be between -59,999,968 and 59,999,968 (inclusive).

<time>: integer (in add and set mode)

Specifies the number of seconds it should take for the world border to move from its current diameter to the new diameter. If not specified, defaults to 0.
Must be a 32-bit integer number. And it must be between 0 and 2147483647 (inclusive).

<pos>: vec2

Specifies the horizontal coordinates of the world border's center.
Must be a two-dimensional coordinates with floating-point number elements. Accepts tilde and caret notations.

<damagePerBlock>: float

Specifies the damage a player takes per second per block past the world border buffer. For example, if <damagePerBlock> is 0.1, a player 5 blocks outside the world border buffer takes 0.5 damage per second (damage less than half a heart might not change the visual health display, but still accumulates). Initially set to 0.2.
Must be a Single-precision floating-point format number. And it must be greater than or equal to 0.0.

<distance>: double (in damage buffer mode)

Specifies the distance outside the world buffer a player must be before they start taking damage. Initially set to 5.0.
Must be a Double-precision floating-point format number. It must be greater than or equal to 0.0.

<distance>: double (in set mode)

Specifies the new diameter for the world border.
Must be a Double-precision floating-point format number. It must be between -29,999,984 and 29,999,984 (inclusive).

<distance>: integer (in warning distance mode)

Specifies the distance from the world border at which players begins to see a visual warning of the world border's proximity. Initially set to 5.
Must be a 32-bit integer number. And it must be between 0 and 2147483647 (inclusive).

<time>: integer (in warning time mode)

Specifies the number of seconds that a player begins to see a visual warning before a moving world border passes their position. Initially set to 15.
Must be a 32-bit integer number. And it must be between 0 and 2147483647 (inclusive).

Result

CommandTriggerJava Edition
anythe arguments are not specified correctly Unparseable
/worldborder add ...
/worldborder set ...
the size is unchanged Failed
the new size is less than 1.0 or greater than 59,999,968
/worldborder center ...the center is unchanged
/worldborder damage amount ...the damage amount is unchanged
/worldborder damage buffer ...the damage buffer is unchanged
/worldborder warning distance ...the warning distance is unchanged
/worldborder warning time ...the warning time is unchanged
anyOtherwiseManages the world border.

Output

CommandEditionSituationSuccess Count/execute store success .../execute store result ...
anyJava EditionOn fail000
/worldborder add ...On success11the specified <distance>
/worldborder center ...On success110
/worldborder damage amount ...On success11the specified <damagePerBlock>
/worldborder damage buffer ...On success11the specified <distance>
/worldborder getOn success11the size of the world border after rounding to the nearest integer
/worldborder set ...On success11the amount of change in the width of the world border
(a positive number means an increase, a negative number means a decrease).
/worldborder warning distance ...On success11the specified <distance>
/worldborder warning time ...On success11the specified <time>

Notes

In add or set mode, if successful, the world border begins changing its diameter by the specified amount. If diameter is increasing, the world border turns green; if decreasing, the world border turns red. If <time> is 0 or unspecified, the change occurs immediately; otherwise the change proceeds at a rate of (Distance difference/2)/time blocks per second.

In center mode, if successful, the center of the world border immediately moves to the specified coordinates.

History

This section is missing information about the upcoming update for the world border's radius that controlled by float replaced by double. 
Please expand the section to include this information. Further details may exist on the talk page.
Java Edition
1.8
{{Extension DPL}}<ul><li>[[Written Book|Written Book]]<br/>{{Item
| title = Written Book
| image = Written Book.gif
| renewable = Yes
| stackable = Yes (16)
}}
A '''written book''' is an [[item]] created after a [[book and quill]] is signed.

== Obtaining ==

=== Signing a book and quill ===

Written books can be obtained by signing a [[book and quill]]. After it has been signed, it cannot be edited again. The label does not say "Written Book", but whatever the [[player]] titles it. The title appears on the top line of the label, and "by <''player''>" (the player's username) on the bottom. {{IN|bedrock}}, this is customizable without [[commands]].

=== Copying ===

{{crafting
|name=Written Book
|showdescription=1
|;;;Book and Quill;Book and Quill;Book and Quill;Book and Quill;Book and Quill
|;;;;Book and Quill;Book and Quill;Book and Quill;Book and Quill
|;;;;;Book and Quill;Book and Quill;Book and Quill
|Book and Quill
|Written Book
|;;;;;;Book and Quill;Book and Quill
|;Book and Quill;Book and Quill;Book and Quill;Book and Quill;Book and Quill;Book and Quill;Book and Quill
|;;Book and Quill;Book and Quill;Book and Quill;Book and Quill;Book and Quill;Book and Quill
|;;;;;;;Book and Quill
|Output= Written Book; Written Book,2; Written Book,3; Written Book,4; Written Book,5; Written Book,6; Written Book,7; Written Book,8
|description=The input written book is not consumed.<br>The new copies are "Copy of Original" or "Copy of Copy", depending on whether the input written book is "Original" or "Copy of Original".<br>Copies of copies cannot be copied.<br>Copied books of the same generation ("Original", "Copy of Original", "Copy of Copy", or "Tattered") stack.
|type=Miscellaneous
}}

== Usage ==

Written books can be opened by right-clicking (or holding down on the screen {{in|bedrock}}), and display a GUI allowing the [[player]] to read it or turn the page.

The contents of a book are an extra set of data attached to the item. This means that when a book is destroyed, its contents are lost with it.

=== Lecterns ===

One can place a [[written book]] on an empty [[lectern]].

The lectern then emits a redstone signal depending on the displayed page in the book. On the last page, the lectern emits a signal strength of 15.

=== Chiseled bookshelf ===
{{control|Use|text=Using}} the [[chiseled bookshelf]] while having a written book in the main hand will put the book inside the chiseled bookshelf.

== Sounds ==
{{edition|java}}:
{{Sound table
|sound=Page turn1.ogg
|sound2=Page turn2.ogg
|sound3=Page turn3.ogg
|subtitle=Page rustles
|source=master
|description=When the page of a book is turned
|id=item.book.page_turn
|translationkey=subtitles.item.book.page_turn
|volume=2.0
|pitch=1.0
|distance=16}}
{{Sound table
|sound=Page turn1.ogg
|sound2=Page turn2.ogg
|sound3=Page turn3.ogg
|subtitle=Page rustles
|source=block
|description=When the page of a book is turned on a lectern
|id=item.book.page_turn
|translationkey=subtitles.item.book.page_turn
|volume=2.0
|pitch=0.9-1.0
|distance=16}}
{{Sound table
|sound=Book thump1.ogg
|sound2=Book thump2.ogg
|subtitle=Book thumps
|source=block
|description=When a book is placed on a lectern
|id=item.book.put
|translationkey=subtitles.item.book.put
|volume=1.0
|pitch=1.0
|distance=16}}
{{Sound table
|sound=Chiseled bookshelf insert1.ogg
|sound2=Chiseled bookshelf insert2.ogg
|sound3=Chiseled bookshelf insert3.ogg
|sound4=Chiseled bookshelf insert4.ogg
|subtitle=Book placed
|source=block
|description=When a written book is placed in a chiseled bookshelf
|id=block.chiseled_bookshelf.insert
|translationkey=subtitles.chiseled_bookshelf.insert
|volume=0.8
|pitch=''varies'' <ref group=sound>Can be 1.0, 0.85, or 1.1 for each sound</ref>
|distance=16}}
{{Sound table
|sound=Chiseled bookshelf pickup1.ogg
|sound2=Chiseled bookshelf pickup2.ogg
|sound3=Chiseled bookshelf pickup3.ogg
|subtitle=Book taken
|source=block
|description=When a written book is removed from a chiseled bookshelf
|id=block.chiseled_bookshelf.pickup
|translationkey=subtitles.chiseled_bookshelf.take
|volume=0.8
|pitch=''varies'' <ref group=sound>Can be 1.0, 0.8, or 1.1 for each sound</ref>
|distance=16
|foot=1}}

{{edition|bedrock}}:
{{Sound table
|type=bedrock
|sound=Page turn1.ogg
|sound2=Page turn2.ogg
|sound3=Page turn3.ogg
|source=sound
|description=When the page of a book is turned
|id=item.book.page_turn
|volume=2.0
|pitch=1.0}}
{{Sound table
|sound=Book thump1.ogg
|sound2=Book thump2.ogg
|source=block
|description=When a book is placed on a lectern
|id=item.book.put
|volume=4.8
|pitch=1.0}}
{{Sound table
|type=bedrock
|sound=Chiseled bookshelf insert1.ogg
|sound2=Chiseled bookshelf insert2.ogg
|sound3=Chiseled bookshelf insert3.ogg
|sound4=Chiseled bookshelf insert4.ogg
|source=block
|description=When a written book is placed in a chiseled bookshelf
|id=insert.chiseled_bookshelf
|volume=0.8
|pitch=''varies'' <ref group=sound>Can be 1.0, 0.85, or 1.1 for each sound</ref>}}
{{Sound table
|sound=Chiseled bookshelf pickup1.ogg
|sound2=Chiseled bookshelf pickup2.ogg
|sound3=Chiseled bookshelf pickup3.ogg
|source=block
|description=When a written book is removed from a chiseled bookshelf
|id=pickup.chiseled_bookshelf
|volume=0.8
|pitch=''varies'' <ref group=sound>Can be 1.0, 0.8, or 1.1 for each sound</ref>
|foot=1}}

== Data values ==
=== ID ===
{{JE}}:
{{ID table
|edition=java
|showitemtags=y
|showforms=y
|generatetranslationkeys=y
|displayname=Written Book
|spritetype=item
|nameid=written_book
|itemtags=bookshelf_books, lectern_books
|form=item
|foot=1}}

{{BE}}:
{{ID table
|edition=bedrock
|showitemtags=y
|shownumericids=y
|showforms=y
|notshowbeitemforms=y
|generatetranslationkeys=y
|displayname=Written Book
|spritetype=item
|nameid=written_book
|id=511
|itemtags=minecraft:bookshelf_books, minecraft:lectern_books
|form=item
|foot=1}}

=== Item data ===

{{el|java}}:
{{main|Player.dat format}}
<div class="treeview">
* {{nbt|compound|tag}}: The item's '''tag''' tag.
{{:Player.dat_format/Written Books}}
</div>

{{el|bedrock}}:
: See [[Bedrock Edition level format/Item format]].

== History ==
{{History|java}}
{{History||1.3.1|snap=12w17a|[[File:Written Book JE1 BE1.png|32px]] Added written books.}}
{{History|||snap=12w21a|Written books can now be [[trading|sold]] to librarian [[villager]]s, at 1 written book for 1 [[emerald]].}}
{{History||1.7.2|snap=13w36a|Written books can now be cloned the same way [[map]]s can, but by using [[book and quill|books and quills]] instead of Empty Maps. Multiple copies of the same written book can be cloned by putting more book and quills in the crafting grid. 
|Written books can now be stacked (up to 16 per stack).}}
{{History||1.8|snap=14w02a|[[Trading]] has been changed: librarian [[villager]]s now [[trading|buy]] 2 written books for 1 [[emerald]].}}
{{History|||snap=14w05a|Copying written books now mark them as "Copy of Original" or "Copy of Copy". The copying status of a book is denoted in a separate line in the tooltip, beneath the author's name. Copies of copies cannot be copied.}}
{{History||1.9|snap=15w33c|A written book titled "Work in Progress" now generates within a [[hopper]] as a part of the [[end ship]] in the [[end cities]]. It reads: "We will have something else here soon..." and is signed by [[Searge]].}}
{{History|||snap=15w41a|End ships no longer contain a written book.}}
{{History||1.13|snap=17w47a|Prior to [[1.13/Flattening|''The Flattening'']], this [[item]]'s numeral ID was 387.}}
{{History||1.14|snap=18w43a|[[File:Written Book JE2 BE2.png|32px]] The texture of written books has been changed.}}
{{History|||snap=19w02a|Written books can now be held on [[lectern]]s.}}
{{History|||snap=19w11a|Librarian [[villager]]s no longer [[trading|buy]] written books.}}
{{History||1.20<br>(Experimental)|link=1.19.3|snap=22w42a|Written books can now interact with [[chiseled bookshelves]].}}

{{History|bedrock}}
{{History||1.2.0|snap=beta 1.2.0.2|[[File:Written Book JE1 BE1.png|32px]] Added written books.}}
{{History||1.10.0|snap=beta 1.10.0.3|[[File:Written Book JE2 BE2.png|32px]] The texture of written books has been changed.
|Written books can now be held on [[lectern]]s.}}

{{History|console}}
{{History||xbox=TU25|xbone=CU14|ps=1.17|wiiu=Patch 1|[[File:Written Book JE1 BE1.png|32px]] Added written books.}}
{{History|PS4}}
{{History||1.90|[[File:Written Book JE2 BE2.png|32px]] The texture of written books has been changed.}}
{{History|foot}}

== Issues ==
{{issue list}}

== Trivia ==
*When written books are obtained with [[commands]] (without the correct [[Player.dat format#Written Books|data tag]]), the label shows "Written Book" and has the text "*Invalid book tag*" when opened. The book is signed and cannot be edited without commands.
*Commands that were added to a written book using serialized JSON objects are executed through the chat system. This means that any command added to a written book can't be longer than 256 characters, which is the maximum chat line limit.
*During the 2020 April Fools Update [[Java Edition 20w14∞]], throwing a written book into a lit [[Nether Portal (block)|nether portal]] would create a portal to one of the 2,147,483,645 new dimensions.

== Gallery ==
<gallery>
Written Book tooltip.png|A signed book.
Test by Dinnerbone.png|Copying a signed book.
BookandQuillOperators12w17a.png|Different types of characters can be used to simulate a different font.
JSON Book.png|First image of a book using JSON text.
No NBT written book GUI.png|A no NBT written book using commands.
Book Background (JE).png|Java Edition book background texture.
Book Background (BE).png|Bedrock Edition book background texture.
Book Arrowleft (JE).png|Java Edition left arrow texture.
Book Arrowright (JE).png|Java Edition right arrow texture.
Book Arrowleft (BE).png|Bedrock Edition left arrow texture.
Book Arrowright (BE).png|Bedrock Edition Right arrow texture.
</gallery>

== See also ==
*[[Book]]
*[[Bookshelf]]
*[[Book and Quill]]

{{Items}}

[[Category:Renewable resources]]

[[cs:Napsaná kniha]]
[[es:Libro escrito]]
[[fr:Livre édité]]
[[hu:Megírt könyv]]
[[it:Libro]]
[[ja:記入済みの本]]
[[ko:글이 쓰인 책]]
[[nl:Geschreven boek]]
[[pl:Zapisana książka]]
[[pt:Livro escrito]]
[[ru:Написанная книга]]
[[uk:Написана книга]]
[[zh:成书]]</li><li>[[Leather|Leather]]<br/>{{About||the leather from rabbits|Rabbit Hide|the armor material|Armor materials}}
{{Item
| image = Leather.png
| renewable = Yes
| stackable = Yes (64)
}}

'''Leather''' is an [[item]] used to make [[item frame]]s, [[armor]] and [[book]]s.

== Obtaining ==

=== Mob loot ===

Upon death, [[cow]]s, [[mooshroom]]s, [[horse]]s, [[donkey]]s, [[mule]]s, [[llama]]s and [[trader llama]]s drop 0–2 leather, while [[hoglin]]s drop 0–1 leather. The maximum amount is increased by 1 per level of [[Looting]], for a maximum of 5 leather (4 leather from hoglins) with Looting III.

A [[fox]] sometimes spawns holding leather, which always drops upon death. Alternatively, a player can drop a [[food]] item, causing the fox to drop the leather.

=== Fishing ===

Leather can be obtained as a "junk" item from [[fishing]].

=== Crafting ===

{{Crafting
  |A1= Rabbit Hide |B1= Rabbit Hide
  |A2= Rabbit Hide |B2= Rabbit Hide
  |Output=Leather
  |type=Material
}}

=== Chest loot ===

{{LootChestItem|leather}}

=== Villager gifts ===

{{in|java}}, leatherworker [[villager]]s throw leather at players under the [[Hero of the Village]] effect.

=== Bartering ===
[[Piglin]]s may [[barter]] 2-4 leather when given a [[gold ingot]].

== Usage ==

=== Crafting ingredient ===
{{crafting usage}}

=== Trading ===

Novice-level leatherworker villagers have a {{frac|2|3}} chance to [[trading|buy]] 6 leather for one [[emerald]] {{in|java}}, and always offer the trade {{in|bedrock}}.

=== Repairing ===

Leather is the repair item for the [[armor materials|leather armor]], and thus can be used to [[item repair|repair]] the following items in an [[anvil]]:
* {{ItemLink|Leather cap}}
* {{ItemLink|Leather tunic}}
* {{ItemLink|Leather pants}}
* {{ItemLink|Leather boots}}

== Achievements ==
{{load achievements|Cow Tipper}}

== Data values ==
=== ID ===
{{edition|java}}:
{{ID table
|edition=java
|showitemtags=y
|showforms=y
|generatetranslationkeys=y
|displayname=Leather
|spritetype=item
|nameid=leather
|itemtags=ignored_by_piglin_babies
|form=item
|foot=1}}

{{edition|bedrock}}:
{{ID table
|edition=bedrock
|shownumericids=y
|showforms=y
|notshowbeitemforms=y
|generatetranslationkeys=y
|displayname=Leather
|spritetype=item
|nameid=leather
|id=381
|form=item
|foot=1}}

== History ==

{{History|java alpha}}
{{History||v1.0.8|[[File:Leather JE1 BE1.png|32px]] Added leather.
|Leather [[drops]] from [[cow]]s.
|The [[crafting]] recipe for leather [[armor]] has been changed from cloth to leather (leather armor was previously [[craft]]ed with [[wool]], and was called "cloth armor" in the game code).}}
{{History||v1.0.17|[[Chicken]]s in [[Survival]] [[multiplayer]] now [[drop]] leather if killed by [[fire]], fall [[damage]] or [[cactus]].}}
{{History||v1.2.6|Chickens dropping leather was fixed by this version at the latest.{{when|It would be nice to know exactly when. It's at most a 3 1/2 month bug, though it was at the beginning. Might count as short-lived.}}.}}
{{History|java}}
{{History||1.3.1|snap=12w17a|Leather is now required to craft [[book]]s.}}
{{History||1.4.2|snap=12w34a|Leather is now used to craft the newly added [[item frame]]s.}}
{{History||1.6.1|snap=13w16a|Leather is now used to craft [[horse saddle]]s.|[[Horse]]s now [[drop]] leather.}}
{{History|||snap=13w18a|Leather is no longer used to craft [[horse saddle]]s.}}
{{History||1.7.2|snap=13w36a|Leather can be obtained as one of the "junk" [[item]]s in [[fishing]], making it possible to obtain it without killing any [[animal]]s.}}
{{History||1.8|snap=14w02a|Leather can now be [[trading|sold]] to leatherworker [[villager]]s, at 9–12 leather for 1 [[emerald]].}}
{{History|||snap=14w27b|Leather can now be crafted using 4 [[rabbit hide]].}}
{{History||1.9|snap=15w41a|Leather can now be used to repair [[elytra]].}}
{{History||1.11|snap=16w39a|[[Llama]]s now [[drop]] leather.}}
{{History||1.13|snap=17w47a|Prior to [[1.13/Flattening|''The Flattening'']], this [[item]]'s numeral ID was 334.}}
{{History|||snap=18w07a|[[Phantom]]s now drop leather.}}
{{History|||snap=18w14a|Phantoms no longer [[drop]] leather.
|[[Phantom membrane]]s are now used to repair [[elytra]], instead of leather.}}
{{History||1.14|snap=18w43a|[[File:Leather JE2 BE2.png|32px]] The texture of leather has been changed.}}
{{History|||snap=18w48a|Leather can now be found in chests in [[village]] tanneries.}}
{{History|||snap=19w07a|Added [[fox]]es, which sometimes spawn with leather in their mouths.}}
{{History|||snap=19w08a|Leather is now used to [[craft]] leather [[horse armor]].}}
{{History|||snap=19w13a|Leatherworker villagers now give leather to players under the [[Hero of the Village]] effect.}}
{{History||1.16|snap=20w07a|Leather is dropped by the new [[hoglin]]s.
|Leather has a {{frac|5|109}} (~4.59%) chance of being given by the new [[piglin]]s when [[bartering]], in a stack size of 2–7.}}
{{History|||snap=20w09a|Leather now has a {{frac|20|226}} (~8.84%) chance of being given by piglins when bartering, in a stack size of 1–5.}}
{{History|||snap=20w16a|Leather now generates in [[bastion remnants]] chests.}}

{{History|pocket alpha}}
{{History||v0.2.0|[[File:Leather JE1 BE1.png|32px]] Added leather. It is currently unobtainable and serves no purpose.}}
{{History||v0.6.0|Leather is now obtainable by killing [[cow]]s.
|Leather can be used to craft leather [[armor]].}}
{{History||v0.11.0|snap=build 1|Leather can now be obtained as one of the "junk" [[item]]s in [[fishing]], making it possible to obtain it without killing any [[animal]]s.}}
{{History||v0.12.1|snap=build 1|Leather is now required to craft [[book]]s.}}
{{History||v0.13.0|snap=build 1|Leather can now be [[craft]]ed using 4 [[rabbit hide]].}}
{{History||v0.15.0|snap=build 1|Leather is now used to craft leather [[horse armor]].}}
{{History|pocket}}
{{History||1.0.0|snap=alpha 0.17.0.1|Leather can now be used to repair [[elytra]].}}
{{History||1.0.4|snap=alpha 1.0.4.0|9-12 leather can now be [[trading|sold]] to leatherworker [[villager]]s.}}
{{History|bedrock}}
{{History||1.6.0|snap=beta 1.6.0.5|[[Phantom membrane]]s are now used to repair [[elytra]], instead of leather.}}
{{History||1.10.0|snap=beta 1.10.0.3|Leather can now be found in [[village]] tannery house [[chest]]s.
|[[File:Leather JE2 BE2.png|32px]] The texture of leather has been changed.}}
{{History||1.11.0|snap=beta 1.11.0.4|[[Trading]] has been changed, leatherworker [[villager]]s now [[trading|buy]] 6 leather for an [[emerald]].}}
{{History||1.13.0|snap=beta 1.13.0.1|Added [[fox]]es, which can drop leather.}}
{{History||1.16.0|snap=beta 1.16.0.57|Hoglins now drop leather.
|Leather can now be obtained from bartering with piglin.
|Leather can now be found in [[bastion remnants]] chests.}}

{{History|console}}
{{History||xbox=TU1|xbone=CU1|ps=1.0|wiiu=Patch 1|switch=1.0.1|[[File:Leather JE1 BE1.png|32px]] Added leather.}}
{{History||xbox=TU60|xbone=CU51|ps=1.64|wiiu=Patch 30|switch=1.0.11|Leather is now used to [[craft]] leather [[horse armor]].}}
{{History||xbox=TU69|xbone=none|ps=1.76|wiiu=Patch 38|switch=none|[[Phantom membrane]]s are now used to repair [[elytra]], instead of leather.}}
{{History||xbox=none|xbone=none|ps=1.90|wiiu=none|switch=none|[[File:Leather JE2 BE2.png|32px]] The texture of leather has been changed.}}

{{History|new 3ds}}
{{History||0.1.0|[[File:Leather JE1 BE1.png|32px]] Added leather.}}
{{History|foot}}

== Issues ==

{{issue list}}


{{Items}}

[[Category:Renewable resources]]

[[cs:Kůže]]
[[de:Leder]]
[[es:Cuero]]
[[fr:Cuir]]
[[hu:Bőr]]
[[it:Cuoio]]
[[ja:革]]
[[ko:가죽]]
[[nl:Leer]]
[[pl:Skóra]]
[[pt:Couro]]
[[ru:Кожа]]
[[th:หนังสัตว์]]
[[uk:Шкіра]]
[[zh:皮革]]</li></ul>
14w17aAdded /worldborder.
14w19aAdded /worldborder damage <distance>.
Added /worldborder warning (distance|time).
14w26aAdded /worldborder add <distance>.
14w29aAdded /worldborder get.