How to Set Up a Nukkit Server
Complete guide to installing, configuring and running a Nukkit Bedrock server with Java, covering plugins, world management and performance.
What Is Nukkit
Nukkit is an open-source Bedrock Edition server written in Java. If you come from the Java Edition server world and know your way around Bukkit-style plugins, Nukkit will feel familiar. It uses a similar plugin API, runs on the JVM and supports most of the same development tooling. The nukkit server setup process is familiar to anyone who has run a Paper or Spigot server before.
Nukkit does not aim for full vanilla parity. It implements the Bedrock protocol and core gameplay mechanics, but some features (certain redstone behaviors, specific mob AI, newer game content) may lag behind the official BDS releases. The tradeoff is a large plugin ecosystem and the ability to customize almost everything through Java code.
Requirements
- Java 17 or later (Java 21 recommended)
- At least 1 GB of RAM, 2 GB or more for 20+ players
- A machine or VPS with UDP port 19132 open
Downloading and Installing
The most active Nukkit fork in 2026 is CloudburstMC's Nukkit (sometimes called Nukkit-MOT or PowerNukkitX, depending on the fork). Download the latest build from the project's Jenkins CI or GitHub releases:
mkdir nukkit && cd nukkit
wget https://ci.opencollab.dev/job/NukkitX/job/master/lastSuccessfulBuild/artifact/target/nukkit-1.0-SNAPSHOT.jar -O nukkit.jar
Run it for the first time to generate config files:
java -Xms512M -Xmx1G -jar nukkit.jar
The first launch creates server.properties, nukkit.yml, and the plugins/ and worlds/ directories. The server starts and listens on UDP 19132 by default.
Configuration
The nukkit server setup uses two main config files:
server.properties
server-port=19132
motd=My Nukkit Server
max-players=20
gamemode=0
difficulty=2
level-name=world
online-mode=true
These work the same as standard Bedrock server.properties. Set online-mode=true to require Xbox Live authentication.
nukkit.yml
This file controls engine-level settings: chunk loading, spawn protection radius, async workers, debug logging and plugin loading order. The defaults are sensible for small servers. On larger servers, increase async-workers to match your CPU core count.
Host any Bedrock or crossplay server with zero config headaches. Astroworld Hosting supports Geyser, BDS, and every server type on every plan.
Installing Plugins
Nukkit plugins are .jar files, just like Bukkit plugins. Drop them into the plugins/ folder and restart. Popular sources for Nukkit plugins include the Nukkit plugin list on GitHub, CloudburstMC forums and Poggit (some PocketMine developers also release Nukkit versions).
Key plugins for a nukkit server setup:
- LuckPerms: Full-featured permissions system with web editor and inheritance.
- EconomyAPI (Nukkit port): Currency and balance management.
- MultiWorld: Create and manage multiple worlds with per-world rules.
- NukkitDB: Database abstraction for plugins that need MySQL or SQLite storage.
- FormAPI: Bedrock-native form UIs (simple, modal, custom) for plugin interfaces.
World Management
Nukkit generates a default world on first run. To add more worlds, use a world management plugin or configure them in nukkit.yml. Nukkit supports flat, normal and nether generators. Custom generators can be added through plugins.
Worlds are stored in LevelDB format (the standard Bedrock format) in the worlds/ directory. You can import existing Bedrock worlds by copying the folder into worlds/ and updating the config to reference it.
Running as a Service
Like any long-running Java process, wrap Nukkit in a systemd service for automatic restarts:
[Unit]
Description=Nukkit Bedrock Server
After=network.target
[Service]
User=minecraft
WorkingDirectory=/home/minecraft/nukkit
ExecStart=/usr/bin/java -Xms512M -Xmx2G -jar nukkit.jar
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
See crossplay in action: Astroworld MC, IP play.astroworldmc.com, Java + Bedrock.
Nukkit vs PocketMine vs BDS
| Feature | Nukkit | PocketMine | BDS |
|---|---|---|---|
| Language | Java | PHP | C++ |
| Plugin API | Bukkit-like | Custom PHP API | Script API (JS) |
| Vanilla parity | Moderate | Moderate | Full |
| ARM support | Yes (JVM) | Yes | No (x86_64 only) |
| RAM usage | Higher | Moderate | Lowest |
| Plugin ecosystem | Growing | Largest on Bedrock | Limited |
Choose Nukkit if you want to write Java plugins for Bedrock players. Choose PocketMine if you prefer its larger plugin library. Choose BDS if vanilla parity is your top priority.
Troubleshooting
- Players cannot connect: Verify UDP 19132 is open. Nukkit uses UDP, not TCP.
- Plugin not loading: Check the API version. Nukkit 2.x plugins may not work on 1.x forks and vice versa.
- Missing game features: Some Bedrock content (newer mobs, blocks, mechanics) takes time to be implemented. Check the fork's issue tracker for status.
- Java version errors: Nukkit requires Java 17+. Run
java -versionto confirm.