Obfuscation maps are Proguard mappings from old (original) names to new (obfuscated) names for classes and class members that have been renamed.[1] They have been exported in the client.json for every snapshot since 19w36a, and the client.json for 1.14.4 has been updated slightly after 19w36a's release to include obfuscation maps as well.[2]
Usage
The obfuscation maps are, by design, to remap obfuscated stack traces (as in crash reports) to readable stack traces.[3]
Dinnerbone and Adrian Östergård have suggested that the obfuscation maps may make modding easier.[4][5] Searge has implied that the obfuscation maps can replace certain third-party programs such as the Mod Coder Pack.[6]
Third party usages
The obfuscation maps include enough information to deobfuscate Minecraft for decompilation. Third-party programs may exist for this purpose.
According to the License, such decompiled source code is restricted to internal and reference use.
License
Every obfuscation map file starts with a line indicating the license of the maps.
# (c) 2019 Microsoft Corporation. All rights reserved. This information is provided "as-is" and you bear the risk of using it. This information does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this information for your internal, reference purposes. Microsoft makes no warranties, express or implied, with respect to the information provided here.
History
| September 3, 2019 | Dinnerbone mentions "a small surprise for modders!" for 19w36a. | ||||
|---|---|---|---|---|---|
| Java Edition | |||||
1.15{{Extension DPL}}<ul><li>[[Minecart with TNT|Minecart with TNT]]<br/>{{ItemEntity
|image=Minecart with TNT.png
|renewable=Yes
|stackable=No
|size=Height: 0.7 Blocks<br>Width: 0.98 Blocks
|networkid='''[[JE]]:''' 10
|drops=
;If not exploded
: 1 {{ItemLink|Minecart with TNT}}
|health={{hp|6}}
}}
A '''minecart with TNT''' is a block of [[TNT]] inside a [[minecart]]. Unlike normal TNT it can detonate instantly under certain conditions and its damage and blast radius is increased by its speed when it detonates.
== Obtaining ==
=== Crafting ===
{{Crafting
|Output= Minecart with TNT
|type= Transportation
|TNT|Minecart}}
Minecarts with TNT can be retrieved by attacking them, and by doing so it drops as an [[item]].
== Usage ==
[[File:TNT minecart and powered activator rail.png|thumb|right|When the TNT minecart passes over the powered activator rail, it explodes after four seconds.]]
[[File:Simple TNT minecart detonator setup.png|thumb|right|Placing two TNT minecarts on the rail and powering it (here, by flicking the lever) creates an instant explosion.]]
[[File:TNT minecart roof trap.png|thumb|right|Destroying the gold block causes the TNT minecart to fall down and instantly explode.]]
A minecart with TNT detonates after a delay on these conditions:
* It moves over a powered [[activator rail]].
* It is destroyed while in motion (except by a player in Creative mode).
* It is destroyed by fire, lava, or an explosion.
*{{IN|java}}, it is hit by a [[fire charge]].
The delay is {{convert|4|seconds|ticks}} for an activator rail, like the TNT block. For other causes there is a random delay between 0 and 1.9 seconds, but more likely to be close to 1.
It detonates instantly on these conditions:
* It hits the ground with a downward velocity of it falling more than three blocks, unless landing on any form of rail.
* It turns on a curved track too fast, with a solid block or entity located beside the track (in the previous movement direction).
* It is hit by a flaming arrow.
* It is pressed into a block or entity and has velocity.
Upon detonation it acts as normal TNT, [[exploding]] and damaging nearby blocks, players, and entities. Upon detonation after activating on activator rail, it does not destroy its rails and the blocks the rail is on, however other nearby carts can.{{only|java}} More than one minecart can be placed on the same rail block, allowing many of them to fit into a single block. They explode when touched, dealing large amounts of damage.
The explosion has a base [[Explosion#Explosion strength|power]] of 4, the same as regular TNT, but the game also adds a random bonus value up to 1.5 times velocity, but no higher than 7.5. This means that with a speed of 5 or higher the power will be a random value between 4 and 11.5. When triggered by an activator rail or by damage, the bonus value is calculated using the horizontal velocity of the minecart. When hit by a flaming arrow the velocity of the arrow is used instead. When triggered by fall damage, the fall distance divided by 10 is used.
Minecarts with TNT bounce off of other minecarts and cannot be linked to [[minecarts with furnace]]s.
== Sounds ==
{{Edition|Java}}:<br>
Minecarts with TNT use the Friendly Creatures sound category for entity-dependent sound events.<ref group=sound name=rollsource>{{bug|MC-42132}}</ref>
{{Sound table
|sound=Minecart rolling.ogg
|subtitle=Minecart rolls
|source=Friendly Creatures <ref group=sound name=rollsource/>
|overridesource=1
|description=While a minecart with TNT is moving
|id=entity.minecart.riding
|translationkey=subtitles.entity.minecart.riding
|volume=0.0-0.35 <ref group=sound>Relates linearly with horizontal velocity (max 0.5)</ref>
|pitch=0.0-1.0 <ref group=sound>Will increase by 0.0025 per tick if the minecart's horizontal velocity is more than 0.01</ref>
|distance=16}}
{{Sound table
|sound=Fuse.ogg
|subtitle=TNT fizzes
|source=block
|description=When a minecart with TNT is primed
|id=entity.tnt.primed
|translationkey=subtitles.entity.tnt.primed
|volume=1.0
|pitch=1.0
|distance=16}}
{{Sound table
|sound=Explosion1.ogg
|sound2=Explosion2.ogg
|sound3=Explosion3.ogg
|sound4=Explosion4.ogg
|subtitle=Explosion
|source=block
|description=When a minecart with TNT explodes
|id=entity.generic.explode
|translationkey=subtitles.entity.generic.explode
|volume=4.0
|pitch=0.56-0.84
|distance=16
|foot=1}}
{{Edition|Bedrock}}:<ref group=sound>{{Bug|MCPE-35778||Minecart with tnt does not have the sound of tnt being ignited when we use flint and steel, fire charge or activator rail}}</ref>
{{Sound table
|type=bedrock
|sound=Minecart rolling.ogg
|source=neutral
|description=While a minecart with TNT is moving
|id=minecart.base}}
{{Sound table
|sound=Explosion1.ogg
|sound2=Explosion2.ogg
|sound3=Explosion3.ogg
|sound4=Explosion4.ogg
|source=block
|description=When a minecart with TNT explodes
|id=random.explode
|volume=4.0
|pitch=1.0
|foot=1}}
== Data values ==
=== ID ===
{{edition|java}}:
{{ID table
|edition=java
|firstcolumnname=Item
|showforms=y
|generatetranslationkeys=y
|displayname=Minecart with TNT
|spritetype=item
|nameid=tnt_minecart
|form=item
|foot=1}}
{{ID table
|edition=java
|firstcolumnname=Entity
|generatetranslationkeys=y
|displayname=Minecart with TNT
|spritetype=entity
|nameid=tnt_minecart
|foot=1}}
{{edition|bedrock}}:
{{ID table
|edition=bedrock
|firstcolumnname=Item
|shownumericids=y
|showforms=y
|notshowbeitemforms=y
|generatetranslationkeys=y
|displayname=Minecart with TNT
|spritetype=item
|nameid=tnt_minecart
|id=525
|form=item
|foot=1}}
{{ID table
|edition=bedrock
|firstcolumnname=Entity
|shownumericids=y
|generatetranslationkeys=y
|displayname=Minecart with TNT
|spritetype=entity
|nameid=tnt_minecart
|id=97
|foot=1}}
=== Entity data ===
Minecarts with TNT have entity data associated with them that contain various properties of the entity.
{{el|java}}:
{{main|Entity format}}
{{/ED}}
{{el|bedrock}}:
: See [[Bedrock Edition level format/Entity format]].
== Video ==
<div style="text-align:center">{{yt|1yNgY913tps}}</div>
== History ==
{{History|java}}
{{History||1.5|snap=13w02a|[[File:Minecart_with_TNT_JE1_BE1.png|32px]] [[File:Minecart_with_TNT_(item)_JE1_BE1.png|32px]] Added minecart with TNT.}}
{{History|||snap=13w03a|Minecart with TNT no longer destroys nearby [[rail]]s and rail supports during [[explosion]].<ref>{{bug|MC-6833}}</ref>}}
{{History||1.8|snap=14w11a|Minecart with TNT explosions no longer stack.<!--reverted in 17a like other changes in 11a?-->}}
{{History|||snap=14w26a|Minecart with TNT can now be detonated using [[arrow]]s on fire.}}
{{History||1.11|snap=16w32a|The [[entity]] ID for minecart with TNT has been changed from <code>MinecartTNT</code> to <code>tnt_minecart</code>.}}
{{History||1.12|snap=1.12-pre6|No longer instantly explode when hit with [[fire charge]]s; instead, they explode as if primed by an [[activator rail]].}}
{{History||1.13|snap=17w47a|Prior to [[1.13/Flattening|''The Flattening'']], this [[item]]'s numeral ID was 407.}}
{{History||1.14|snap=18w43a|[[File:Minecart with TNT JE2 BE2.png|32px]] [[File:Minecart with TNT (item) JE2 BE2.png|32px]] The textures of minecart with TNT have been updated.}}
{{History|||snap=19w11a|Minecart with TNT explosions now have a 100% drop rate.}}
{{History||1.15|snap=19w38a|[[File:Minecart with TNT 19w38a.png|32px]] The TNT now appear dark, same as suffocating mobs.}}
{{History|||snap=19w39a|The TNT texture now colored correctly.}}
{{History||1.15|snap=Pre-release 1|[[File:Minecart with TNT JE3.png|32px]] The [[model]] of minecart with TNT has been changed.<ref>{{bug|MC-165971}}</ref>}}
{{History|||snap=Pre-release 3|[[File:Minecart with TNT JE2 BE2.png|32px]] The model of minecart with TNT has been changed back to the [[Java Edition 18w43a|18w43a]] model.}}
{{History||1.19|snap=22w13a|The crafting recipe for a minecart with TNT is now shapeless.
|Breaking a minecart with TNT will now drop the item instead of the minecart and TNT separately.<ref>{{bug|MC-249493|||Fixed}}</ref>}}
{{History|pocket alpha}}
{{History||v0.14.0|snap=build 1|[[File:Minecart with TNT JE1 BE1.png|32px]] [[File:Minecart with TNT (item) JE1 BE1.png|32px]] Added minecart with TNT.}}
{{History|pocket}}
{{History||1.1.0|snap=alpha 1.1.0.0|The [[entity]] ID has been changed from <code>minecarttnt</code> to <code>tnt_minecart</code>.}}
{{History|bedrock}}
{{History||1.10.0|snap=beta 1.10.0.3|[[File:Minecart with TNT JE2 BE2.png|32px]] [[File:Minecart with TNT (item) JE2 BE2.png|32px]] The textures of minecart with TNT have been updated.}}
{{History||1.19.0|snap=beta 1.19.0.30|Breaking a minecart with TNT will now drop the item instead of the minecart and TNT separately.}}
{{History|console}}
{{History||xbox=TU19|xbone=CU7|ps=1.12|wiiu=Patch 1|switch=1.0.1|[[File:Minecart with TNT JE1 BE1.png|32px]] [[File:Minecart with TNT (item) JE1 BE1.png|32px]] Added minecart with TNT.}}
{{History||xbox=none|xbone=none|ps=1.90|wiiu=none|switch=none|[[File:Minecart with TNT JE2 BE2.png|32px]] [[File:Minecart with TNT (item) JE2 BE2.png|32px]] The textures of minecart with TNT have been updated.}}
{{History|new 3ds}}
{{History||0.1.0|[[File:Minecart with TNT JE1 BE1.png|32px]] [[File:Minecart with TNT (item) JE1 BE1.png|32px]] Added minecart with TNT.
|Minecart with TNT emits smoke [[particle]]s when destroyed.}}
{{History|foot}}
== Issues ==
{{issue list}}
== Trivia ==
* A direct hit from three merged [[minecart]]s with [[TNT]] can reduce a fully [[diamond]] [[armor]]ed player to half a heart.<ref>{{tweet|dinner|289532985340993536|Haha, oops... Nuclear minecarts! (mature language)|January 10, 2013}}</ref> However, if the TNT minecarts explode, they do not destroy any [[rail]]s.
== Gallery ==
<gallery>
File:First TNT Minecart Image.jpg|The first image of minecarts with TNT, released by Dinnerbone.<ref>{{tweet|dinner|288302629803683840|Those blasted pigs have taken the village. We've ran out of options; we must stop them from spreading further!|January 7, 2013}}</ref><ref>{{tweet|dinner|288304442560880643|(Mirror: <nowiki>[imgur link])|January 7, 2013}}</ref> (One can be seen in the lower-left corner.)
File:First TNT Minecart Image ZOOM.jpg|A more zoomed in image.
File:Minecart-with-tnt.png|Minecart with TNT and activator rail for detonation.
File:13w02a Banner.png|The 13w02a banner, with a minecart with TNT and a [[hopper]].
File:Dinnerbone safe boom1.jpg|Dinnerbone showing how minecarts with TNT have controlled explosions.<ref>{{tweet|dinner|291212723755307009|What's the point of properly activating TNT carts if they just blow up your tracks? Let me answer that with an album!|January 15, 2013}}</ref>
File:Dinnerbone safe boom 2.png|Primed minecart with TNT.
File:Dinnerbone safe boom 3.jpg|Explosion from a minecart with TNT. (The "bridge" of rails is left undestroyed by the explosion.)
</gallery>
== References ==
{{reflist}}
{{items}}
{{entities}}
[[Category:Mechanics]]
[[cs:Vozík s TNT]]
[[de:TNT-Lore]]
[[es:Vagoneta con dinamita]]
[[fr:Wagonnet à TNT]]
[[it:Carrello da miniera]]
[[ja:TNT付きのトロッコ]]
[[ko:TNT가 실린 광산 수레]]
[[nl:Mijnkar met TNT]]
[[pl:Wagonik z TNT]]
[[pt:Carrinho de mina com dinamite]]
[[ru:Вагонетка с ТНТ]]
[[uk:Вагонетка з динамітом]]
[[zh:TNT矿车]]</li><li>[[Torchflower Seeds|Torchflower Seeds]]<br/>{{wip}}
{{Block
| image = <gallery>
Torchflower Age 0.png| Age 0
Torchflower Age 1.png| Age 1
Torchflower Age 2.png| Age 2
</gallery>
| image2 = Torchflower Seeds JE1.png
| transparent = Yes
| light = No
| tool = N/A
| renewable = Yes
| stackable = Yes (64)
| rarity = Common
|flammable=No
|lavasusceptible=No
}}
'''Torchflower seeds''' are seeds that have a chance to be dropped by [[Sniffer|sniffers]] when they finish digging.
== Obtaining ==
[[Sniffer]]s will occasionally bury their nose in the ground and start digging. Once the sniffer has finished digging, one torchflower seed will have a chance to be dropped on the floor as an item.
Sniffers can only dig for torchflower seeds in the following blocks:
*{{BlockLink|Dirt}}
*{{BlockLink|Grass Block}}
*{{BlockLink|Podzol}}
*{{BlockLink|Coarse Dirt}}
*{{BlockLink|Rooted Dirt}}
*{{BlockLink|Moss Block}}
*{{BlockLink|Mud}}
*{{BlockLink|Muddy Mangrove Roots}}
They cannot dig for torchflower seeds on [[mycelium]], which is intended.<ref>{{bug|MC-260259||Sniffers cannot dig nor find seeds on mycelium|WAI}}</ref>
== Usage ==
=== Crop ===
{{main|Tutorials/Crop farming|title1=Crop farming}}
Torchflower seeds can be {{control|placed}} on [[farmland]], where they grow through three stages. Breaking the torchflower crop before it matures drops the seed, while breaking the final stage produces one [[torchflower]] and does not yield the seed.
Crops break if pushed by a [[piston]] or if their supporting farmland breaks or turns to dirt (i.e. by being trampled), dropping their usual drops.
Farmer [[villager]]s can plant torchflower seeds, but cannot harvest them after they have fully grown.<ref>{{bug|MC-263382|||WAI}}</ref>
=== Feeding ===
Torchflower seeds can be used to breed [[sniffer]]s and [[chicken]]s and reduce the remaining growth duration of snifflets and chicks by 10%. Also, if some torchflower seeds were fed to an injured sniffer, it will heal it by {{hp|2}} health points.
=== Taming ===
Torchflower seeds can be used to tame [[parrot]]s.
=== Composting ===
Placing torchflower seeds into a [[composter]] has a 30% chance of raising the compost level by 1.
== Sounds ==
{{Sound table/Block/Crop}}
== Data values ==
=== ID ===
{{edition|java}}:
{{ID table
|edition=java
|showblocktags=y
|showitemtags=y
|showforms=y
|generatetranslationkeys=y
|displayname=Torchflower Crop
|spritetype=block
|nameid=torchflower_crop
|form=block
|blocktags=bee_growables, crops}}
{{ID table
|displayname=Torchflower Seeds
|spritetype=item
|nameid=torchflower_seeds
|form=item
|itemtags=villager_plantable_seeds
|foot=1}}
{{edition|bedrock}}:
{{ID table
|edition=bedrock
|shownumericids=y
|showforms=y
|generatetranslationkeys=y
|displayname=Torchflower Crop
|spritetype=block
|nameid=torchflower_crop
|id=-567
|form=block
|translationkey=-}}
{{ID table
|displayname=Torchflower Seeds
|spritetype=item
|nameid=torchflower_seeds
|id=296
|form=item
|foot=1}}
=== Block states ===
{{see also|Block states}}
{{/BS}}
== Achievements ==
{{Load achievements|Planting The Past}}
== Advancements ==
{{load advancements|A Seedy Place;Planting The Past;Little Sniffs}}
== History ==
{{History|java}}
{{History||1.20<br>(Experimental)|link=1.19.4|snap=23w07a|[[File:Torchflower Seeds JE1.png|32px]] Added torchflower seeds behind the [[Java Edition 1.20|Update 1.20 experimental datapack]].}}
{{History|||snap=1.19.4 Pre-release 1|Torchflower seeds can now be used to breed [[chicken]]s and tame [[parrot]]s.<ref>{{bug|MC-260035|||Fixed}}</ref>|Torchflower seeds are now next to other seeds in the [[Creative inventory]].|Placing torchflower seeds in farmland now gives the player the "A Seedy Place" [[advancement]].}}
{{History||1.20|snap=23w12a|[[Sniffer]]s can now be obtained in Survival, making torchflower seeds [[renewable]].|Torchflower seeds are now available without using the "Update 1.20" experimental datapack.}}
{{History|||snap=23w14a|Torchflower seeds can now be picked up by farmer [[villager]]s.|[[Sniffer]]s can now be tempted with torchflower seeds.}}
{{History|||snap=23w16a|[[Villager]]s can now plant torchflower seeds.}}
{{History|||snap=23w17a|The player now get the [[advancement]] "Little sniffs" when they feed a [[snifflet]] using torchflower seeds, "Planting the past" when they plant torchflower seeds on [[farmland]].}}
{{History|bedrock}}
{{History||Sniffer<br>(Experimental)|link=Bedrock Edition 1.19.70|snap=beta 1.19.70.23|[[File:Torchflower Seeds JE1.png|32px]] Added torchflower seeds behind the "[[Bedrock Edition 1.20.0|Sniffer]]" [[experimental]] toggle.}}
{{History||1.20.0|snap=beta 1.20.0.20|Torchflower seeds are now available without using the "Sniffer" experimental toggle.}}
{{History|foot}}
== Issues ==
{{issue list}}
== Trivia ==
* The final growth stage of the torchflower crop uses the same ID as the actual torchflower. This causes some side effects, such as the plant becoming offset and randomly jumping to the side.<ref>{{bug|MC-260472|resolution=wai}}</ref>
== Gallery ==
<gallery>
Torchflower Seeds stages.png|All the growth stages of torchflower seeds.
</gallery>
== Notes ==
{{notelist}}
== References ==
{{reflist}}
{{Blocks|upcoming}}
{{Items}}
[[Category:Plants]]
[[Category:Non-solid blocks]]
[[de:Fackelliliensamen]]
[[es:Semillas de plantorcha]]
[[ja:トーチフラワーの種]]
[[pt:Sementes de plantocha]]
[[zh:火把莲种子]]</li></ul></nowiki> | 19w36a | Downloads to client and server obfuscation maps are now included in client.json. | |||
| September 4, 2019 | Dinnerbone releases obfuscation mappings for 1.14.4 as well. | ||||
References
- ↑ "ProGuard manual | Usage" – Guardsquare.
- ↑ "I've been pushing for this for a while, so I'm really happy that we were finally able to release the obfuscation mappings public. @SeargeDP had a great idea to release the 1.14.4 mappings as comparison, so those are going out right now." – @Dinnerbone (Nathan Adams) on X, September 4, 2019
- ↑ "ProGuard manual | Retrace" – Guardsquare.
- ↑ "Tomorrow's snapshot has a small surprise for modders! Should make one or two people happy :)" – @Dinnerbone (Nathan Adams) on X, September 3, 2019
- ↑ "Happy modding!" – @adrian_ivl on X, September 4, 2019
- ↑ "This should answer the questions of everyone who kept asking about MCP updates for newer versions of Minecraft. Spoiler: there won't be any, they are finally not necessary anymore." – @SeargeDP (Michael Stoyke) on X, September 4, 2019
| Versions | |||
|---|---|---|---|
| Development |
| ||
| Technical |
| ||
| Multiplayer | |||
| Game customization | |||