Soul Gems - SilentChaos512/SilentGems GitHub Wiki

Quick Facts

  • Found in: Version 2.5.7 and up (Minecraft 1.12.2) or version 3.0.6 (Minecraft 1.13.2)
  • Drops from: most living entities
  • Uses include: crafting soul urns and gear (tool) souls

Introduction

Soul gems are used for crafting some items. In Minecraft 1.13.2 and up, soul gems are automatically assigned to (and will occasionally drop from) most living entities†, including those from other mods. Soul gems have one or two elements, selected randomly for each world (based on the seed). The elements determine the properties of gear souls.

† All living entities... except armor stands. You may also see cases where soul gems are created for other "living" mod entities. These will probably be unobtainable.

Uses

Silent's Gems provides two uses for soul gems: soul urns and gear souls (formerly tool souls). Both will accept any type of soul gem. Soul urns do not care what kind you use. Gear souls are strongly influenced by the elements on the soul gems they are crafted with.

Using In Recipes

Soul gems are distinguished by NBT, so a custom ingredient type is needed if you want to use specific soul gems. An example is included below, but in short, the type is silentgems:soul_gem, and it has one extra property, soul, which is the entity ID.

  • silentgems:soul_gem - Matches a specific soul gem, given by the soul property

    {
        "type": "silentgems:soul_gem",
        "soul": "minecraft:cow"
    }
    
  • silentgems:soul_elements - Matches primary and/or secondary elements of soul gems. Both the primary and secondary properties are optional. If omitted, that element is ignored. In other words, having just primary will ignore the secondary element of the soul gem.

    {
        "type": "silentgems:soul_elements",
        "primary": "fire",
        "secondary": "monster"
    }
    

An Example

This recipe creates a cow spawn egg using cow soul gems and an egg. This is a shaped recipe, but it could be shapeless or anything that takes vanilla recipe ingredients, like token enchanter recipes.

{
  "type": "crafting_shaped",
  "pattern": [
    " # ",
    "#o#",
    " # "
  ],
  "key": {
    "#": {
      "type": "silentgems:soul_gem",
      "soul": "minecraft:cow"
    },
    "o": {
      "item": "minecraft:egg"
    }
  },
  "result": {
    "item": "minecraft:cow_spawn_egg"
  }
}

Using in Loot Tables

Added in version 3.1.0 (Minecraft 1.14.2), a function is added for setting the soul on a soul gem. Just add the silentgems:set_soul function to an item entry. Remember that if you have multiple entries with the same item in a pool, you need to add a unique entryName to each entry!

{
    "type": "item",
    "name": "silentgems:soul_gem",
    "entryName": "bat_soul",
    "weight": 2,
    "functions": [
        {
            "function": "silentgems:set_soul",
            "soul": "minecraft:bat"
        }
    ]
}