Your world. Your rules. Always online.

Host a Voxel 2
Dedicated Server.

Create a persistent Creative or peaceful Survival world that stays available for your community, even when the owner is not playing.

Java 25 Players 1-64 Network TCP Modes Creative or Survival

Official Server Software

One JAR. One world folder. Complete control.

The official dedicated server creates its own configuration, world storage, access controls, logs, and startup scripts. Keep the JAR in a folder of its own and the server keeps everything it needs beside it.

Download VoxelDedicatedServer.jar

Before you begin

  • A 64-bit Windows or Linux computer
  • Amazon Corretto 25 or another Java 25 runtime
  • At least 4 GB of memory available for the recommended script
  • A folder where the server can create and update files
  • TCP access to your chosen server port

Important: The server JAR does not bundle Java. Install Java 25 first and make sure the java command is available.

Start Here

Quick start

  1. 1
    Create a dedicated folder.

    Make a new empty folder, such as C:\VoxelServer on Windows or ~/voxel-server on Linux. Do not run the JAR from Downloads, the desktop root, or a protected system folder.

  2. 2
    Move the JAR into that folder.

    Keep the filename VoxelDedicatedServer.jar. The generated startup scripts expect that exact name.

  3. 3
    Run it once.

    The first launch creates every required file and then closes intentionally. This is setup, not a crash.

  4. 4
    Edit Voxel.properties.

    Choose the server name, message, port, player limit, world rules, generation, and performance settings before the first real world starts.

  5. 5
    Start the server again.

    Use start-server.bat on Windows or start-server.sh on Linux. Wait for the console to report that the server is ready.

  6. 6
    Add it inside Voxel 2.

    Open Servers, choose local or dedicated server, enter the address and configured port, then save and join.

Windows

Double-click the generated startup file or run:

start-server.bat

Linux

Allow the script to run once, then start it:

chmod +x start-server.sh
./start-server.sh

Manual / headless

Use the same memory settings without the graphical console:

java -Xms1G -Xmx4G -jar VoxelDedicatedServer.jar --nogui

Always stop safely. Enter stop in the console before closing a terminal, restarting the computer, replacing the JAR, or copying a live world backup.

First Launch

Files the server creates

Voxel.properties

The main server, world, generation, and performance configuration.

access-control.properties

Permanent administrator and ban records tied to Voxel account IDs.

start-server.bat

The recommended Windows startup script with prepared memory options.

start-server.sh

The recommended Linux and Unix startup script.

worlds/

The dedicated world, player locations, inventories, blocks, entities, and server state.

logs/latest.log

The latest startup, connection, warning, and error information.

SERVER-README.txt

An offline command and property reference refreshed by the JAR.

Keep the JAR and all generated files together. Moving only the JAR creates a separate fresh server in the new location.

Configuration Reference

Everything in Voxel.properties

Stop the server before editing this file. Every setting uses name=value. Lines beginning with # or ! are comments. Named choices are not case-sensitive, but property names must be exact. Invalid values stop startup and explain the problem in the console and log.

Server connection

PropertyAllowed valuesWhat it controls
server-nameText, up to 64 charactersThe public name displayed in the Voxel server browser. Blank values use the default name.
motdText, up to 160 charactersThe short server message shown under the name in the server browser.
server-port1 through 65535
Default: 60333
The TCP port used by Voxel clients. The firewall and router must use the same port.
max-players1 through 64
Default: 8
The maximum number of connected players.

World rules

PropertyAllowed valuesWhat it controls
world-nameText, up to 64 charactersThe world name shown to players. It can be changed after creation.
game-modesurvival or creativeThe active mode for the dedicated world. This setting also applies to an existing world.
allow-cheatstrue or falseEnables or disables supported cheat commands. Server administration commands remain controlled by admin status.
keep-inventory-on-deathtrue or falseControls whether Survival players retain items when they die.
time-modecycle, always-day, or always-night
Aliases: day, night, always_day, always_night
Runs the normal day-night cycle or locks the world to day or night.
day-length-minutes5 through 120
Default: 20
The length of a complete day-night cycle. Fixed day or night modes ignore it.

World generation - new worlds only

These values are used when the server creates a world. Existing terrain does not regenerate when they change.

PropertyAllowed valuesWhat it controls
world-idBlank or an existing generated ID, up to 96 charactersBlank creates or selects the server world and is filled automatically. Do not invent an ID. To make a completely fresh world, stop the server, back up and move the old worlds folder, then clear this value.
world-typegenerated or flatSelects seeded terrain generation or a flat building world.
seedBlank or a signed 64-bit integerBlank selects a random seed. Reusing a seed and the same generation settings recreates the same base terrain.
world-radiussmall, medium, large, or unlimitedSmall: 50,000 blocks. Medium: 100,000. Large: 500,000. Unlimited: up to 29,999,984 blocks.
flat-surface-y-63 through 312
Default: 3
The surface height for new flat worlds.
sea-level24 through 96
Default: 62
The generated ocean level for new terrain worlds.
biome-sizeregular or largeControls the broad scale of biome regions.
terrain-scale-percent50 through 200
Default: 100
Scales terrain height variation for a new generated world.

Natural ponds are part of generated terrain by default and do not have a separate property.

Performance and saving

PropertyAllowed valuesWhat it controls
render-distance2 through 16
Default: 6
The chunk radius prepared for visible world data around players.
load-distanceAt least render distance, up to 20
Default: 10
The wider chunk radius kept active for world simulation and streaming.
spawn-prime-radius1 through 10
Default: 4
How much terrain is prepared around spawn during startup. Radius 4 prepares a 9 by 9 area, or 81 chunks.
autosave-seconds10 through 600
Default: 30
How often the server automatically saves world and player state.

Performance tip: Increase distances gradually. Every connected player can keep a different part of the world active, so high values multiply server work.

Player Connections

Let players join

01

Same computer

Use localhost or 127.0.0.1 with the configured server port.

02

Same home network

Use the host computer's local IPv4 address, commonly beginning with 192.168. or 10.

03

Across the Internet

Use the host's public address and forward the configured TCP port to the server computer.

Internet hosting checklist

  • Give the server computer a stable local IP address or DHCP reservation.
  • Allow Java and Voxel through the operating system firewall.
  • Forward TCP traffic for server-port from the router to the server computer.
  • Share the public address and port with trusted players, not the local address.
  • Test from a different network. Testing the public address from inside the same home may fail on routers without loopback support.

No relay is used. A dedicated Voxel server must be directly reachable. If the provider uses CGNAT or blocks inbound traffic, request a public IPv4 address, use approved router/VPN port-forwarding software, or host from another connection.

Server Console

Every console command

Commands work with or without a leading slash. Use exact usernames where requested.

help

Lists the commands available in the server console.

list

Shows connected players and the current player count.

save

Immediately saves the world and connected player state.

say <message>

Broadcasts a server message to every connected player.

admin <username>

Grants administrator status to a known account. The player must have connected at least once.

removeadmin <username>

Revokes administrator status from the account.

kick <username>

Disconnects a player without preventing them from reconnecting.

ban <username>

Disconnects and permanently blocks the player's Voxel account until unbanned.

unban <username>

Removes a server ban from the account.

stop

Safely saves the server, disconnects players, and shuts down.

Ownership and Safety

Admins, kicks, and bans

Permanent account identity

Administrator and ban records use the player's permanent Voxel account ID, not only the visible username. Changing a username does not remove a ban or administrator status.

Grant access carefully

Use admin username only from the owner-controlled server console. Administrators can use supported moderation commands in game.

Protect server files

Do not share access-control.properties, logs, or world files publicly. Keep write access limited to the account running the server.

Console-only ownership: Granting and removing administrator status is intentionally managed from the dedicated server console so an in-game account cannot take ownership of the server.

Keep It Safe

Backups, updates, and migration

Backup

Save the complete state

Stop the server, then copy worlds/, Voxel.properties, and access-control.properties to a dated backup folder.

Update

Replace only the JAR

Stop and back up the server. Replace VoxelDedicatedServer.jar with the current download, preserve the filename, and start normally.

Move

Transfer the whole folder

Move every server file together. Confirm Java 25 and firewall access on the new host before starting.

Never copy an active world while players are connected. The autosave system protects normal play, but a file copy taken while data is changing may not represent one complete moment.

Common Fixes

Troubleshooting

The first launch created files and closed.

That is expected. Edit Voxel.properties, then launch the server again with the generated startup script.

Double-clicking the JAR appears to do nothing.

Move it to its own writable folder and run it from a terminal to see the error. Confirm java -version reports Java 25. On Windows, avoid protected folders such as C:\Windows\System32.

The console says a property is invalid.

Stop the server, correct the exact property named in the message, and use a value from the tables on this page. Details are also written to logs/latest.log.

The port is already in use.

Stop the other program using the port or change server-port. Update the firewall, router forwarding, and saved Voxel server address to match.

Local players can join, but Internet players cannot.

The server works, but inbound Internet access is blocked. Verify the public address, TCP port forwarding, Windows/Linux firewall, router firewall, and whether the ISP uses CGNAT.

The server created a new empty world.

The JAR is likely running from a different folder, world-id changed, or the original worlds folder is missing. Stop the server and restore the matching configuration and world folder from backup.

Players disconnect or terrain loads slowly.

Lower render-distance and load-distance, avoid oversized spawn priming, confirm the host has enough memory and CPU capacity, and use a wired network where possible.

A new game update cannot join the server.

Update the dedicated server JAR so it matches the current public Voxel 2 release. Back up first, then replace only the JAR.

Voxel 2

Ready to build together?

Bring your world online.

Download the official server, create your configuration, and give your community a world that is always waiting.

Download Server JAR