# Hydraulic Fracking Tower

File: `data/hbm/hbm/machine_config/frackingtower.json`. Settings load when the world opens. See [Datapack Settings](https://movblock.mov/ntm-next/26.3/wiki/settings.md) for replacement behavior.

## Fields

| Field | Meaning and default | Range |
| - | - | - |
| `delay` | Ticks between extraction attempts; default `20`. | `[1, i32::MAX]` |
| `destruction_range` | Fracking tower destruction radius, in blocks; default `75`. | `[0, i32::MAX]` |
| `drain_chance` | Probability that an extraction depletes its deposit; default `0.02`. | `[0, 1]` |
| `gas_per_bedrock_deposit_max` | Maximum gas extracted per bedrock deposit operation, in mB; default `50`. | `[0, i32::MAX]` |
| `gas_per_bedrock_deposit_min` | Minimum gas extracted per bedrock deposit operation, in mB; default `10`. | `[0, i32::MAX]` |
| `gas_per_deposit_max` | Maximum gas extracted per deposit operation, in mB; default `500`. | `[0, i32::MAX]` |
| `gas_per_deposit_min` | Minimum gas extracted per deposit operation, in mB; default `100`. | `[0, i32::MAX]` |
| `oil_per_bedrock_deposit` | Oil extracted per bedrock deposit operation, in mB; default `100`. | `[0, i32::MAX]` |
| `oil_per_deposit` | Oil extracted per deposit operation, in mB; default `1000`. | `[0, i32::MAX]` |
| `power_capacity` | Machine HE buffer capacity; default `5000000`. | `[0, i32::MAX]` |
| `power_consumption` | Base HE consumption during operation; default `5000`. | `[0, i32::MAX]` |
| `solution_required` | Fracking solution consumed per extraction, in mB; default `10`. | `[0, i32::MAX]` |

Validation requires $0 \le \mathrm{gas\_per\_deposit\_max} - \mathrm{gas\_per\_deposit\_min} < \texttt{i32::MAX}$ and $0 \le \mathrm{gas\_per\_bedrock\_deposit\_max} - \mathrm{gas\_per\_bedrock\_deposit\_min} < \texttt{i32::MAX}$.

## Example

```json
{
  "delay": 20,
  "destruction_range": 75,
  "drain_chance": 0.02,
  "gas_per_bedrock_deposit_max": 50,
  "gas_per_bedrock_deposit_min": 10,
  "gas_per_deposit_max": 500,
  "gas_per_deposit_min": 100,
  "oil_per_bedrock_deposit": 100,
  "oil_per_deposit": 1000,
  "power_capacity": 5000000,
  "power_consumption": 5000,
  "solution_required": 10
}
```
