W3 / DevelopersSDK 4.6.0Source & examples ↗

Settings that work across surfaces

Define settings in Apps → Developer → My apps, then generate the binding for that app. Your dashboard, stream overlay and in-game overlay receive the same persisted settings through their ordinary lifecycle subscriptions.

npx w3booster-settings init app_your_id --endpoint https://api.w3booster.com
# After changing the app definition:
npm run w3booster:sync
npm run w3booster:check

Commit the generated binding. Run check in CI before building; a definition revision mismatch requires syncing and redeploying your app. Adding an optional platform state field is independent of changing your own app definition.

Offer a default shortcut

A public boolean field can declare defaultHotkey. This checked example creates a schema with one toggle:

import { validateSettingsSchema } from '@w3booster/sdk/settings';

export const schema = validateSettingsSchema<{ showPanel: boolean }>({
  version: 1,
  sections: [{
    id: 'display', title: 'Display',
    fields: [{
      key: 'showPanel', label: 'Show panel', type: 'boolean',
      default: true, defaultHotkey: 'Control+Alt+H',
    }],
  }],
});

The desktop toggles the setting and persists the normal settings update. Render snapshot.settings.showPanel from your existing runtime subscription. You do not need a keyboard listener, a host command or a separate shortcut transport. This controls your app's setting; it does not hide Warcraft's own interface.

Users can record, clear or restore a shortcut beside the setting toggle. Their choice overrides your default on that computer. Clearing explicitly disables it. Shortcuts are global while registered, so choose combinations that are unlikely to conflict with gameplay or other applications.

Valid combinations and conflicts

Use Control, Alt, Shift in that order followed by A–Z, 0–9 or F1–F24. Letters and digits need Control or Alt. F12 is reserved. Defaults must be unique within an app and cannot target internal or nonboolean fields.

The desktop reports conflicts between enabled apps and registration failures from Windows. Conflicting app assignments stay inactive until the user resolves them. An app being disabled, signed out or unavailable does not leave active shortcuts behind. Visibility, entitlement and dependency conditions still apply to a toggle.

Develop and test

Use demo settings while building UI. Test the same field in all enabled surfaces, then test a real shortcut through the Windows desktop. Verify saving, clearing, restoring defaults and conflicting assignments. An older bootstrap can require a desktop restart before shortcut registration is available.

First app · Publishing · Troubleshooting