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

# Stats Level Config

> StatsLevelConfig.json - Stat-related configuration options.

# Stats Level Config

**File:** `mods/Zuxaw_RPGLeveling/StatsLevelConfig.json`

All stat-related configuration options. Controls stat points per level, stat values, max allocations, and stat-specific mechanics.

***

## Configuration Options

| Option                            | Type    | Default | Description                                                                                                                        |
| --------------------------------- | ------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `StatPointsPerLevel`              | Integer | 5       | Stat points earned per level up                                                                                                    |
| `StatValuePerPoint`               | Double  | 1.0     | Default stat value per point for resource stats (used when per-stat key not set)                                                   |
| `HealthStatValuePerPoint`         | Double  | 1.0     | Health increase per Health point                                                                                                   |
| `StaminaStatValuePerPoint`        | Double  | 1.0     | Stamina increase per Stamina point                                                                                                 |
| `ManaStatValuePerPoint`           | Double  | 1.0     | Mana increase per Mana point                                                                                                       |
| `AmmoStatValuePerPoint`           | Double  | 1.0     | Ammo capacity increase per Ammo point                                                                                              |
| `OxygenStatValuePerPoint`         | Double  | 1.0     | Oxygen increase per Oxygen point                                                                                                   |
| `DamageStatValuePerPoint`         | Double  | 1.5     | Multiplicative damage bonus per Damage point (% per point)                                                                         |
| `CriticalDamageStatValuePerPoint` | Double  | 0.2     | Critical hit chance % per Critical Damage point (e.g. 50 pts × 0.2 = 10% chance)                                                   |
| `MiningStatValuePerPoint`         | Double  | 0.5     | Block damage multiplier per Mining point                                                                                           |
| `WoodcuttingStatValuePerPoint`    | Double  | 0.5     | Block damage multiplier per Woodcutting point                                                                                      |
| `DefenseStatValuePerPoint`        | Double  | 1.5     | Effective weight per Defense point (linear display %; diminishing curve, max 80%)                                                  |
| `DefenseMaxReductionRatio`        | Double  | 0.8     | Maximum damage reduction ratio for Defense stat (80% = 80% max reduction)                                                          |
| `BlockDamageScalingDivisor`       | Double  | 25.0    | Divisor for Mining/Woodcutting block damage multiplier                                                                             |
| `MiningPerTickDivisor`            | Double  | 100.0   | Divisor for per-tick block damage bonus                                                                                            |
| `StaminaConsumptionValuePerPoint` | Double  | 0.01    | Stamina consumption reduction per point (1% per point)                                                                             |
| `StaminaRegenSpeedValuePerPoint`  | Double  | 0.18    | Stamina regen speed per point (18% per point)                                                                                      |
| `MaxStatPointsHealth`             | Integer | 50      | Max allocatable to Health                                                                                                          |
| `MaxStatPointsStamina`            | Integer | 50      | Max allocatable to Stamina                                                                                                         |
| `MaxStatPointsMana`               | Integer | 50      | Max allocatable to Mana                                                                                                            |
| `MaxStatPointsAmmo`               | Integer | 4       | Max allocatable to Ammo                                                                                                            |
| `MaxStatPointsOxygen`             | Integer | 50      | Max allocatable to Oxygen                                                                                                          |
| `MaxStatPointsStaminaRegenSpeed`  | Integer | 50      | Max allocatable to StaminaRegenSpeed                                                                                               |
| `MaxStatPointsStaminaConsumption` | Integer | 50      | Max allocatable to StaminaConsumption                                                                                              |
| `MaxStatPointsDamage`             | Integer | 50      | Max allocatable to Damage                                                                                                          |
| `MaxStatPointsCriticalDamage`     | Integer | 50      | Max allocatable to Critical Damage                                                                                                 |
| `MaxStatPointsMining`             | Integer | 50      | Max allocatable to Mining                                                                                                          |
| `MaxStatPointsWoodcutting`        | Integer | 50      | Max allocatable to Woodcutting                                                                                                     |
| `MaxStatPointsDefense`            | Integer | 50      | Max allocatable to Defense                                                                                                         |
| `MovementSpeedStatValuePerPoint`  | Double  | 1.0     | Movement speed increase per point (%); e.g. 1.0 = 1% per point. Applied to ground movement.                                        |
| `MaxStatPointsMovementSpeed`      | Integer | 50      | Max allocatable to Movement Speed                                                                                                  |
| `ManaRegenSpeedValuePerPoint`     | Double  | 0.18    | Mana regeneration speed multiplier per point (e.g. 0.18 = 18% faster per point). Only applies when mana is naturally regenerating. |
| `MaxStatPointsManaRegenSpeed`     | Integer | 50      | Max allocatable to Mana Regen                                                                                                      |
| `HarvestDoubleChancePerPoint`     | Double  | 0.5     | Double-yield chance **% per Harvest point** (e.g. 20 pts × 0.5 = 10% before cap). *0.3.9*                                          |
| `HarvestTripleChancePerPoint`     | Double  | 0.1     | Triple-yield chance **% per Harvest point**. *0.3.9*                                                                               |
| `HarvestMaxDoubleChance`          | Double  | 50.0    | Cap on double-yield chance (%). *0.3.9*                                                                                            |
| `HarvestMaxTripleChance`          | Double  | 15.0    | Cap on triple-yield chance (%). *0.3.9*                                                                                            |
| `MaxStatPointsHarvest`            | Integer | 50      | Max allocatable to Harvest. *0.3.9*                                                                                                |
| `BlacklistedStats`                | String  | `""`    | Comma-separated stat names to disable/hide                                                                                         |

***

## Stat Points

### Points Per Level

* `StatPointsPerLevel` - How many stat points you earn on each level up (default: 5)

**Total stat points at max level:**

```
Total = (MaxLevel - 1) × StatPointsPerLevel
```

**Example:** Max level 100, 5 points per level:

* Total: (100 - 1) × 5 = **495 stat points**

***

## Base Stats

Stats that directly increase resource pools. Each has its own value-per-point key (default 1.0); if not set, `StatValuePerPoint` is used:

* **Health** - `HealthStatValuePerPoint` (default: 1.0)
* **Stamina** - `StaminaStatValuePerPoint` (default: 1.0)
* **Mana** - `ManaStatValuePerPoint` (default: 1.0)
* **Ammo** - `AmmoStatValuePerPoint` (default: 1.0)
* **Oxygen** - `OxygenStatValuePerPoint` (default: 1.0)

***

## Combat Stats

### Damage

Multiplicative damage bonus to NPCs:

* **Value per point:** `DamageStatValuePerPoint` (default: 1.5)
* Formula: `damage = baseDamage × (1 + statLevel × DamageStatValuePerPoint / 100)` - e.g. 1.5% per point (50 points = 75% bonus = 1.75× damage).
* **GUI icon:** `Weapon_Longsword_Flame`

### Critical Damage

Chance to deal a critical hit (damage multiplied by a random value between 1.5× and 2.0×). When a critical hit occurs, the player receives a notification showing the damage value (styled in red).

* **Value per point:** `CriticalDamageStatValuePerPoint` (default: 0.2) - **0.2% chance per point** (e.g. 50 points = 10% chance; at 0.5 per point, 50 points = 25% chance).
* Formula: on each hit, roll; if `random < (points × valuePerPoint / 100)` then multiply damage by `random(1.5, 2.0)`.
* **GUI icon:** `Weapon_Longsword_Adamantite_Saurian` (displayed next to Damage in the Stats GUI).

### Defense

Percentage damage reduction with diminishing returns. The GUI shows a linear value (points × valuePerPoint %); the actual reduction uses a diminishing curve.

* **Value per point:** `DefenseStatValuePerPoint` (default: 1.5) - effective weight per point (display: 1 pt = 1.5%; curve caps at 80%).
* **Max reduction:** `DefenseMaxReductionRatio` (default: 0.8 = 80%)
* Formula: `reduction = DefenseMaxReductionRatio × effective / (effective + 50)` with `effective = points × DefenseStatValuePerPoint`

**Example:** With default settings, you can reach up to 80% damage reduction, but each additional point becomes less effective as you approach the cap.

***

## Gathering Stats

### Mining

Damage bonus to stone/ore blocks:

* **Value per point:** `MiningStatValuePerPoint` (default: 0.5)
* **Scaling divisor:** `BlockDamageScalingDivisor` (default: 25.0)
* **Per-tick divisor:** `MiningPerTickDivisor` (default: 100.0)

Higher Mining stat = faster stone/ore breaking.

### Woodcutting

Damage bonus to wood blocks:

* **Value per point:** `WoodcuttingStatValuePerPoint` (default: 0.5)
* Uses same scaling as Mining

Higher Woodcutting stat = faster tree/wood breaking.

### Harvest

**Added in 0.3.9.** Chance to proc **double** or **triple** crop yield when harvesting mature crops (F key / sickle). On proc, the player gets an in-game notification. Crop harvest **XP** is configured in [HarvestingConfig.json](config-harvesting), not here.

* **Double chance per point:** `HarvestDoubleChancePerPoint` (default: 0.5% per point)
* **Triple chance per point:** `HarvestTripleChancePerPoint` (default: 0.1% per point)
* **Caps:** `HarvestMaxDoubleChance` (default 50%), `HarvestMaxTripleChance` (default 15%)
* **Max points:** `MaxStatPointsHarvest` (default 50)

Triple is rolled only when double does not proc. See [Formulas](formulas#crop-harvest-xp-and-harvest-stat) for yield math.

***

## Stamina Stats

### Stamina Regen Speed

Increases how fast stamina regenerates:

* **Value per point:** `StaminaRegenSpeedValuePerPoint` (default: 0.18 = 18% per point)

**Example:** 10 points = 180% faster stamina regen (2.8× normal speed)

### Stamina Consumption

Reduces stamina consumption when performing actions:

* **Value per point:** `StaminaConsumptionValuePerPoint` (default: 0.01 = 1% per point)

**Example:** 25 points = 25% less stamina consumption

***

## Movement Speed

Increases player ground movement speed. Especially useful for melee and repositioning.

* **Value per point:** `MovementSpeedStatValuePerPoint` (default: 1.0 = 1% per point)
* **Formula:** Movement speed multiplier = 1 + (total effective points × valuePerPoint / 100). Total points = allocated + class innate bonus from level.
* **GUI icon:** Tree Sap (`Ingredient_Tree_Sap`)

***

## Mana Regen

Increases how fast mana regenerates. Especially relevant for the **Arcane** class and magical weapons (mana is used in Hytale for spells/magic).

* **Value per point:** `ManaRegenSpeedValuePerPoint` (default: 0.18 = 18% per point)
* **Formula:** Regen speed multiplier = 1 + (allocated points × valuePerPoint). Only applies when mana is naturally regenerating (not when spending).
* **GUI icon:** Staff Crystal Ice (`Weapon_Staff_Crystal_Ice`)

***

## Max Stat Allocations

Each stat has a maximum number of points you can allocate:

| Stat               | Default Max |
| ------------------ | ----------- |
| Health             | 50          |
| Stamina            | 50          |
| Mana               | 50          |
| Ammo               | 4           |
| Oxygen             | 50          |
| StaminaRegenSpeed  | 50          |
| StaminaConsumption | 50          |
| Damage             | 50          |
| Critical Damage    | 50          |
| Mining             | 50          |
| Woodcutting        | 50          |
| Defense            | 50          |
| Movement Speed     | 50          |
| Mana Regen         | 50          |

Set to `0` to effectively disable a stat, or increase for more specialization.

***

## Blacklisted Stats

Hide or disable specific stats from the GUI:

```json theme={null}
{
  "BlacklistedStats": "Ammo,Oxygen"
}
```

Blacklisted stats:

* Do **not** appear in the stats GUI
* Cannot be allocated
* Are comma-separated stat names

***

## Example Config (Default Values)

```json theme={null}
{
  "StatPointsPerLevel": 5,
  "StatValuePerPoint": 1.0,
  "HealthStatValuePerPoint": 1.0,
  "StaminaStatValuePerPoint": 1.0,
  "ManaStatValuePerPoint": 1.0,
  "AmmoStatValuePerPoint": 1.0,
  "OxygenStatValuePerPoint": 1.0,
  "DamageStatValuePerPoint": 1.5,
  "CriticalDamageStatValuePerPoint": 0.2,
  "MiningStatValuePerPoint": 0.5,
  "WoodcuttingStatValuePerPoint": 0.5,
  "DefenseStatValuePerPoint": 1.5,
  "DefenseMaxReductionRatio": 0.8,
  "BlockDamageScalingDivisor": 25.0,
  "MiningPerTickDivisor": 100.0,
  "StaminaConsumptionValuePerPoint": 0.01,
  "StaminaRegenSpeedValuePerPoint": 0.18,
  "MaxStatPointsHealth": 50,
  "MaxStatPointsStamina": 50,
  "MaxStatPointsMana": 50,
  "MaxStatPointsAmmo": 4,
  "MaxStatPointsOxygen": 50,
  "MaxStatPointsStaminaRegenSpeed": 50,
  "MaxStatPointsStaminaConsumption": 50,
  "MaxStatPointsDamage": 50,
  "MaxStatPointsCriticalDamage": 50,
  "MaxStatPointsMining": 50,
  "MaxStatPointsWoodcutting": 50,
  "MaxStatPointsDefense": 50,
  "MovementSpeedStatValuePerPoint": 1.0,
  "MaxStatPointsMovementSpeed": 50,
  "ManaRegenSpeedValuePerPoint": 0.18,
  "MaxStatPointsManaRegenSpeed": 50,
  "BlacklistedStats": ""
}
```

***

## File location and reload

* **Path:** `mods/Zuxaw_RPGLeveling/StatsLevelConfig.json`
* This file **is** reloaded by `/lvl reload`. See [Configuration Overview](config-overview#reloading-config).

***

## See Also

* [Configuration Overview](config-overview) - All config files
* [Main Config](config-main) - Main plugin settings
* [Features](features) - Available stats and their effects
