Skip to content

Configuration

PetteriM1 edited this page Dec 21, 2024 · 10 revisions

Settings on Nukkit PM1E are located in server.properties file. Additionally, a few other data files are created in the server folder automatically. This page explains what those do.

ops.txt

saves the names of players with operator permission, lowercase and one per line

it's recommended to use 'op' and 'deop' commands to modify

white-list.txt

saves the names of whitelisted players, lowercase and one per line

it's recommended to use 'whitelist' command to modify

banned-players.json

saves banned player names

it's recommended to use 'ban' and 'pardon' commands to modify

banned-ips.json

saves banned IP addresses

it's recommended to use 'banip' and 'pardonip' commands to modify

maps.yml

saves a global counter of known used map IDs

do not modify

server.properties

saves all settings

some of them can be applied using 'reload' command while the server is running, some require a restart

restarting the server is always recommended after modifying these

motd

server name / text which shows on the server list

note: can't be empty

sub-motd

second line for motd

note: shows only for players in local network when viewing the server on the friends list in game

note: can't be empty since 1.16.210

server-port

server's port

note: there can't be two servers running in the same port

note: you will need to port forward in order to have your server publicly accessible

note: bedrock edition uses UDP

server-ip

ip where server runs

default is 0.0.0.0 and you don't usually need to change this

note: do not edit unless you know what you are doing

view-distance

maximum view distance in chunks

bigger value = more chunks loaded = more ram & cpu usage

white-list

allow only players on the whitelist to join the server

use whitelist command or modify white-list.txt to add players to whitelist

achievements

enable player achievements

announce-player-achievements

broadcast achievement earned messages to all players

spawn-protection

size of the spawn area in blocks where non op players can't build or break blocks

max-players

maxium number of players online at once

spawn-animals

enable animal spawning

spawn-mobs

enable monster spawning

entity-auto-spawn-task

enable task for auto spawning of mobs and animals

spawning works by the server's difficulty setting

note: spawn-animals, spawn-mobs or both must be enabled if you want anything to be spawned

entity-despawn-task

enable despawning of mobs and animals without a name tag

note: there are special cases such as the ender dragon, withers and villagers that do not despawn

language

default language that Nukkit uses

in default builds only English (eng) is included

force-language

force server side translations to be used

enable only if you have a plugin to implement those

shutdown-message

message that shows for players when you stop the server

use § for colors and §n for new line

save-player-data

enable saving of player inventory, position, first join time etc.

recommended to keep this enabled if you have a single world server and no other plugins handling the player data

can be usually safely disabled for creative, lobby or minigame only servers

for multiworld many gamemode servers it's recommended to use multiworld inventory system like WorldEssentials and disable this

gamemode

server's default gamemode

0 = survival, 1 = creative, 2 = adventure, 3 = spectator

force-gamemode

set player gamemode to default gamemode on every join

hardcore

players will be banned when they die

pvp

enable or disable pvp on the server

use the pvp gamerule to disable pvp only in certain worlds

difficulty

server's default difficulty (0-3)

generator-settings

special world generator settings for the default level

level-name

name of the default level

level-seed

seed used to create the default level if it doesn't exist

level-type

generator used to create the default level if it doesn't exist

supported by default: default, normal, flat, nether, the_end or void

enable-query

enable extended query

you don't need to enable this for your server to appear on bedrock edition server lists

enable-rcon

enable remote console access

note: rcon isn't very secure way to remote control the server

note: rcon uses the same port (but TCP) as the server

rcon.password

password for rcon

auto-save

automatically save the world and player data

note: if disabled, changes to worlds are not saved automatically even on unload, use plugin to save manually if needed

you can use worlds-level-auto-save-disabled to only disable the auto save task instead

force-resources

force players to download server's resource pack if they want to join

also see force-resources-allow-client-packs

xbox-auth

require Xbox account to join

note: does not bypass client side requirements

note: if you disable this (not recommended), make sure player names and UUIDs are verified before passing them to permission managers/op

bed-spawnpoints

allow players to set spawn point using beds and respawn anchors

explosion-break-blocks

enable explosion damage to blocks

affects all explosions such as tnt, creepers and end crystals

stop-in-game

allow op to use /stop command in game

op-in-game

allow op to use /op command to op other players in game

xp-bottles-on-creative

allow players to throw experience bottles on creative

spawn-eggs

enable spawn eggs

mob-ai

enable built-in entity ai

query-plugins

include list of plugins in query (enable-query=on)

debug-level

set a higher value (1-3) if you want more debug logging

async-workers

number of async worker threads

if set to auto, it will try to automatically detect the number of cores and use that

zlib-provider

select zlib provider

0 = ZlibOriginal, 1 = ZlibSingleThreadLowMem, 2 = ZlibThreadLocal

default: 2

note: other providers may have negative impact on the server's performance

async-compression

enable async compression

adds half/one tick delay, less cpu load on main thread

note: since the 1.16.100 update all packets are batched on another thread and this setting has no use

compression-level

Zlib compression level for sent packets (0-9)

higher = more cpu usage but less bandwidth usage

auto-tick-rate

allow the server to automatically change level tick rate to maintain 20 ticks per second

auto-tick-rate-limit

how much the server can temporary drop tick rate

base-tick-rate

default tick rate

1 = 20 ticks per second, 2 = 10 ticks per second, etc.

recommended to keep it as default (1)

always-tick-players

always tick players

enable-timings

enable timings on startup

timings-verbose

enable verbose for timings

timings-privacy

hide some sensitive info from timings reports

timings-history-interval

interval between history frames for timings

in ticks, 20 ticks = 1 second

timings-history-length

length of timings history

in ticks, 20 ticks = 1 second

timings-bypass-max

allow timings to bypass max

light-updates

enable block light updates

note: sky light is not implemented

clear-chunk-tick-list

enable clearing of the chunk ticking list after tick

cache-chunks

save chunks to memory for faster sending

note: no proper multiversion support

spawn-threshold

how many chunks need to be loaded before player spawns

chunk-sending-per-tick

how many chunks can be sent per tick

chunk-ticking-per-tick

how many chunks can be ticked per tick

chunk-ticking-radius

radius of chunks around players to get ticked

chunk-generation-queue-size

how many chunks can be waiting for generation

chunk-generation-population-queue-size

how many chunks can be waiting for population

ticks-per-autosave

how often world autosave task runs

in ticks, 20 ticks = 1 second

ticks-per-entity-spawns

how often entity auto spawn task runs

in ticks, 20 ticks = 1 second

ticks-per-entity-despawns

how long entities live

in ticks, 20 ticks = 1 second

thread-watchdog

enable a task that checks if the server is frozen and kills it

useful if you have an auto restart script or the server runs on a panel with this feature

thread-watchdog-tick

how long the server can be not responding until it's killed

in milliseconds

nether

enable nether dimension and nether portals

end

enable the end dimension and end portals

requires WorldGeneratorExtension

suomicraft-mode

enable / disable stuff optimized for SCPE

keep this disabled

do-not-tick-worlds

list of worlds where random block ticking is disabled

this disables plants growing, leaves decacying, dirt turning into grass, falling blocks etc.

you may want to add your lobby and minigame worlds here

load-all-worlds

automatically load all worlds from the worlds folder on startup

ansi-title

enable server status title for console window

disable this if you get text glitches (common issue with panels)

worlds-entity-spawning-disabled

list of world where entity auto spawning is not allowed

example: lobby, pvp, creative

block-listener

enable checks used for snow and iron golems, monster egg stone etc.

allow-flight

enable / disable fly anticheat

timeout-milliseconds

how long should the server wait before kicking player if no response from the client

in milliseconds, 1000 milliseconds = 1 second

multiversion-min-protocol

the minimum protocol version which is allowed to connect if supported

to allow all supported protocol versions, set this to 0 or any other value lower than the minimum supported protocol version

to disable multiversion, set this to -1

vanilla-bossbars

show boss bar for wither and ender dragon (experimental)

dimensions

enable dimension changes (experimental)

note: may cause game crashes

note: disabling this on 1.18+ causes issues due to different chunk serialization in different dimensions

whitelist-reason

that message is shown if player gets kicked because of white-listed server

use § for colors and §n for new line

chemistry-resources-enabled

enable textures for chemistry mode blocks and items with no resource pack downloading needed

note: experimental

note: chemistry mode items cause game crashes when the resource pack is not enabled

temp-ip-ban-failed-xbox-auth

block ip of player for 5 seconds when xbox auth fails

helps to prevent bot clients to slow down the server but may cause problems if many players uses same ip

call-data-pk-send-event

you can disable DataPacketSendEvent for better performance if none of your plugins uses it

call-batch-pk-send-event

you can disable BatchPacketsEvent for better performance if none of your plugins uses it

call-entity-motion-event

you can disable EntityMotionEvent for better performance if none of your plugins uses it

do-level-gc

do level garbage collection between ticks

skin-change-cooldown

cooldown for in game skin changes in seconds

check-op-movement

enable movement checking for operators

do-not-limit-interactions

disables a hack which is used to limit right click interaction spamming by client

do-not-limit-skin-geometry

disables maximum skin geometry size checks

may be required for some persona skins to be usable

automatic-bug-report

enable automatic bug reports

anvils-enabled

enable anvils

note: anvils on Nukkit are pretty experimental and issues with item renaming or lost items are quite common

save-player-data-by-uuid

if enabled, saving player data by their uuid in the format NukkitX uses and automatically converting player data in the old format to the new format

disable this if you use the legacy Waterdog proxy

note: do not disable if new player data exists

vanilla-portals

enable vanilla like portal behavior

when disabled, nether and end portals bring players to the default spawn point

persona-skins

persona skins allowed

note: default steve skin will show if disabled

note: enabling do-not-limit-skin-geometry may be required for some persona skins to be usable

multi-nether-worlds

if you need multiple nether worlds, list worlds which should have their own nethers here, otherwise using the default nether world

update-notifications

notify operators about new Nukkit PM1E releases on join

bstats-metrics

enable bStats metrics

https://bstats.org/plugin/server-implementation/Nukkit/

data collected anonymously: server software (Nukkit PM1E), player count, players game versions, xbox auth required, Java version, operating system, cpu arch & core count, host country

min-mtu

set minimum MTU size

default: 576

max-mtu

set maximum MTU size (576 - 1492)

higher is more efficient but smaller values could fix issues on some connections

default: 1400

async-chunks

enable asynchronous chunk sending

this can improve the performance a lot when lots of chunks are being sent to players on different versions

it's recommended to keep this enabled

anti-xray-worlds

list of worlds where the experimental built-in anti xray is enabled

example: world, survival, factions

log-join-location

include player's world and coordinates in the "logged in" console message

unsafe-redstone

make redstone work better but with possible exploits

disable-new-blocks

disable placement of "new" blocks from game versions 1.2-1.14 that are not available on official Nukkit

attack-stop-sprint

stop sprinting when attacking an entity

chunk-compression-level

Zlib compression level for world saving (1-9)

note: only affects Anvil format worlds

reduce-traffic

reduce network traffic by not sending some non-critical data such as full item nbt

force-resources-allow-client-packs

don't disable client's own packs when force-resources is enabled

encryption

enable network encryption

it's recommended to enable this if you don't use a proxy software

new-blocks-preview

allow unimplemented blocks to be placed (leveldb only)

use-snappy-compression

enable high performace Snappy compression for packets sent over network to 1.19.30+ clients (experimental)

compression-threshold

don't compress batch packets smaller than this (Zlib only)

leveldb-cache-mb

used with 'use-native-leveldb'

set max size of chunk data cache used to reduce disk io

per world, consider increasing if you only have a few large worlds and lots of ram

chunk-unload-delay

how long a chunk should be unused before it's unloaded (seconds)

reduces unnecessary chunks loads/unloads when players move in the world

use-native-leveldb

use native leveldb implementation

enable for possible performance improvements

may cause high disk load on some systems

generator-force-sea-height

allow changing sea level on newly generated chunks to match vanilla (64 vs 62)

note: this affects all worlds using the built-in generator

legacy-protocol-support

enable 1.2 - 1.12 protocol support

note: only works with Anvil worlds

note: support for these versions is no longer maintained

use-raw-ores

enable raw ore drops for gold and iron ore block

copper ore always drops raw copper

force-new-generator

enable latest world generation features in all worlds

note: may create noticeable chunk borders in old worlds

use-old-leveldb

fall back to original Java leveldb implementation while the performance of HiveGamesOSS's version is being evaluated

note: background compaction is not working properly, for better or worse

entity-activation-blocks

set how close to a mob player must be be for the mobs movement to be ticked

Clone this wiki locally