bedriox.settings
Defaults are extracted directly from Bedriox. Configuration precedence is built-in defaults, server.properties, bedriox.settings, then explicit CLI overrides.
| Setting | Default | Description |
|---|---|---|
runtime.ticks-per-second | 20 | Runtime and workers |
workers.core-count | auto | Number of workers reserved for chunk generation and other server-owned background work. Use auto for a conservative CPU-based value, 0 to disable core workers, or an integer from 1 through 32. |
workers.plugin-count | auto | Number of workers shared fairly by asynchronous plugin tasks. Auto allocates independent plugin capacity while reserving CPU for the main tick, networking, storage and Bedriox core workers. Use auto for most servers, 0 to disable plugin async execution, or an integer from 1 through 32. |
chunk-sending.spawn-radius | 4 | Chunk orchestration |
chunk-sending.per-tick | 8 | See the operator guide for accepted values and behavior. |
chunk-generation.per-tick | 4 | See the operator guide for accepted values and behavior. |
chunk-generation.queue-size | 1024 | See the operator guide for accepted values and behavior. |
chunk-loading.prefetch-radius | 1 | See the operator guide for accepted values and behavior. |
chunk-cache.limit | auto | See the operator guide for accepted values and behavior. |
chunk-saving.per-tick | 8 | See the operator guide for accepted values and behavior. |
chunk-unloading.grace-ticks | 600 | See the operator guide for accepted values and behavior. |
chunk-unloading.per-tick | 96 | See the operator guide for accepted values and behavior. |
memory-management.enabled | true | Memory pressure and garbage collection |
memory-management.soft-threshold | 70 | See the operator guide for accepted values and behavior. |
memory-management.high-threshold | 85 | See the operator guide for accepted values and behavior. |
memory-management.critical-threshold | 92 | See the operator guide for accepted values and behavior. |
level.autosave-interval-ticks | 6000 | Persistence and movement |
players.autosave-interval-ticks | 6000 | See the operator guide for accepted values and behavior. |
players.save-per-tick | 8 | See the operator guide for accepted values and behavior. |
movement.rewind-history-size | 40 | See the operator guide for accepted values and behavior. |
network.authentication | FULL | Network protection. Changes take effect after restart. Login authentication: FULL verifies Xbox Live, SELF_SIGNED is local development only, and GATEWAY enables a backend for signed connections from Bedriox Gateway. |
network.proxy.issuer | bedriox-gateway | These settings are used only with network.authentication=GATEWAY. Direct player joins are rejected in that mode; players must connect through Gateway. |
network.proxy.audience | backend | See the operator guide for accepted values and behavior. |
network.proxy.secret-file | gateway.secret | See the operator guide for accepted values and behavior. |
network.proxy.trusted-cidrs | 127.0.0.1/32 | See the operator guide for accepted values and behavior. |
network.proxy.token-max-age-seconds | 15 | See the operator guide for accepted values and behavior. |
network.proxy.control-key-id | primary | Internal control-protocol key label. Gateway currently selects "primary" internally; the same global secret authenticates player forwarding and control. |
network.proxy.allow-public-bind | false | Keep false. Enabling this permits GATEWAY mode to bind every interface; use a host firewall or private network in addition to the application checks. |
security.network.profile | balanced | Selects bounded NetherNet signaling and ICE negotiation limits. lenient permits more concurrent negotiations, balanced is recommended, strict lowers admission limits, and custom reads the network.nethernet.maximum-* values. |
network.nethernet.lan-port | 7551 | UDP 7551 is the standard LAN discovery port. Set 0 for a backend that is only reached through Gateway. HTTP signaling and ICE remain on server-port. |
network.nethernet.maximum-signaling-connections | 256 | Custom-profile admission limits. These are ignored by the named profiles. |
network.nethernet.maximum-negotiations | 256 | See the operator guide for accepted values and behavior. |
network.nethernet.maximum-negotiations-per-address | 8 | See the operator guide for accepted values and behavior. |
network.nethernet.maximum-remote-candidates | 64 | See the operator guide for accepted values and behavior. |
network.nethernet.gathering-timeout-milliseconds | 15000 | ICE gathering and data-channel opening deadlines in milliseconds. |
network.nethernet.channel-timeout-milliseconds | 5000 | See the operator guide for accepted values and behavior. |
network.nethernet.advertised-addresses | | Optional comma-separated public IP addresses advertised as ICE candidates. |
network.protocol-soft-strike-limit | 10 | Authenticated Bedrock packet handling. These limits do not apply to unknown supported-version notifications, stale input, or gameplay mistakes that Bedriox can safely ignore or correct. Repeated impossible semantic actions, such as another actor's runtime identity, close only the affected session after this many soft strikes. Unsupported, stale, and correctable input never counts. Accepted range: 1 through 100. The recommended default is 10. |
network.protocol-strike-decay-seconds | 15 | One accumulated soft strike expires after this many violation-free seconds. Accepted range: 1 through 3600. The recommended default is 15. |
network.trace-unsupported-packets | true | When true, bounded metadata for unsupported packet IDs is written to protocol tracing. This never logs packet bodies, identity tokens, encryption material, or credentials. |
network.unsupported-packet-log-limit | 5 | Maximum trace entries retained for each unsupported packet ID during one session. Accepted range: 0 through 1000. Zero disables these entries without changing packet handling. |
security.movement.enabled | true | Movement authority. These switches never make client positions authoritative. enabled records high-confidence violations such as unauthorized survival flight. |
security.movement.correct-invalid-movement | true | correct-invalid-movement returns the player to authoritative state. Keep true for normal gameplay. |
security.movement.kick-repeated-violations | true | kick-repeated-violations disconnects only after repeated violations reach the internal confidence threshold. |
entities.ai.enabled | true | Entity simulation |
updates.enabled | true | Update notifications The request selects the stable or beta channel but does not send the current version or server, player, plugin, configuration, or installation identifiers. As with normal HTTPS traffic, the service and its CDN can observe the public IP, request time, channel, and standard HTTP/TLS metadata. Allow outbound HTTPS access to that host. Updates are never downloaded or installed automatically. |
updates.notify-operators | true | See the operator guide for accepted values and behavior. |
plugins.maximum | 64 | Plugins and diagnostics |
logging.level | INFO | See the operator guide for accepted values and behavior. |
logging.console | true | See the operator guide for accepted values and behavior. |
logging.console-colors | auto | See the operator guide for accepted values and behavior. |
logging.file | true | See the operator guide for accepted values and behavior. |
logging.file-max-size | 16777216 | See the operator guide for accepted values and behavior. |
logging.file-history | 10 | See the operator guide for accepted values and behavior. |
logging.protocol-trace | false | See the operator guide for accepted values and behavior. |
crash-report.include-player-identifiers | true | See the operator guide for accepted values and behavior. |
