Multiplayer 3D Game Engine

Build multiplayer 3D games for the browser with a unified server-client architecture, integrated physics and real-time networking.

server.ts
import { MavonServer, MavonClient, Entity } from '@mavonengine/core'

// Server-side game world
const server = new MavonServer()

server.onPlayerJoin((player) => {
  const entity = new Entity({ position: [0, 1, 0] })
  server.world.add(entity)
  server.sync(player, entity)
})

server.start(3000)

Everything in one cohesive package

No more piecing together libraries. MavonEngine ships rendering, physics, networking, animation, particles, and debugging as a unified whole.

    Full-Stack Multiplayer Architecture

    Shared Entity System — write once, run on server and client. Automatic state synchronization with bandwidth optimization, distance-based culling for entity visibility, and hash-based change detection to minimize network traffic.

    Integrated 3D Physics with Rapier

    Kinematic character controller with slope climbing and sliding. Configurable parameters — 45° climb, 30° auto-slide. Full body & collider management and physics debug visualization in real-time.

    Advanced 3D Rendering with Three.js

    Custom GLSL shader support with debug rendering modes — wireframe, armature, and physics overlays.

    Real-Time Multiplayer Networking

    WebRTC-based communication for real-time data channels. Bandwidth tracking & monitoring, command buffering & processing across network latency, and server health monitoring with built-in HTTP endpoints.

    Skeletal Animation System

    Animation state management with logical organization. Smooth fade transitions with configurable duration, GLTF model support with Draco compression, and efficient skeleton cloning for instanced models.

    Particle Effects Framework

    Built-in effects — rain and smoke ready to use. Custom shader support for unique particle visuals.

Level Editor

Very early WIP — a level editor that loads directly from the running game instance on the page.

Prefabs

Drop in ready-to-use prefabs built by the community — from environment assets to gameplay elements. Pull any prefab directly into the editor, tweak it, and ship. Anyone can publish prefabs to the community registry.

Grass — Lush, performant grass fields with wind simulation and LOD support. Drop it into your scene and configure density, sway, and color in seconds.

Water — Basic water shader. 3 LOD + Basic customizations — ready to use out of the box.

Built different

Most multiplayer browser games are held together with duct tape. MavonEngine is designed from the ground up as a unified system.

    Complete Solution

    Rendering, physics, networking, entity management, asset loading, animation, particles, and debugging tools in one cohesive package.

    Server + Client Unity

    Write game logic once and it works on both server and client. The shared entity system eliminates duplication and drift.

    Networking Built In

    Distance-based culling, hash-based change detection, bandwidth monitoring, and automatic state synchronization — all built in, none bolted on.

    Developer Experience

    Tweakpane integration, debug visualization, performance monitoring, and comprehensive TypeScript types. Catch bugs fast, ship faster.

    Extensible Architecture

    Abstract base classes let you customize servers, entities, and game logic without fighting the framework. Designed to grow with your project.

What can you build?

MavonEngine is purpose-built for real-time multiplayer. Anything that needs players, physics, and a world in the browser.

    Action RPGs

    PvP Combat Games

    Open World Multiplayer

    Physics-Based Games

Build Multiplayer 3D Games Faster

Server + Client + Physics + Networking + Rendering + Animation + Particles + Debugging. All in one package. All working together. All TypeScript.