2 个版本
0.2.1 | 2023 年 5 月 15 日 |
---|---|
0.2.0 | 2023 年 5 月 15 日 |
#834 在 游戏
被 3 crate 使用
19KB
378 行
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 test
,cargo clippy
和 cargo +nightly fmt
。注意此项目使用不稳定的 cargo fmt 设置,并且需要在夜间版本上安装和运行 cargo fmt。
鸣谢
此项目深受以下项目的启发,并且没有这些项目的辛勤工作将无法创建
- limbo - statik 的主要灵感来源,为非常类似的使用案例而设计,但自 2022 年 5 月以来未开发
- bamboo - 从零开始重新编写Minecraft服务器Java代码的尝试
- feather - 另一个Minecraft服务器的重写,自2022年6月以来没有提交过代码
- tokio的mini-redis教程 - 一个实现了的tokio服务器示例,它可以接受和处理TCP连接,帮助我构建这个服务器。
许可证
许可以下任一许可:
- Apache License, Version 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
由您选择。
除非您明确表示,否则根据Apache-2.0许可证定义的您提交的任何旨在包含在作品中的贡献,将按上述方式双重许可,不附加任何额外条款或条件。
依赖项
~1.2–2.2MB
~45K SLoC