#minecraft-server #minecraft #statik

statik derive

由 'statik' Minecraft回退服务器使用的派生宏

2 个版本

0.2.1 2023年5月15日
0.2.0 2023年5月15日

#80#minecraft-server


3 个crate中使用(通过 statik_proto

MIT/Apache

19KB
394

statik-rs

statik (希望将成为)一个轻量级、可容器化的Minecraft服务器,其唯一目的是在服务器不在线时使服务器看起来在线,发送一个启动实际服务器的信号。这允许通常内存和CPU密集的Java Minecraft服务器在没有人玩的时候关闭,同时仍然让客户端看到服务器是在线的。

Statik的MSRV(最低支持的Rust版本)是Rust的最新版本,因为该项目可能包含最新版本中不存在的Rust功能。


使用方法

要运行statik,您必须通过 rustup 安装Rust。

要在默认端口25565上运行服务器,请运行以下命令

$ cargo run --release

在开发过程中只需运行

$ cargo run

(这将使用发布模式编译项目的依赖项,但实际的二进制文件将使用默认的开发配置和调试断言进行编译)

可以通过 statik.toml 文件配置各种设置 - 这可以在执行运行命令的任何目录中提供,或者如果尚不存在,将自动生成。

或更改配置文件的路径

$ cargo run -- --config=path/to/my_config_file.toml

一切准备就绪后,以发布模式运行服务器

$ cargo run --release

您还可以从 https://crates.io/crates/statik 安装服务器二进制文件

$ cargo install statik --locked

注意:这可能不是最新的,从该仓库的主要分支安装可能更好

$ cargo install --git https://github.com/Sycrosity/statik-rs --locked

贡献

欢迎所有贡献!拉取请求会检查 cargo testcargo clippycargo +nightly fmt。注意,此项目使用不稳定的cargo fmt设置,并需要在夜间版上安装和运行cargo fmt。


致谢

此项目受到了以下项目的强烈启发,没有它们的辛勤工作,该项目无法完成:

  • limbo - statik的主要灵感来源,设计用于非常相似的使用案例,但自2022年5月以来一直未开发
  • bamboo - 从零开始重写Minecraft服务器Java代码的尝试,使用Rust语言实现
  • feather - 另一个Minecraft服务器重写项目,自2022年6月以来没有提交过代码
  • tokio的mini-redis教程 - 一个实现良好的tokio服务器示例,该服务器接受并处理TCP连接,帮助我设计和构建此服务器。

许可证

根据以下任一许可证授权

您可自行选择。

除非您明确表示,否则根据Apache-2.0许可证定义的,您有意提交并包含在作品中的任何贡献,将根据上述许可证双重授权,不附加任何额外条款或条件。

依赖项

~280–730KB
~18K SLoC