Hyperion
Minecraft game engine for massive custom events
Install / Use
/learn @hyperion-mc/HyperionREADME
Hyperion
Hyperion is a Minecraft game engine that can have 10,000+ players in one world. Our pilot event hopes to break the PvP Guinness World Record of (8825 by EVE Online). The architecture is ECS-driven using Bevy.
[!NOTE]
You can join the test server in 1.20.1 athyperion-test.duckdns.org
https://github.com/user-attachments/assets/64a4a8c7-f375-4821-a1c7-0efc69c1ae0b
Feature Status
| Feature | Status | Notes |
|------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------|
| Technical Infrastructure | | |
| 🧵 Multi-threading | ✅ Implemented | Vertical scaling |
| 🔄 Proxy Layer | ✅ Implemented | Horizontal scaling |
| 📊 Performance Tracing | ✅ Implemented | Using Tracy profiler |
| 🛡️ Basic Anti-Cheat | ✅ Implemented | Core anti-cheat functionality |
| 🔧 Moderator Tools | 🚧 WIP #425, @Kumpelinus | Admin controls and monitoring |
| 🔌 Plugin API | ✅ Implemented | Extensible plugin system; see events/bedwars |
| Core Game Mechanics | | |
| 🧱 Block Breaking/Placing | ✅ Implemented | Including physics simulation |
| 💫 Entity Collisions | ✅ Implemented | Both entity-entity and block-entity |
| 💡 Lighting Engine | ✅ Implemented | Dynamic lighting updates |
| 🌐 World Borders | ✅ Implemented | Configurable boundaries |
| 🛠️ Block Edit API | ✅ Implemented | WorldEdit-like functionality |
| ⚔️ PvP Combat | ✅ Implemented | Custom combat mechanics |
| 🎒 Inventory System | ✅ Implemented | Full item management |
| 🎯 Raycasting | ✅ Implemented | Required for ranged combat/arrows |
| Player Experience | | |
| ✨ Particle Effects | ✅ Implemented | Full particle support |
| 💬 Chat System | ✅ Implemented | Global and proximity chat |
| ⌨️ Commands | ✅ Implemented | Custom command framework |
| 🎤 Proximity Voice | ✅ Implemented | Using Simple Voice Chat |
Benchmarks
| Players | Tick Time (ms) | Core Usage (%) | Total CPU Utilization (%) | |---------|----------------|----------------|---------------------------| | 1 | 0.24 | 4.3 | 0.31 | | 10 | 0.30 | 10.3 | 0.74 | | 100 | 0.46 | 10.7 | 0.76 | | 1000 | 0.40 | 15.3 | 1.09 | | 5000 | 1.42 | 35.6 | 2.54 |
Test Environment:
- Machine: 2023 MacBook Pro Max 16" (14-cores)
- Chunk Render Distance: 32 (4225 total)
- Commit hash
faac9117run withjust release - Bot Launch Command:
just bots {number}
The bulk of player-specific processing occurs in our proxy layer, which handles tasks like regional multicasting and can be horizontally scaled to maintain performance as player count grows.
Architecture
Overview
flowchart TB
subgraph GameServer["Game Server (↕️ Scaled)"]
direction TB
subgraph BevyMT["Bevy Multi-threaded ECS"]
direction LR
IngressSys["Ingress System"] --> |"1 Game Tick (50ms)"| CoreSys["Core Systems (Game Engine)"] --> GameSys["Game Systems (Event Log
