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({ ... }) -- correctNothing appears
- Confirm
ensure elvisuals_notifyis present inserver.cfg. - Confirm the folder is named exactly
elvisuals_notify. - Run
refreshandrestart elvisuals_notifyin the server console. - 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_notifyThe editor will not open
The default command needs this ACE:
add_ace group.admin command.evset allowCheck 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.AdminAcecheck for every request. Config.AdminAce = falseallows 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.CaptureOxLiborConfig.CaptureFrameworkis 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_notifyIf 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.luaand, 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.