Skip to content

Installation

Dan Alexander edited this page Nov 3, 2026 · 2 revisions

Installing VoxelCore

VoxelCore 1.0.0 ships as seven version-specific server JARs. Install exactly one VoxelCore server JAR matching your Minecraft version, not all seven. The separately packaged Geyser extension is only for supported Bedrock display-entity projection setups.

1. Download the matching server plugin

Get the files from the official VoxelCore v1.0.0 release:

Your Minecraft server version Server plugin JAR
1.12.x–1.13.x VoxelCore-1.0.0-mc1.12-1.13.jar
1.14–1.19.3 VoxelCore-1.0.0-mc1.14-1.19.3.jar
1.19.4–1.20.4 VoxelCore-1.0.0-mc1.19.4-1.20.4.jar
1.20.5–1.21.3 VoxelCore-1.0.0-mc1.20.5-1.21.3.jar
1.21.4 VoxelCore-1.0.0-mc1.21.4.jar
26.2 VoxelCore-1.0.0-mc26.2.jar
26.3 VoxelCore-1.0.0-mc26.3.jar

The ranges above indicate the intended runtime family. They do not mean every intermediate server build has been individually tested. See Compatibility for the tested versions.

Also download SHA256SUMS if you want to check the release files against their published checksums.

2. Install and start

  1. Shut down your Minecraft server.
  2. Put your matching VoxelCore-1.0.0-*.jar in the server's plugins/ directory.
  3. Start the server and inspect the console for VoxelCore startup messages or validation errors.
  4. Stop the server before making your initial content/configuration changes.

VoxelCore detects Paper capabilities automatically and has a Bukkit-compatible fallback for supported servers. Folia is not claimed as supported. Use a Java runtime appropriate for your server version; Paper 26.3 uses Java 25 in the release build environment.

3. Add your content pack

VoxelCore discovers pack content under:

plugins/VoxelCore/
├── config.yml
├── content/
│   └── <your-pack>/
│       ├── pack.yml
│       ├── content/
│       │   └── *.yml
│       └── assets/
│           └── <namespace>/
│               ├── models/
│               ├── textures/
│               ├── font/
│               └── sounds/
└── build/
    └── resource-packs/

The content/ subtree can have nested directories. Item and block identifiers come from their YAML definitions, not their filenames. See Content Packs, Custom Items and Custom Blocks for examples.

4. Validate and build your first resource pack

After adding content and starting the server, use an account with the appropriate administration permission:

/voxelcore admin content info
/voxelcore admin pack info
/voxelcore admin pack validate
/voxelcore admin pack build java

On an exactly supported server target, the resulting Java pack is written under:

plugins/VoxelCore/build/resource-packs/<target>.zip

To use VoxelCore's optional self-hosted pack delivery, configure resource_pack.host.enabled, a reachable public_host or public_url, and the appropriate player delivery settings in config.yml. The built pack endpoint defaults to http://<public-host>:24464/resourcepack.zip when the host is enabled. A public address must be reachable by your players, and the firewall/port must permit access.

Setting resource_pack.players.required: true is intended to require Java clients to accept the pack, but enforcement on every supported server version needs live verification. Configure Bedrock pack acceptance separately in Geyser.

5. Optional: Bedrock support with Geyser

For a local Geyser installation, the source guide documents these settings:

game:
  bedrock_support: true
bedrock:
  auto_publish_local: true
  geyser_data_directory: ''

Enable gameplay.enable-custom-content: true in the applicable Geyser configuration and restart Geyser. The empty Geyser directory value only detects a genuinely loaded local Geyser-Spigot installation; a remote proxy installation needs its own deployment configuration.

To generate both Java and Bedrock resources after installing/updating content:

/voxelcore admin pack build all

The Geyser extension is not installed by a pack build. If you need its supported world-entity projection features, install VoxelCore-GeyserExtension-1.0.0.jar into the actual Geyser instance's extensions/ folder. It uses experimental APIs associated with Geyser 2.11; confirm the exact Geyser version before deploying. Restart Geyser and reconnect Bedrock clients after mapping/pack changes. Do not install multiple extensions that try to replace the same entities.

Bedrock resources and Java resource packs are separate; running a successful build does not establish real-client feature parity. For complete setup and remote/proxy deployments, see Bedrock and Geyser.

6. Updating or recovering

Back up your existing plugins/VoxelCore/ configuration, content, generated allocations and built packs before changing plugin versions. Use the server-version-matching JAR from the intended release. VoxelCore's documented configuration migration preserves values and backs up old config.yml variants, but restoration of older plugin versions should still use matching backed-up data.

When reporting a problem, capture the exact server build, selected JAR filename, error log, and pack target. Check the issue tracker.

Clone this wiki locally