1.1.5 • Published 6 months ago

majodo v1.1.5

Weekly downloads
-
License
ISC
Repository
-
Last release
6 months ago

MaJoDo - Game Server

Easily set up a game server and focus solely on your client-side with MaJoDo. Choose from three different server types to suit your needs: UDP, WebSockets, or WebSockets with Protocol Buffers. Find example clients here

Features

Seamless Server Types: Select from three distinct server implementations:

UDP for fast, connectionless data transmission.

WS (Websockets) for a reliable, full-duplex communication channel.

WS_WITH_PROTOBUFS (WebSockets with Protocol Buffers) for efficient binary serialization.

Automated Room Management: After getting your JWT token from the HTTP server, simply send it to the server (via UDP or WS) and get placed in a room. All your subsequent data is then automatically routed to the correct room.

Built-in Authentication: Get a JWT token from the HTTP server to ensure secure and authenticated access.

Express Integration: A built-in HTTP and Express server, ensuring simplicity and extensibility.

Installation

npm install majodo

Basic Usage

/* If you watched the YouTube video, that is an old version without types. 
Now, MaJoDo uses types so use the code below. 🦞 */
import { MaJoDo, ServerType } from "majodo";

// Create a new instance with desired server type, host, and ports
const majodo = new MaJoDo(ServerType.WS, "0.0.0.0", 3000);

// UDP: 
// const majodo = new MaJoDo(ServerType.UDP, "0.0.0.0", 3000, UDP_PORT);


// Start the server
majodo.start();

Server Types

ServerType.UDP: Use the UDP protocol for data transmission.

ServerType. WS: Utilize WebSockets for communication.

ServerType.WS_WITH_PROTOBUFS: Use WebSockets paired with Protocol Buffers for efficient messaging.

Token-Based Authentication

  1. Send a request to the HTTP server.
  2. Retrieve a JWT token.
  3. Use the JWT token to send data to the server (UDP/WS).
  4. Enjoy automatic room routing and data forwarding.

image

Documentation & Tutorials

For a comprehensive tutorial on setting up and integrating MaJoDo in your game project check out this YouTube video: https://www.youtube.com/watch?v=47FUo0pDsHA

Disclaimer: The video is a bit outdated regarding the server implementation (you need to change the constructor and import statement), check out the section above on basic usage.

1.1.5

6 months ago

1.1.4

6 months ago

1.1.3

6 months ago

1.1.2

6 months ago

1.1.1

6 months ago

1.1.0

6 months ago

1.0.14

6 months ago

1.0.13

7 months ago

1.0.12

7 months ago

1.0.11

7 months ago

1.0.10

7 months ago

1.0.9

7 months ago

1.0.8

7 months ago

1.0.7

7 months ago

1.0.6

7 months ago

1.0.5

7 months ago

1.0.4

7 months ago

1.0.3

7 months ago

1.0.2

7 months ago

1.0.0

7 months ago