The panel is currently in maintenance. Sign-in and game connections are temporarily unavailable; you can read the guide here while we finish setup.

Connect your Roblox game.

Add the server SDK to your experience, store its key in Roblox Secrets and check the connection.

Before you start

You'll need access to ONG Panel and a Roblox experience you can edit in Studio. Keep your GameKey private throughout setup.

Public sign-up and subscriptions are not open yet. Audit history, API diagnostics and data cleanup are currently unavailable.

  1. Step 1:

    Add your game

    Open Projects and create a project with your experience’s Universe ID. A Place ID identifies one place inside that experience and is optional here.

    Open projects
  2. Step 2:

    Connect the server SDK

    In SDK setup, select Show SDK secret when you are ready to save your GameKey in Roblox Secrets. Keep it private and out of scripts.

    Set up in Studio
  3. Step 3:

    See recorded activity

    Check your connection, then open your project to see the activity your game sends to the panel.

    Get connection help

Connect in Roblox Studio

The panel's project-specific install guide generates the details for your game. Follow it while you work in Roblox Studio.

  1. Step 1

    Allow HTTP requests

    In Roblox Studio, open File → Experience Settings → Security and enable Allow HTTP Requests.

  2. Step 2

    Get the server connector

    When panel access is available, use the download and instructions in your project's install guide. Install the connector in ServerScriptService and keep it out of client scripts and public models.

  3. Step 3

    Add your secret and scripts

    In Roblox Creator Dashboard, add your GameKey to the experience's Secrets as ONG_GAME_KEY, with domain panel.omnomgames.co.uk. For local Studio playtests, add the same named value under Local Secrets. Never paste it into a script. Follow the panel's install guide to add the config and bootstrap to ServerScriptService.

  4. Step 4

    Check the connection

    Use the project's setup and Studio test pages. Confirm the BaseUrl is public HTTPS, then start a server in Studio and check the project for heartbeat activity.

Your install guide is in the panel.

Open a project, then choose its install guide for project-specific values and scripts.

Open projects ↗

Keep your GameKey private

Your GameKey lets a server authenticate as your project. Treat it like a password, even when you're just testing.

Server-side only

Keep your GameKey in Roblox Secrets, restricted to panel.omnomgames.co.uk. Keep the SDK and config in ServerScriptService. Never put the key in scripts, ReplicatedStorage, remotes or public models.

Shared by mistake?

Ask the workspace owner or an admin to regenerate it from SDK setup. The old credentials stop working once the change completes. Update the public key in your config and the GameKey in Roblox Secrets.

Your workspace and team

Workspace owner

Can manage projects and moderation. Only the owner can change retention settings, change enforcement settings or manage billing. Data cleanup is temporarily unavailable.

Designated admin

Can create and delete projects, change workspace and project settings, regenerate GameKeys and manage moderation cases in their workspace.

Designated moderator

Can create and close moderation cases in their workspace.

Other members

Can view their workspace data. Ask the owner or an admin if you need a change.

A self-service team invitation and role-management flow is not available yet.

Connection and account help

My game isn't connecting

Check that HTTP requests are enabled in Studio and the BaseUrl shown in your project's setup is a public HTTPS address. Check the project's install guide and Studio test for the next steps.

I can't see my GameKey

It is shown once. A workspace owner or designated admin can regenerate it in SDK setup. Update the public key in the server config and the GameKey in Roblox Secrets; the previous credentials stop working.

My game's event queue is full or paused

The SDK keeps pending events in server memory. If the queue is full, tracking returns an error and leaves the earlier events in place. Check the result of each tracking call. Events still in memory can be lost when the game server stops.

In trusted server code, use ONG.GetQueueStatus() to see whether the queue is paused. If a single event was rejected, ONG.InspectBlockedEvent() returns a copy for private review. Do not put event data or GameKeys in public logs, client scripts or remotes.

Fix the underlying problem, then call ONG.RetryQueuedEvents(). After a new key is saved in Roblox Secrets, trusted server code can call ONG.UpdateCredentials(publicKey, game:GetService("HttpService"):GetSecret("ONG_GAME_KEY")) before retrying. If the status identifies a single event and you decide it must be removed, ONG.DiscardBlockedEvent(eventId) permanently removes that event; use the exact ID from the queue status. An authentication failure does not identify an event to discard.

What happens if a moderation check fails?

The player is allowed to join. The SDK reports a failed check in server output and counts it in diagnostics. You can connect the server-only OnEnforcementUnavailable callback to an alert for trusted staff. Avoid logging player information or GameKeys.

Why can't I open audit or diagnostics?

Audit history and API diagnostics are not available yet. Use the connection checks in your project’s SDK setup for now.

Can I subscribe or create an account?

Public registration and new subscriptions aren't available yet. Return to the panel when those features are announced.