> For the complete documentation index, see [llms.txt](https://docs-nightbeam.gitbook.io/infinity-rifts/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-nightbeam.gitbook.io/infinity-rifts/docs/faq.md).

# FAQ

## Server owners

**Which server and Java version do I need?** Java 21 and a Bukkit-family server accepting API 1.20 plugins. The source compiles against Spigot 1.20.1 and includes Bukkit/Paper plus Folia scheduling.

**Is PlaceholderAPI optional?** No. It is a hard dependency even if you do not use placeholders.

**Does it need Vault?** No. Vault is only logged. `cost` and `money` fields do not perform economy operations.

**Can I disable random gateways?** Yes, set `random-spawn.enabled: false` in every gateway and restart.

**Can I add a gateway?** Copy a preset to a new filename, change its unique `id`, edit the model-supported paths, then reload/restart and check `/rift list` plus validation logs.

## Administrators and players

**Why can an operator use some admin commands but my staff group cannot?** The implementation uses admin permission nodes missing from `plugin.yml`. Assign them explicitly.

**How do parties work?** A leader invites an online player; the invited player runs `/rift join <leader>`. Party membership is applied when the leader starts a gateway, subject to max players and cooldown/combat rules.

**Are random gateways competitive?** `random-gates.ownership-mode: NONE` marks the active instance competitive, allowing open mob damage/drop behavior and configured PvP. Put `random-gates` at the gateway root.

**Can I reload safely?** Config reload is partial. Use it for quick text/schema testing without active sessions; use a full restart for production.

## Developers and networks

**Is there an API or custom events?** Yes. API contract v1.0 is available through Bukkit's service registry, with immutable definition/session snapshots and start, wave, restore, and end events. See [Developer API](/infinity-rifts/developer-api.md).

**Does it run on Velocity/BungeeCord?** No. There is no proxy plugin descriptor, messaging, database synchronization, or network-wide state.

**Are placeholders accurate for current gateway sessions?** Not reliably: they query the legacy manager, not the primary gateway manager.

**Can MMOItems be used in YAML rewards?** No user-facing MMOItems path is wired. A utility class exists but has no callers.

## Upgrades

**Will config update automatically?** Main model defaults may be written automatically. Gateway files are not migrated; defaults are copied only when absent. Compare and merge manually.

**Can I downgrade?** Only by restoring a version-matched JAR and data backup. There is no reverse migration.
