Where do I find loot tables in Minecraft?

To be clear, I am not asking where to put loot tables in a data pack. I have zero trouble finding that information.

I want to find the default built-in loot tables in json format from the vanilla version of the game.

I found a Reddit thread which has a location for where I can get the loot tables, but it is two years old and the instructions are no longer valid with version 1.14.x.


Why do I want this? I want to make a data pack with a couple options added to the fishing loot options without losing the loot options already present.

If there's a way to add to a loot table without overriding what's already in it, that would solve my underlying problem. But the question still needs an answer for future searchers.


Solution 1:

The wiki documents a little bit of this on the "client.jar" page (archive) in a folded section called "File hierarchy".

The file you're looking for is .minecraft/versions/<version>/<version>.jar, that's an executable archive. When unpacked, you have a data folder that contains the Vanilla data pack. The file you're looking for is data/minecraft/loot_tables/gameplay/fishing.json or any of the ones in the fishing folder there.

And no, there seems to be no way to append to loot tables, only tags allow that (and models in resource pack have a similar concept).

Solution 2:

Loot tables in version 1.14.2 are inside this location:

C:\Users\<your name>\AppData\Roaming\.minecraft\versions\1.14.2\1.14.2.jar\data\minecraft\loot_tables

As Fabian Röling already said, you can find the loot table for fishing here:

...\loot_tables\gameplay\fishing.json

And it uses these 3 loot tables:

...\loot_tables\gameplay\fishing\fish.json
...\loot_tables\gameplay\fishing\junk.json
...\loot_tables\gameplay\fishing\treasure.json

This is the content of these files:

fishing.json:
{
  "type": "minecraft:fishing",
  "pools": [
    {
      "rolls": 1,
      "entries": [
        {
          "type": "minecraft:loot_table",
          "weight": 10,
          "quality": -2,
          "name": "minecraft:gameplay/fishing/junk"
        },
        {
          "type": "minecraft:loot_table",
          "weight": 5,
          "quality": 2,
          "name": "minecraft:gameplay/fishing/treasure"
        },
        {
          "type": "minecraft:loot_table",
          "weight": 85,
          "quality": -1,
          "name": "minecraft:gameplay/fishing/fish"
        }
      ]
    }
  ]
}
fish.json:
{
  "type": "minecraft:fishing",
  "pools": [
    {
      "rolls": 1.0,
      "entries": [
        {
          "type": "minecraft:item",
          "weight": 60,
          "name": "minecraft:cod"
        },
        {
          "type": "minecraft:item",
          "weight": 25,
          "name": "minecraft:salmon"
        },
        {
          "type": "minecraft:item",
          "weight": 2,
          "name": "minecraft:tropical_fish"
        },
        {
          "type": "minecraft:item",
          "weight": 13,
          "name": "minecraft:pufferfish"
        }
      ]
    }
  ]
}
junk.json:
{
  "type": "minecraft:fishing",
  "pools": [
    {
      "rolls": 1.0,
      "entries": [
        {
          "type": "minecraft:item",
          "weight": 10,
          "functions": [
            {
              "function": "minecraft:set_damage",
              "damage": {
                "min": 0.0,
                "max": 0.9
              }
            }
          ],
          "name": "minecraft:leather_boots"
        },
        {
          "type": "minecraft:item",
          "weight": 10,
          "name": "minecraft:leather"
        },
        {
          "type": "minecraft:item",
          "weight": 10,
          "name": "minecraft:bone"
        },
        {
          "type": "minecraft:item",
          "weight": 10,
          "functions": [
            {
              "function": "minecraft:set_nbt",
              "tag": "{Potion:\"minecraft:water\"}"
            }
          ],
          "name": "minecraft:potion"
        },
        {
          "type": "minecraft:item",
          "weight": 5,
          "name": "minecraft:string"
        },
        {
          "type": "minecraft:item",
          "weight": 2,
          "functions": [
            {
              "function": "minecraft:set_damage",
              "damage": {
                "min": 0.0,
                "max": 0.9
              }
            }
          ],
          "name": "minecraft:fishing_rod"
        },
        {
          "type": "minecraft:item",
          "weight": 10,
          "name": "minecraft:bowl"
        },
        {
          "type": "minecraft:item",
          "weight": 5,
          "name": "minecraft:stick"
        },
        {
          "type": "minecraft:item",
          "functions": [
            {
              "function": "minecraft:set_count",
              "count": 10
            }
          ],
          "name": "minecraft:ink_sac"
        },
        {
          "type": "minecraft:item",
          "weight": 10,
          "name": "minecraft:tripwire_hook"
        },
        {
          "type": "minecraft:item",
          "weight": 10,
          "name": "minecraft:rotten_flesh"
        },
        {
          "type": "minecraft:item",
          "conditions": [
            {
              "condition": "minecraft:alternative",
              "terms": [
                {
                  "condition": "minecraft:location_check",
                  "predicate": {
                    "biome": "minecraft:jungle"
                  }
                },
                {
                  "condition": "minecraft:location_check",
                  "predicate": {
                    "biome": "minecraft:jungle_hills"
                  }
                },
                {
                  "condition": "minecraft:location_check",
                  "predicate": {
                    "biome": "minecraft:jungle_edge"
                  }
                },
                {
                  "condition": "minecraft:location_check",
                  "predicate": {
                    "biome": "minecraft:bamboo_jungle"
                  }
                },
                {
                  "condition": "minecraft:location_check",
                  "predicate": {
                    "biome": "minecraft:modified_jungle"
                  }
                },
                {
                  "condition": "minecraft:location_check",
                  "predicate": {
                    "biome": "minecraft:modified_jungle_edge"
                  }
                },
                {
                  "condition": "minecraft:location_check",
                  "predicate": {
                    "biome": "minecraft:bamboo_jungle_hills"
                  }
                }
              ]
            }
          ],
          "weight": 10,
          "name": "minecraft:bamboo"
        }
      ]
    }
  ]
}
and treasure.json:
{
  "type": "minecraft:fishing",
  "pools": [
    {
      "rolls": 1.0,
      "entries": [
        {
          "type": "minecraft:item",
          "name": "minecraft:lily_pad"
        },
        {
          "type": "minecraft:item",
          "name": "minecraft:name_tag"
        },
        {
          "type": "minecraft:item",
          "name": "minecraft:saddle"
        },
        {
          "type": "minecraft:item",
          "functions": [
            {
              "function": "minecraft:set_damage",
              "damage": {
                "min": 0.0,
                "max": 0.25
              }
            },
            {
              "function": "minecraft:enchant_with_levels",
              "levels": 30,
              "treasure": true
            }
          ],
          "name": "minecraft:bow"
        },
        {
          "type": "minecraft:item",
          "functions": [
            {
              "function": "minecraft:set_damage",
              "damage": {
                "min": 0.0,
                "max": 0.25
              }
            },
            {
              "function": "minecraft:enchant_with_levels",
              "levels": 30,
              "treasure": true
            }
          ],
          "name": "minecraft:fishing_rod"
        },
        {
          "type": "minecraft:item",
          "functions": [
            {
              "function": "minecraft:enchant_with_levels",
              "levels": 30,
              "treasure": true
            }
          ],
          "name": "minecraft:book"
        },
        {
          "type": "minecraft:item",
          "name": "minecraft:nautilus_shell"
        }
      ]
    }
  ]
}