# fxmanifest.lua

The manifest file defines all resource files and their load order. Below is the full file with explanations for each section.

***

### Full Manifest

```lua
fx_version 'cerulean'
author "Mohsine"
description 'moh-stoptroll'
game 'gta5'

-- NUI (in-game web panel)
ui_page 'web/index.html'
files {
    'web/index.html',
    'web/styles.css',
    'web/logo.png',
    'web/app.js'
}

-- Shared config (not escrowed — editable by server owners)
shared_scripts {
    'config.lua'
}

lua54 'yes'

-- Files excluded from escrow protection (visible/editable)
escrow_ignore {
    'config.lua',
    'server.lua',
    'client.lua'
}

-- Client-side scripts
client_scripts {
    'client.lua',       -- Main gameplay logic
    'client_ui.lua'     -- NUI panel callbacks
}

-- Server-side scripts
server_scripts {
    '@mysql-async/lib/MySQL.lua',   -- MySQL library
    'server.lua',                   -- Core sentence logic
    'server_ui.lua'                 -- Staff panel handlers
}
```

***

### Escrow Explanation

| File            | Escrowed? | Reason                              |
| --------------- | --------- | ----------------------------------- |
| `config.lua`    | ❌ No      | Server owners need to edit this     |
| `client.lua`    | ❌ No      | Open for inspection / customization |
| `server.lua`    | ❌ No      | Open for inspection / customization |
| `client_ui.lua` | ✅ Yes     | Panel NUI callbacks — protected     |
| `server_ui.lua` | ✅ Yes     | Staff panel handlers — protected    |

> If you want to also expose `client_ui.lua` or `server_ui.lua`, add them to the `escrow_ignore` block.

***

### Load Order

Scripts are loaded in this order:

1. `@mysql-async/lib/MySQL.lua` — MySQL library loaded first
2. `config.lua` — Shared config available on both client and server
3. `client.lua` + `client_ui.lua` — Client logic
4. `server.lua` + `server_ui.lua` — Server logic


---

# Agent Instructions: 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://mohssins.gitbook.io/mohscriptsdocs/moh-stoptroll/fxmanifest.lua.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.
