HUD
Personal HUD displays player status, PMA-Voice proximity and talking status, compass and street information, speed, time, nearest postal, and optional money, job, and AOP information. Players can save their display preferences through /hudoptions.
POPULAR LINKS
- BUY IT! Purchase Personal HUD from BigDaddyScripts.com
- ACE PERMS How to use Ace Permissions with BigDaddy Scripts
- SERVER.LUA How to use the included server.lua with BigDaddy Scripts to set up framework integration for money functions
{:links-list}
INSTALLATION
- Open the downloaded ZIP product file and drop the folder in it somewhere in your resources folder.
- Add your product key (get it here) to the
settings.inifile - Add
start BigDaddy-HUDto yourserver.cfg.
If you enable money or job information, configure the integrations below and start their provider resources before the HUD. Set showRadio=false if you do not use PMA-Voice.
DO NOT RENAME THE FOLDER.
If you change the name of the folder it will not function correctly so leave the name as it is.
{:is-danger}
POSTALS
The resource loads postals.json by name in the client code. Replace its contents with your postal data, but keep the filename exactly postals.json and keep it listed in fxmanifest.lua. Changing only the manifest does not change the filename the HUD loads.
Use an array of postal entries with a numeric code stored as a string and x/y coordinates:
[
{ "code": "100", "x": 123.45, "y": -678.90 },
{ "code": "101", "x": 234.56, "y": -789.01 }
]
The nearest-postal display and exports convert codes to integers, so use numeric codes. Leading zeroes are removed from returned values.
For a Sonoran CAD postal integration that uses nearestPostalResourceName in config_postals.lua, point it to "BigDaddy-HUD". The HUD provides the client export getPostal for nearest-postal lookups.
CONFIGURATION
NOTE: I recommend leaving the compass, radar, speed, status and radio options enabled and let the user control what they want to see or don't want to see. They have a menu to configure what their screen has on it.
| SETTING | DEFAULT | DESCRIPTION |
|---|---|---|
| [licensing] | ||
| key1 | none | This is where you put your product key |
| [settings] | ||
| showStatus | true | Enables health, armor, and stamina/underwater status. Hunger, thirst, and stress require the Big Daddy state-bag integration described below. |
| statusOffset | 4.2%,.5% | Percentage of screen from left, bottom (respectively) to place status icons |
| showRadio | true | PMA-Voice users - shows the voice meter (shows voice distance and talking status) IF YOU DO NOT USE PMA-VOICE, SET THIS TO FALSE |
| hideRadarOnFoot | false | Hides the Minimap when not in a vehicle |
| currentVolume | 2 | Initial legacy voice-range value. The active meter uses PMA-Voice talking-mode events and starts at mode 2. |
| radioVolumeKey | f11 | Present in the supplied file, but unused by the current client. Configure proximity controls in PMA-Voice. |
| radioOffset | 2%,.5% | Percentage of screen from left, bottom (respectively) to place radio icon |
| useMoney | false | Whether to use money integrated with the HUD (CONFIGURE IN SERVER.LUA) |
| moneyOffset | 95%,20% | Percentage of screen from left, bottom (respectively) to place money icons |
| showJob | false | Enables the job display using a client export from another resource. |
| jobExportResourceName | BigDaddy-DutyRoster | Resource providing the job export. |
| jobExportName | GetMyJob | Client export to call; it must return the job name as a string. |
| jobOffset | 95%,5% | Percentage of screen from left, bottom (respectively) to place job information. |
| ultrawideSupport | true | Allow processing for ultrawide monitor displays |
| showCompass | true | Enables the large compass and location display near the top of the screen, and the location-update loop shared with the radar compass. Leave this enabled when using showRadarCompass. |
| compassFollowGameplayCam | true | Does the compass follow the gameplay cam or character direction |
| compassOffset | 50%,86% | Percentage of screen from left, bottom (respectively) to place compass icons |
| compassBGAlpha | .2 | Compass background opacity, from 0 (transparent) to 1 (opaque). |
| compassAlpha | 1 | Opacity of the entire compass, from 0 (invisible) to 1 (fully visible). |
| hideCompassOnFoot | false | When true, hides the radar compass on foot and hides the large compass unless showCompassOnFoot=true. |
| showCompassOnFoot | false | Keeps the large compass visible on foot when hideCompassOnFoot=true. With hideCompassOnFoot=false, this does not force the compass to hide. |
| showRadarCompass | true | Enables direction, street, and zone information next to the radar/minimap. Requires showCompass=true for updates. |
| radarCompassOffset | 16%,12% | Percentage of screen from left, bottom (respectively) to place radar compass display |
| showSpeed | true | Show the text only speedometer |
| speedUnit | MPH | Use exactly MPH for miles per hour or KM/H for kilometers per hour. The code uses kilometers per hour for any value other than MPH. |
| speedOffset | 16.5%,6% | Percentage of screen from left, bottom (respectively) to place speedtext |
| speedColor | 0,200,0 | Color of speedometer text (R,G,B) |
| showAOP | false | Show AOP text |
| aopOffset | 16.5%,.1% | Percentage of screen from left, bottom (respectively) to place AOP text |
| aopColor | 162, 233, 252 | Color of AOP text (R,G,B) |
| aopPermissionUseAce | true | Present in the supplied file, but not read by the current code. See the permission note below. |
| aopPermission | command | ACE name checked by the server's permission-query handler. The client does not call that handler in the reviewed source; see below. |
| defaultAOP | "State Wide" | Present in the supplied file, but not read. The server initializes AOP to State Wide in code. |
| showTime | true | Show the clock text |
| timeOffset | 16.5%,3.2% | Percentage of screen from left, bottom (respectively) to place time text |
| useRealTime | false | If true, uses the player's computer local time; if false, uses game time. |
| color1 | 255,170,0 | Main color of the hud (R,G,B) |
| color2 | 200, 200, 200 | Secondary color of the HUD (R,G,B) |
| postalOffset | 21%,3.2% | Percentage of screen from left, bottom (respectively) to place nearest postal text |
| usePostalRouting | true | Allow the /postal command |
| framework | none | Client status integration. Only bigdaddy currently activates hunger, thirst, and stress updates; other values leave those updates inactive. This is separate from framework in server.lua. |
Leave the supplied DesyncKey unchanged.
Framework and money integration
To display cash and bank balances, set useMoney=true and select your money framework at the top of server.lua. That file defaults to framework = 'bigdaddy' and has branches for bigdaddy, qb, esx, nd, nat, and custom. Implement your own money lookup in the custom branch if needed. The framework value in settings.ini does not select the money provider.
AOP permissions
/setaop command is registered when showAOP=true and the startup permission allows it. It uses the UseAcePermissions setting (fallback false) and AcePermission (fallback command). Setting UseAcePermissions=true makes /setaop registration depend on that ACE permission; the rest of the HUD still starts.
COMMANDS
| COMMAND | Arguments | INFO |
|---|---|---|
| /hudoptions | none | Opens the HUD Options menu. Features disabled in the server configuration have disabled menu options. Player preferences are saved locally. If BigDaddy-Speedometer is already started when the HUD initializes, the menu also includes its visibility and graphical/text options. |
| /hidehud | none | Toggles the HUD and minimap for screenshots, and sends a visibility event to BigDaddy-Speedometer. |
| /postal | [postalCode] | Creates a route to an exact code in postals.json. Run without an argument to cancel an existing route. Requires usePostalRouting=true. Everyone in the same vehicle receives the route or cancellation; on foot, it affects only the player issuing the command. Routes clear within 100 units of the destination. |
| /setaop | none | Opens an on-screen keyboard to enter the AOP (up to 30 characters), then broadcasts the new AOP to players. Requires showAOP=true and the startup permission flag. See the permission note above. |
Keybinds
| Key | INFO |
|---|---|
| [Z] or DPAD DOWN | Brings up the money display for a few seconds (if enabled) |
EXPORTS
These are client exports, available after the HUD initializes. Export names are case-sensitive.
| Export | Arguments | Returns / behavior |
|---|---|---|
getPostal |
none | Nearest postal to the player as a numeric string. Returns "0" if the selected code cannot be parsed as an integer. |
getPostalAtCoords |
coordinates (vector3) |
Nearest postal to the supplied coordinates, using the same numeric-string conversion. Distance uses only X and Y. |
HideHud |
hide (boolean) |
true hides the HUD and minimap; false restores them. Also sends a visibility event to BigDaddy-Speedometer. |
local postal = exports['BigDaddy-HUD']:getPostal()
local postalAtCoords = exports['BigDaddy-HUD']:getPostalAtCoords(vector3(123.45, -678.90, 30.0))
exports['BigDaddy-HUD']:HideHud(true)
exports['BigDaddy-HUD']:HideHud(false)