Multiplayer WebVR worlds, procedurally generated with hotloaded npm
modules. 🌱🌳🌋🌲🐦🏃🎮
Mods are plain hotloaded Javascript. Frontend API is plain THREE.js. Mods run on both frontend and backend, so they can do pretty much anything. Voxel-based world builder mods loaded by default.
Mouse + keyboard emulation; only requirement is a modern browser -- but it's more awesome with a headset.
Avatars and items persist across servers on a globally distributed blockchain. Buy, sell, trade, and own your items, skins and plugins using worthless virtual credits.
Mod API supports the usual suspects: position tracking, controller events, multiplayer avatars tracking, configurator menu rendering, positional audio, asset loader, and more. Normalized to work the same regardless of headset (or lack thereof).
The server also handles firewall routing, module hotloading, and world storage, so you don't have to worry about that nonsense.
npm i modulesio/zeo
cd node_modules/zeo
node index.js
docker run -p 8000:8000 modulesio/zeo
Coming soon 🦄
- Procedural terrain w/ marching cubes
- Block building with tesselated meshes
- Voxel lighting system
- Avatar skins, compatible with Minecraft format
- Sword, bow, pickaxe
- Console emulation via RetroArch
- Tons more
Windows, OSX, and Linux are supported. node 8+
is required, but included if you use Docker or the Windows builds.
This project uses native modules, so if you're using node
you'll need build tools and node-gyp
configured or else you'll get an error on npm install
.
- Make sure you have Xcode and
Command Line Tools
- Check that node-gyp is in the
PATH
:node-gyp
- Check that Command Line Tools are installed:
xcode-select --install
- Check that gcc is installed:
gcc
- Point
xcode-select
to the developer directory:sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
- Make sure that
~/.node-gyp/<version>/include/node/config.gypi
is correct (correct Xcode version, etc.)