Skip to main content

ElysIdentity

Persistent player identity system for Unreal Engine 5 — no external backend required.

ElysIdentity provides server-authoritative player authentication for RPG servers using PIN-based login, HMAC-SHA256 session tokens, and pluggable persistence (JSON or SQLite).

Key Features

  • PIN-based Authentication — 4-8 digit numeric PINs with salted SHA-256 hashing
  • Session Tokens — HMAC-SHA256 signed tokens with configurable expiry (default 30 days) for silent re-authentication
  • External Platform Linking — Attach Steam, Epic, Discord, or any platform ID to a single player GUID
  • PIN Recovery — One-time 6-character alphanumeric codes with configurable expiry
  • PIN Lockout — Configurable max attempts and lockout duration
  • Dual Persistence — JSON (prototyping) and SQLite (production), or implement your own backend
  • Full Blueprint Support — All public functions are BlueprintCallable, all events BlueprintAssignable
  • Multiplayer-First — Client-server RPC architecture with owning-client-only replication

Architecture Overview

ElysIdentity uses a two-component architecture:

  • UERPIdentitySubsystem (GameInstance) — Server-authoritative identity database, token management, and authentication logic
  • UERPIdentityComponent (PlayerController) — Client-server RPC bridge handling the authentication handshake

Quick Start

  1. Install the plugin
  2. Add UERPIdentityComponent to your PlayerController
  3. Configure settings in Project Settings → Rogue Paradigm → ElysIdentity
  4. Build your login UI responding to OnLoginRequested

Ready to get started? Head to the Setup Guide.