Skip to content

ArcadeServer

ArcadeServer runs on the cabinet. It consumes the bundle created by Publish and owns the live game session.

ArcadeStudio is the workshop. ArcadeServer does not live-read Studio’s editable catalog, rules, LED profile, or overlay canvas.

Instead, Studio publishes a cabinet bundle. ArcadeServer installs that bundle and reads its Master.db and runtime configuration. This boundary keeps a cabinet on the last known publish while new work remains in Studio.

Use ArcadeServer-Setup.exe on the cabinet. The app installs for the current Windows account under %LocalAppData%\Programs\ArcadeServer.

Setup can:

  • start ArcadeServer after the Windows account signs in;
  • start the host in the background with a tray icon instead of opening the control panel;
  • create a desktop shortcut; and
  • install the optional ViGEmBus driver for Virtual Xbox routes.

The control panel exposes the same startup and desktop-shortcut choices. See Installation for the complete setup behavior.

ArcadeServer creates a pairing token on first start and stores it at:

%LocalAppData%\ArcadeStudio\ArcadeServer\pairing.token

ArcadeStudio running under the same Windows account reads this token automatically. Do not copy the token into screenshots, logs, or support posts.

Packaged builds require the token for actions that change the cabinet, including publish, rollback, launch, and shutdown. Browser posts to the local server from another site are rejected. LAN access is disabled by default and still requires the pairing token when enabled.

From the active published bundle, ArcadeServer can:

  • identify a launched game against the published Master.db;
  • start a game from a Launch Intent and its Studio-authored launch profile;
  • apply published controller, LED, overlay, and rules configuration;
  • run Automation flows that Studio marked Live; and
  • capture unmatched play as Inbox observations for review in Studio.

ArcadeServer builds the executable argument plan from the Launch Intent. The caller sends the game, launch profile, and source—not an executable command line.

ArcadeServer resolves game identity against the Master.db inside the active bundle. Exact file hashes and explicit platform ROM identities take priority over weaker name or path matches.

When no catalog row matches, Server records an observation. Review it in Data Management → Inbox. Inbox represents unmatched play; it is not a manual add-game form.

Do not point ArcadeServer at Studio’s working Master.db to repair a miss. Correct the catalog in Studio, rebuild if required, and publish a new bundle.

When the 30-day trial has ended and no license is present, ArcadeServer asks once at startup for purchase or license details. It then continues the session unlicensed so existing cabinet play is not stopped. Studio still requires a license before it can publish a new bundle.

Next: Getting started or Troubleshooting.