Skip to Content
NotifyTroubleshooting

Troubleshooting

Check the consoles first

For a client export, open F8 and look for a line beginning [elvisuals_notify]. For a server export, check the server console. Validation messages include the calling resource and the invalid field.

If a Lua call produces no useful output, confirm that it uses the colon form:

exports.elvisuals_notify.notify({ ... }) -- incorrect exports['elvisuals_notify']:notify({ ... }) -- correct

Nothing appears

  1. Confirm ensure elvisuals_notify is present in server.cfg.
  2. Confirm the folder is named exactly elvisuals_notify.
  3. Run refresh and restart elvisuals_notify in the server console.
  4. Check both consoles for a validation or startup error.

The resource should start before scripts that call its exports.

The protected resource does not start

An asset-escrow verification error normally points to one of these issues:

  • the asset grant and the server key belong to different Cfx.re accounts;
  • the resource folder was renamed;
  • the server artifact is outdated.

Confirm the grant in Cfx.re Portal → Granted Assets  and keep the original folder name.

A config.lua change has no effect

Saved editor values in settings.json override matching values from config.lua. Open /evset and press Reset, or remove settings.json and restart the resource.

If there are no saved overrides, run:

refresh restart elvisuals_notify

The editor will not open

The default command needs this ACE:

add_ace group.admin command.evset allow

Check that your player belongs to the granted principal. Also confirm that Config.AdminCommand = 'evset' and that the resource was restarted after changing it.

Save or Reset does not work

  • The server repeats the Config.AdminAce check for every request.
  • Config.AdminAce = false allows local preview but deliberately disables persistent saves.
  • The server process must be able to write to the resource folder.
  • Save failures and refused requests are printed in the server console.

Reset clears the saved overrides. It may leave an empty settings.json, which is valid and has the same effect as no saved file.

Every notification appears twice

The framework’s renderer and El Visuals are both receiving the same call. Common causes are:

  • a framework redirect is installed while Config.CaptureOxLib or Config.CaptureFramework is also enabled;
  • a capture setting is enabled without disabling the framework’s original renderer;
  • the same script calls both its framework notification and the El Visuals export.

Use one route. The recommended setup is the redirect from Integrations with both capture settings left false.

Changes to theme.css do not appear

Reload the resource metadata and restart it:

refresh restart elvisuals_notify

If the NUI is still cached, reconnect once after the restart. Also confirm that you edited elvisuals_notify/web/theme.css, not a copied preview file.

Checklist items or progress are missing

Both features require a persistent panel:

persistent = true, variant = 'panel',

items and progress are ignored on a toast, and F8 prints a warning.

The waiting badge appears too early

Config.MaxVisible is a hard card-count limit. Set it to 0 if available height should be the only limit. Increase Config.MaxScreenShare if the stack may use more of the screen.

Card height, active panels, the text prompt, and Config.Reserve can all reduce the available stack space.

A notification is cropped

The card is taller than the space allowed by Config.MaxScreenShare or the current reserved areas. Increase the limit, shorten the content, move the stack, or adjust Config.Reserve.

Notifications cover another HUD element

Reserve the screen rectangle occupied by the other element:

Config.Reserve = { { x = 0.0, y = 0.45, w = 0.22, h = 0.12 }, }

The values are screen fractions from 0 to 1. Config.Offset can be used for a smaller global nudge.

The UI is too small or too large

Check Config.Scale and the matching Config.ScaleByWidth row. Config.IconScale changes icons without changing the card layout.

If a scale was saved from the editor, it overrides the resolution table. Reset saved settings before testing ScaleByWidth changes.

Third-party notifications still use the old style

Installing this resource does not intercept another framework’s functions automatically. Follow the integration guide.

If an integration worked before a framework update, check whether the update replaced the edited function and reapply the redirect to the new version.

Still stuck

Include the following in your support request:

  • resource version;
  • expected and actual behavior;
  • relevant server-console and F8 output;
  • your config.lua and, if present, settings.json;
  • framework name and version, if the issue involves an integration.

Remove passwords, license keys, and other credentials before sharing configuration or console output.