Developer Integration & SDK Support

Alliance Games provides an intuitive SDK that integrates seamlessly with the Unity 3D game engine. The SDK is fully compatible with Netcode for GameObjects.

SDK Abstraction and Multi-Language Support

To ensure platform independence, developers can implement session logic in any programming language. The platform currently supports:

  • C# for Unity

  • C++ for Unreal Engine

  • JavaScript for Web Applications

The SDK includes:

  • WebSocket transport layer (default)

  • Support for UDP/TCP in future releases

  • A common module for marshalling, forwarding, and connection handling

The SDK is structured as follows:

  • Server Module: Handles server-side communication and node interactions.

  • Client Module: Manages client-side session logic and matchmaking.

  • Common Module: Core logic for data exchange, independent of language.

Future versions will implement native C-based functionality to minimize overhead and improve performance across languages.

Propagation and Deployment Mechanism

The system uses Docker for runtime isolation and execution. The process includes:

  1. Code Submission: Developers upload session logic in a zipped format.

  2. Containerization: The system verifies and packages the code into a Docker image.

  3. Health Check: The image is tested in an isolated mode before deployment.

  4. Versioning & Storage: The verified image is pushed to the registry.

  5. Network Distribution: Nodes fetch and deploy images on demand.

Future plans include moving the Docker registry to a decentralized storage system, allowing further decentralization of game logic execution.

Last updated