# Demo Play Modes – Overview & Selection Guide This document explains the two RubyPlay demo options, when to use each, and how to choose the right mode for your integration. * **Documented modes:** * [Demo Play Mode](#demo-play-mode) — lightweight, URL‑based demo with local (client-side) parameters. * [Advanced Demo Play Mode](#advanced-demo-play-mode) — server‑driven demo tied to operator and environment configuration. Use the **[Decision Rules](#decision-rules)** to pick a mode in under a minute. ## Quick Overview | Aspect | **Demo Play Mode** | **Advanced Demo Play Mode** | | --- | --- | --- | | **Purpose** | Quick preview; marketing/landing pages; lightweight QA | Production‑like demo; staging/pre‑prod QA | | **Backend dependency** | None (standalone launcher) | **Required** (RubyPlay environment + operator configuration) | | **Mode switch** | `mode=demo` | `mode=fun` | | **Mandatory params** | `mode`, `gamename` | `server_url`, `mode`, `operator`, `currency`, `gamename` | ## Decision Rules Choose [Demo Play Mode](#demo-play-mode) if any of the following is true: * You need a **fast, zero‑backend** demo (public website, press, sales deck). * You want to **tweak balance/bets** locally via URL. Choose [Advanced Demo Play Mode](#advanced-demo-play-mode) if any of the following is true: * You need a **production‑like** experience (stage/pre‑prod), tied to real operator and environment. * You must validate **operator‑configured currency**, **language**, or **game enablement**. * You want to reproduce **server‑side flows** and integration conditions.