Skip to content

Node.js multiplayer message server suitable for client to client applications

License

Notifications You must be signed in to change notification settings

Luke100000/Nooby

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nooby

Extendable Node.js messaging server designed for easy client to client applications.

Communication uses MessagePack and TCP / WebSocket and a simple packet format and therefore works for a wide variety of clients.

Client implementations provided for Lua. JavaScript is WIP.

An example chat software, benchmarks and test bench is provided for Lua. JavaScript is WIP.

Project license GitHub stars

Table of contents

Concept

The concept is a peer to peer packet messenger, with a server used to avoid direct connections. Usage should be simple and generic, yet stable and secure with reasonably performance.

A Nooby server can be reused for multiple projects and handles common logic like login, session creation, game lobby queries etc. It also offloads the broadcasting of data to a server with potential better bandwidth.

Clients send packages, which consist of two parts: the header and the payload. The header is meant for the server and specifies the type of packet and how to treat it. The payload is forwarded to the other clients and can contain any type of data (including binary). It is recommended to also use MsgPack here.

Usually, messages do not confirm successful operations, but instead return errors otherwise.

About

Node.js multiplayer message server suitable for client to client applications

Resources

License

Stars

Watchers

Forks

Packages

No packages published