# Familiar's Trick
## Definitions
### Familiar's Trick (`FamiliarsTrick`)
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`id` | The familiar's trick's identifier. An unique, increasing integer. | See details
`animal_types` | The animal types this trick is available to. Either it is available to all or only a list of specific animal types. | See details
`parameters` | Measurable parameters of a familiar's trick. | See details
`property` | The property of the trick. | See details
`ap_value?` | The AP value the familiar has to pay for. It may also be that a specific is known by all familiar by default. In the latter case the field is not set. | See details
`src` | | See details
`translations` | All translations for the entry, identified by IETF language tag (BCP47). | See details
#### `id`
The familiar's trick's identifier. An unique, increasing integer.
- **Type:** Integer
- **Minimum:** `1`
#### `animal_types`
The animal types this trick is available to. Either it is available to all or only a list of specific animal types.
If no animal types are given, the animal disease applies to all animal types.
- **Type:** List
- **Items:** FamiliarsTrick/animal_types[]
#### `parameters`
Measurable parameters of a familiar's trick.
- **Type:** FamiliarsTrickPerformanceParameters
#### `property`
The property of the trick.
- **Type:** FamiliarsTrickProperty
#### `ap_value?`
The AP value the familiar has to pay for. It may also be that a specific is known by all familiar by default. In the latter case the field is not set.
- **Type:** Integer
- **Minimum:** `1`
#### `src`
- **Type:** PublicationRefs
#### `translations`
All translations for the entry, identified by IETF language tag (BCP47).
- **Type:** LocaleMap<FamiliarsTrickTranslation>
---
### `FamiliarsTrick/animal_types[]`
- **Type:** AnimalTypeReference
---
### `FamiliarsTrickProperty`
- **Type:** Union
- **Cases:** FamiliarsTrickProperty'Fixed | FamiliarsTrickProperty'Indefinite
---
### `FamiliarsTrickProperty'Fixed`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`fixed` | | See details
#### `tag`
- **Constant:** `"Fixed"`
#### `fixed`
- **Type:** PropertyReference
---
### `FamiliarsTrickProperty'Indefinite`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`indefinite` | | See details
#### `tag`
- **Constant:** `"Indefinite"`
#### `indefinite`
- **Type:** IndefiniteFamiliarsTrickProperty
---
### `IndefiniteFamiliarsTrickProperty`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`translations` | All translations for the entry, identified by IETF language tag (BCP47). | See details
#### `translations`
All translations for the entry, identified by IETF language tag (BCP47).
- **Type:** LocaleMap<IndefiniteFamiliarsTrickPropertyTranslation>
---
### `IndefiniteFamiliarsTrickPropertyTranslation`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`description` | A description of the property. | See details
#### `description`
A description of the property.
- **Type:** ResponsiveText
---
### `FamiliarsTrickTranslation`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`name` | The name of the familiar's trick. | See details
`effect` | The effect description. | See details
`cost` | | See details
`duration` | | See details
`errata?` | | See details
#### `name`
The name of the familiar's trick.
- **Type:** String
- **Minimum Length:** `1`
#### `effect`
The effect description.
- **Type:** Markdown-formatted text
- **Minimum Length:** `1`
#### `cost`
- **Type:** OldParameter
#### `duration`
- **Type:** OldParameter
#### `errata?`
- **Type:** Errata
---
### `FamiliarsTrickPerformanceParameters`
Measurable parameters of a familiar's trick.
- **Type:** Union
- **Cases:** FamiliarsTrickPerformanceParameters'OneTime | FamiliarsTrickPerformanceParameters'OneTimeInterval | FamiliarsTrickPerformanceParameters'Sustained
---
### `FamiliarsTrickPerformanceParameters'OneTime`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`one_time` | | See details
#### `tag`
- **Constant:** `"OneTime"`
#### `one_time`
- **Type:** FamiliarsTrickOneTimePerformanceParameters
---
### `FamiliarsTrickPerformanceParameters'OneTimeInterval`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`one_time_interval` | | See details
#### `tag`
- **Constant:** `"OneTimeInterval"`
#### `one_time_interval`
- **Type:** FamiliarsTrickOneTimeIntervalPerformanceParameters
---
### `FamiliarsTrickPerformanceParameters'Sustained`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`sustained` | | See details
#### `tag`
- **Constant:** `"Sustained"`
#### `sustained`
- **Type:** FamiliarsTrickSustainedPerformanceParameters
---
### `FamiliarsTrickOneTimePerformanceParameters`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`cost` | | See details
`duration` | | See details
#### `cost`
- **Type:** FamiliarsTrickOneTimeCost
#### `duration`
- **Type:** FamiliarsTrickOneTimeDuration
---
### `FamiliarsTrickOneTimeCost`
- **Type:** Union
- **Cases:** FamiliarsTrickOneTimeCost'Fixed | FamiliarsTrickOneTimeCost'All | FamiliarsTrickOneTimeCost'Indefinite
---
### `FamiliarsTrickOneTimeCost'Fixed`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`fixed` | | See details
#### `tag`
- **Constant:** `"Fixed"`
#### `fixed`
- **Type:** FamiliarsTrickFixedOneTimeCost
---
### `FamiliarsTrickOneTimeCost'All`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`all` | | See details
#### `tag`
- **Constant:** `"All"`
#### `all`
- **Type:** FamiliarsTrickAllOneTimeCost
---
### `FamiliarsTrickOneTimeCost'Indefinite`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`indefinite` | | See details
#### `tag`
- **Constant:** `"Indefinite"`
#### `indefinite`
- **Type:** FamiliarsTrickIndefiniteOneTimeCost
---
### `FamiliarsTrickFixedOneTimeCost`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`ae_value` | The AE cost value. | See details
`lp_value?` | The LP cost value. | See details
`interval?` | The interval in which you have to pay the AE cost again. | See details
`translations?` | All translations for the entry, identified by IETF language tag (BCP47). | See details
#### `ae_value`
The AE cost value.
- **Type:** Integer
- **Minimum:** `1`
#### `lp_value?`
The LP cost value.
- **Type:** Integer
- **Minimum:** `1`
#### `interval?`
The interval in which you have to pay the AE cost again.
- **Type:** DurationUnitValue
#### `translations?`
All translations for the entry, identified by IETF language tag
(BCP47).
- **Type:** LocaleMap<FamiliarsTrickFixedOneTimeCostTranslation>
---
### `FamiliarsTrickFixedOneTimeCostTranslation`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`per?` | The cost have to be per a specific countable entity, e.g. `8 KP per person`. | See details
#### `per?`
The cost have to be per a specific countable entity, e.g. `8 KP per person`.
- **Type:** ResponsiveTextOptional
---
### `FamiliarsTrickAllOneTimeCost`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`minimum?` | The minimum AE the familiar has to have. | See details
#### `minimum?`
The minimum AE the familiar has to have.
- **Type:** Integer
- **Minimum:** `1`
---
### `FamiliarsTrickIndefiniteOneTimeCost`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`translations` | All translations for the entry, identified by IETF language tag (BCP47). | See details
#### `translations`
All translations for the entry, identified by IETF language tag
(BCP47).
- **Type:** LocaleMap<FamiliarsTrickIndefiniteOneTimeCostTranslation>
---
### `FamiliarsTrickIndefiniteOneTimeCostTranslation`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`description` | A description of the AE cost. | See details
#### `description`
A description of the AE cost.
- **Type:** ResponsiveText
---
### `FamiliarsTrickOneTimeDuration`
- **Type:** Union
- **Cases:** FamiliarsTrickOneTimeDuration'Immediate | FamiliarsTrickOneTimeDuration'Fixed | FamiliarsTrickOneTimeDuration'Indefinite
---
### `FamiliarsTrickOneTimeDuration'Immediate`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`immediate` | | See details
#### `tag`
- **Constant:** `"Immediate"`
#### `immediate`
- **Type:** Object
---
### `FamiliarsTrickOneTimeDuration'Immediate/immediate`
- **Type:** Empty Object
---
### `FamiliarsTrickOneTimeDuration'Fixed`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`fixed` | | See details
#### `tag`
- **Constant:** `"Fixed"`
#### `fixed`
- **Type:** FamiliarsTrickFixedOneTimeDuration
---
### `FamiliarsTrickOneTimeDuration'Indefinite`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`tag` | | See details
`indefinite` | | See details
#### `tag`
- **Constant:** `"Indefinite"`
#### `indefinite`
- **Type:** FamiliarsTrickIndefiniteOneTimeDuration
---
### `FamiliarsTrickFixedOneTimeDuration`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`is_maximum?` | If the duration is the maximum duration, so it may end earlier. | See details
`value` | The (unitless) duration. | See details
`unit` | The duration unit. | See details
`translations?` | All translations for the entry, identified by IETF language tag (BCP47). | See details
#### `is_maximum?`
If the duration is the maximum duration, so it may end earlier.
- **Type:** Boolean
#### `value`
The (unitless) duration.
- **Type:** Integer
- **Minimum:** `1`
#### `unit`
The duration unit.
- **Type:** DurationUnit
#### `translations?`
All translations for the entry, identified by IETF language tag (BCP47).
- **Type:** LocaleMap<FamiliarsTrickFixedOneTimeDurationTranslation>
---
### `FamiliarsTrickFixedOneTimeDurationTranslation`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`replacement?` | A replacement string. | See details
#### `replacement?`
A replacement string.
- **Type:** ResponsiveTextReplace
---
### `FamiliarsTrickIndefiniteOneTimeDuration`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`translations` | All translations for the entry, identified by IETF language tag (BCP47). | See details
#### `translations`
All translations for the entry, identified by IETF language tag
(BCP47).
- **Type:** LocaleMap<FamiliarsTrickIndefiniteOneTimeDurationTranslation>
---
### `FamiliarsTrickIndefiniteOneTimeDurationTranslation`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`description` | A description of the duration. | See details
#### `description`
A description of the duration.
- **Type:** ResponsiveText
---
### `FamiliarsTrickOneTimeIntervalPerformanceParameters`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`cost` | | See details
#### `cost`
- **Type:** FamiliarsTrickOneTimeIntervalCost
---
### `FamiliarsTrickOneTimeIntervalCost`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`ae_value` | The AE cost value. | See details
`lp_value?` | The LP cost value. | See details
`interval` | The duration granted/added by paying the given AE cost. | See details
#### `ae_value`
The AE cost value.
- **Type:** Integer
- **Minimum:** `1`
#### `lp_value?`
The LP cost value.
- **Type:** Integer
- **Minimum:** `1`
#### `interval`
The duration granted/added by paying the given AE cost.
- **Type:** DurationUnitValue
---
### `FamiliarsTrickSustainedPerformanceParameters`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`cost` | | See details
#### `cost`
- **Type:** FamiliarsTrickSustainedCost
---
### `FamiliarsTrickSustainedCost`
- **Type:** Object
Key | Description | Details
:-- | :-- | :--
`ae_value` | The AE cost value. | See details
`lp_value?` | The LP cost value. | See details
`interval?` | The interval in which you have to pay the AE cost again, if any. | See details
#### `ae_value`
The AE cost value.
- **Type:** Integer
- **Minimum:** `1`
#### `lp_value?`
The LP cost value.
- **Type:** Integer
- **Minimum:** `1`
#### `interval?`
The interval in which you have to pay the AE cost again, if any.
- **Type:** DurationUnitValue