2 个版本
0.2.1 | 2023 年 5 月 15 日 |
---|---|
0.2.0 | 2023 年 5 月 15 日 |
#899 in 游戏
用于 2 个crate(通过 statik_server)
35KB
711 行
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 - 尝试从头开始在 Rust 中重新编写 Minecraft 服务器 Java 代码
- feather - 自2022年6月以来未提交过代码的另一个Minecraft服务器重写
- tokio的mini-redis教程 - 一个实现了的tokio服务器示例,该服务器接受并处理TCP连接,帮助我布局和构建此服务器。
许可证
许可协议为以下之一
- Apache许可证2.0版本(《LICENSE-APACHE》或http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可证(《LICENSE-MIT》或http://opensource.org/licenses/MIT)
任选其一。
除非你明确表示,否则你有意提交给作品作为Apache-2.0许可证定义的贡献,将如上所述双重许可,没有其他附加条款或条件。
依赖关系
~1.1–2MB
~43K SLoC