rocket-launchDXS Fps Menu

Dependencies

Minimum:

  • FiveM server (FXServer)

Optional integrations:

  • ESX (v1 / v2) – for identifying players and storing runtime data.

  • QBCore – for persistent metadata storage of player settings.

The resource auto‑detects ESX and QBCore if they are running. If neither is found, it still works using basic identifiers.


Installation

  1. Copy the folder:

    • Place DXS_FpsMenu in your server resources, for example:

      • resources/[dxs]/DXS_FpsMenu

  2. Ensure the resource in your server.cfg:

  3. Make sure it starts after your framework resources (if any), e.g.:

  4. Restart the server.


Usage

Opening the menu

  • Chat command:

    This uses the command fpsmenu directly.

  • Keybind:

    • Default: F10

    • Registered as the command fpsmenu.

    • Players can change the key in FiveM keybind settings (Settings → Key Bindings → FiveM section).

Controls inside the menu

  • FPS SETTINGS:

    • Use sliders and toggles, then click APPLY CHANGES.

    • Settings are applied client‑side every frame and also saved on the server.

  • PERFORMANCE STATS:

    • Updates every second while the menu is open.

    • Values are visual indicators; CPU/GPU/Memory are estimated from your selected quality levels.

  • QUICK OPTIONS:

    • Show FPS Counter – small FPS box at top‑right of the screen.

    • Hide HUD – hides HUD and radar during gameplay.

    • Enhanced Mode – applies additional visual/performance adjustments.

    • Boost Mode – further reduces density and visual load for maximum FPS.

    • Press APPLY CHANGES to commit.

  • CLEAR CACHE:

    • Clears timecycle modifiers / HD area / weather override on the client.

Language switching

  • Top‑right language pills:

    • EN – English

    • FR – French

    • ES – Spanish

    • AR – Arabic

  • Language switches instantly for all labels in the menu.


Configuration

Server‑side config (debug)

In server/main.lua there is a small config:

Set Debug = true to print debug messages when settings are saved/loaded.

Framework notes

  • QBCore:

    • Settings saved in PlayerData.metadata["dsx_fpsmenu"].

    • Persist across reconnects and server restarts (as long as metadata is saved).

  • ESX:

    • Settings stored in memory via xPlayer.set("dsx_fpsmenu", settings).

    • Persist only for the current session by default (no DB modifications required).


Files overview

  • fxmanifest.lua – resource manifest.

  • client/main.lua – client logic, NUI control, FPS overlay, world tuning.

  • server/main.lua – framework detection, per‑player settings, ping broadcast.

  • html/index.html – NUI layout for FPS menu.

  • html/styles.css – styling/animations for the interface.

  • html/app.js – front‑end logic, language system, presets, NUI messaging.


Known limitations

  • CPU/GPU/Memory usage in the menu are visual estimates, not real hardware readings.

  • ESX runtime storage does not persist across full server restart unless you extend it to use your own database fields.


Support / Customization

  • You can freely change colors, fonts, and layout in html/styles.css.

  • Logic for presets, languages, and quick options is in html/app.js.

  • World density and performance tuning behavior is in client/main.lua (function applyWorldSettings).

If you need help integrating deeper with your ESX/QBCore database or changing defaults (presets, keybind, etc.), you can extend the scripts or ask your developer to adjust the referenced files.

Last updated