> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.bearsampp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bearsampp General Settings and Configuration Options

> Configure Bearsampp's language, timezone, logging verbosity, hostname, startup behavior, and more using the tray menu or by editing bearsampp.conf directly.

Bearsampp stores its global settings in a file called `bearsampp.conf`, located in the root of your Bearsampp folder. You can edit this file directly in any text editor, or change the most common settings through the tray menu — Bearsampp updates the file automatically when you make a change from the UI.

## Configuration file location

The configuration file is at:

```
bearsampp\bearsampp.conf
```

Settings are stored in INI format as `key = "value"` pairs. When you change a setting from the tray menu (such as switching language or toggling online mode), Bearsampp writes the new value back to this file immediately.

## Configuration options

The table below lists every key in `bearsampp.conf`, its type, and what it controls.

| Key                 | Type    | Description                                                                                                                  |
| ------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `lang`              | string  | The active interface language. Accepted values: `english`, `french`, `german`, `spanish`, `hungarian`, `swedish`.            |
| `defaultLang`       | string  | The fallback language used if `lang` is not available.                                                                       |
| `timezone`          | string  | PHP's default timezone, applied at startup. Use any valid PHP timezone identifier, e.g. `UTC` or `America/New_York`.         |
| `notepad`           | string  | Full path to the text editor Bearsampp opens when you choose to edit a config file from the tray menu.                       |
| `scriptsTimeout`    | integer | Timeout in seconds for internal scripts (e.g. service restart scripts). Increase this if services time out on slow machines. |
| `logsVerbose`       | integer | Logging verbosity level. `0` = Simple, `1` = Report, `2` = Debug, `3` = Trace.                                               |
| `maxLogsArchives`   | integer | Number of compressed log archives to keep before older ones are deleted.                                                     |
| `browser`           | string  | Full path to the browser Bearsampp uses when opening URLs from the tray menu. Leave blank to use the system default.         |
| `hostname`          | string  | Local hostname for the server. Defaults to `localhost`.                                                                      |
| `online`            | integer | `1` = online mode (services accessible), `0` = offline/maintenance mode.                                                     |
| `launchStartup`     | integer | `1` = Bearsampp starts automatically when Windows boots, `0` = manual start only.                                            |
| `DownloadId`        | string  | Download ID used to access module downloads from the Bearsampp repository.                                                   |
| `IncludePR`         | integer | `1` = include pre-release versions when checking for module updates, `0` = stable releases only.                             |
| `EnhancedQuickPick` | integer | `1` = use enhanced quick pick mode when selecting module versions, `0` = standard mode.                                      |

## Logging verbosity levels

The `logsVerbose` key controls how much detail Bearsampp writes to its log files.

| Value | Level  | What is logged                                           |
| ----- | ------ | -------------------------------------------------------- |
| `0`   | Simple | Errors and major events only                             |
| `1`   | Report | Standard operational messages                            |
| `2`   | Debug  | Detailed step-by-step output for troubleshooting         |
| `3`   | Trace  | Full trace output including every internal function call |

<Tip>
  Use `2` (Debug) or `3` (Trace) temporarily when diagnosing a problem, then set it back to `0` or `1` to keep log files small.
</Tip>

## Changing settings from the tray menu

Many settings are available directly from the tray menu without opening `bearsampp.conf`:

<CardGroup cols={2}>
  <Card title="Language" icon="language">
    Right-click the tray icon → **Settings** → **Language** to choose from the supported interface languages.
  </Card>

  <Card title="Launch on startup" icon="play">
    Right-click the tray icon → **Settings** → **Launch on Windows startup** to toggle the `launchStartup` setting.
  </Card>

  <Card title="Online / Offline mode" icon="wifi">
    Right-click the tray icon → **Put Online** or **Put Offline** to toggle the `online` setting.
  </Card>

  <Card title="Logs verbosity" icon="list">
    Right-click the tray icon → **Settings** → **Logs verbose** to cycle through verbosity levels.
  </Card>
</CardGroup>

<Note>
  Every change you make through the tray menu is saved to `bearsampp.conf` automatically. You do not need to restart Bearsampp for most setting changes to take effect, but restarting ensures all components pick up the new values.
</Note>

## Editing the file directly

If you prefer to edit `bearsampp.conf` by hand, open it with any plain-text editor. Each line follows this format:

```ini theme={null}
key = "value"
```

Save the file and restart Bearsampp to apply changes made outside the tray menu.

<Warning>
  Do not change `defaultLang` unless you know what you are doing — it is the fallback language and removing a valid value can cause the UI to fail to load strings correctly.
</Warning>
