1 个不稳定版本
0.1.0 | 2022年9月11日 |
---|
#9 在 #graphite-minecraft
在 4 个crate中使用(3个直接使用)
2MB
50K SLoC
Graphite -- 目前处于停摆状态
1.19.1 Minecraft 服务器
待办事项
- 完成
protocol
以包含所有 1.19.1 Minecraft 数据包 - 命令调度系统
- 可视对象(实体)
- 允许多个玩家连接(并看到彼此)
- 基库 crate,导出所有内容
- 带有 NBT 的 ItemStacks
- 添加一个易于修改物品 NBT 的层
- 玩家输入处理(左/右键点击空气/方块)
- TextComponent 事物 & 宏
- 允许修改块/世界
- 完成缺失的块放置(墙壁、双方块、蜡烛等)
- "额外" 子项目 - 光线投射、碰撞...
子项目
example_server
:使用各种 Graphite 组件的示例服务器server
:Minecraft 服务器。实体、区块、玩家,所有那些好东西concierge
:接受新连接、处理状态和登录的组件。可以用于创建代理、服务器等protocol
:Minecraft 协议net
:网络组件和实用工具binary
:零拷贝序列化command
:命令调度和低级创建command_derive
:用于轻松创建命令的属性宏sticky
:保证其内容内存位置的集合
警告
项目目前正在积极开发中,许多功能完全不可用
构建
在构建/运行之前,请确保运行 git submodule update --init --recursive
如何运行示例服务器
!!! 目前 Graphite 仅支持带有 io_uring 的现代 Linux 版本 !!!
(最终将提供替代网络后端,但不是优先事项)
$ cargo run --bin example_server
依赖关系
~4MB
~85K SLoC