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.

Last updated

Was this helpful?