# Campaign OP connected-gate test script **Status:** OP3 section only. Later slices (OP4-6, OP8) append their own sections here as they land; the campaign's OP9 closeout gate is this document complete plus every slice code-complete. This document is the script the user runs against the live connected client (`ACDREAM_LIVE=1` against the local ACE server) to accept each slice. Each item states what to do and what retail-faithful behavior to expect. Anything marked **INERT** is authored and clickable but deliberately does nothing yet — that is the correct, contracted behavior for this slice, not a bug. --- ## OP3 — panel shell, open paths, Gameplay tab ### Opening and closing the panel 1. **Press F11.** The Options panel opens — a floating, resizable window titled by its own chrome (no title-bar text is authored; the window itself is the visual identity). The **Gameplay Options** tab is selected by default (leftmost tab, matching the user's own retail screenshot). 2. **Press F11 again.** The panel closes. 3. **Click the toolbar's Options button** (the icon at the right end of the shortcut row, next to Inventory). The panel opens. If a DIFFERENT `gmPanelUI`-family panel was already open (Character Info, Skills, Vitae, Inventory, etc.), opening Options closes it first — this is retail's real "one active panel" behavior (`gmPanelUI`'s shared geometry/exclusive-child model), not new to this panel. 4. **Click the panel's own close (X) button**, top-right of the window chrome. The panel closes — same action as F11. 5. **Drag the window by its border/chrome, resize it from any edge or corner.** Behaves like the CH6 chat floaties: draggable, resizable on all four edges, remembers its geometry across a close/reopen within the same session. ### Tab switching 6. **Click each of the four tabs** (Gameplay Options, Character, Chat, Config). Each switches the visible page; exactly one page is visible at a time. Character/Chat/Config show their AUTHORED content (row templates, Apply/Reset/Defaults buttons, scrollbars) but nothing on those three tabs is wired to live data yet — that is OP4/OP5/OP6's scope, not a bug in this slice. Only the currently-selected tab's button highlights as "open"; the others read "closed". 7. **Switch away from Gameplay and back.** No crash, no stuck state. ### The seven Gameplay-tab buttons 8. **Exit Game.** Click it. The client logs off and closes gracefully — same behavior as pressing Escape then confirming, or closing the window. **No confirmation dialog** (retail has none on this path). 9. **Exit to Character Selection.** Click it. A confirmation dialog appears ("Are you sure you want to end this character session?" or the DAT-resolved retail equivalent). Click **Yes** while standing on solid ground: the client logs off and closes — **today this behaves identically to Exit Game**, NOT a return to a character-select screen (acdream has no pre-world character-select flow yet — register row AD-74). Click **No**: nothing happens, panel stays open. 10. **Exit to Character Selection while airborne** (jump and click the button mid-air, or confirm while still in the air). Expect the chat line **"Cannot log off while in mid-air."** in the SpewBox/chat scroll instead of logging off — this is retail's own byte-verified refusal, faithfully ported. 11. **Configure Keyboard.** Click it. **INERT — nothing happens.** This is the contracted behavior for OP3; OP8 wires the real Configure Keyboard screen, and OP8's own gate re-tests this exact button. Do not report this as a bug for OP3. 12. **In-Game Help Files.** Click it. **INERT — nothing happens.** Retail's own help viewer is a third-party plugin (`plugins\ACHelpPlugin.dll`) acdream does not have; retail itself fails silently with the plugin absent, and this button mirrors that (register row AD-76). 13. **Urgent Assistance.** Click it. Expect a chat line explaining the web browser could not be launched and pointing at `http://support.turbine.com/ics/support/ticketnewwizard.asp?style=classic` — retail's own byte-verified failure text, always shown (the URL is dead in 2026, so acdream never attempts to open a browser — register row AD-75). **No native browser window opens, no OS dialog box.** 14. **Report Abuse.** Click it. Same shape as Urgent Assistance, with its own retail text ("...to submit an abuse report..."). 15. **Use Mouse Turning Settings.** Click it. Expect one retail chat line per changed value among: Camera Stiffness, Camera Adjustment, Mouse Sensitivity, Align To Slope, Invert Mouselook Axes, Turn to Face Camera — a FRESH character (never touched these settings) sees all six lines; clicking the button a second time in the same session sees zero lines (everything already at the macro's target). **Known, registered gap (TS-74): acdream has no persistent "turn to face camera" mouse-turning MODE yet, so this button changes stored preferences and sends the wire bit, but you will not see the camera actually start turning with mouse movement** — that consumer does not exist yet. Verify the CHAT LINES and that the button is clickable/does not crash; do not expect a camera-behavior change. ### What to report - Any of the above NOT matching (wrong text, wrong tab default, window not draggable/resizable, close button not working, F11/toolbar not opening the panel, opening Options not closing a sibling panel). - Any exception/crash on any of the 15 steps. - Whether the confirmation dialog's exact wording looks retail-correct (it resolves from the DAT string table at runtime; a fallback English string only appears if that resolution fails, which would itself be worth reporting). ### Explicitly NOT in scope for this gate - Character/Chat/Config tab content (rows, checkboxes, sliders, live data) — OP4/OP5/OP6. - Configure Keyboard's actual screen — OP8. - Any observable camera change from "Use Mouse Turning Settings" — no acdream consumer exists yet (TS-74).