← Docs

Recipe: Unity C# MonoBehaviour scaffold

Drop-in base class for Meridian-authenticated Unity scripts. Handles session validation, hardware binding, and license expiry checks before your game logic runs.

using UnityEngine;
using Meridian.Unity;

public class MeridianBehaviour : MonoBehaviour
{
    [SerializeField] private string productId;

    private async void Start()
    {
        var session = await MeridianAPI
            .ValidateSession(productId);

        if (!session.IsValid)
        {
            Debug.LogError("License invalid");
            Application.Quit();
            return;
        }

        OnAuthenticated(session);
    }

    protected virtual void OnAuthenticated(
        MeridianSession session) { }
}

Integration

Install the Meridian Unity package via the Package Manager using the git URL from your dashboard. Inherit from MeridianBehaviour instead of MonoBehaviour.

Lifecycle

  • Awake — MeridianAPI cold init
  • Start — session validate + hardware bind
  • OnAuthenticated — your game entry point
  • OnDestroy — session teardown

Offline grace

Sessions are cached locally with an HMAC-signed expiry. Offline play is permitted for up to 72 hours after the last successful online validation.

Requires Meridian Unity SDK v2.1+. Package URL available in your dashboard.