Minecraft server
Hexoria Network
Personal projectIn production
A Minecraft survival server where Java and Bedrock players share the same world, with nine of its own plugins, a site with a store, and a Discord bot.
Context
Hexoria is a survival server built around two factions, Allay and Vex, with its own progression, economy, battle pass, land claims, and clans. Around the game there’s a site with a store, wiki, and leaderboard, and a bot that serves the community on Discord. It has been live since August 2026.
Challenge
Java and Bedrock players needed to share the same world, with the same items and the same textures, on clients that don’t speak the same language. And a store that delivers items inside the game can’t get it wrong in either direction: it can’t charge without delivering, and it can’t deliver twice.
Solution
- Java and Bedrock in the same world. A custom Geyser extension carries the resource pack over to Bedrock. The shared code is renamed at packaging time, so the two class loaders don’t clash, and the build fails if that step is skipped.
- A store proof against double delivery. The price is decided only on the server, and the money is stored in whole cents. The audit and currency ledgers only accept append operations, enforced by database triggers. The delivery queue uses claims with a deadline, and the plugin logs each delivery before confirming it. The payment notification is checked against the original body, and the payment is queried again at the gateway before any delivery.
- A reproducible release. A single package, with the SHA-256 hash of each server component pinned. The tests run first, and a compiler warning fails the build.
- Observability without risk. One plugin measures the cost of each plugin on every server tick, and another exposes the server’s state for monitoring. Both are read-only: they observe without being able to change anything.
Result
The server is in production, with nine of its own plugins — the core, land claims by chunk with a map, clans with treasure and alliances, a two-currency economy, the battle pass with daily quests, farming (a candidate for the second season), per-plugin cost measurement, the ecosystem’s shared runtime, and the monitoring agent — plus the site and the bot.
Numbers
- Lines of Java in the main codebase
- ≈ 148k
- Source: Physical lines, comments included and build/ excluded, counted in the project repository · measured on Sep 18, 2026
- Automated tests
- 1,084
- Source: 491 @Test annotations in the core, 462 site tests and 131 bot tests, counted in the repository · measured on Sep 18, 2026
Technologies
- Java 25
- Paper
- Geyser and Floodgate
- Next.js 16
- PostgreSQL
- Redis
- Docker
- Mercado Pago
- discord.js
Gallery






