Troubleshooting
Common problems and how to resolve them.
Make sure oxmysql and more_lib are installed and started before more_hud, and read the server console for errors when the resource starts. More HUD provides the chat resource itself, so stop any other chat resource and do not run a second HUD next to it. After every change in cl_config.lua, restart more_hud. The HUD loads a few seconds after a player joins (MS.Settings.load_delay, 3000 ms by default), so wait a moment before testing.
First check that the call runs on the client: the exports only exist on the client, and a server script has to trigger the client event more_hud::client:notify, more_hud::client:announce or more_hud::client:teamchat for a player instead. Then check the arguments. Announce needs a title and a message as strings, Teamchat needs a message, a rank and a name as strings, and Lifeinvader and Business need valid arguments too, otherwise the call is ignored. The whole notification is also dropped when its text holds a word from MS.Notify.badwords, matched as a whole word in any case; for announcements the title and subtitle are checked as well. Enable MS.Settings.dev_mode to see ignored calls and dropped texts in the console, and run the testhud command to confirm the HUD itself shows notifications.
The HUD replaces invalid values instead of failing. A title that is not a string shows the default notification title, a message that is not a string shows the default no-message text, and a level other than success, error, info or warning is shown as info. A time that is missing or not above 0 falls back to MS.Notify.time (5000 ms). Pass the level, title, message and time in exactly this order and make sure the values are real strings and numbers, not nil or tables. The look of notifications and their sound come from MS.Layout.notify and MS.Layout.notifysound; announcements use MS.Layout.announce and MS.Layout.announcesound, and the subtitle of an announcement is only drawn by design 4.
MS.Settings.voice has to name the voice system you actually run: pma, yaca or saltychat (pma by default). Make sure that voice resource is started and that the value is spelled exactly like this, in lowercase, then restart more_hud. If the voice display is still missing, check the matching switch in MS.Modules, and see MS.Settings.volume (0.5 by default) for the volume setting. Enable MS.Settings.dev_mode to get console output while you test.
More HUD includes its own chat and declares itself as the chat resource in its manifest, so the default chat resource or any other chat script started next to it will conflict. Stop and remove the other chat, then restart the server. The chat opens with the key in MS.Chat.key (T by default); check that the key was not changed and that no other script uses it. Staff commands such as announce and teamchat are separate from the chat and depend on the permission groups in MS.Commands.
Enable MS.Settings.dev_mode and use the minimapfit command with the values left, bottom and size to try new minimap positions live in the game. When it fits, copy the three values into MS.Minimap in cl_config.lua and turn dev_mode off again. The safezone and the speed limit display have their own settings in MS.Safezone and MS.Speedlimit. A different screen ratio or UI scale can move the minimap, so test with the setup your players use.
The announce, teamchat and deathtimeout commands are limited to the permission groups listed in MS.Commands. Check that the group of the player is listed there, spelled exactly as your framework or permission system names it, and restart more_hud after you change the list. The exclusionzone command is configured in MS.ExclusionZone, and testhud and minimapfit only work while MS.Settings.dev_mode is enabled. The copynotify command and the HUD menu (F10 or the hud command) are available to every player.
More HUD cannot know your coin system, so the coins, NOS and mileage values come from three functions in cl_config.lua. MS.GetCoins returns the player's coin count and returns 0 until you change it, MS.GetNitro returns the NOS level of a vehicle from 0.0 to 1.0, and MS.GetMileage returns the mileage of a vehicle in km. Edit them to read from your own scripts or database, restart more_hud, and make sure the matching modules are enabled in MS.Modules.
Last updated