diff --git a/.gitignore b/.gitignore index 573fc9e..15af779 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,4 @@ target /output.log /world -/.cargo +/server-icon.png diff --git a/LICENSE b/LICENSE index 2c8b763..0a479b7 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2020-2022 Garen Tyler +Copyright (c) 2020-2023 Garen Tyler Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 1c92894..9c19d9c 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,19 @@ # Composition +Composition is a new Minecraft server written from the ground-up in Rust. -Composition is targeting 1.8.9, protocol version 47. -The main goal is to get a working server, then optimize for speed. +Composition is targeting Minecraft version 1.19.3, protocol version 761. +The main goal is to get a working server, then optimize for speed (multi-threading/kubernetes/etc). -## Development Resources +## Project Structure +Composition is broken up into multiple crates to speed up build times and improve modularity. +- `src/main.rs` is a wrapper around `composition-core` that sets up logging among other things. + This is the main binary that is exported with `cargo build`. +- `composition-core` implements the main server logic, such as handling clients and loading world chunks. +- `composition-protocol` handles the types and packets needed for network communication. + The library was designed to be able to used by anyone looking to implement a Minecraft server. -- [Normal Login Sequence](https://wiki.vg/Protocol_FAQ#What.27s_the_normal_login_sequence_for_a_client.3F) +## Useful Resources - [Protocol Specification](https://wiki.vg/Protocol) +- [Normal Login Sequence](https://wiki.vg/Protocol_FAQ#What.27s_the_normal_login_sequence_for_a_client.3F) - [Server Ping](https://wiki.vg/Server_List_Ping) - [Map Format](https://wiki.vg/Map_Format) -- [Rust TcpStream Docs](https://doc.rust-lang.org/std/net/struct.TcpStream.html) -- [Rust Channel Docs](https://doc.rust-lang.org/std/sync/mpsc/index.html) diff --git a/composition.toml b/composition.toml index 102e5ff..fb3713f 100644 --- a/composition.toml +++ b/composition.toml @@ -1,7 +1,6 @@ log_level = "debug" max_players = 20 motd = "Hello world!" -ping_game_version = "1.18.1" +ping_game_version = "1.19.3" port = 25565 server_icon = "server-icon.png" - diff --git a/server-icon.png b/server-icon.png deleted file mode 100644 index 4ef7bdb..0000000 Binary files a/server-icon.png and /dev/null differ