Kubi
Multithreaded voxel engine with multiplayer networking based on wgpu (a.k.a another attempt at ripping off Minecraft)
Install / Use
/learn @griffi-gh/KubiREADME
cargo build -p kubi
cargo run -p kubi
#or, build with release mode optimizations:
cargo run -p kubi --release
<h2>build for android</h2>
please note that android support is highly experimental!
gamepad and mouse input is currently not supported
prerequisites: Android SDK, NDK, command line tools, platform-tools, latest JDK
(make sure that your PATH, ANDROID_HOME and ANDROID_NDK_ROOT variables are configured properly)
Setup:
latest unpublished (git) version of cargo-apk is required
cargo install --git https://github.com/rust-mobile/cargo-apk cargo-apk
rustup target add aarch64-linux-android
Build:
--no-default-features is required for keyboard input!
(prefer-raw-events feature must be disabled on android)
Mouse input is not implemented, touch only!
cargo apk build -p kubi --lib --no-default-features
Run on device (using adb):
cargo apk run -p kubi --lib --no-default-features
<h2>touch controls</h2>
<img src=".readme/touch_controls.png" alt="touch control scheme" width="300">
- Left side: Movement
- Rigth side: Camera controls
- Bottom right corner:
- B (e.g. place blocks)
- A (e.g. break, attack)
to join a multiplayer server, just pass the ip address as the first argument
cargo run -p kubi -- 127.0.0.1:1234
<h2>server configuration</h2>
[server]
address = "0.0.0.0:12345" # ip address to bind to
max_clients = 32 # max amount of connected clients
timeout_ms = 10000 # client timeout in ms
[world]
seed = 0xfeb_face_dead_cafe # worldgen seed to use
[query]
name = "Kubi Server" # server name
<h2>"In-house" libraries</h2>
hui,hui-glium,hui-winit: semi-imm.mode backend-agnostic ui system\kubi-loggingfancy custom formatter forenv-logger
deprecated:
- ~~
kubi-udp~~ eventually got replaced byuflow(https://github.com/lowquark/uflow) in #5 - ~~
kubi-pool~~ decided there's no need to replace rayon for now
Related Skills
himalaya
344.1kCLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
node-connect
344.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
96.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
coding-agent
344.1kDelegate coding tasks to Codex, Claude Code, or Pi agents via background process
