# Soul Transmutation

Soul transmutation is the newest kind of recipe found in Spirit. It cannot be used to create items, but rather turn souls into other souls, or souls into a living entity.

### Format

Registering a new soul transmutation, just like the rest of the data in Spirit, must be done through the **recipe** folder.

```
{
    "type": "spirit:soul_transmutation",
    "entityInput": "minecraft:zombie",
    "activationItem": {
      "item": "minecraft:golden_apple"
    },
    "consumesActivator": true,
    "itemInputs": [
      {
        "item": "minecraft:emerald"
      },
      {
        "tag": "forge:seeds"
      }
    ],
    "entityOutput": "minecraft:villager",
    "duration": 60,
    "shouldSummonMob": false
}
```

* ***Required:*** `"entityInput": string of an entity`\
  Specifies which entity is required for the activation to start. Can be replaced with a tag of an entity if a `#` is put before the name of the tag like so:\
  `"entityInput": "#forge:creeper"`
* ***Required:***`"itemInputs": list of ingredients of items`

  Specifies the items that are valid for each of the pedestals. Has a max of 8 possible items, and each item can be an item id with a key of `"item"` or an item tag with a key of `"tag"`. If you wish to specify no required items for transmutation, an empty list is also a valid recipe, but a list is still required.
* `"activationItem": ingredient of item`

  Specifies the item(s) valid to activate the recipe. Defaults to the spirit soul wand if not specified.
* `"consumesActivator": boolean`

  Specifies whether the activation item is consumed when the recipe begins. Defaults to false.
* ***Required:*** `"entityOutput": string of an entity`\
  Specifies which entity is summoned or transformed into upon recipe completion.
* `"duration": integer`\
  Specifies how long ritual takes. Defaults to 60 ticks (3 seconds).
* `"shouldSummonMob": boolean"`\
  Specifies whether the recipe results in the mob being spawned in the world
* `"outputNbt": string of a compoundTag`\
  Specifies any additional nbt that is added to an entity **only when the mob is spawned in world.** By default, no additional nbt is set


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://codexadrian.gitbook.io/spirit/developer/soul-transmutation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
