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

# Customization

> Brand the HUD with your logo, choose the starting preset, add your own presets, languages and a custom minimap.

This page covers the ways you can make Revo HUD look like **your** server. The options are set in `config.lua`, see [Configuration](/products/hud/configuration) for the full list.

## Server Name and Logo

Set your name and logo in `Config.PlayerInfo`:

```lua theme={null}
Config.PlayerInfo = {
    serverName = 'SERVER NAME',
    logoType   = 'image',
    logoPath   = 'server-logo.png',
    logoText   = 'LOGO',
}
```

* `serverName` is shown in the first-join setup and on the Presets tab.
* `logoType = 'image'` uses a picture, `logoType = 'text'` uses `logoText` instead.
* `logoPath` is a file in `revo_hud/html/dist/`, or a full `https://` link.

The HUD ships with the Revo logo as a placeholder. To use your own logo, replace `revo_hud/html/dist/server-logo.png` with a transparent PNG (about 500 x 200) and keep the name, or put the file next to it and change `logoPath`.

> [!WARNING]
>
> The logo file name must match `logoPath` exactly (capital letters count), or be a full `https://` link. If the image is missing, the HUD falls back to `logoText`.

To stop players from hiding, moving or resizing your logo, use `Config.Branding.lockLogo = true`.

## Default Preset

`Config.Customization.defaultPreset` is the look new players start with, and what **Reset Defaults** in the menu restores. It ships as `'sleek-modern'`.

```lua theme={null}
Config.Customization = {
    defaultPreset = 'sleek-modern',
    forcePreset   = false,
}
```

Set `forcePreset = true` to re-apply the preset on every join, overwriting any edits players made.

## Bundled Presets

Revo HUD ships with **17 complete HUD designs**. Each has its own layout, colors, styles and driving cluster:

| Preset | Id | Description |
| - | - | - |
| Tactical Chamfered | `tactical-chamfered` | A compact Chamfered layout with a square map, low vitals and a Tactical driving cluster. |
| Sleek Modern | `sleek-modern` | A Sleek layout that keeps the map and vitals low, with a larger Modern cluster for driving. |
| White Blocks | `white-blocks` | A white Blocks layout with Meter vitals beside the map and an Analogue dial opposite. |
| Aurora Minimal | `aurora-minimal` | An Aurora glass layout with a square map, low vitals and a compact Minimal driving cluster. |
| Toxic Horizon | `toxic-horizon` | Acid green Gauge vitals, Sleek player details and a Horizon driving cluster. |
| Center Console | `center-console` | Ember Chamfered, with the speedometer centered low and vitals split either side like a dash. |
| Raid Frame | `raid-frame` | Red Blocks with an MMO-style player frame: identity and stacked vitals at the top left. |
| Radar Dock | `radar-dock` | Midnight Sleek, packed around the map so the center and right of the screen stay clear. |
| Cockpit | `cockpit` | Forest Sleek framed like a flight HUD: a speed tape on the right, vital readouts on the left. |
| Halo | `halo` | White Sleek rounds: a circle radar with your vitals curved around it, and an Orbit dial. |
| Neon Vice | `neon-vice` | Vice pink in Orbitron: the classic GTA status corner at the top right, radar bottom left, Crescent dial bottom right. |
| Pit Wall | `pit-wall` | Red Chamfered in full color: an F1-style timing tower down the left, shift lights on the right. |
| Skyline | `skyline` | Revo cyan Sleek: vitals along the bottom right under the Pulse readout, drift score centered low. |
| Night Rack | `night-rack` | Amber Blocks LED modules in two racks flanking the road. |
| Wraparound | `wraparound` | Blue Chamfered wrapped around you like a helmet visor: every panel turns to face the center of the screen. |
| Apex | `apex` | Ember Sleek racing pods that turn in to face the center, the way racing games angle theirs. |
| Triple Screen | `triple-screen` | Toxic Blocks on a sim rig: the player panel and driving instruments sit on two side screens turned in to face you. |

Players try a preset on live from **/hud > Presets**, and can switch off the built-in list for your server with `Config.Presets.showBundled = false`.

## Create and Share Your Own Preset

Any setup can be turned into a share code that carries the theme, colors, styles and element layout in one string.

**1. Design the HUD in Game**

Open `/hud`, choose your themes, colors and styles, and use **Edit Layout** to place every element.

**2. Generate the Code**

Go to the **Presets** tab and use **Generate & Copy Share Code**. The code starts with `REVO1-`.

**3. Use It on Your Server**

You can use the code in two places in `config.lua`:

```lua theme={null}
-- 1. As the preset new players start with
Config.Customization.defaultPreset = 'REVO1-...'

-- 2. As an extra preset in everyone's list
Config.Presets.custom = {
    { name = 'Nightshift', code = 'REVO1-...' },
}
```

You can also use the name of a custom preset as `defaultPreset`, for example `defaultPreset = 'Nightshift'`.

Players can paste any code from a friend, another server, or revoscripts.com into **Presets > Import**, and save their own setups as presets (turn this off with `Config.Presets.allowPlayerPresets = false`).

## Locking Customization

You decide how much of the HUD players can change:

```lua theme={null}
Config.Customization = {
    allowPlayersToEditLayout   = true,
    allowPlayersToEditSettings = true,
    adminsBypassLocks          = true,
}
```

| Goal | Setting |
| - | - |
| Players can do everything | Leave both `allowPlayersToEdit...` options `true` |
| Players can restyle but not move elements | `allowPlayersToEditLayout = false` |
| Fully locked to your design | Both options `false`, and consider `forcePreset = true` |
| Staff can always edit | `adminsBypassLocks = true` (needs the `revo_hud.admin` ACE) |

You can also switch whole elements off for everyone with `Config.Components`. Players can hide more, but can never bring back what you turned off.

## Onboarding

The four-step welcome wizard asks new players for a look, an accent color, a round or square minimap and a status bar style. The real HUD changes behind the menu so players see each choice live.

You can switch off any step that your `defaultPreset` already answers, and the wizard is skipped when every step is off. See [Onboarding in the configuration](/products/hud/configuration#onboarding). Players can open it again with `/onboard`.

## Languages

The HUD, its menus and its messages come in **English, Español, Français, Deutsch, Português (Brasil), Türkçe, Polski, Nederlands and Italiano**.

`Config.Locale` sets the language everyone starts in, and each player can choose their own in **/hud > General > Language**.

Each language is one file in `revo_hud/locales/`, mapping each English line to its translation:

```json theme={null}
{ "language": "Deutsch", "numbers": "de-DE", "strings": { "Seatbelt on": "Angeschnallt" } }
```

* **To change a word**, edit it in that language's file and restart `revo_hud`.
* **To add a language**, copy `en.json` to a file named after its code (such as `ru.json`, `ar.json` or `cs.json`), set `language` to its name, translate the right-hand side of each line and restart. It then shows up in every player's Language list.
* **Missing lines** stay in English, so a half-finished file still works.
* Keep words in `{braces}` as they are. The HUD fills them in.
* `numbers` decides how money and scores are written (`de-DE` gives 12.500, `en-US` gives 12,500).

> [!NOTE]
>
> When an update adds new lines, they show in English until your language file has them.

## Minimap Styles

The HUD uses GTA's own map by default. You can use a postal or satellite map instead.

**1. Download a Map Pack**

Download one of the supported packs:

* [Improved postal map](https://github.com/IC-Technologies/improved_postal_map)
* [Oulsen's satellite map](https://github.com/Oulsen/oulsen_satmap)

**2. Add the Files**

Put the pack's `.ytd` and `.ydd` files in `revo_hud/maps/postal/` or `revo_hud/maps/satellite/`.

**3. Set the Map Style**

In `config.lua`, set the style and zoom level:

```lua theme={null}
Config.Minimap.mapStyle = 'postal'    -- or 'satellite'
Config.Minimap.zoomLevel = 1100
```

**4. Restart the Resource**

Restart `revo_hud`. It copies the right files into place on its own, and the server console says which style is active.

```bash theme={null}
restart revo_hud
```

To go back to the stock map, set `mapStyle = 'stock'` and `zoomLevel = 1000`, then restart. The HUD removes the custom tiles and puts the stock map back.

> [!NOTE]
>
> Postal codes beside the street name work either way. The HUD carries its own postal grid, so you do not need a postal map pack for them.

> [!TIP]
>
> If the map style did not change, check the files are in the right folder, that `mapStyle` is spelled exactly as above and that you restarted `revo_hud`. Players may need to clear their FiveM cache once.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.