> ## Documentation Index
> Fetch the complete documentation index at: https://docs.borntocraftstudio.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Animal Definition

> Full species configuration for the tycoon research tree

The `animal_definition` entry defines a captureable animal species: its visual entity model, rarity tier, catalyst research requirements, economy stats, mount properties, fusion rules, and model variants.

## Fields

| Field                     | Type                         | Default  | Description                                   |
| :------------------------ | :--------------------------- | :------- | :-------------------------------------------- |
| `entityDefinition`        | `Ref<EntityDefinitionEntry>` | —        | Visual model (NPC, ModelEngine, vanilla mob)  |
| `category`                | `String`                     | —        | Parent `research_category` ID                 |
| `rarity`                  | `AnimalRarity`               | `COMMON` | COMMON/UNCOMMON/RARE/EPIC/LEGENDARY           |
| `catalystPowerRequired`   | `Double`                     | `15.0`   | Total power needed before fuel can activate   |
| `acceptedCatalystItems`   | `List<CatalystItemDef>`      | `[]`     | Items accepted + power value per item         |
| `fuelItem`                | `String`                     | —        | Item ID consumed to trigger research attempt  |
| `successChance`           | `Double`                     | `0.3`    | Base capture chance (0.0–1.0)                 |
| `alternativeRewards`      | `List<AlternativeReward>`    | `[]`     | Rewards if player already owns the animal     |
| `baseRevenueRate`         | `Double`                     | `0.5`    | Revenue/sec at level 1                        |
| `revenueScaling`          | `Double`                     | `0.1`    | Extra revenue multiplier per level            |
| `biomeAffinities`         | `AnimalBiomeAffinity`        | `None`   | Biome-based revenue multipliers               |
| `isMountable`             | `Boolean`                    | `false`  | Can be ridden in adventure dimensions         |
| `fatigueCapacity`         | `Int`                        | `180`    | Max mount duration in seconds                 |
| `mountSpeed`              | `Double`                     | `1.0`    | Speed multiplier when mounted                 |
| `maxLevel`                | `Int`                        | `100`    | Maximum animal level                          |
| `xpCurve`                 | `List<Int>`                  | `[]`     | XP needed per level (index 0 = level 1→2)     |
| `fusionMinLevel`          | `Int`                        | `20`     | Minimum level to attempt fusion               |
| `fusionParentRequired`    | `Boolean`                    | `true`   | Two parents required (true) or one (false)    |
| `habitatBlocks`           | `List<String>`               | `[]`     | Block types for happiness bonus               |
| `requiredProfessionLevel` | `Int`                        | `1`      | Minimum RPG profession level                  |
| `displayName`             | `String`                     | —        | Name shown in GUI                             |
| `description`             | `String`                     | —        | Flavor text for the bestiary                  |
| `icon`                    | `String`                     | —        | GUI icon item ID                              |
| `modelVariants`           | `List<ModelVariantDef>`      | `[]`     | Alternative skins (id + EntityDefinition ref) |
