Notifications
Notifications Upgrade An upgrade to the existing notification system to make it more beautiful Then I can add in to disable the sound press " ] " it should save to the client Config Per popular request via this mod we have made it possible to have it send notifications when Battle Eye Messages come through { "ConfigVersion": "1", //Version Number "EnableBattlEye": 1, //1 Enabled/0 Disabled If enabled this will… (more)
Notifications Upgrade An upgrade to the existing notification system to make it more beautiful Then I can add in to disable the sound press " ] " it should save to the client Config Per popular request via this mod we have made it possible to have it send notifications when Battle Eye Messages come through { "ConfigVersion": "1", //Version Number "EnableBattlEye": 1, //1 Enabled/0 Disabled If enabled this will Enable the Battle Eye Message Detection "StopSpam": 1, // 1 Enabled/ 0 Disabled If enabled this will prevent battle eye messages from spamming the same notification "BattlEyeIcon": "Notifications/gui/data/notifications.edds", // This is the path to the notification image to use "BattlEyeHeading": "Server Message", // This is the heading for the message "BattlEyeKeywords": [ //This is a list of key words that it will look for to know to send the message to notification system, if the message starts with "" it will remove "" from the message "Restart", "Shutdown", "" ] } To use the simple Notification Function in you own code NotificationSystem.SimpleNoticiation("You're Message Text"); You can also include more information if you wish NotificationSystem.SimpleNoticiation("You're Message Text", "The Optional title", "Notification/gui/data/notifications.edds", ARGB(240, 200, 20, 20), 10, PlayerIdentity); To change the sound for your server you will need to make mod and override the sound set modded class NotificationUI { override string NotificationSoundSet(){ return "Alert_SoundSet"; } } Discord For More support and information please visit my discord https://discord.gg/BwTp3mg Monetisation Rules Allowed to be used on monetised servers as long as you have monetisation approval from Bohemia Interactive The Notifications mod does not allows repacking. Monitoring is constant and any violation will result in a DCMA directly with Steam. To help support this mod send donation to @BRITTO (pay@britto.design)
No file I/O on hot paths, no timers created per event, no per-player-per-frame hooks.
Every server-visible override preserves its chain.
less than 0.001% of each server frame at 100 players (0.000 ms/s). Counts hook dispatch and timers only, not what the hooks do inside. Methodology.
Structural load of the 328 scripted mods analyzed, lightest on the left. This mod's bar is lit; 23 others share it. Ranked list.
Lifecycle hooks carry 81% of this mod's structural load. 0.000 ms/s in all.
1 hook · 0.000002 ms/s
| Lifecycle hooksrun when an entity is created, loaded or deleted | 1 hook | 0.000002 ms/s | 81% | MissionServer.OnInit |
Counts how often each hook is dispatched and how many timers stay alive, not what the code inside does. Some rates are order-of-magnitude estimates; the methodology lists which.
Other findings
super() only on some paths · 1 · warning
- Chat.AddInternal calls super.AddInternal() only on some paths — on the others the chain below this mod is dropped.
Notifications.pbo::scripts\5_Mission\DetectBattlEye.c:4
- Chat.AddInternal calls super.AddInternal() only on some paths — on the others the chain below this mod is dropped.
Which vanilla methods the mod hooks, which of them drop the chain, how often each hook fires, and which risky calls sit inside hot hooks.
How long hook bodies take, network cost, or engine-side load. Measured across live fleets, most server lag comes from the engine and world state, not mod script chains — a light footprint does not clear a mod of lag, and a heavy one does not convict it. Methodology.
Everything else
All 5 overrides
Surface is the dispatch tier the rubric can price (— = unpriced); server is whether the override exists on a dedicated server; super() shows whether the vanilla chain is preserved on a server.
| method | surface | server | super() | where |
|---|---|---|---|---|
Chat.AddInternal |
— | yes | conditional | Notifications.pbo::scripts\5_Mission\DetectBattlEye.c:4 |
MissionGameplay.OnMissionStart |
T3 | yes | ✓ | Notifications.pbo::scripts\5_Mission\mission\missionGameplay.c:3 |
MissionGameplay.OnUpdate |
T0 | yes | ✓ | Notifications.pbo::scripts\5_Mission\mission\missionGameplay.c:20 |
MissionServer.OnInit |
T3 | yes | ✓ | Notifications.pbo::scripts\5_Mission\mission\MissionServer.c:3 |
NotificationSystem.AddNotif |
— | yes | ✓ | Notifications.pbo::scripts\3_Game\client\notifications\notificationsystem.c:5 |
Dispatch surfaces and timers the grade prices
| surface | tier | rate (Hz) | rate source | ms/s |
|---|---|---|---|---|
MissionServer.OnInit | T3 | 0.1 | placeholder | 0.0000 |
Includes 0.000 ms/s from placeholder-rated surfaces.
Load-order constraints (CfgPatches)
What each PBO declares: its addon identity and the addons it requires to be loaded first (requiredAddons). A partial load-order signal from the mod's own metadata.
Notifications.pbo
NotificationsrequiredVersion 0.1 — requiresNotificationsDefine
NotificationsDefine.pbo
NotificationsDefinerequiredVersion 0.1 — no requiredAddons
census 1.1 · findings 1.1 · hash 85c0bd2ceec47dd8