Skip to content

Repository files navigation

Survival Cubed

A multiplayer-first 2D voxel survival game written in Rust. Mine, craft, build, fight, and explore an infinite procedurally generated world β€” solo, on your LAN, or over the internet. Descend into a fiery underworld for rare ore, tame a puppy, and fortify against the creatures that come out at night.

πŸ“– Full documentation: https://playforge-coding.github.io/survival-cubed/

Features

  • Infinite, seeded worlds β€” plains, forests, mountains, and deserts on the surface; a charred underworld below, reached with a crafted fire key; and a stone-brick arena for the boss fight, reached with an arena key.
  • Boss fight β€” a flying Demon King holds the arena (one per world); slay it for a chest of loot.
  • Mining & crafting β€” four tool tiers (wood β†’ stone β†’ iron β†’ tungsten), smelting at a forge, and cooking at a campfire.
  • Survival β€” health, fall damage, hunger for cooked food, and hostile mobs (zombies, skeletons, spiders, snakes, slimes) that hunt at night.
  • Creatures & pets β€” chickens, goats, and wild cats and puppies you can tame with cooked meat. Pets follow you, hunt, sit on command, and respawn.
  • Multiplayer over QUIC β€” host a dedicated server (with optional UPnP port forwarding), auto-discover games on your LAN, password-protected accounts, chat, and admin moderation.
  • Creator mode β€” flight, infinite blocks, time control, creature spawning, and a structure tool to save and paste your builds (.scst files).
  • Persistent worlds β€” chunks, players, creatures, and inventories are saved automatically; clean shutdowns lose nothing.

Quick start

Play

Download a prebuilt binary from the Releases page, or build from source (below). Then just run it:

survival-cubed

This opens the graphical client, where you can start a singleplayer world, host a game on your LAN, or join a discovered or manually entered server.

Host a dedicated server

survival-cubed server [port] [creator] [upnp]
  • port β€” listening port (default 5000).
  • creator β€” optional keyword; if present, every player may use creator mode. Omit it for a survival-only server.
  • upnp β€” optional keyword; if present, the server asks your router to forward its port via UPnP so it's reachable from the internet. This exposes the server publicly β€” only use it to host outside your LAN, and keep a strong world password. creator and upnp are order-independent.

The server prints its listen address, whether UPnP is on, and a certificate fingerprint, then runs until you press Ctrl+C (it saves the world on shutdown).

When hosting from the graphical client instead, tick Forward port via UPnP under Host on LAN and confirm the security prompt. See the multiplayer docs for details.

Building from source

You need a recent stable Rust toolchain. Game assets (textures and structures) are stored in Git LFS, so make sure git-lfs is installed and the files are pulled before building β€” otherwise include_bytes! will embed LFS pointer files instead.

git clone https://github.com/playforge-coding/survival-cubed.git
cd survival-cubed
git lfs pull
cargo run --release

On Linux you also need the windowing/input system libraries plus ALSA (for audio):

sudo apt-get install -y libxkbcommon-dev libwayland-dev libx11-dev \
  libxcursor-dev libxi-dev libxrandr-dev libasound2-dev

Documentation

The full game guide lives in docs/ and is published to GitHub Pages.

To preview the docs locally:

pip install zensical
zensical serve

Credits

Survival Cubed bundles third-party assets. The background music is from OpenGameArt.org: the first overworld track (assets/music/overworld/0.ogg) by bart, the overworld and underworld tracks by remaxim, and the arena track (assets/music/arena/0.ogg) by ATMANAN. The dual-licensed tracks are used under their GPL-3.0 option (rather than CC BY-SA 3.0) so they can be embedded in the binary. See docs/credits.md for the full list.

License

About

A 2D (I know) Voxel Game

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages