<p align="center"><img src="https://cdn.rawgit.com/modulesio/zeo/989fc50f00e699231ba7fba54262d1a35e814924/public/img/logo-name.svg" width="200px"></p>
Multiplayer WebVR worlds, procedurally generated with hotloaded
npm modules. 🌱🌳🌋🌲🐦🏃🎮
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
- Make sure you have Xcode and
Command Line Tools
- Check that node-gyp is in the
- Check that Command Line Tools are installed:
- Check that gcc is installed:
xcode-selectto the developer directory:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
- Make sure that
~/.node-gyp/<version>/include/node/config.gypiis correct (correct Xcode version, etc.)