这个项目能做什么
Hyperion 是一个用 Rust 构建的 Minecraft 游戏引擎,使用 Bevy ECS 和 flecs,面向大型自定义活动,目标是打破 PvP 吉尼斯世界纪录。它通过垂直多线程和水平代理扩展,支持单个世界中的 10,000+ 玩家。
**主要特性:**
- 基于 Bevy 和 flecs 的多线程 ECS 架构
- 用于水平扩展的代理层,支持区域多播
- 使用 Tracy profiler 进行性能追踪
- 基础反作弊和管理员工具(开发中)
- 用于扩展性的插件 API(例如 bedwars 活动)
- 核心机制:带物理的方块破坏/放置、实体碰撞、动态光照、世界边界、方块编辑 API、PvP 战斗、物品栏系统、射线检测
- 玩家体验:粒子效果、聊天系统(全局和近距离)、自定义命令、通过 Simple Voice Chat 实现近距离语音
- 支持 Minecraft 1.20.1,使用 Velocity 代理
**基准测试:**
- 1 名玩家:0.24ms tick 时间,4.3% 核心使用率
- 1000 名玩家:0.40ms tick 时间,15.3% 核心使用率
- 5000 名玩家:1.42ms tick 时间,35.6% 核心使用率
**架构:**
- 游戏服务器使用 Tokio 异步 I/O 运行所有游戏逻辑
- 代理层处理玩家连接和区域多播
- 通过 Velocity + ViaVersion 进行身份验证
- 游戏服务器与代理之间使用 mTLS 加密连接
**运行:**
- 需要 Nix;运行 `nix run github:hyperion-mc/hyperion#bedwars` 启动游戏服务器,运行 `nix run github:hyperion-mc/hyperion#hyperion-proxy` 启动代理
- 开发命令包括证书生成、机器人、CI、lint、测试和端到端测试
**开发:**
- 所有命令都是 flake 应用,仅需要 Nix
- 包括 CI 门禁、lint、测试、文档和端到端测试
- 模块化设计允许自定义机制和活动实现
**估计最大玩家数量:** 约 176,056
评论
0 评分人数达到10人后显示
登录后参与讨论。