这个项目能做什么

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