Skye
4bc14d3b3f
|
1 year ago | |
---|---|---|
client | 2 years ago | |
common | 2 years ago | |
node | 2 years ago | |
quilt | 2 years ago | |
server | 1 year ago | |
.envrc | 2 years ago | |
.gitignore | 2 years ago | |
Cargo.lock | 2 years ago | |
Cargo.toml | 2 years ago | |
LICENSE-APACHE | 2 years ago | |
LICENSE-MIT | 2 years ago | |
README.md | 2 years ago | |
flake.lock | 2 years ago | |
flake.nix | 2 years ago |
README.md
e4mc
Easy Ephemeral External Exposure for Minecraft
The client and server code for e4mc, a ngrok-like tunneling solution for Minecraft: Java Edition. It uses WebSockets as the primary connection method and has a simple, easy-to-implement (for clients) wire protocol.
Install
Client
cargo install --git https://git.skye.vg/me/e4mc e4mc-client
Server
cargo install --git https://git.skye.vg/me/e4mc e4mc-server
Usage
Client
If tunneling a server opened at 25565(default for dedicated servers), just run e4mc-client
with no arguments.
If you wish to tunnel a different port, just supply the -p
argument.
For more options, please consult --help
's output.
Server
The server doesn't have TLS termination; You should put it behind a reverse proxy that supports it.
The server is exclusively configured by environment variables; they are WS_BIND_ADDR
, MC_BIND_ADDR
, and BASE_DOMAIN
.
Contributing
It'd be really cool if you contributed 🥺
License
MIT or Apache-2.0 depending on your choice.