Open-source sector infrastructure for Paper servers, Velocity and shared Minecraft worlds.
EndSectors lets you run one logical Minecraft world across multiple Paper server instances. Each server owns a configured sector, while Velocity, NATS, Redis and the Common application coordinate transfers, communication and shared player state.
This repository contains the free edition. It is intended for personal, educational and other non-commercial use. See the edition comparison before using the project commercially or expecting private-edition support.
EndSectors turns a collection of Paper servers into one connected world. Build the network yourself, keep the source visible and scale the map by adding sectors when your community grows.
The Free Edition gives you the foundation. The Private / Premium Edition is the production-focused path for teams that need dedicated support, private delivery and additional hardening beyond the public scope.
| Document | Purpose |
|---|---|
| Documentation index | Reading order and documentation map |
| Architecture | Runtime topology, data flow and service boundaries |
| Modules | Responsibilities and dependency direction |
| Installation | Requirements, build, deployment and startup order |
| Configuration | Config ownership, sector names, layout and messages |
| Features | Capabilities included in the free repository |
| Free vs Private/Premium | Public scope, exclusions and separate-edition terms |
| Known limitations | Transparent Free Edition limitations and resolved issues |
| Development | Local setup and module-focused workflow |
| Operations | Deployment, restart, backup and rollback guidance |
| Testing | Build checks and runtime verification |
| Troubleshooting | Evidence-first diagnosis of common failures |
| Security | Secrets, network access and issue-reporting rules |
| Licensing | Non-commercial rights and redistribution boundaries |
- sector-based Paper server instances;
- Velocity proxy routing between sectors;
- shared player state through Redis;
- inter-service messaging through NATS;
- standalone Common coordination application;
- optional Tools commands and gameplay systems;
- configurable sector boundaries, queues, messages and scoreboards.
- Install Java 21, Paper, Velocity, NATS and Redis.
- Build the project with
./gradlew buildorgradlew.bat build. - Deploy the Common, Proxy, Paper and optional Tools artifacts described in the installation guide.
- Copy identical world data to the sector servers representing the same logical world.
- Configure identical NATS/Redis connection details and matching sector names.
- Start Common, then Velocity, then the Paper sectors.
EndSectors/
βββ common/ Standalone Common application
βββ proxy/ Velocity plugin
βββ paper/ Paper plugin and sector runtime
βββ Tools/ Optional Paper tools plugin
βββ docs/ Technical and operational documentation
Use Contributing for pull requests and reproducible bug reports. Never include Redis passwords, NATS credentials, private addresses or unredacted production logs in an issue. Security-sensitive reports belong in SECURITY.md.
The Free Edition is a usable framework and a transparent starting point, not a promise of private-enterprise support. Its limitations, verification level and resolved issues are tracked in Known limitations. Recent maintenance fixes are listed in CHANGELOG.md.
EndSectors is distributed under the repository's non-commercial license. Read the licensing guide and LICENSE before redistribution or commercial use.