rust_mc_serv/README.md
2025-05-07 21:36:47 +03:00

70 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# rust_mc_serv
Простой майнкрафт сервер на расте. Поддерживаемая версия: 1.21.5 (PVN 770)
## Как запустить
Перед тем как запускать, вам нужно получить бинарник, это можно сделать следующими способами:
### Скачать из релиза
На данный момент проект находится в разработке, так что релизов нет
Если хотите собрать последнюю версию сервера вручную, обратитесь к следующему способу.
### Собрать самим
Для того чтобы собрать проект самим, вам нужно:
1. Скачать и установить [Rust](https://www.rust-lang.org/)
2. Скачать исходный код проекта (через zip или `git clone`)
3. Открыть терминал в папке проекта и выполнить следующие команды:
Для запуска:
```bash
cargo run
```
Для сборки (готовый бинарник будет в `target/release`):
```bash
cargo build -r
```
### Использовать как библиотеку
Вы можете использовать проект как библиотеку для своих серверов
Пример добавления в `Cargo.toml`:
```toml
rust_mc_serv = { git = "https://github.com/GIKExe/rust_mc_serv.git" }
```
Пример запуска сервера:
```rust
let config = Arc::new(Config::default());
let mut server = ServerContext::new(config);
// Добавляем дефолтную обработку режима Play
server.add_packet_handler(Box::new(PlayHandler));
server.add_packet_handler(Box::new(PlayListener));
server.add_listener(Box::new(ExampleListener)); // Добавляем пример листенера
server.add_packet_handler(Box::new(ExamplePacketHandler)); // Добавляем пример пакет хандлера
start_server(Arc::new(server));
```
## Конфигурация
По умолчанию, конфиг будет создан в файле `config.toml` в рабочей директории. Чтобы изменить этот путь, укажите его в первом аргументе к серверу, пример: `./rust_mc_serv /path/to/config.toml`
## Лицензия
Этот проект полностью лицензирован под лицензией WTFPL. Он абсолютно бесплатен и не имеет ограничений в использовании.
## Содействие
Если вы хотите помочь проекту, не стесняйтесь отправлять пулл реквесты!