LogoLogo
English
English
  • Diarkis Help Center
  • Overview of Diarkis
  • Getting Started
    • Diarkis Server Template
    • Diarkis Client SDK
    • Tutorials
      • 1. Launch Diarkis Server in Local Environment
      • 2. Perform Connectivity Check with Test Client
      • 3. Implement Custom Command
      • Connect to Server from Diarkis Client
    • Samples
  • Diarkis Modules
    • Room Module
      • Set Up Room Module on Server
      • Room Sample
        • room_broadcast
      • Utilizing Room Module from Client
      • Additional Features of Room
    • MatchMaker Module
      • Set Up MatchMaker Module on Server
    • Field Module
      • Set Up Field Module on Server
    • P2P Module
      • Set Up P2P Module on Server
      • P2P Sample
    • DM (Direct Message) Module
      • Set Up DM Module on Server
    • Notifier Module
      • Set Up Notifier Module on Server
    • Session Module
      • Set Up Session Module on Server
    • Group Module
      • Set Up Group Module on Server
  • Diarkis Server
    • Launch Diarkis Server in Cloud Environment
      • AWS
    • Launch Diarkis Server on Windows Environment
    • MARS Server
    • UDP Server
    • TCP Server
    • HTTP Server
    • Metrics API
    • Inter-server Communication - Mesh
  • Diarkis Client
    • Runtime Library
      • Diarkis RUDP
    • Diarkis Module
      • Initialization and Termination of Diarkis Module
      • Customization of Diarkis Module
      • Logging System of Diarkis Module
      • Migration
      • Threads of Diarkis
    • Samples
      • C++
        • room_broadcast
        • directmessage_simple
        • group_sample
        • matching_and_turn
        • matchmaker_ticket
        • p2p_rudp_sample
        • session_simple
      • Unreal Engine Plugin
        • FieldWalker
      • Unity Plugin
        • FieldWalker
          • HowToReplicatePosition.md
  • Diarkis Tools
    • Diarkis CLI
      • Procedures to Switch to Diarkis CLI v3
  • References
    • API Reference
    • Release Notes
      • v1.0
      • v1.0.1
      • v1.0.2
      • v1.0.3
      • v1.0.4
      • v1.0.5
      • v1.0.6
  • Support
    • License and Billing
Powered by GitBook
On this page

Was this helpful?

Diarkis Client

A lightweight, cross-platform networking library that enables real-time communication, synchronization, and matchmaking by interfacing with Diarkis server modules.

Diarkis Client is a lightweight, high-performance networking SDK designed for real-time, distributed applications such as online multiplayer games, simulations, and edge-connected systems. It serves as the client-side interface to the Diarkis server cluster, providing robust tools for seamless, low-latency communication, synchronization, and interaction across decentralized networks.

Key Features and Capabilities

Protocol Support

  • Supports UDP, TCP, and Diarkis RUDP (Reliable UDP) for flexible communication across various network conditions.

  • RUDP includes built-in retransmission, packet ordering, and MTU fragmentation handling, optimized for real-time reliability.

Modular Communication Integration

Diarkis Client integrates seamlessly with all core Diarkis modules, enabling developers to build sophisticated networked applications with modular, event-driven components:

  • MatchMaker: Enables real-time, decentralized matchmaking with cluster-wide in-memory queue management. Supports dynamic team formation, backfill, and concurrent match operations without centralized bottlenecks.

  • Room: Provides server-relayed group communication and object synchronization, allowing multiple users to interact within a shared digital space.

  • Session: Facilitates lightweight one-to-many messaging, user presence tracking, and temporary shared property storage among session members.

  • Field: Enables cluster-wide spatial interaction, allowing users to detect and exchange data with nearby entities across different servers based on positional data.

  • DM (Direct Message): Supports private, one-to-one communication using a server-relay model with low configuration overhead.

  • P2P: Establishes direct peer-to-peer communication with NAT traversal support and automatic fallback to server-relay when needed.

  • Notifier: Delivers unidirectional server-to-client broadcasts, ideal for real-time alerts, global notifications, and session-wide event propagation.

Cross-Platform Compatibility

  • Available in C++ and C#, with dedicated plugins for Unreal Engine and a full SDK for Unity Engine, allowing seamless integration into existing game and simulation projects.

  • Compatible with Windows, macOS, Linux, iOS, Android, and game consoles such as PlayStation, Xbox, and Nintendo Switch.

Persistent Cluster Connectivity

  • Maintains an active connection with the Diarkis server cluster for session persistence, state recovery, and resilient client-server communication, even during server failovers or migration.

Event-Driven Architecture

  • Built with an event-driven communication model, Diarkis Client allows developers to subscribe to and react to network events, such as user joins/leaves, object updates, message receptions, and connection status changes.

PreviousInter-server Communication - MeshNextRuntime Library

Last updated 1 month ago

Was this helpful?