> For the complete documentation index, see [llms.txt](https://dxs-scripts.gitbook.io/home/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dxs-scripts.gitbook.io/home/documentation/redm/dxs-hud-and-metabolism.md).

# DXS Hud & Metabolism

<figure><img src="/files/W1AXB1XzUzunVk0xiUil" alt=""><figcaption></figcaption></figure>

### Requirements

* RedM (`fx_version 'adamant'`) and `rdr3` game target
* `lua54 'yes'` enabled in `fxmanifest.lua` (fxmanifest.lua:75)
* Recommended: `vorp_core` (money/job), `vorp_inventory` (item icons), `ghmattimysql` (DB persistence)

### Installation

1. Copy the resource folder to `resources/[DXS_Scripts]/DXS_Hud`.
2. In your `server.cfg`, add: `ensure DXS_Hud`.
3. Verify `fxmanifest.lua` contains:
   * `fx_version 'adamant'`, `game 'rdr3'`
   * `version '1.0'` (fxmanifest.lua:6)
   * `lua54 'yes'` (fxmanifest.lua:75)
4. Optional dependencies:
   * `vorp_core` for money/job sync
   * `vorp_inventory` for item icons (`basePath` and `resource` configurable)
   * `ghmattimysql` for DB persistence if you switch positions to DB
5. Restart your RedM server.

### Configuration

* Main toggle and intervals: `config/main.config.lua`
  * `Config.VersionChecker = true` (config/main.config.lua:3)
  * `Config.UpdateInterval`, `Config.StatusDecay.interval`
* Defaults (sizes, colors, visibility, shapes): `config/default.config.lua`
  * `Config.DefaultPositions`, `Config.DefaultColors`, `Config.DefaultSizes`
  * `Config.EnableShapes`, `Config.DefaultShape`, `Config.DefaultLogoUrl`
* Temperature system: `config/temperature.config.lua`
  * Regions, elevation, fire/drink/cool effects, warnings, smoothing
* Usable items: `config/usable_items.lua`
  * Define item effects and animations; supports eat/drink/inject/smoke
* Persistence: `Config.Persistence` in `config/main.config.lua`
  * `positions = 'file'` (default) or `'db'` for MySQL via `ghmattimysql`

### Commands

* `/wash` — cleanse dirt near water/pumps (client; wash cooldown enforced)
* `/refreshcash` — manual cash refresh (server-side debug/test) (server/status.lua:416)

### Version Checker

* Server-side thread checks latest version and logs to console (server/status.lua:1126-1169)
* Toggle with `Config.VersionChecker`

### Optimization Tips

* Increase `Config.UpdateInterval` and `Config.StatusDecay.interval` to reduce CPU usage
* Disable unused modules: Stress, Dirt, Voice visualize, Temperature `coreDrain`
* Prefer event-driven updates for money/job over frequent polling
* Keep NUI updates on change; avoid unnecessary full refreshes
* Temperature smoothing enabled with realistic thresholds to avoid spikes
* Voice visualize: reduce duration/thickness or disable when performance-first
* Dirt logic: larger intervals for running/water checks; enforce wash cooldown
* DB writes: save positions/statuses on change; avoid frequent writes

### Roadmap

* Horse Feeding System: dedicated feeding mechanics and UI feedback in next update 🐴🥕
* Item Balance Pass (V2): a small number of item props (1–2) are not fully adjusted yet; fixes and tuning will ship in V2 soon for better consistency and feel ⏳

### File References

* Version metadata: `fxmanifest.lua:6`
* Lua 5.4 flag: `fxmanifest.lua:75`
* Version checker thread: `server/status.lua:1126-1169`
* Config toggle: `config/main.config.lua:3`
* Wash logic location: see wash command in `client/hud.lua` near the health drain section

### Support

* Purchase and support via Discord. This is a paid product — redistribution and reupload are prohibited.
