> For the complete documentation index, see [llms.txt](https://edseries-plugins.gitbook.io/p/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://edseries-plugins.gitbook.io/p/edcompanions/getting-started/configuration.md).

# Configuration

Everything in EdCompanions is configurable. File map:

| File / folder         | Controls                                                                                                                                                  |
| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `config.yml`          | Storage method (H2/MySQL), slots & storage capacity, display settings, fusion **statuses**, internal currencies, the storage hand item, withdraw settings |
| `messages.yml`        | Every chat message                                                                                                                                        |
| `rarities.yml`        | Companion rarities: names, colors, egg roll weights, order                                                                                                |
| `upgrades.yml`        | Player-wide upgrades (Luck / Shiny / Rainbow / Void by default)                                                                                           |
| `fusion.yml`          | Fusion chance per companion, group size, consume-on-fail                                                                                                  |
| `companions/<id>.yml` | One companion each — display, buff, rarity, GUI item                                                                                                      |
| `eggs/<id>.yml`       | One egg each — price, roll pool, placeable look, animation                                                                                                |
| `guis/*.yml`          | Every GUI (layout, items, texts, actions)                                                                                                                 |
| `placed-eggs.yml`     | Auto-managed: eggs placed with `/companions placeegg`                                                                                                     |
| `models/<id>/`        | BDEngine-style EdLib models for companion visuals                                                                                                         |

## config.yml essentials

```yaml
data:
  method: h2            # h2 or mysql (block below)
  save-interval: 120

companions:
  default-slots: 3      # equip slots everyone starts with
  max-slots: 6          # slots rendered in the GUI
  default-storage: 100  # storage capacity everyone starts with

display:
  tick-interval: 2      # async mover interval (ticks)
  default-mode: BEHIND  # default formation
  height-offset: 0.4
  bobbing: true
  world-blacklist: []
```

{% hint style="info" %}
Slots and storage can also come from permissions: `edcompanions.slots.<n>` and `edcompanions.storage.<n>` grant *at least* `n`. Perfect for rank kits — the GUI's locked-slot lore tells players to rank up.
{% endhint %}

## Statuses

Fusion statuses live in `config.yml` under `statuses:` (ordered — fusing upgrades to the next one down the list). Each status multiplies the companion's buff:

```yaml
statuses:
  shiny:
    display-name: '&6Shiny'
    name-prefix: '&6✦ '     # shown before the companion name
    boost-multiplier: 2.0   # 2x the companion's buff amount
    base-chance: 1.0        # % chance eggs roll it before upgrades
```

Add as many statuses as you want — the fusion chain follows the config order.

## Internal currencies

If you don't run any of the supported plugins (or want a separate currency), define currencies under `currencies:` and use `provider: edcompanions` in eggs/upgrades. Balances are stored on the player and can be granted with the `give-economy` GUI action.
