|
“ |
|
„ |
| — Dinnerbone on the advancements system[1] |
The popup that appears when an advancement is completed.
The popup that appears when a goal advancement is completed.
The popup that appears when special challenge advancements are completed.
Advancements are a way to gradually guide new players into Minecraft and give them challenges to complete, similar to the more simple system of achievements in the Legacy Console Edition, Bedrock Edition, and New Nintendo 3DS Edition.
Obtaining
Advancements can be completed in any game mode, and are obtained and saved per world. Advancements can also be granted (and revoked) using the /advancement command.
Although advancements guide players logically through the game, they are independent of each other; an advancement can be completed without having completed the advancements "before" it.
When an advancement is obtained, a sliding toast notification displays in the top right corner as well and a message will be displayed in chat. The color of the header text in the notification depends on the advancement; normal and goal advancements have yellow header text, while challenge advancements have pink header text. Completing a normal advancement will make the header text display "Advancement Made!", completing a goal advancement will result in a "Goal Reached!" header and a challenge advancement will give "Challenge Completed!".
Interface
The advancements interface. One advancement ("Isn't It Iron Pick") is selected.
The button to access the Advancements screen is found on the pause menu screen. You can also open this screen by pressing L (this can be changed in the in-game options menu).
The advancement system involves several trees composed of advancements, each tree beginning with a root advancement and ending with goal or challenge advancements. By clicking and dragging, you can view different branches of an advancement tree. Each tree is categorized into different tabs (which are, themselves, advancements). There are currently five tabs in vanilla Minecraft (although more may possibly be added[2][3]):
- Minecraft: The heart and story of the game.
- Adventure: Adventure, exploration, and combat.
- Nether: Bring summer clothes.
- The End: Or the beginning?
- Husbandry: The world is full of friends and food.
Each tab has a different background with a repeating texture.
Advancement icons display a header name and description when hovered over. They only appear in a tree when the advancement before it is completed, although, as stated before, advancements can be completed in any order.
If the player has not completed any advancements, the interface will show a black background with white text reading "There doesn't seem to be anything here... :(".
The icon frames of advancements can vary in appearance based on difficulty, and whether or not it was completed. A legend is provided below:
| Icon Frame | Description | |
|---|---|---|
| Regular | Completed | |
|
|
Normal advancement. |
|
|
Goal advancement. |
|
|
Challenge advancement. |
Extra advancements and tabs can be added and customized with the use of JSON files, as detailed below.
List of advancements
Minecraft
| Icon | Advancement | In-game description | Parent | Actual requirements (if different) | Resource location | |
|---|---|---|---|---|---|---|
![]() | Minecraft | The heart and story of the game | — | Get a crafting table in your inventory. | minecraft:story/root
| |
![]() | Stone Age | Mine stone with your new pickaxe | Minecraft | Get cobblestone in your inventory. | minecraft:story/mine_stone
| |
![]() | Getting an Upgrade | Construct a better pickaxe | Stone Age | Get a stone pickaxe in your inventory. | minecraft:story/upgrade_tools
| |
![]() | Acquire Hardware | Smelt an iron ingot | Getting an Upgrade | Get an iron ingot in your inventory. | minecraft:story/smelt_iron
| |
![]() | Suit Up | Protect yourself with a piece of iron armor | Acquire Hardware | Get any type of iron armor in your inventory. | minecraft:story/obtain_armor
| |
![]() | Hot Stuff | Fill a bucket with lava | Acquire Hardware | Get a lava bucket in your inventory. | minecraft:story/lava_bucket
| |
![]() | Isn't It Iron Pick | Upgrade your pickaxe | Acquire Hardware | Get an iron pickaxe in your inventory. | minecraft:story/iron_tools
| |
![]() | Not Today, Thank You | Deflect an arrow with a shield | Suit Up | Deflect a projectile with a shield. | minecraft:story/deflect_arrow
| |
![]() | Ice Bucket Challenge | Form and mine a block of Obsidian | Hot Stuff | Get a block of obsidian in your inventory. | minecraft:story/form_obsidian
| |
![]() | Diamonds! | Acquire diamonds | Isn't It Iron Pick | Get a diamond in your inventory. | minecraft:story/mine_diamond
| |
![]() | We Need to Go Deeper | Build, light and enter a Nether Portal | Ice Bucket Challenge | Enter the Nether dimension. | minecraft:story/enter_the_nether
| |
![]() | Cover Me With Diamonds | Diamond armor saves lives | Diamonds! | Get any type of diamond armor in your inventory. | minecraft:story/shiny_gear
| |
![]() | Enchanter | Enchant an item at an Enchanting Table | Diamonds! | — | minecraft:story/enchant_item
| |
![]() | Zombie Doctor | Weaken and then cure a zombie villager | We Need to Go Deeper | Throw a splash potion of weakness at a zombie villager and give it a golden apple (by facing the zombie and pressing the use key with a golden apple in your hand). | minecraft:story/cure_zombie_villager
| |
![]() | Eye Spy | Follow an Ender Eye | We Need to Go Deeper | Enter a stronghold. | minecraft:story/follow_ender_eye
| |
![]() | The End? | Enter the End Portal | Eye Spy | Enter the End dimension. | minecraft:story/enter_the_end
| |
Nether
| Icon | Advancement | In-game description | Parent | Actual requirements (if different) | Resource location | Rewards |
|---|---|---|---|---|---|---|
File:Grid Red Nether Brick.png | Nether | Bring summer clothes | — | Enter the Nether dimension. | minecraft:nether/root
| — |
![]() | Subspace Bubble | Use the Nether to travel 7km in the Overworld | Nether | Use the Nether to travel between 2 points in the Overworld with a minimum horizontal distance of 7000 blocks between each other. | minecraft:nether/fast_travel
| 100 experience |
![]() | A Terrible Fortress | Break your way into a Nether Fortress | Nether | Enter a Nether fortress. | minecraft:nether/find_fortress
| — |
![]() | Return to Sender | Destroy a Ghast with a fireball | Nether | Kill a ghast using a ghast fireball. | minecraft:nether/return_to_sender
| 50 experience |
![]() | Into Fire | Relieve a Blaze of its rod | A Terrible Fortress | Get a blaze rod in your inventory. | minecraft:nether/obtain_blaze_rod
| — |
![]() | Spooky Scary Skeleton | Obtain a wither skeleton's skull | A Terrible Fortress | Get a wither skeleton skull in your inventory. | minecraft:nether/get_wither_skull
| — |
![]() | Uneasy Alliance | Rescue a Ghast from the Nether, bring it safely home to the Overworld... and then kill it. | Return to Sender | Kill a Ghast in the Overworld. | minecraft:nether/uneasy_alliance
| 100 experience |
![]() | Local Brewery | Brew a potion | Into Fire | Pick up an item from a brewing stand potion slot. | minecraft:nether/brew_potion
| — |
![]() | Withering Heights | Summon the Wither | Spooky Scary Skeleton | Be within a 100.9×100.9×103.5 cuboid centered on the Wither when it is spawned. | minecraft:nether/summon_wither
| — |
![]() | A Furious Cocktail | Have every potion effect applied at the same time | Local Brewery | Have all of these 11 potion effects applied to you at the same time. | minecraft:nether/all_potions
| 100 experience |
![]() | Bring Home the Beacon | Construct and place a Beacon | Withering Heights | Be within a 20×20×14 cuboid centered on a beacon block when it realizes it has become powered. | minecraft:nether/create_beacon
| — |
![]() | How Did We Get Here? | Have every effect applied at the same time | A Furious Cocktail | Have all of these 20 effects applied to you at the same time. | minecraft:nether/all_effects
| 1,000 experience |
![]() | Beaconator | Bring a beacon to full power | Bring Home the Beacon | Be within a 20×20×14 cuboid centered on a beacon block when it realizes it is being powered by a size 4 pyramid. | minecraft:nether/create_full_beacon
| — |
The End
| File:Grid End Stone.png The End | ||||||
|---|---|---|---|---|---|---|
| Icon | Advancement | In-game description | Parent | Actual requirements (if different) | Resource location | Rewards |
![]() | The End | Or the beginning? | — | Enter the End dimension. | minecraft:end/root
| — |
![]() | Free the End | Good luck | The End | Kill the ender dragon. | minecraft:end/kill_dragon
| — |
![]() | The Next Generation | Hold the Dragon Egg | Free the End | Get the dragon egg in your inventory. | minecraft:end/dragon_egg
| — |
![]() | Remote Getaway | Escape the island | Free the End | Throw an ender pearl through or walk into an End gateway. | minecraft:end/enter_end_gateway
| — |
![]() | The End... Again... | Respawn the ender dragon. | Free the End | Summon an ender dragon using ender crystals. | minecraft:end/respawn_dragon
| — |
![]() | You Need a Mint | Collect dragon's breath in a glass bottle. | Free the End | Get a bottle of dragon's breath in your inventory. | minecraft:end/dragon_breath
| — |
![]() | The City at the End of the Game | Go on in, what could happen? | Remote Getaway | Enter an End city. | minecraft:end/find_end_city
| — |
![]() | Sky's the Limit | Find an Elytra | The City at the End of the Game | Get a pair of elytra in your inventory. | minecraft:end/elytra
| — |
![]() | Great View From Up Here | Levitate up 50 blocks from the attacks of a Shulker | The City at the End of the Game | Have the Levitation effect applied, and move a vertical distance of 50 blocks. | minecraft:end/levitate
| 50 experience |
Adventure
| Icon | Advancement | In-game description | Parent | Actual requirements (if different) | Resource location | Rewards |
|---|---|---|---|---|---|---|
![]() | Adventure | Adventure, exploration, and combat | — | Kill any entity, or be killed by any entity. | minecraft:adventure/root
| — |
![]() | Monster Hunter | Kill any hostile monster | Adventure | Kill one of these 23 mobs (1 added in [[Template:1.13]][upcoming]). Other mobs are ignored for this advancement. | minecraft:adventure/kill_a_mob
| — |
![]() | What a Deal! | Successfully trade with a Villager | Adventure | — | minecraft:adventure/trade
| — |
![]() | Sweet dreams | Change your respawn point | Adventure | Lie down in a bed. The advancement will be granted as soon as the player is in the bed, even if the player does not actually successfully sleep. | minecraft:adventure/sleep_in_bed
| — |
![]() | Take Aim | Shoot something with a bow and arrow | Monster Hunter | Fire a bow so that the arrow strikes any entity. | minecraft:adventure/shoot_arrow
| — |
![]() | Monsters Hunted | Kill one of every hostile monster | Monster Hunter | Kill each of these 23 mobs (1 added in [[Template:1.13]][upcoming]). Other mobs may be killed, but are ignored for the advancement. | minecraft:adventure/kill_all_mobs
| 100 experience |
![]() | Postmortal | Use a Totem of Undying to cheat death | Monster Hunter | — | minecraft:adventure/totem_of_undying
| — |
![]() | Hired Help | Summon an Iron Golem to help defend a village | What a Deal! | Summon an iron golem. | minecraft:adventure/summon_iron_golem
| — |
![]() | Adventuring Time | Discover every biome | Sweet dreams | Visit or 40 biomes (4 added in [[Template:1.13]][upcoming]). Other biomes may also be visited, but are ignored for the advancement. | minecraft:adventure/adventuring_time
| 500 experience |
![]() | Sniper duel | Kill a skeleton with an arrow from more than 50 meters | Take Aim | Use a launched arrow to kill a skeleton from 50 or more blocks away, horizontally. | minecraft:adventure/sniper_duel
| 50 experience |
Husbandry
| Icon | Advancement | In-game description | Parent | Actual requirements (if different) | Resource location | Rewards |
|---|---|---|---|---|---|---|
![]() | Husbandry | The world is full of friends and food | — | Eat anything that can be eaten. | minecraft:husbandry/root
| — |
![]() | The Parrots and the Bats | Breed two animals together | Husbandry | Breed a pair of one of these 10 mobs. Other breedable mobs, if any, are ignored for the advancement. | minecraft:husbandry/breed_an_animal
| — |
![]() | Best Friends Forever | Tame an animal | Husbandry | Tame one of the 5 types of mob that are tamable. | minecraft:husbandry/tame_an_animal
| — |
![]() | A Seedy Place | Plant a seed and watch it grow | Husbandry | Plant one of these 5 plants. Other plants are ignored for the advancement. | minecraft:husbandry/plant_seed
| — |
![]() | Two by Two | Breed all the animals! | The Parrots and the Bats | Breed pairs of each of these 10 mobs. Other tamable mobs, if any, are ignored for the advancement. | minecraft:husbandry/bred_all_animals
| 100 experience |
![]() | A Balanced Diet | Eat everything that is edible, even if it's not good for you | A Seedy Place | Eat each of these 36 foods. (1 added in [[Template:1.13]][upcoming]) Other foods, like cake, are ignored for the advancement. | minecraft:husbandry/balanced_diet
| 100 experience |
![]() | Serious Dedication | Completely use up a diamond hoe, and then reevaluate your life choices | A Seedy Place | Use up the final bit of durability on a diamond hoe, so that it breaks. | minecraft:husbandry/break_diamond_hoe
| 100 experience |
JSON Format
Custom advancements in the 'data/advancements' folder of a Minecraft world store the advancement data for that world as separate JSON files:
All advancement JSON files are structured according to the following format:
- The root tag.
- display: The optional display data.
- icon: The data for the icon.
- item: The item id.
- data: The damage value for the item.[upcoming]
- title: The title for this advancement.
- title: A JSON text component (containing text and formatting like used in /tellraw and various other commands. Also translate tag can be used here).
- frame: The optional type of frame for the icon.
challengefor a tile with a more fancy spiked border as it is used for the kill all mobs advancement,goalfor a tile with a rounded border as it is used for the full beacon advancement,taskfor a normal tile (default.) - background: The optional directory for the background to use in this advancement tab (only for the root advancement).
- description: The description of the advancement.
- description: A JSON text component (containing text and formatting like used in /tellraw and various other commands. Also translate tag can be used here).
- show_toast: Can be
trueorfalse. Whether or not to show the toast pop up after completing this advancement. Defaults to true. - announce_to_chat: Can be
trueorfalse. Whether or not to announce in the chat when this advancement has been completed. Defaults to true. - hidden: Can be
trueorfalse. Whether or not to hide this advancement and all its children from the advancement screen until this advancement have been completed. Has no effect on root advancements them self but will still affect all their children. Defaults to false.
- icon: The data for the icon.
- parent: The optional parent advancement directory of this advancement (does not apply for the root advancement).
- criteria: The required criteria that have to be met.
- <criteriaName>: A name given to the criteria (can be any string, must be unique).
- trigger: The trigger for this advancement; specifies what the game should check for the advancement.
- conditions: All the conditions that need to be met when the trigger gets activated.
- <criteriaName>: A name given to the criteria (can be any string, must be unique).
- requirements: An optional list of requirements (all the <criteriaName>). If all criteria are required, this may be omitted. With multiple criteria: requirements contains a list of lists with criteria (all criteria need to be mentioned). If all of the lists each have any criteria met, it will complete the advancement. (basically AND grouping of OR groups)
- rewards: An optional collection of the rewards provided when this advancement is obtained.
- recipes: A list of crafting recipes (strings).
- loot: A list of loot tables (strings).
- experience: An amount of experience.
- function: A function to run. Functions are text files with the file extension
.mcfunctionin .minecraft\saves\XXXX\data\functions\ and can contain a list of commands to run in order.
- display: The optional display data.
List of triggers
minecraft:bred_animals
Triggers after the player breeds 2 animals. Available conditions:
- conditions:
- child: The child that results from the breeding.
- All possible conditions for entities
- parent: The parent.
- All possible conditions for entities
- partner: The partner (the entity the parent was bred with, useful for checking horses + donkey = mule breeding)
- All possible conditions for entities
- child: The child that results from the breeding.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:bred_animals",
"conditions": {
"child": {
"type": "mule"
},
"parent": {
"location": {
"biome": "beaches"
}
},
"partner": {
"effects": {
"minecraft:speed": {
"amplifier": {
"min": 2
}
}
}
}
}
}
}
}
minecraft:brewed_potion
Triggers after the player takes any item out of a brewing stand. Available conditions:
- conditions:
- potion: A brewed potion ID.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:brewed_potion",
"conditions": {
"potion": "minecraft:strong_swiftness"
}
}
}
}
minecraft:changed_dimension
Triggers after the player travels between two dimensions. Available conditions:
- conditions:
- from: The dimension the entity traveled from. Accepts these 3 values.
- to: The dimension the entity traveled to. Same accepted values as above.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:changed_dimension",
"conditions": {
"from": "the_end",
"to": "overworld"
}
}
}
}
minecraft:construct_beacon
Triggers after the player changes the structure of a beacon. (When the beacon updates itself). Available conditions:
- conditions:
- level: The tier of the updated beacon structure.
- level:
- max: The maximum value.
- min: The minimum value.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:construct_beacon",
"conditions": {
"level": {
"min": 3
}
}
}
}
}
minecraft:consume_item
Triggers when the player consumes an item. Available conditions:
- conditions:
- item: The item that was consumed
- All possible conditions for items
- item: The item that was consumed
An example
{
"criteria": {
"example": {
"trigger": "minecraft:consume_item",
"conditions": {
"item": {
"item": "minecraft:golden_apple",
"data": 1,
"nbt": "{display:{Name:\"Example\"}}"
}
}
}
}
}
minecraft:cured_zombie_villager
Triggers when the player cures a zombie villager. Available conditions:
- conditions:
- villager: The villager that is the result of the conversion. The 'type' tag is redundant since it will always be "villager".
- All possible conditions for entities
- zombie: The zombie villager right before the conversion is complete (not when it is initiated). The 'type' tag is redundant since it will always be "zombie_villager".
- All possible conditions for entities
- villager: The villager that is the result of the conversion. The 'type' tag is redundant since it will always be "villager".
An example
{
"criteria": {
"example": {
"trigger": "minecraft:cured_zombie_villager",
"conditions": {
"villager": {
"location": {
"biome": "plains"
}
},
"zombie": {
"distance": {
"horizontal": {
"max": 10
}
}
}
}
}
}
}
minecraft:effects_changed
Triggers after the player gets a status effect applied or taken from them. Available conditions:
- conditions:
- effects: A list of status effects the player has.
- <minecraft:effect_name>: A status effect with the key name being the status effect name.
- amplifier: The effect amplifier.
- amplifier:
- max: The maximum value.
- min: The minimum value.
- duration: The effect duration in ticks.
- duration:
- max: The maximum value.
- min: The minimum value.
- <minecraft:effect_name>: A status effect with the key name being the status effect name.
- effects: A list of status effects the player has.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:effects_changed",
"conditions": {
"effects": {
"minecraft:weakness": {},
"minecraft:slowness": {
"amplifier": 2,
"duration": {
"min": 100,
"max": 500
}
}
}
}
}
}
}
minecraft:enchanted_item
Triggers after the player enchants an item through an enchanting table (does not get triggered through an anvil, or through commands). Available conditions:
- conditions:
- item: The item after it has been enchanted.
- All possible conditions for items
- levels: The levels spent by the player on the enchantment.
- levels:
- max: The maximum value.
- min: The minimum value.
- item: The item after it has been enchanted.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:enchanted_item",
"conditions": {
"item": {
"item": "minecraft:wooden_sword",
"enchantments": [
{
"enchantment": "minecraft:sharpness",
"levels": {
"min": 2
}
}
]
},
"levels": {
"min": 3
}
}
}
}
}
minecraft:enter_block
Triggers when the player stands in a block. Checks every tick and will try to trigger for each successful match (up to 8 times, the maximum amount of blocks a player can stand in), which only works if the advancement is revoked from within the advancement using a function reward. Available conditions:
- conditions:
- block: The block that the player is standing in. Accepts block IDs.
- state: The block states of the block.
- <state_name>: A single block state, with the key name being the state name and the value being the required value of that state.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:enter_block",
"conditions": {
"block": "minecraft:red_flower",
"state": {
"type": "allium"
}
}
}
}
}
minecraft:entity_hurt_player
Triggers after a player gets hurt. Available conditions:
- conditions:
- damage: Checks the damage done to the player.
- Damage tags
- damage: Checks the damage done to the player.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:entity_hurt_player",
"conditions": {
"damage": {
"source_entity": {
"type": "skeleton"
},
"direct_entity": {
"type": "arrow"
},
"taken": {
"min": 4.0
}
}
}
}
}
}
minecraft:entity_killed_player
Triggers after an entity kills a player. Available conditions:
- conditions:
- entity: Checks the entity that was the source of the damage that killed the player (for example: The skeleton that shot the arrow).
- All possible conditions for entities
- killing_blow: Checks the type of damage that killed the player.
- Tags common to all damage types
- entity: Checks the entity that was the source of the damage that killed the player (for example: The skeleton that shot the arrow).
An example
{
"criteria": {
"example": {
"trigger": "minecraft:entity_killed_player",
"conditions": {
"entity": {
"type": "skeleton"
},
"killing_blow": {
"is_projectile": true
}
}
}
}
}
minecraft:impossible
Triggers only using commands.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:impossible"
}
}
}
minecraft:inventory_changed
Triggers after any changes happen to the player's inventory. Available conditions:
- conditions:
- items: A list of items in the player's inventory. All items in the list must be in the player's inventory, but not all items in the player's inventory have to be in this list.
- :
- All possible conditions for items
- :
- slots:
- empty: The amount of slots empty in the inventory.
- empty:
- max: The maximum value.
- min: The minimum value.
- full: The amount of slots completely filled (stacksize) in the inventory.
- full:
- max: The maximum value.
- min: The minimum value.
- occupied: The amount of slots occupied in the inventory.
- occupied:
- max: The maximum value.
- min: The minimum value.
- items: A list of items in the player's inventory. All items in the list must be in the player's inventory, but not all items in the player's inventory have to be in this list.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:inventory_changed",
"conditions": {
"items": [
{
"item": "minecraft:stone",
"data": 2,
"count": {
"min": 5,
"max": 10
}
},
{
"item": "minecraft:wool",
"data": 5
},
{
"item": "minecraft:wooden_sword",
"durability": {
"min": 50
},
"nbt": "{display:{Name:\"Example\"}}"
}
],
"slots": {
"occupied": 3
}
}
}
}
}
minecraft:item_durability_changed
Triggers after any item in the inventory has been damaged in any form. Available conditions:
- conditions:
- delta: The difference in durability.
- delta:
- max: The maximum value.
- min: The minimum value.
- durability: The remaining durability of the item.
- durability:
- max: The maximum value.
- min: The minimum value.
- item: The item before it was damaged, allows you to check the durability before the item was damaged.
- All possible conditions for items
An example
{
"criteria": {
"example": {
"trigger": "minecraft:item_durability_changed",
"conditions": {
"delta": -2,
"item": {
"item": "minecraft:wooden_axe",
"durability": {
"max": 1
}
}
}
}
}
}
minecraft:levitation
Triggers when the player has the levitation status effect. Available conditions:
- conditions:
- distance:
- absolute:
- max: The maximum value.
- min: The minimum value.
- horizontal:
- max: The maximum value.
- min: The minimum value.
- x:
- max: The maximum value.
- min: The minimum value.
- y:
- max: The maximum value.
- min: The minimum value.
- z:
- max: The maximum value.
- min: The minimum value.
- absolute:
- duration: The duration of the levitation in ticks.
- duration:
- max: The maximum value.
- min: The minimum value.
- distance:
An example
{
"criteria": {
"example": {
"trigger": "minecraft:levitation",
"conditions": {
"distance": {
"horizontal": {
"min": 5
},
"y": {
"min": 2
}
},
"duration": {
"min": 100
}
}
}
}
}
minecraft:location
Triggers every 20 ticks (1 second) and checks where the player is. Available conditions:
- conditions:
- Tags common to all locations
An example
{
"criteria": {
"example": {
"trigger": "minecraft:location",
"conditions": {
"biome": "jungle",
"feature": "Temple",
"dimension": "overworld",
"position": {
"x": 0,
"y": 60,
"z": {
"min": -10,
"max": 10
}
}
}
}
}
}
minecraft:nether_travel
Triggers when the player travels to the Nether and then returns to the Overworld. Available conditions:
- conditions:
- distance: The Overworld distance between where the player entered the Nether and where the played exited the Nether.
- absolute:
- max: The maximum value.
- min: The minimum value.
- horizontal:
- max: The maximum value.
- min: The minimum value.
- x:
- max: The maximum value.
- min: The minimum value.
- y:
- max: The maximum value.
- min: The minimum value.
- z:
- max: The maximum value.
- min: The minimum value.
- absolute:
- distance: The Overworld distance between where the player entered the Nether and where the played exited the Nether.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:nether_travel",
"conditions": {
"distance": {
"horizontal": {
"min": 1000
},
"absolute": {
"min": 1100
}
}
}
}
}
}
minecraft:placed_block
Triggers when the player placed a block. Available conditions:
- conditions:
- block: The block that was placed. Accepts block IDs.
- item: The item that was used to place the block before the item was consumed.
- All possible conditions for items
- location: The location of the block that was placed.
- Tags common to all locations
- state: The block states of the block.
- <state_name>: A single block state, with the key name being the state name and the value being the required value of that state.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:placed_block",
"conditions": {
"block": "minecraft:unpowered_repeater",
"state": {
"facing": "west"
},
"location": {
"position": {
"x": 10,
"z": 14
},
"biome": "plains"
},
"item": {
"item": "minecraft:repeater"
}
}
}
}
}
minecraft:player_hurt_entity
Triggers after the player hurts a mob or player. Available conditions:
- conditions:
- damage: The damage that was dealt
- Damage tags
- entity: The entity that was damaged.
- All possible conditions for entities
- damage: The damage that was dealt
An example
{
"criteria": {
"example": {
"trigger": "minecraft:player_hurt_entity",
"conditions": {
"damage": {
"blocked": true,
"type": {
"direct_entity": {
"type": "arrow"
}
}
},
"entity": {
"type": "player",
"nbt": "{Tags:[\"example\"]}"
}
}
}
}
}
minecraft:player_killed_entity
Triggers after a player is the source of a mob or player being killed. Available conditions:
- conditions:
- entity: The entity that was killed.
- All possible conditions for entities
- killing_blow: The type of damage that killed an entity.
- Tags common to all damage types
- entity: The entity that was killed.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:player_killed_entity",
"conditions": {
"entity": {
"type": "creeper",
"nbt": "{powered:1b}",
"location": {
"biome": "void"
},
"effects": {
"minecraft:slowness": {},
"minecraft:weakness": {
"amplifier": {
"min": 2
}
}
}
},
"killing_blow": {
"source_entity": {
"nbt": "{SelectedItem:{id:\"minecraft:wooden_sword\",}}"
}
}
}
}
}
}
minecraft:recipe_unlocked
Triggers after the player unlocks a recipe (using a knowledge book for example). Available conditions:
- conditions:
- recipe: The recipe that was unlocked.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:recipe_unlocked",
"conditions": {
"recipe": "minecraft:wooden_sword"
}
}
}
}
minecraft:slept_in_bed
Triggers when the player enters a bed. Available conditions:
- conditions:
- Tags common to all locations
An example
{
"criteria": {
"example": {
"trigger": "minecraft:slept_in_bed",
"conditions": {
"biome": "desert",
"feature": "Village",
"position": {
"y": {
"min": 50,
"max": 100
}
}
}
}
}
}
minecraft:summoned_entity
Triggers after an entity has been summoned. Works with iron golems (pumpkin and iron blocks), snow golems (pumpkin and snow blocks), the ender dragon (ender crystals) and the wither (wither skulls and soul sand). Using dispensers to place the wither skulls or pumpkins will still activate this trigger. Spawn eggs, commands and mob spawners will not work however. Available conditions:
- conditions:
- entity:
- All possible conditions for entities
- entity:
An example
{
"criteria": {
"example": {
"trigger": "minecraft:summoned_entity",
"conditions": {
"entity": {
"type": "minecraft:snowman"
}
}
}
}
}
minecraft:tame_animal
Triggers after the player tames an animal. Available conditions:
- conditions:
- entity: Checks the entity that was tamed.
- All possible conditions for entities
- entity: Checks the entity that was tamed.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:tame_animal",
"conditions": {
"entity": {
"type": "parrot",
"nbt": "{Variant:2}"
}
}
}
}
}
minecraft:tick
Triggers every tick (20 times a second).
An example
{
"criteria": {
"example": {
"trigger": "minecraft:tick"
}
}
}
minecraft:used_ender_eye
Triggers when the player uses an eye of ender (in a world where strongholds generate). Available conditions:
- conditions:
- distance: The horizontal distance between the player and the stronghold.
- distance:
- max: A maximum value.
- min: A minimum value.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:used_ender_eye",
"conditions": {
"distance": {
"min": 100,
"max": 200
}
}
}
}
}
minecraft:used_totem
Triggers when the players uses a totem. Available conditions:
- conditions:
- item: The item, only works with totem items.
- All possible conditions for items
- item: The item, only works with totem items.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:used_totem",
"conditions": {
"item": {
"item": "minecraft:totem_of_undying"
}
}
}
}
}
minecraft:villager_trade
Triggers after the player trades with a villager. Available conditions:
- conditions:
- item: The item that was purchased. The "count" tag checks the count from one trade, not multiple.
- All possible conditions for items
- villager: The villager the item was purchased from. The 'type' tag is redundant since it will always be "villager".
- All possible conditions for entities
- item: The item that was purchased. The "count" tag checks the count from one trade, not multiple.
An example
{
"criteria": {
"example": {
"trigger": "minecraft:villager_trade",
"conditions": {
"item": {
"item": "minecraft:emerald",
"count": {
"min": 1
}
},
"villager": {
"nbt": "{Career:1}"
}
}
}
}
}
History
| release | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1.12{{Extension DPL}}<ul><li>[[Powder Snow Bucket|Powder Snow Bucket]]<br/>{{Item
| title = Powder Snow Bucket
| image = Powder Snow Bucket.png
| renewable = Yes
| stackable = No
}}
A '''powder snow bucket''' is a [[bucket]] with [[powder snow]] inside.
== Obtaining ==
A powder snow bucket can be obtained by {{ctrl|using}} an [[empty bucket]] on a [[powder snow block]] or [[powder snow cauldron]].
== Usage ==
Pressing {{control|use}} while holding a powder snow bucket places a [[powder snow]] block. {{IN|Java}}, powder snow may also be placed inside empty [[cauldron]]s, creating powder snow cauldrons.
[[Dispenser]]s can also create and place powder snow buckets. However, they cannot do so with [[cauldron]]s. You can also use it to cushion falls in the [[nether]] by placing it below you when falling.
== Sounds ==
{{el|je}}:
{{Sound table
|sound=Empty powder snow bucket1.ogg
|sound2=Empty powder snow bucket2.ogg
|subtitle=Bucket empties
|source=block
|description=When a powder snow bucket is placed
|id=item.bucket.empty_powder_snow
|translationkey=subtitles.item.bucket.empty
|volume=1.0
|pitch=''varies'' <ref group=sound>Each sound event can be 1.0, 0.95, or 1.1</ref>
|distance=16}}
{{Sound table
|sound=Fill powder snow bucket1.ogg
|sound2=Fill powder snow bucket2.ogg
|subtitle=Bucket fills
|source=player
|description=When a bucket is filled with powder snow
|id=item.bucket.fill_powder_snow
|translationkey=subtitles.item.bucket.fill
|volume=1.0
|pitch=''varies'' <ref group=sound>Each sound event can be 1.0, 0.9, or 1.1</ref>
|distance=16}}
{{Sound table
|sound=Powder Snow break1.ogg
|sound2=Powder Snow break2.ogg
|sound3=Powder Snow break3.ogg
|sound4=Powder Snow break4.ogg
|sound5=Powder Snow break5.ogg
|sound6=Powder Snow break6.ogg
|sound7=Powder Snow break7.ogg
|subtitle=Block broken
|source=block
|description=When a bucket is filled with powder snow
|id=block.powder_snow.break
|translationkey=subtitles.block.generic.break
|volume=1.0
|pitch=0.8
|distance=16
|foot=1}}
{{el|be}}:
{{Sound table
|type=bedrock
|sound=Fill powder snow bucket1.ogg
|sound2=Fill powder snow bucket2.ogg
|source=player
|description=When a bucket is filled with powder snow
|id=bucket.fill_powder_snow
|volume=1.0
|pitch=1.0}}
{{Sound table
|sound=Empty powder snow bucket1.ogg
|sound2=Empty powder snow bucket2.ogg
|source=block
|description=When a powder snow bucket is placed
|id=bucket.empty_powder_snow
|volume=1.0
|pitch=1.0
|foot=1}}
== Data values ==
=== ID ===
{{edition|java}}:
{{ID table
|edition=java
|showforms=y
|generatetranslationkeys=y
|displayname=Powder Snow Bucket
|spritetype=item
|nameid=powder_snow_bucket
|form=item
|foot=1}}
{{edition|bedrock}}:
{{ID table
|edition=bedrock
|shownumericids=y
|showforms=y
|showaliasids=y
|notshowbeitemforms=y
|generatetranslationkeys=y
|displayname=Powder Snow Bucket
|spritetype=item
|nameid=powder_snow_bucket
|aliasid=bucket / 11
|form=item
|id=368
|foot=1}}
== History ==
{{History|java}}
{{History||1.17|snap=20w46a|[[File:Powder Snow Bucket JE1 BE1.png|32px]] Added powder snow buckets.}}
{{History|bedrock}}
{{History||Caves & Cliffs<br>(experimental)|link=Bedrock Edition 1.17.0|snap=beta 1.16.210.53|[[File:Powder Snow Bucket JE1 BE1.png|32px]] Added powder snow buckets.
|The powder snow bucket replaced the powder snow block in the creative inventory.}}
{{History||1.17.0|snap=beta 1.17.0.50|Powder snow bucket are now available without enabling [[Experimental Gameplay]].}}
{{h|foot}}
== Issues ==
{{Issue list}}
==Gallery==
<gallery>
Cozy Cabin Powder Snow Bucket 1.jpg|Teaser image with a barely visible powder snow bucket.
Cozy Cabin Powder Snow Bucket 2.jpg|Teaser image with a barely visible powder snow bucket.
Cozy Cabin Powder Snow Bucket 3.jpg|Teaser image with a barely visible powder snow bucket.
</gallery>
{{Items}}
[[Category:Renewable resources]]
[[Category:Tools]]
[[de:Pulverschneeeimer]]
[[es:Cubo con nieve polvo]]
[[fr:Seau de neige poudreuse]]
[[it:Secchio di neve polverosa]]
[[ja:粉雪入りバケツ]]
[[pl:Wiadro sypkiego śniegu]]
[[pt:Balde de neve fofa]]
[[ru:Ведро с рыхлым снегом]]
[[zh:细雪桶]]</li><li>[[Campfire|Campfire]]<br/>{{Block
| image = <gallery>
Campfire.gif|Campfire
Soul Campfire.gif|Soul Campfire
Unlit Campfire.png|Unlit
</gallery>
| image2 = <gallery>
Campfire (item) JE2.png|Campfire
Soul Campfire (item) JE2.png|Soul Campfire
</gallery>
| invimage = Campfire
| invimage2 = Soul Campfire
| transparent = No
| light = '''Campfire''': <br>Yes (15) when lit<br>'''Soul Campfire''': <br>Yes (10) when lit
| tool = axe
| renewable = Yes
| stackable = Yes (64)
| flammable = No
| lavasusceptible = Yes
}}
A '''campfire''' is a block that can be used to cook [[food]], pacify [[bee]]s, act as a spread-proof [[light source]], smoke signal or damaging trap block.
A '''soul campfire''' is a dimmer variant of the campfire with turquoise flames. Soul campfires deal more damage than normal campfires.
== Obtaining ==
=== Breaking ===
Campfires can be mined with any tool, or without a tool, but [[axe]]s are the fastest. A regular campfire drops 2{{only|java|short=1}} or 4{{only|bedrock|short=1}} [[charcoal]], a soul campfire drops [[soul soil]], and either one also drops any items placed on it. If mined with a tool enchanted with [[Silk Touch]], the campfire instead drops itself as an item.
{{IN|BE}}, either kind of campfire can also be broken by pushing it with a [[piston]] or [[sticky piston]]. Pistons cannot move or break campfires {{in|je}}.
{{breaking row
|Campfire, Soul Campfire
|axe
|horizontal=1}}
=== Natural generation ===
Campfires can generate in {{BiomeLink|taiga}} and {{BiomeLink|snowy taiga}}{{only|be}} [[village]]s.
Campfires also generate in camps inside [[ancient city|ancient cities]], beneath a pile of blue, light blue and cyan [[wool]] blocks.
=== Crafting ===
{{Crafting
|head=1
|B1= Stick
|A2= Stick
|B2= Coal; Charcoal
|C2= Stick
|A3= Any Log or Stem; Any Stripped Log or Stem; Any Wood or Hyphae; Any Stripped Wood or Hyphae
|B3= Any Log or Stem; Any Stripped Log or Stem; Any Wood or Hyphae; Any Stripped Wood or Hyphae
|C3= Any Log or Stem; Any Stripped Log or Stem; Any Wood or Hyphae; Any Stripped Wood or Hyphae
|Output= Campfire
|type= Decoration block
}}
{{Crafting
|foot=1
|B1= Stick
|A2= Stick
|B2= Soul Sand; Soul Soil
|C2= Stick
|A3= Any Log or Stem; Any Stripped Log or Stem; Any Wood or Hyphae; Any Stripped Wood or Hyphae
|B3= Any Log or Stem; Any Stripped Log or Stem; Any Wood or Hyphae; Any Stripped Wood or Hyphae
|C3= Any Log or Stem; Any Stripped Log or Stem; Any Wood or Hyphae; Any Stripped Wood or Hyphae
|Output= Soul Campfire
|type= Decoration block
}}
=== Trading ===
{{IN|bedrock}}, apprentice-level fisherman [[villager]]s have a 50% chance of selling a campfire for 5 [[emerald]]s.
{{IN|java}}, apprentice-level fisherman villagers have a {{frac|2|3}} chance of selling a campfire for 2 [[emerald]]s.
== Usage ==
Lit campfires emit a light level of 15 and lit soul campfires emit a light level of 10. Unlike [[fire]], campfires do not spread under any circumstances.
Campfires are lit by default when placed. Campfires can be manually lit by {{control|using}} or [[Dispenser|dispensing]] [[flint and steel]] on them, shooting it with a flaming arrow, or using or dispensing fire charges, blaze fireballs, and ghast fireballs when {{cmd|gamerule|mobGriefing}} is true. {{IN|bedrock}}, campfires can also be lit by {{control|using}} an item enchanted with [[fire aspect]], or stepping on it while burning.
Campfires can be extinguished by [[waterlogging]] it (placing [[water]] in the same block space), throwing a [[splash water bottle]] on it, or {{control|using}} a [[shovel]] on it. {{IN|bedrock}}, campfires can also be extinguished by placing a water source or allowing water to flow in the space above the campfire. As with [[torches]], rain does not extinguish campfires.<ref>{{bug|MC-141920||Rain doesn't put out campfire|Works as Intended}}</ref>
Using [[flint and steel]] on the side of a waterlogged or lit campfire sets the adjacent air block on fire instead.
Any items cooking on a campfire always drop when the campfire block is broken.
=== Particles and smoke signals ===
[[File:Campfire with smoke.gif|thumb|Campfire emitting smoke.]]
Campfires produce smoke particles that float up around 10 blocks before disappearing. If a [[hay bale]] is placed below, the campfire becomes a signal fire and the smoke floats up 24 blocks instead.
Campfire smoke particles can partially pass through a block directly above it, but do not pass through blocks more than one block directly above it.
Although a trap door is thinner than a slab, a trap door can block the smoke completely, preventing the smoke from floating up.
Campfires emit extra smoke particles during rain, similar to [[lava]].
Campfires also emit occasional ember particles, similar to lava. Soul campfires, however, do not emit embers.<ref>{{bug|MC-185482||Soul campfires do not emit ember particles|Works as Intended}}</ref>
=== Damage ===
Campfires damage [[mob]]s standing on top of them even if underwater (with exceptions such as [[shulker]]s, [[zombified piglin]]s or [[guardian]]s), but only if lit. Campfires deal {{hp|1}} and soul campfires deal {{hp|2}} of damage every tick (although [[damage immunity]] reduces this to once every half-second) Campfires do not cause lasting burning or destroy items. Damage taken is considered [[Damage#Fire|fire damage]] and is reduced by [[armor]] (which loses [[Item durability#Armor durability|durability]]), the [[Resistance]] potion effects, and the [[Protection]] and [[Fire Protection]] enchantments. The player can avoid being damaged at all, either by using a [[potion of fire resistance]] or wearing [[Frost Walker]] boots.
Regardless of [[Solid block#Height|height]], all blocks prevent damage done to mobs or players above campfires. The campfire deals damage only to entities occupying its block.
=== Cooking ===
[[File:Campfire (Cooking).gif|thumb]]
The player can place {{tooltip|raw food|raw beef, raw chicken, raw rabbit, raw porkchop, raw mutton, raw cod, raw salmon, potato, kelp}} on a lit campfire by {{control|using}} the food item on it. Up to four food items can be placed on a single campfire, which cooks the items simultaneously. Unlike other blocks that can cook food, campfires do not require any kind of fuel to cook. On a campfire, foods produce small smoke particles, indicating they are being cooked. Food items take 30 seconds (600 [[tick]]s) to cook, compared to 10 seconds for [[furnace]]s or 5 seconds for [[smoker]]s. Assuming that one uses all four slots to cook at once, the Campfire is, therefore, more efficient than furnaces (taking 10 seconds less per four items and no fuel) for cooking, but must be watched so as to pick up the food and refill it once it is done. It is slower than a smoker by about ten seconds, but its lack of fuel consumption could be seen as a worthwhile trade-off. Once finished cooking, items pop off the campfire. If the campfire is extinguished while cooking food, it resets as if it had not been cooked at all. Food items can be placed on an unlit campfire.
Other items can be placed on campfires using external editors, mods or add-ons.
=== Hoppers ===
Campfires do not have an [[Inventory#External inventories|external inventory]]. Raw food cannot be loaded into the campfire with a [[hopper]].
A hopper placed directly underneath a campfire pulls through any items dropped into the campfire. Any drops from a mob that dies in the campfire get pulled into the hopper.
=== Bees ===
Placing a campfire under a [[beehive]] or [[bee nest]] allows players to harvest [[honey bottle]]s or [[honeycomb]] without provoking the [[bee]]s.
There must be unobstructed air between the campfire and the beehive or bee nest. [[Carpet]]s are an exception.{{only|JE}}
=== Piglins ===
Lit soul campfires repel [[piglin]]s that are not currently attacking. This occurs when the [[piglin]] is within an 8 block radius of the soul campfire.
=== Light source ===
Standard lit campfires emit a light level of 15, while soul campfires emit a light level of 10. Like most other sources of light, campfires melt nearby [[snow]] and [[ice]]. Due to their lower light level, soul campfires do not melt snow or ice.
=== Note blocks ===
Campfires can be placed under [[note block]]s to produce "bass" sounds.
=== Converting soul sand to soul soil ===
Soul campfires can be used to convert [[soul sand]] into [[soul soil]]. If a soul campfire is crafted using soul sand, placed, and then broken without [[Silk Touch]], that soul campfire drops soul soil.<ref>{{bug|MC-178579||Soul campfires can be used to convert soul sand into soul soil|Works as Intended}}</ref>
=== Piston interactivity ===
{{IN|BE}}, pushing a campfire or soul campfire with a [[piston]] or [[sticky piston]] breaks it. Unlike other methods, breaking with a piston drops only one [[charcoal]] instead of two. Campfires cannot be pulled by sticky pistons.
{{IN|JE}}, pistons do not interact with campfires. Campfires neither move nor break when pushed or pulled by pistons.
== Sounds ==
=== Generic ===
{{Sound table/Block/Wood}}
=== Unique ===
{{edition|java}}:
{{Sound table
|sound=Campfire crackle1.ogg
|sound2=Campfire crackle2.ogg
|sound3=Campfire crackle3.ogg
|sound4=Campfire crackle4.ogg
|sound5=Campfire crackle5.ogg
|sound6=Campfire crackle6.ogg
|subtitle=Campfire crackles
|source=block
|description=Randomly while lit
|id=block.campfire.crackle
|translationkey=subtitles.block.campfire.crackle
|volume=0.5-1.5
|pitch=0.6-1.3
|distance=16}}
{{Sound table
|sound=Flint and steel click.ogg
|subtitle=Flint and steel click
|source=block
|description=When a campfire is lit with a flint and steel
|id=item.flintandsteel.use
|translationkey=subtitles.item.flintandsteel.use
|volume=1.0
|pitch=0.8-1.2
|distance=16}}
{{Sound table
|sound=Ghast fireball4.ogg
|subtitle=Fireball whooshes
|source=block
|description=When a campfire is lit with a fire charge
|id=item.firecharge.use
|translationkey=subtitles.item.firecharge.use
|volume=1.0
|pitch=0.8-1.2
|distance=16}}
{{Sound table
|rowspan=2
|sound=Fizz.ogg
|subtitle=Fire extinguishes
|source=block
|description=When a campfire is extinguished with water
|id=entity.generic.extinguish_fire
|translationkey=subtitles.entity.generic.extinguish_fire
|volume=1.0
|pitch=1.0
|distance=16}}
{{Sound table
|subtitle=Fire extinguished
|source=block
|description=When a campfire is extinguished
|id=block.fire.extinguish
|translationkey=subtitles.block.fire.extinguish
|volume=0.5
|pitch=2.0
|distance=16
|foot=1}}
{{edition|bedrock}}:
{{Sound table
|type=bedrock
|sound=Campfire crackle1.ogg
|sound2=Campfire crackle2.ogg
|sound3=Campfire crackle3.ogg
|sound4=Campfire crackle4.ogg
|sound5=Campfire crackle5.ogg
|sound6=Campfire crackle6.ogg
|source=block
|description=Randomly while lit
|id=block.campfire.crackle
|volume=1.0 {{Until|BE 1.19.80}}<br>0.5-1.5 {{Upcoming|BE 1.19.80}}
|pitch=1.0 {{Until|BE 1.19.80}}<br>0.6-1.3 {{Upcoming|BE 1.19.80}}}}
{{Sound table
|sound=Flint and steel click.ogg
|source=block
|description=When a campfire is lit
|id=fire.ignite
|volume=1.0
|pitch=0.8-1.2}}
{{Sound table
|sound=Ghast fireball4.ogg
|source=hostile
|description=When a campfire is lit with a fire charge
|id=mob.ghast.fireball
|volume=1.0
|pitch=1.0}}
{{Sound table
|sound=Fizz.ogg
|source=block
|description=When a campfire is extinguished
|id=random.fizz
|volume=0.5
|pitch=1.8-2.4
|foot=1}}
== Data values ==
=== ID ===
{{edition|java}}:
{{ID table
|edition=java
|showblocktags=y
|showforms=y
|generatetranslationkeys=y
|displayname=Campfire
|spritetype=block
|nameid=campfire
|blocktags=campfires}}
{{ID table
|displayname=Soul Campfire
|spritetype=block
|nameid=soul_campfire
|blocktags=campfires, piglin_repellents
|itemtags=piglin_repellents
|foot=1}}
{{ID table
|displayname=Block entity
|spritename=campfire
|spritetype=block
|nameid=campfire
|foot=1}}
{{edition|bedrock}}:
{{ID table
|edition=bedrock
|firstcolumnname=Campfire
|shownumericids=y
|showforms=y
|generatetranslationkeys=y
|displayname=Normal block
|spritename=campfire
|spritetype=block
|nameid=campfire
|id=464
|form=block
|itemform=item.campfire}}
{{ID table
|displayname=Normal item
|spritename=campfire
|spritetype=item
|nameid=campfire
|id=589
|form=item
|translationkey=tile.campfire.name}}
{{ID table
|displayname=Soul block
|spritename=soul-campfire
|spritetype=block
|nameid=soul_campfire
|id=545
|form=block
|itemform=item.soul_campfire}}
{{ID table
|displayname=Soul item
|spritename=soul-campfire
|spritetype=item
|nameid=soul_campfire
|id=622
|form=item
|translationkey=tile.soul_campfire.name
|foot=1}}
{{ID table
|notnamespaced=y
|displayname=Block entity
|spritename=campfire
|spritetype=block
|nameid=Campfire
|foot=1}}
=== Block states ===
{{see also|Block states}}
{{/BS}}
=== Block data ===
A campfire has a [[block entity]] associated with it that holds additional data about the [[block]].
{{el|java}}:
{{see also|Block entity format}}
{{/BE}}
{{el|bedrock}}:
: See [[Bedrock Edition level format/Block entity format]].
== Achievements ==
{{load achievements|Bee our guest}}
== Advancements ==
{{Load advancements|Bee Our Guest}}
== History ==
{{History||September 26, 2018|link={{tweet|minecraft|1044587405779451906}}|Campfires are announced to be part of the [[biome]] vote at [[MINECON Earth 2018]].}}
{{History||September 29, 2018|link={{ytl|HoMDyRqMNMA}}|Campfires are showcased at [[MINECON Earth 2018]].}}
{{History||September 29, 2018|link={{tweet|minecraft|1046097775199498325}}|[[Taiga]] wins the [[biome]] vote, meaning campfires are to be added to the game in [[Java Edition 1.14|1.14]].}}
{{History|java}}
{{History||1.14|snap=19w02a|[[File:Campfire JE1 BE1.gif|32px]] [[File:Unlit Campfire JE1 BE1.png|32px]] Added campfires.}}
{{History|||snap=19w03a|[[File:Campfire (item) JE1 BE1.png|32px]] [[File:Campfire JE2 BE2.gif|32px]] [[File:Unlit Campfire JE2 BE2.png|32px]] The [[model]] and texture of the campfire have been changed.
|Lit campfires now produce spark [[particles]].
|The [[light]] level of campfires has been changed from 9 to 15.
|Campfires are now directionally placed.
|Lit campfires produce smoke plume [[particles]] more often.}}
{{History|||snap=19w04a|Campfires now spawn in [[taiga]] [[village]]s on the ground and inside chimneys.
|Crouching on a campfire no longer prevents the player from taking damage from it.<ref>{{Bug|MC-141913||Sneaking on a campfire prevents damage|Fixed}}</ref>}}
{{History|||snap=19w08a|Campfires can now be extinguished by [[splash water bottle]]s.}}
{{History|||snap=19w11a|Fisherman [[villager]]s now [[trading|sell]] campfires.}}
{{History||1.14.1|snap=Pre-Release 2|Campfires can now be lit by flaming [[arrow]]s.}}
{{History||1.14.2|snap=Pre-Release 1|Flaming arrows can no longer light [[waterlogging|waterlogged]] campfires.}}
{{History||1.15|snap=19w34a|Campfires under [[bee nest]]s and [[bee hive]]s now prevent [[bee]]s from aggravating toward [[player]]s who harvest them.}}
{{History|||snap=19w37a|Campfires can now be extinguished using a [[shovel]].}}
{{History|||snap=19w42a|Campfires can now be lit by small [[fireball]]s.}}
{{History||1.16|snap=20w11a|Campfires can now be lit by any burning [[projectile]].}}
{{History|||snap=20w13a|Campfires can now be [[crafting|crafted]] using [[stems]] and [[hyphae]].}}
{{History|||snap=20w15a|[[File:Soul Campfire (item) JE1 BE1.png|32px]] [[File:Soul Campfire.gif|32px]] Added soul campfires.}}
{{History|||snap=20w22a|Campfires now [[drops|drop]] the [[food]] being cooked when they are put out with a [[shovel]] or [[water bottle]].}}
{{History|||snap=Pre-release 3|[[File:Unlit Campfire with foods on it.png|32px]] Food can now be placed on unlit campfires. However, due to a bug,<ref>{{Bug|MC-188448||Food pops off of campfire when extinguished|Fixed}}</ref> food pops off of campfires when extinguished.}}
{{History||1.17|snap=20w46a|Food no longer pops off of campfires when extinguished.}}
{{History||1.18|snap=21w41a|[[File:Campfire (item) JE2.png|32px]] [[File:Soul Campfire (item) JE2.png|32px]] Changed campfire and soul campfire textures as items.}}
{{History||1.19|snap=22w13a|Campfires now generate in camps inside [[ancient city|ancient cities]].}}
{{History||1.19.4|snap=23w07a|The soul campfire recipes are no longer unlocked by [[stick]]s.<ref>{{bug|MC-238920}}</ref>}}
{{History||1.20<br>(Experimental)|link=1.19.4|snap=1.19.4-pre1|Cherry logs, wood, and their stripped variations can now used to craft campfire and soul campfire.<ref>{{bug|MC-260149}}</ref>}}
{{History|bedrock}}
{{History||1.10.0|snap=beta 1.10.0.3|[[File:Campfire JE1 BE1.gif|32px]] [[File:Unlit Campfire JE1 BE1.png|32px]] Added campfires.
|Campfires are available only through [[Experimental Gameplay]].}}
{{History||1.11.0|snap=beta 1.11.0.1|Campfires have been fully implemented.
|[[File:Campfire_(item)_JE1_BE1.png|32px]] [[File:Campfire JE2 BE2.gif|32px]] [[File:Unlit Campfire JE2 BE2.png|32px]] The [[model]] and texture of the campfire have been changed.}}
{{History|||snap=beta 1.11.0.4|Campfires can now be [[trading|bought]] from fishermen [[villager]]s.}}
{{History||1.13.0|snap=?|Campfires now emit embers similar to [[lava]].}}
{{History||1.14.0|snap=beta 1.14.0.1|Campfires under [[bee nest]]s and [[beehive]]s now prevent [[bee]]s from aggravating toward [[player]]s who harvest them.}}
{{History||1.16.0|snap=beta 1.16.0.57|[[File:Soul_Campfire_(item)_JE1_BE1.png|32px]] [[File:Soul Campfire.gif|32px]] Added soul campfires.}}
{{History||1.16.20|snap=beta 1.16.20.50|Soul campfires now emit [[light]] level of 10.}}
{{History||1.16.100|snap=beta 1.16.100.54|Soul campfires now deal double the damage that normal campfires deal.|Soul campfires now drop [[Soul Soil]] instead of [[Charcoal]] when mined.}}
{{History||1.17.30|snap=beta 1.17.30.23|Campfires are now stackable in the inventory.}}
{{History||1.18.10|snap=beta 1.18.10.20|[[File:Campfire (item) JE2.png|32px]] [[File:Soul Campfire (item) JE2.png|32px]] Changed campfire and soul campfire textures as items.}}
{{History||1.19.60|snap=beta 1.19.60.23|Campfires no longer set players and mobs on fire.}}
{{History||1.19.80|snap=beta 1.19.80.22|Campfires now damage mobs standing on top of them.}}
{{History||1.20.30|snap=beta 1.20.30.20|Campfires now use the <code>minecraft:cardinal_direction</code> [[block state]] instead of <code>direction</code>.}}
{{History|console}}
{{History||ps=1.91|[[File:Campfire_(item)_JE1_BE1.png|32px]] [[File:Campfire JE2 BE2.gif|32px]] [[File:Unlit Campfire JE2 BE2.png|32px]] Added campfires.}}
{{History|foot}}
== Issues ==
{{Issue list}}
== Gallery ==
<gallery>
Cozy Cabin Smoke.jpg|Campfire smoke coming out of a cozy cabin.
Cozy Cabin Campfire.jpg|Campfire near a cozy cabin.
1.14 Dev Campfire.jpg|Dev screenshot.
Campfire in taiga village.png|A few naturally generating campfires in a [[taiga]] biome [[village]].
Campfire with hay bale vs without.png|A comparison between a campfire with a [[hay bale]] below it (left) and one without (right).
Campfire Particles.png|The number of particles depends on the height of the top block.
Campfire cooking.png|Cooking porkchops with a campfire.
Campfire (cooking) JE1 BE1.gif|Cooking with a campfire in [[Java Edition 19w02a]].
</gallery>
== References ==
{{reflist}}
{{Blocks|Utility}}
{{Items}}
[[Category:Utility blocks]]
[[Category:Manufactured blocks]]
[[Category:Generated structure blocks]]
[[Category:Block entities]]
[[Category:Storage]]
[[Category:Light sources]]
[[de:Lagerfeuer]]
[[fr:Feu de camp]]
[[ja:焚き火]]
[[ko:모닥불]]
[[pl:Ognisko]]
[[pt:Fogueira]]
[[ru:Костёр]]
[[th:แคมป์ไฟ]]
[[zh:营火]]</li></ul> | February 16, 2017 | Dinnerbone tweets that he had spent an entire day designing "a new thing" with Darngeek. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| February 20, 2017 | The design on "this thing" is now done and can begin to be implemented; he later hints at the feature's name.[4] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| February 22, 2017 | He states that he is "advancing" on the feature; "So. Many. Json. Files." he adds. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Later that day he states that the project is growing bigger, and that he may need a command "even more complicated than /scoreboard" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| March 6, 2017 | The backend of the mysterious feature is finished, but the UI needs work, he tweets. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| "I made a tabthulhu today," he later adds,[5] indicating this feature may use a large number of tabs. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| March 13, 2017 | He again references the name of the feature in a tweet, stating that he is almost done with "this new feature advancement". | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| March 14, 2017 | He tweets that the UI is now working, and that the project took many days and a few research papers to accomplish. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| March 22, 2017 | The feature now "awards players with things", he states while making another reference to the feature name. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| March 23, 2017 | Dinnerbone states that the feature requires around 500 JSON files. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| He later tweets a teaser of what the feature holds,[6] though it is hidden behind an encrypted .zip file disguised as a .png image, which he clarifies in later tweets.[7][8][9] This .zip file contains custom recipe JSON files. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| He posts another encrypted .zip file soon afterwards, containing a few more recipes.[10] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| March 24, 2017 | "A deafening metallic condor keeps distracting me", Dinnerbone states. Users quickly pinpointed this bizarre message to this Gfycat URL officially showcasing advancements for the first time. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| He reveals that the UI can have several tabs with advancement trees that are themselves advancements.[2] He clarifies that that's what he meant by "tabthulhu."[11] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| All of the UI is data-driven, including positioning and layout, with no hardcoded data or positions.[12] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w13a | Advancements added, replacing Achievements. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w14a | Added new advancements, including a new "adventure" tab. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Added new notifications for when players advance, which have a sliding effect, and come in two colors: yellow for normal advancements, and pink for special challenges. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w15a | Added advancement descriptions and changed several titles. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Added the "Adventuring Time" advancement. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w16b | Added trigger minecraft:item_durability_changed. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w17a | Added new advancements and two new tabs: "The End" and "Nether" | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added trigger levitation. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added feature condition to the location trigger. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Advancements can now execute commands when achieved. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Advancement icons now allow data values. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added five modifiers to the /advancement grant and /advancement revoke commands: "everything", "from", "until", "through", and "only". | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w17b | The default advancements now all receive their titles and descriptions from the localization files. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Added a new number display to track progress while completing certain advancements | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added the changed_dimension trigger, which takes two optional conditions: to and from, both being strings that accept "overworld", "the_nether", or "the_end". | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The "location" shared object has a new dimension string (same values as above). | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w18a | Re-introduced announcements to chat when someone earns an advancement | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Added new Adventure advancements: "Best Friends Forever", "The Parrots and the Bats", and "Two by Two" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added new minecraft:tick and minecraft:tame_animal triggers | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added new show_toast and announce_to_chat display options | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added /gamerule announceAdvancements, which toggles announcing of advancements, replacing the old server.properties entry | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
"entity" objects and the minecraft:levitation trigger now use a shared "distance" object. They check if the player is within or outside of the specified range on the x, y, or z axis. absolute and horizontal ranges check if the player is within range on all axes, though horizontal will exclude the Y axis. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| The "Great View From Up Here" advancement now requires 50 vertical blocks, instead of levitating for 30 seconds | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed the "Sniper Duel" advancement to horizontal distance | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Advancement loading is now strict JSON | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w18b | Added a new "Husbandry" tab and several new advancements: "A Seedy Place", "Serious Dedication", "A Balanced Diet", and "Hired Help". | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| The advancements added in the previous snapshot were moved to the new Husbandry tab. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added new advancement triggers: consume_item, placed_block, and arbitrary_player_tick. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| The "Monster Hunter" and "Monsters Hunted" advancements now use 22 mobs instead of 23, removing the illusioner from the list. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| pre1 | Added new advancements: "A Furious Cocktail", "Postmortal", "Subspace Bubble", and "Uneasy Alliance". | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added hidden field to advancement display info, which defaults to false. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Added new effects_changed, used_totem, and nether_travel advancements triggers. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Removed commands from advancement rewards, replaced with function. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Advancement trees are now centered in the UI. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Items and entities in advancements now have an extra NBT field. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Entities in advancements now have an extra effects and location field. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Removed arbitrary_player_tick advancement trigger. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| pre2 | Added new hidden advancement: "How Did We Get Here?", which rewards 100 experience. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| pre3 | Advancement "How Did We Get Here?" now includes the Resistance status effect, and now rewards 1000 experience. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Advancement "Balanced Diet" now includes all fish types (raw and cooked if possible) and an Enchanted Golden Apple. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Advancements will now remember the tab the player last selected. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| pre5 | All recipe unlock advancements now have a parent of minecraft:recipes/root.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Several recipe unlock advancements were renamed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| pre7 | Added experience rewards to all "challenge" advancements. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| release | Added sounds to the toast notifications. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| upcoming | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1.13Tropical fish also have assigned names that can be seen after capture. In Java Edition, the smaller text under the item name is displayed showing the fish name, similar to the text that displays enchantments under enchanted items. In Bedrock Edition, the item name is displayed showing "Bucket of <fish name>". Their colors are mostly named according to the colored block names, though with a few exceptions:
The base color comes first, and if the pattern color is different, it comes after that. Lastly, the fish bucket is given a name according to the shape and pattern of the fish:
Some tropical fish don't follow the normal naming system, and instead, reference real-life fish species. Apart from these names, these types of fish aren't different from regular tropical fish in terms of design or behavior. These varieties are:
| 17w43a | Custom Advancements have been moved into data packs. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 17w45a | Added an advancement selector argument to test for obtained advancements. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Issues
Issues relating to "Advancement" are maintained on the bug tracker. Report issues there.
Trivia
- Seventeen of the old Java Edition achievements were re-implemented as advancements: Benchmarking (called Minecraft), Getting an Upgrade, Acquire Hardware, We Need to Go Deeper, The End?, The End. (called Free the End), Return to Sender, Into Fire, Local Brewery, The Beginning? (called Withering Heights), Beaconator, DIAMONDS! (called Diamonds!), Enchanter, Adventuring Time, Monster Hunter and Sniper Duel.
- Six achievements from other editions were re-implemented as advancements: Body Guard (called Hired Help), Cheating Death (called Postmortal), Zombie Doctor, You Need a Mint, The End... Again... and Great View From Up Here
Gallery
See also
References
- ↑ https://www.reddit.com/r/Minecraft/comments/64pk6r/dinnerbone_working_on_giving_advancements/dg4uiou?context=1
- ↑ a b "The tabs are alternate trees that are themselves advancements too. We support a lot, but we'll use 4/5 in vanilla. http://media.dinnerbone.com/uploads/2017-03/screenshots/24_09-23-41_rYLfqg0Q52.png" – @Dinnerbone (Nathan Adams) on X, March 24, 2017
- ↑ "4 or 5 tabs. Probably: "mine & craft", "nether", "end", "combat", "engineering" or some variant of." – @Dinnerbone (Nathan Adams) on X, March 27, 2017
- ↑ "Getting this implemented in a nice way would be a real advancement for the game." – @Dinnerbone (Nathan Adams) on X, February 20, 2017
- ↑ "I made a tabthulhu at work today. This is an interesting project!" – @Dinnerbone (Nathan Adams) on X, March 6, 2017
- ↑ "This is a super big spoiler of what I'm working on. Totally unfinished and may change a lot, but gives you an idea. http://media.dinnerbone.com/uploads/2017-03/screenshots/23_15-00-52_ttcfj9tDnV.png" – @Dinnerbone (Nathan Adams) on X, March 23, 2017
- ↑ "(No I'm not adding emoji.)" – @Dinnerbone (Nathan Adams) on X, March 23, 2017
- ↑ "(P.s. there was more to that picture than meets the eye. May need a bit of trickery.)" – @Dinnerbone (Nathan Adams) on X, March 23, 2017
- ↑ "Did the filesize seem a bit big?" – @Dinnerbone (Nathan Adams) on X, March 23, 2017
- ↑ "Okay so I think my webserver proxy messed that up. Technology is difficult. Here's a more fun image, in a zip: http:// media.dinnerbone.com/uploads/2017-0 3/screenshots/23_15-00-52_ttcfj9tDnV.zip" – @Dinnerbone (Nathan Adams) on X, March 23, 2017
- ↑ "(Thus "tabthulu" tweets from a few weeks back. :D)" – @Dinnerbone (Nathan Adams) on X, March 24, 2017
- ↑ "Also worth noting: all of that UI is data driven. Positioning and layout included. No hardcoded data in UI, no hardcoded positions in data." – @Dinnerbone (Nathan Adams) on X, March 24, 2017








