> For the complete documentation index, see [llms.txt](https://zloma-scripts.gitbook.io/zloma-scripts/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zloma-scripts.gitbook.io/zloma-scripts/zloma_bossmenu-free/configuration.md).

# Configuration

## Core Settings

`shared/config.lua` contains all public configuration for the resource.

### Language

`Config.Language` defaults to `en` for the public release.

Supported values:

* `en`
* `hr`

All shipped creator, stash, salary-editor, and admin helper strings now exist in both locales.

### Permissions

`Config.DefaultPermissions` defines the minimum grade required for each action when no job-specific override exists.

The values are grade thresholds.

* `0` means every grade can use the action.
* Higher numbers restrict the action to higher ranks.
* `999` is effectively disabled until you explicitly allow it per job.

Important keys:

* `openMenu`
* `viewBalance`
* `viewHistory`
* `deposit`
* `withdraw`
* `viewEmployees`
* `hireEmployee`
* `fireEmployee`
* `manageRanks`
* `manageSalary`
* `accessStash`
* `accessWardrobe`

These defaults are only the fallback baseline. Effective permissions are resolved server-side from stored job data, so the menu is not dependent on client cache state.

### Money Limits

Use `Config.Money` to limit single deposits and withdrawals.

Relevant keys:

* `minDeposit`
* `maxDeposit`
* `minWithdraw`
* `maxWithdraw`

Vault actions also use per-job transaction locking and post-write balance verification to reduce duplicate or stale balance issues.

### Rate Limits

`Config.RateLimits` throttles high-risk actions:

* `deposit`
* `withdraw`
* `hire`
* `fire`

Values are milliseconds between allowed actions per player.

### Hire Radius

`Config.HireRadius` controls how close a player must stand to the boss menu marker to appear in the hire list.

### Salary System

`Config.Salary` controls automatic payouts.

The salary system now uses the same `zloma_core` society wrappers as the boss menu itself, which keeps behavior consistent across supported banking resources.

Important keys:

* `enabled`
* `payInterval`
* `maxSalary`
* `checkSocietyBalance`
* `notifyOnPayment`
* `notifyOnFailed`
* `logPayments`

Salary values are stored per grade. The UI salary editor and the permissions page both read from the same locale-safe labels and server-side validation path.

### Creator Settings

`Config.Creator` controls in-game boss-menu creation.

Important keys:

* `allowedGroups`
* `defaultStash.weight`
* `defaultStash.slots`
* `stashProp`
* `wardrobeProp`
* `maxPlacementDistance`
* `rotationSpeed`

Placement mode now has complete locale coverage and the stash preview model load is timeout-guarded, so failed model loads do not leave the player stuck in placement flow.

### Player Stashes

`Config.PlayerStashes` controls the optional placeable stash system.

Shipped stash types:

* `small_wardrobe`
* `safe`
* `large_safe`

Important keys:

* `types[*].item`
* `types[*].weight`
* `types[*].slots`
* `maxPlacementRadius`
* `pinLength`
* `maxPinAttempts`
* `lockoutDuration`

Current access modes used by the resource:

* `owner`
* `pin`

PIN validation is enforced on both client and server, and lockout handling is applied server-side.

### Blips And Targets

`Config.Blips` controls boss-menu map markers.

Important keys:

* `enabled`
* `sprite`
* `color`
* `scale`
* `shortRange`
* `showOnlyToJob`

`Config.Target` controls target labels and distance for boss menu, stash, and wardrobe interaction.

### Discord Logging

Discord webhook logging is disabled by default for the public release.

To enable it:

1. Set `Config.DiscordWebhooks.enabled = true`.
2. Set `Config.DiscordWebhooks.playerStashes.enabled = true`.
3. Replace `YOUR_WEBHOOK_URL_HERE` with your webhook URL.

Player stash webhook logging can separately track:

* stash placement
* stash access
* stash removal
* admin deletion
* failed PIN attempts

### Wardrobe Integration

Wardrobe handling is now delegated to `zloma_core`.

Bossmenu opens the wardrobe using the appearance resource detected by `zloma_core`, so there is no longer a hardcoded wardrobe integration inside this resource.

If you need to force a specific appearance resource, set `ZlomaCore.Config.Manual.Appearance` in `zloma_core/shared/config.lua`.

### Unemployed Job

`Config.UnemployedJob` is used when firing employees.

Default shipped values are:

* `name = 'nezaposlen'`
* `grade = 0`

Change this if your framework uses a different unemployed job name.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://zloma-scripts.gitbook.io/zloma-scripts/zloma_bossmenu-free/configuration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
