Standalone
Agency-Notify
Advanced notification system with two visual styles (V1 Classic and V2 Ultra) switchable per player, featuring an in-game settings menu for customizing position, sound, color, size, and duration. Includes AgencyAI smart notification intelligence with priority detection, spam protection, auto-duration, and database persistence via oxmysql. 14 languages supported.

01 Configuration
Complete config.lua for Agency-Notify. All options documented via inline comments.
-- ============================================================
-- Agency Notify | v2.0 - Config
-- ============================================================
Config = {}
-- If true, player preferences are saved to and loaded from the database.
-- Requires oxmysql. Set to false to disable all DB usage.
-- When false, all players always start with the default settings below.
Config.UseDatabase = true
-- The command players use to open the in-game settings menu.
Config.MenuCommand = 'anotify'
-- Language for the settings menu UI.
-- Supported: en, de, fr, es, pt, nl, pl, it, tr, cs, ro, sv, da, no
Config.Locale = 'en'
-- AgencyAI - Smart notification intelligence.
-- Analyzes notifications in real-time: auto-priority detection, spam protection,
-- smart duration scaling based on text length, and duplicate grouping.
Config.AgencyAI = {
enabled = true, -- Master toggle for all AI features
smartPriority = true, -- Auto-detect priority from keywords (error/warning = urgent)
spamProtection = true, -- Suppress duplicate notifications within cooldown window
spamCooldown = 2000, -- Cooldown in ms before same notification can repeat
smartDuration = true, -- Auto-scale duration based on text length
minDuration = 3000, -- Minimum duration in ms
maxDuration = 15000, -- Maximum duration in ms
charsPerSecond = 12, -- Reading speed used for smart duration calculation
}
-- Default settings applied for every player.
-- These are also the fallback when UseDatabase = false.
Config.Defaults = {
position = 'center-right', -- top-right | top-left | center-right | center-left | bottom-right | bottom-left
durationModifier = 1.0, -- 0.5 = half length, 1.0 = normal, 2.0 = double length
accentColor = 'blue', -- blue | orange | purple | pink | green | red | cyan | gold
notifScale = 1.0, -- 0.6 = small, 1.0 = normal, 1.5 = large
notifStyle = 'v2' -- v1 = classic singularity, v2 = ultra modern
}