# Launcher Settings

Fine-tune your launcher's behavior, features, and performance. ⚙️

***

## General Settings

## Control Panel

### Launcher Status Control

Manage your launcher's availability and communicate status to players.

**Settings:**

| Setting              | Description                                                     | Default |
| -------------------- | --------------------------------------------------------------- | ------- |
| **Enable Launcher**  | Enable or disable the launcher completely                       | ✅ true  |
| **Maintenance Mode** | Put launcher in maintenance mode                                | ❌ false |
| **Alert Message**    | Display custom message for you as a developer, useful for teams | Empty   |

**How It Works:**

* **Enabled (Enable Launcher: enabled)** - Launcher functions normally, users can access all features
* **Maintenance Mode (Maintenance Mode: enabled)** - Launcher shows maintenance notice to users
* **Disabled (Enable Launcher: disabled)** - Launcher access is blocked completely
* **Alert Message** - Custom banner message displayed to developers, useful for teams

**Use Cases:**

* **Maintenance Mode** - Display "Server under maintenance" during backend updates
* **Alert Message** - Announce "Launcher maintenance, do not enable"&#x20;
* **Disabled State** - Temporarily block access during critical infrastructure work

{% hint style="warning" %}
**Impact:** When disabled, users cannot access the launcher. Use maintenance mode for scheduled downtime with user communication.
{% endhint %}

***

## Platform Settings

### Windows Configuration

Configure platform-specific settings for the Windows launcher build.

**Basic Settings:**

| Setting              | Description                                | Default |
| -------------------- | ------------------------------------------ | ------- |
| **Enable Launcher**  | Enable Windows platform                    | ✅ true  |
| **Executable Name**  | Name of the launcher .exe file             | Empty   |
| **Maintenance Mode** | Platform-specific maintenance              | ❌ false |
| **Link Only Mode**   | Button opens URL instead of launching game | ❌ false |
| **Link URL**         | URL to open when "Link Only" is enabled    | Empty   |

**Link Only Mode:**

When enabled, the launcher button opens a website instead of the launcher executable.

**Use Cases:**

* Redirect users to a download page
* Link to external platforms
* Redirect to new launcher version

**Launch Arguments:**

| Setting                                  | Description                               | Default              |
| ---------------------------------------- | ----------------------------------------- | -------------------- |
| **Enable Custom Launch Arguments**       | Enable custom launch arguments            | ❌ false              |
| **Launch Arguments**                     | Arguments passed to launcher executable   | `--windowed --debug` |
| **Enable Global Games Launch Arguments** | Enable global arguments for all apps      | ❌ false              |
| **Global Games Launch Arguments**        | Arguments applied to ALL apps in launcher | `--language=en`      |

**Launch Arguments Priority:**

```
Final Arguments = [Global Launch Arguments] + [Custom Launch Arguments]
```

**Examples:**

```bash
# Custom Launch Arguments (launcher-specific)
launchArguments: "--windowed --resolution=1280x720"

# Global Launch Arguments (applied to all apps)
globalLaunchArguments: "--language=en --log-level=info"

# Combined Result
--language=en --log-level=info --windowed --resolution=1280x720
```

{% hint style="info" %}
**Tip:** Use Global Arguments for launcher-wide settings and Custom Arguments for launcher-specific configurations.
{% endhint %}

***

## Advanced Settings

### Advanced Configuration Options

Configure advanced launcher behavior and features.

**Directory Settings:**

| Setting                   | Description                     | Default |
| ------------------------- | ------------------------------- | ------- |
| **Main App Subdirectory** | Name of the apps root directory | `Apps`  |

**How Directory Structure Works:**

The `mainAppSubdirectoryName` defines where apps are installed:

```
Launcher Directory/
└── Apps/                  ← mainAppSubdirectoryName
    ├── Game1/
    │   ├── Game1.exe
    │   └── Data/
    └── Game2/
        ├── Game2.exe
        └── Assets/
```

**Custom Examples:**

```
mainAppSubdirectoryName: "Apps"     →  Launcher/Apps/Game/
mainAppSubdirectoryName: "Games"    →  Launcher/Games/Game/
mainAppSubdirectoryName: "Content"  →  Launcher/Content/Game/
```

{% hint style="info" %}
**Coordination:** This should match the `rootName` setting in each app's advanced settings for consistency.
{% endhint %}

***

**Launch Arguments:**

| Setting                           | Description                          | Default |
| --------------------------------- | ------------------------------------ | ------- |
| **Global Games Launch Arguments** | Global arguments applied to all apps | Empty   |

**Installer Settings:**

| Setting                   | Description                               | Default |
| ------------------------- | ----------------------------------------- | ------- |
| **Deploy with Installer** | Include installer in launcher deployments | ✅ true  |

**Update & Verification Settings:**

| Setting                            | Description                              | Default   |
| ---------------------------------- | ---------------------------------------- | --------- |
| **Check for Updates Interval**     | How often to check for updates (seconds) | 3600 (1h) |
| **Verify Files at Launcher Start** | Verify launcher files on start           | ✅ true    |
| **Verify Files at App Start**      | Verify app files before launching        | ❌ false   |

**UI Settings:**

| Setting                     | Description                              | Default |
| --------------------------- | ---------------------------------------- | ------- |
| **Slideshow Interval**      | Slideshow image interval (seconds)       | 5       |
| **Play Slideshow on Start** | Auto-play slideshow when launcher starts | ✅ true  |
| **Show Server Status**      | Display server status indicator          | ✅ true  |

**Forced Updates:**

| Setting                            | Description                                  | Default |
| ---------------------------------- | -------------------------------------------- | ------- |
| **Minimum Required Build Version** | Minimum launcher build ID required to access | null    |

**How Forced Updates Work:**

When set, players must update to at least this build version before accessing the platform.

```
minimumRequiredBuildId: null     → No forced updates
minimumRequiredBuildId: 42       → Players must have build #42 or higher
minimumRequiredBuildId: 100      → Players must have build #100 or higher
```

**Use Cases:**

* Critical security patches
* Breaking changes in game protocol
* Major feature updates
* Deprecation of old launcher versions

{% hint style="warning" %}
**Impact:** Players with older versions will be required to update before they can use the launcher.
{% endhint %}

***

## Custom Paths

Override default installation paths:

```
Game Install Path:
  Default: C:\Games\GameLauncherCloud\{appname}\
  Custom:  D:\MyGames\{appname}\

Launcher Data:
  Default: %APPDATA%\GameLauncherCloud\
  Custom:  C:\LauncherData\

Cache Directory:
  Default: %TEMP%\GameLauncherCloud\
  Custom:  E:\Cache\
```

***

## Security Settings

***

## Advanced Settings

### Update & Deploy Settings

| Setting                        | Description                                       | Default    |
| ------------------------------ | ------------------------------------------------- | ---------- |
| **Check for Updates Interval** | How often to check for launcher updates (seconds) | 60 seconds |
| **Deploy with Installer**      | Build Windows installer (.exe) in addition to ZIP | ✅ Enabled  |

### News & Slideshow Settings

| Setting                     | Description                              | Default   |
| --------------------------- | ---------------------------------------- | --------- |
| **Slideshow Interval**      | Seconds between slideshow images         |           |
| **Play Slideshow on Start** | Auto-start slideshow when launcher opens | ✅ Enabled |

### Server & Verification

| Setting                            | Description                                | Default                       |
| ---------------------------------- | ------------------------------------------ | ----------------------------- |
| **Show Server Status**             | Display server status indicator            |                               |
| **Verify Files at Launcher Start** | Check file integrity when launcher starts  | ✅ Enabled                     |
| **Verify Files at App Start**      | Check file integrity before launching game | **File Verification Impact:** |

* **At Launcher Start** - Slower startup, ensures all files are valid
* **At App Start** - Verifies only the game about to launch
* **Both Disabled** - Fastest, but no integrity checks

{% hint style="warning" %}
**Performance:** Enabling "Verify Files at App Start" may cause 1-5 second delay before game launches, depending on game size.
{% endhint %}

### Forced Updates

| Setting                       | Description                             | Default |
| ----------------------------- | --------------------------------------- | ------- |
| **Minimum Required Build ID** | Force users to update to specific build | None    |

**How It Works:**

1. Select a build ID from completed builds dropdown
2. Users with older versions **must update** before accessing the launcher
3. Set to "No minimum" to make updates optional

**Use Cases:**

* Critical security patches
* Breaking changes in launcher functionality
* New required features
* Major platform updates

{% hint style="danger" %}
**Important:** Setting a minimum required build will **block all users** with older versions. Use carefully and communicate updates to your users.
{% endhint %}

**Example:**

```
Minimum Required Build: Build #42 (v2.5.0)

User with Build #41 → Must update to #42+ to access launcher
User with Build #42 → Can access normally
User with Build #43 → Can access normally
```

***

## Best Practices

**✅ Test Changes**

Test settings before pushing to production

**✅ Document Changes**

Keep changelog of setting modifications

**✅ Backup Config**

Export settings regularly as backup

**✅ Use Presets**

Start with presets then customize

***

## Next Steps

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>📰 Create News</strong></td><td>Engage players with updates</td><td><a href="../news-and-announcements/create-news">create-news</a></td></tr><tr><td><strong>📊 Analytics</strong></td><td>Track launcher performance</td><td><a href="broken-reference">Broken link</a></td></tr><tr><td><strong>📚 API Reference</strong></td><td>Integrate with custom systems</td><td><a href="../reference/api-reference">api-reference</a></td></tr></tbody></table>

***

{% hint style="success" %}
**Need Help?** Check our [troubleshooting guide](https://github.com/GameLauncherCloud/GameLauncherCloud-Gitbook/blob/main/docs/launchers/broken-reference/README.md) or join [Discord](https://discord.com/invite/FpWvUQ2CJP)!
{% endhint %}
