# Custom Drops

Custom drops allow you to define different item drops for each crop based on the player's hoe level. As a player's hoe level increases, they unlock better drop tiers automatically.

{% hint style="info" %}
**How tiers work:** `1` is the default drop. If a player's hoe level is equal to or above the `level-requirement` of a higher tier, that tier will be used instead. You can define unlimited tiers per crop.
{% endhint %}

{% hint style="danger" %}
Each drop **must** include a `sell-price` for AutoSell mode to function correctly.
{% endhint %}

***

### Basic Configuration

yaml

```yaml
Custom-Drops:
  enabled: false
  crops:
    SUGAR_CANE:
      '1':                        # Default drop (no level requirement)
        material: SUGAR_CANE
        sell-price: 6.5
      '2':                        # Unlocked at hoe level 5+
        name: '&d&lEnchanted Sugar Cane'
        material: SUGAR_CANE
        glow: true
        sell-price: 10
        level-requirement: 5
```

***

### All Drop Properties

Below is a full reference of every property a drop tier can use.

#### 🏷️ Display

| Property     | Description                                  | Example                      |
| ------------ | -------------------------------------------- | ---------------------------- |
| `name`       | Custom display name (supports color codes)   | `'&d&lEnchanted Sugar Cane'` |
| `material`   | Bukkit material name                         | `SUGAR_CANE`                 |
| `lore`       | List of lore lines (supports color codes)    | See below                    |
| `glow`       | Adds an enchantment glow effect              | `true` / `false`             |
| `customdata` | Custom model data for resource packs (1.16+) | `1`                          |

```yaml
name: '&d&lEnchanted Sugar Cane'
material: SUGAR_CANE
lore:
  - '&7First line of lore'
  - '&7Second line of lore'
glow: true
customdata: 12332
```

***

#### 🖼️ Custom Texture

Use a Base64 string from [minecraft-heads.com](https://minecraft-heads.com/custom-heads) to apply a custom head texture.

yaml

```yaml
base64:
  enabled: true
  value: ''   # Paste your Base64 value here
```

***

#### 💀 Player Skull

Display a specific player's skull as the drop item.

```yaml
skull:
  enabled: true
  name: Steve   # Player name
```

***

#### ✨ Enchants

Add enchantments using [Bukkit Enchantment](https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/enchantments/Enchantment.html) names in `ENCHANTMENT:LEVEL` format.

```yaml
enchants:
  - 'DURABILITY:10'
  - 'DIG_SPEED:5'
```

***

#### 🚩 Item Flags

Hide item attributes using [Bukkit ItemFlag](https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/inventory/ItemFlag.html) names.

```yaml
flags:
  - 'HIDE_ENCHANTS'
  - 'HIDE_ATTRIBUTES'
```

***

#### 🔩 NBT Data

Attach custom NBT data to the item. Three types are supported:

```yaml
nbt:
  integer:
    key: 'nbtitem'
    value: '1'

nbt:
  string:
    key: 'nbtitem'
    value: 'Item'

nbt:
  boolean:
    key: 'nbtitem'
    value: true
```

***

#### 💰 Economy & Requirements

| Property            | Description                             | Example |
| ------------------- | --------------------------------------- | ------- |
| `sell-price`        | Price per item when AutoSell is active  | `20`    |
| `level-requirement` | Minimum hoe level to use this drop tier | `5`     |

***

### Full Drop Example

```yaml
Custom-Drops:
  enabled: true
  crops:
    SUGAR_CANE:
      '1':
        material: SUGAR_CANE
        sell-price: 6.5
      '2':
        name: '&d&lEnchanted Sugar Cane'
        material: SUGAR_CANE
        lore:
          - '&7A magically enhanced cane'
          - '&7Worth more at the market!'
        glow: true
        enchants:
          - 'DURABILITY:10'
        flags:
          - 'HIDE_ENCHANTS'
        nbt:
          integer:
            key: 'nbtitem'
            value: '1'
        sell-price: 20
        level-requirement: 5
```


---

# 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://docs.rivaldev.xyz/rival-tools/rival-harvester-hoes/custom-drops.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.
