Skip to content

cb341/rsmc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rsmc

A stupid little Minecraft clone written in Rust, powered by the Bevy engine.

Features

  • Procedual world generation using 3D Perlin noise
  • Custom terrain mesher based on face culling
  • Custom Client / Server architecture using Renet
  • Data serialization using bincode serde
  • World update synchronization between game clients
  • World physics using rapier
  • World updates using primitive ray casting
  • World saving/loading with .rsmcw files
  • Periodic world backups in ./backups/ directory
  • Modular architecture using ECS

Installation

Prerequisites

Default setup

Just run the cargo command to install the dependencies and start the game:

cargo rs # run server
cargo rc # run client

More optimal setup

Release Builds (for better performance):

cargo rs --release
cargo rc --release

Hot patch client

bin/dev

Installation on NixOS

Nix shell can be used to run the code using the given Nix Shell Config File. This will automatically install rust and the bevy dependencies. Strongly inspired by the Bevy NixOS installation guide

nix-shell --run "cargo rs"
nix-shell --run "cargo rc"

Notes

Checkout the Wiki for additional project information.