# cpvp runtime settings

The public API allows a limited set of validated CPvP runtime changes through `CpvpSettingsUpdateRequest`.

## Supported settings

| Builder method                      | Description                                        |
| ----------------------------------- | -------------------------------------------------- |
| `anchoringMode(boolean)`            | Enables or disables respawn-anchor combat mode.    |
| `breakBlocks(boolean)`              | Enables or disables CPvP block breaking/breaching. |
| `lowHpCrystalLethalReserve(double)` | Updates low-health crystal safety reserve.         |

## Example

```java
CpvpSettingsUpdateRequest request = CpvpSettingsUpdateRequest.builder()
        .anchoringMode(true)
        .breakBlocks(false)
        .lowHpCrystalLethalReserve(0.05D)
        .build();

PracticeBotHandle updated = api.updateCpvpSettings(bot.getNpcUuid(), request);
```

or through the handle:

```java
bot.updateCpvpSettings(CpvpSettingsUpdateRequest.builder()
        .anchoringMode(false)
        .build());
```

## Validation rules

* The bot must exist.
* The bot must be an active CPvP bot.
* The call must run on the server main thread.
* Null requests are rejected.
* Unsupported internal CPvP settings are not exposed through API v1.

## Why only selected settings are exposed

CPvP behavior is sensitive to combat timing, target state, arena geometry, inventory state, and server performance. The public API exposes only safe, validated toggles intended for addons such as arena managers, ranked queues, and admin dashboards.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://edelweiss-network.gitbook.io/practicebot/developer-guide/cpvp-runtime-settings.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
