Colyseus is an Authoritative Multiplayer Game Server for Node.js, with clients available for the Web, Unity3d, Defold, Haxe, and Cocos2d-X. (See official clients)
The project focuses on providing synchronizable data structures for realtime and turn-based games, matchmaking, and ease of usage both on the server-side and client-side.
The mission of the framework is to be a standard netcode & matchmaking solution for any kind of project you can think of!
You're encouraged to take a look on some games being developed with it and make your own!
- WebSocket-based communication
- Simple API in the server-side and client-side.
- Automatic state synchronization between server and client.
- Matchmaking clients into game sessions
- Scale vertically or horizontally
- Game Engine: Colyseus is agnostic of the engine you're using. Need Physics? Add your own logic / package.
- Database: It's up to you to configure and select which database you'd like to use.
See roadmap for our future plans.
Create a bare-bones Colyseus server by using npm init colyseus-app
.
npm init colyseus-app my-colyseus-server
cd my-colyseus-server
npm start
- JavaScript/TypeScript
- Defold Engine (defold.com)
- Unity (unity3d.com)
- Haxe (haxe.org)
- Cocos2d-x (cocos2d-x.org)
- Construct 3 (construct3.net)
- @colyseus/social - Authentication and Social features for Colyseus
- @colyseus/proxy - Proxy & Service Discovery for scaling Colyseus
- @colyseus/monitor - A Web Monitoring Panel for Colyseus
- @colyseus/loadtest - Utility tool for load testing Colyseus
- colyseus-hxjs: Haxe externs for colyseus server (by @serjek)
- colyseus-java: Client for Java (by @doorbash)
- Colyseus-ObjC: Client for Objective C (by @swittk)
- Colyseus-for-C2: Client for Construct 2 (by @Keevle)
See the official examples for usage reference with the latest version of Colyseus.
- Colyseus + PixiJS Boilerplate (source-code) - Simplistic agar.io implementation using PixiJS
- Colyseus + BabylonJS Boilerplate (source-code) - Bare-bones BabylonJS example
- Tic Tac Toe (source-code) - Tic Tac Toe using PixiJS and Defold Engine
- Collaborative Drawing Prototype (source-code) - Collaborative drawing using HTML5 canvas.
- (outdated: < v0.8.x): tanx, react-example, LD35 entry: dotower
Thanks goes to these wonderful people (emoji key):
Endel Dreyer 💻 📖 💡 |
Kyle J. Kemp 💬 🐛 💻 💵 🤔 |
Jonas Voland 💬 🐛 💻 💵 🤔 |
Milad Doorbash 🐛 💻 |
Tom 💬 🐛 🤔 |
James Jacoby 💡 💵 🖋 |
Nikita Borisov 🐛 💻 💵 🤔 |
---|---|---|---|---|---|---|
Phil Harvey 💵 📖 |
Brian Hay 💵 |
Enriqueto 💵 |
digimbyte 📖 |
Federico 🐛 💻 |
Derwish 🐛 🔧 |
This project follows the all-contributors specification. Contributions of any kind are welcome!
We encourage you to contribute to Colyseus! Please check out the Contributing guide for guidelines about how to proceed. Join us!
Everyone interacting in Colyseus and its sub-projects' codebases, issue trackers and chat rooms is expected to follow the code of conduct.
Generous backers:
- Kyle Kemp
- Wenish
Backers:
- Brian Hay
- Damian Alberto Pastorini
- Endre Johnsen
- enriqueto
- Eric McDaniel
- James Jacoby
- João Mosmann
- LeeSeHeon
- Nikita Borisov
- Phil
- Plaid World
- Rick Porter
- tobi4s1337
- Worph
MIT