← modperf · analyzed mods

SinCity_Serverpack_3_Test

Workshop 3755741411 · mod updated 2026-10-02 · analyzed 2026-10-03 06:49 UTC · history · 79 script files

Stall risks
None found

No file I/O on hot paths, no timers created per event, no per-player-per-frame hooks.

Compatibility
1 by design

1 chain break, all on specific classes the mod replaces wholesale — matters only if another mod patches the same classes.

Structural footprint 1.1
A
1 by design
Heavier than 82% of 328 scripted mods analyzed.

0.0307% of each server frame at 100 players (0.307 ms/s). Counts hook dispatch and timers only, not what the hooks do inside. Methodology.

Where this mod sits

Structural load of the 328 scripted mods analyzed, lightest on the left. This mod's bar is lit; 25 others share it. Ranked list.

20
40
60
  • 24 mods
    0.0000022 to 0.0000046 ms/s · grade A
  • 7 mods
    0.0000046 to 0.00001 ms/s · grade A
  • 1 mod
    0.00001 to 0.000022 ms/s · grade A
  • 1 mod
    0.000022 to 0.000046 ms/s · grade A
  • 37 mods
    0.0001 to 0.00022 ms/s · grade A
  • 26 mods
    0.00022 to 0.00046 ms/s · grade A
  • 33 mods
    0.00046 to 0.001 ms/s · grade A
  • 22 mods
    0.001 to 0.0022 ms/s · grade A
  • 13 mods
    0.0022 to 0.0046 ms/s · grade A
  • 10 mods
    0.0046 to 0.01 ms/s · grade A
  • 5 mods
    0.01 to 0.022 ms/s · grade A
  • 18 mods
    0.022 to 0.046 ms/s · grade A
  • 17 mods
    0.046 to 0.1 ms/s · grade A
  • 41 mods
    0.1 to 0.22 ms/s · grade A
  • This mod
  • 28 mods
    0.46 to 1 ms/s · grade A
  • 8 mods
    1 to 2.2 ms/s · grade A to B
  • 10 mods
    2.2 to 4.6 ms/s · grade B
  • 1 mod
    4.6 to 10 ms/s · grade B to C
A316
B11
C1
D0
E0
ms/s, log scale: each labelled step is ten times the one before. Letter grade and mods holding it below the axis.
Where the load comes from

Repeating timers carry 91% of this mod's structural load. 0.307 ms/s in all.

Every-frame hooks · 8.1%
1 hook · 0.025 ms/s
Event hooks · 0.8%
13 hooks · 0.0026 ms/s
Lifecycle hooks · <0.1%
3 hooks · 0.000006 ms/s
91%Repeating timers · 91%
2 timers · 0.28 ms/s
Every-frame hooksrun every server frame 1 hook 0.025 ms/s 8.1% ActionFishingNew.OnUpdate
Event hooksrun when something happens: an inventory move, a hit, an action 13 hooks 0.0026 ms/s 0.8% ActionCheckPulse.ActionCondition, ActionCheckPulseTarget.ActionCondition, ActionUnpackBox.ActionCondition and 8 more
Lifecycle hooksrun when an entity is created, loaded or deleted 3 hooks 0.000006 ms/s <0.1% CarScript.EEDelete, MissionServer.OnClientReadyEvent, MissionServer.OnInit
Repeating timersstay in the timer queue, which is walked every frame 2 timers 0.28 ms/s 91% every 1 s, every 700 ms

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.

Chain breaks, by consequence

1 override that skip super(), ranked by how much they can affect. On any server a break replaces vanilla's behaviour on that method and silences every earlier-loaded mod hooking it.

By design
Leaf class · NotificationUI
NotificationUI replaced on 1 method · 1 override

RemoveNotification

Only this class is affected. Matters only if another mod in your stack patches the same class.

1 classNotificationUI
1 locationSinCityNotify.pbo::Scripts\3_Game\SCNotifyUI.c:70

Where this mod runs often

Hooks on per-frame and high-rate surfaces, with what their bodies call. Body work, not the hook itself, is what costs frame time.

OnUpdate on ActionFishingNew
every server frame
no I/O, timers or RPC
ActionCondition × 3 classes
per event
no I/O, timers or RPC super() on some paths
CanDisplayAttachmentSlot on CarScript
per event
no I/O, timers or RPC super() on some paths
CanReceiveItemIntoCargo on CarScript
per event
no I/O, timers or RPC super() on some paths
EEHitBy on PlayerBase
per event
no I/O, timers or RPC
IsInventoryVisible on CarScript
per event
no I/O, timers or RPC super() on some paths
OnRPC on DayZGame
per event
no I/O, timers or RPC super() on some paths
OnRPC on PlayerBase
per event
no I/O, timers or RPC
OnVariablesSynchronized on CarScript
per event
no I/O, timers or RPC
SetActions on PlayerBase
per event
no I/O, timers or RPC

Other findings

What this report can tell you

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.

What it cannot

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 65 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.

methodsurfaceserversuper()where
ActionCheckPulse.ActionCondition T2 yes conditional QuestTrader.pbo::scripts\4_World\QuestTrader\ActionInteractTrader.c:3
ActionCheckPulseTarget.ActionCondition T2 yes conditional QuestTrader.pbo::scripts\4_World\QuestTrader\QT_ActionOpenQuests.c:3
ActionConstructor.RegisterActions — yes ✓ QuestTrader.pbo::scripts\4_World\QuestTrader\ActionConstructor.c:3
ActionConstructor.RegisterActions — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\SinFishing_Book.c:3
ActionConstructor.RegisterActions — yes ✓ SliverCollect.pbo::scripts\4_World\actions\sl_actionconstructor.c:3
ActionConstructor.RegisterActions — yes ✓ SliverSpeedloader.pbo::scripts\4_World\actions\actionconstructor.c:3
ActionFishingNew.OnStartClient — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_fish_preload_hook.c:3
ActionFishingNew.OnUpdate T0 yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_fish_preload_hook.c:8
ActionFishingNew.OnStartServer — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_fish_preload_hook.c:13
ActionUnpackBox.ActionCondition T2 yes conditional SliverCollect.pbo::scripts\4_World\actions\sl_action_unpackbox.c:17
ActionUnpackBox.OnStartClient — yes ✓ SliverCollect.pbo::scripts\4_World\actions\sl_action_unpackbox.c:28
ActionUnpackBox.OnFinishProgressServer — yes conditional SliverCollect.pbo::scripts\4_World\actions\sl_action_unpackbox.c:48
ActionUnpackBoxCB.CreateActionComponent — yes conditional SliverCollect.pbo::scripts\4_World\actions\sl_action_unpackbox.c:3
CarScript.OnVariablesSynchronized T2 yes ✓ SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:245
CarScript.EEDelete T3 yes ✓ SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:251
CarScript.CanDisplayCargo — yes conditional SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:257
CarScript.CanDisplayAttachmentSlot T2 yes conditional SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:264
CarScript.CanDisplayAttachmentCategory — yes conditional SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:271
CarScript.CanDisplayAnyAttachmentSlot — yes conditional SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:278
CarScript.IsInventoryVisible T2 yes conditional SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:285
CarScript.CrewCanGetThrough — yes conditional SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:292
CarScript.IsAreaAtDoorFree — yes conditional SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:299
CarScript.CanReceiveItemIntoCargo T2 yes conditional SinCityCarEvent.pbo::Scripts\4_World\CarEventVehicle.c:321
ChernarusPlusData.InitYieldBank — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_fish_worldreg.c:3
ContaminatedArea_Local.InitZone — yes ✓ SinCityCarEvent.pbo::Scripts\4_World\CarEventToxicArea.c:12
DayZGame.OnRPC T2 yes conditional QuestTrader.pbo::scripts\3_Game\QuestTrader\QT_RPCDispatch.c:17
DayZGame.OnRPC T2 yes conditional SinFishing.pbo::scripts\3_Game\SinFishing\SinFishing_RPCDispatch.c:27
EnochData.InitYieldBank — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_fish_worldreg.c:29
Hologram.UpdateHologram — yes ✓ SliverCollect.pbo::scripts\4_World\entities\sl_hologram.c:3
Hologram.IsColliding — yes conditional SliverCollect.pbo::scripts\4_World\entities\sl_hologram.c:31
KillfeedMessage.PostProcess — yes ✓ SinCityCarEvent.pbo::Scripts\3_Game\CarEventKillfeed.c:47
KillfeedMessage.SpawnMessageItem — yes conditional SinCityCarEvent.pbo::Scripts\3_Game\CarEventKillfeed.c:71
LBPositionManager_.LoadDefault — yes ✓ SinCityNotify.pbo::Scripts\4_World\SCNotifyLBPosition.c:3
MapMenu.LoadMapMarkers — yes ✓ SinCityCarEvent.pbo::Scripts\5_Mission\CarEventMission.c:84
MissionGameplay.OnInit T3 yes ✓ QuestTrader.pbo::scripts\5_Mission\QuestTrader\QT_MissionHooks.c:60
MissionGameplay.OnEvent — yes conditional QuestTrader.pbo::scripts\5_Mission\QuestTrader\QT_MissionHooks.c:74
MissionGameplay.OnUpdate T0 yes ✓ QuestTrader.pbo::scripts\5_Mission\QuestTrader\QT_MissionHooks.c:121
MissionGameplay.OnKeyPress — yes ✓ QuestTrader.pbo::scripts\5_Mission\QuestTrader\QT_MissionHooks.c:341
MissionGameplay.OnInit T3 yes ✓ SinCityCarEvent.pbo::Scripts\5_Mission\CarEventMission.c:102
MissionGameplay.OnUpdate T0 yes ✓ SinCityNotify.pbo::Scripts\5_Mission\SCNotifyLB.c:6
MissionGameplay.OnInit T3 yes ✓ SinFishing.pbo::scripts\5_Mission\SinFishing\SinFishing_ClientRPC.c:108
MissionGameplay.OnMissionStart T3 yes ✓ SinFishing.pbo::scripts\5_Mission\SinFishing\SinFishing_SpikeWatch.c:3
MissionServer.OnInit T3 yes ✓ SinCityNotify.pbo::Scripts\5_Mission\SCNotifyMission.c:3
MissionServer.OnClientReadyEvent T3 yes ✓ SinCityNotify.pbo::Scripts\5_Mission\SCNotifyMission.c:9
ModItemRegisterCallbacks.RegisterHeavy — yes ✓ SinCityCarEvent.pbo::Scripts\4_World\ModItemRegisterCallbacks.c:4
ModItemRegisterCallbacks.RegisterHeavy — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_tigerhai_anim.c:3
ModItemRegisterCallbacks.RegisterOneHanded — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_tigerhai_anim.c:10
ModItemRegisterCallbacks.RegisterOneHanded — yes ✓ SliverCollect.pbo::scripts\4_World\entities\Animations.c:3
ModItemRegisterCallbacks.RegisterOneHanded — yes ✓ SliverSpeedloader.pbo::scripts\4_World\entities\Animations.c:3
NotificationUI.RemoveNotification — yes ✗ none SinCityNotify.pbo::Scripts\3_Game\SCNotifyUI.c:70
NotificationUI.Update — yes ✓ SinCityNotify.pbo::Scripts\3_Game\SCNotifyUI.c:383
NotificationUI.AddNotification — yes conditional SinCityNotify.pbo::Scripts\3_Game\SCNotifyUI.c:500
PlayerBase.SetActionsRemoteTarget — yes ✓ QuestTrader.pbo::scripts\4_World\QuestTrader\QT_PlayerActions.c:3
PlayerBase.SetActions T2 yes ✓ QuestTrader.pbo::scripts\4_World\QuestTrader\QT_PlayerBase.c:3
PlayerBase.OnRPC T2 yes ✓ SinCityNotify.pbo::Scripts\4_World\SCNotifyPlayer.c:3
PlayerBase.EEHitBy T2 yes ✓ SliverZMB.pbo::scripts\4_World\fungushitplayer.c:27
PlayerBase.OnRPC T2 yes ✓ SliverZMB.pbo::scripts\4_World\fungushitplayer.c:91
PluginRecipesManagerBase.RegisterRecipies — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_fish_prepare.c:347
PrepareWalleyePollock.CanDo — yes conditional SinFishing.pbo::scripts\4_World\SinFishing\sl_fish_prepare.c:333
QT_QuestLog.Init — yes ✓ SinFishing.pbo::scripts\5_Mission\SinFishing\SinFishing_QuestLogTab.c:16
QT_QuestLog.OnClick — yes conditional SinFishing.pbo::scripts\5_Mission\SinFishing\SinFishing_QuestLogTab.c:135
QT_QuestLog.OnMouseWheel — yes conditional SinFishing.pbo::scripts\5_Mission\SinFishing\SinFishing_QuestLogTab.c:152
SakhalData.InitYieldBank — yes ✓ SinFishing.pbo::scripts\4_World\SinFishing\sl_fish_worldreg.c:55
VPPAdminHud.DefineButtons — yes ✓ QuestTrader.pbo::scripts\5_Mission\QuestTrader\QT_VPPBridge.c:3
VPPAdminHud.DefineButtons — yes ✓ SinCityCarEvent.pbo::Scripts\5_Mission\MenuCarEvent.c:3
Dispatch surfaces and timers the grade prices
surfacetierrate (Hz)rate sourcems/s
ActionFishingNew.OnUpdateT0 1000.0measured0.0248
DayZGame.OnRPCT2 8.0placeholder0.0002
ActionCheckPulse.ActionConditionT2 8.0placeholder0.0002
ActionCheckPulseTarget.ActionConditionT2 8.0placeholder0.0002
PlayerBase.SetActionsT2 8.0placeholder0.0002
CarScript.OnVariablesSynchronizedT2 8.0placeholder0.0002
CarScript.CanDisplayAttachmentSlotT2 8.0placeholder0.0002
CarScript.IsInventoryVisibleT2 8.0placeholder0.0002
CarScript.CanReceiveItemIntoCargoT2 8.0placeholder0.0002
PlayerBase.OnRPCT2 8.0placeholder0.0002
DayZGame.OnRPCT2 8.0placeholder0.0002
ActionUnpackBox.ActionConditionT2 8.0placeholder0.0002
PlayerBase.EEHitByT2 8.0placeholder0.0002
PlayerBase.OnRPCT2 8.0placeholder0.0002
CarScript.EEDeleteT3 0.1placeholder0.0000
MissionServer.OnInitT3 0.1placeholder0.0000
MissionServer.OnClientReadyEventT3 0.1placeholder0.0000

Repeating timers

period (ms)residency ms/sfiring ms/swhere
7000.1400 0.000035SliverSpeedloader.pbo::scripts\4_World\entities\sl_speeloader.c:58
10000.1400 0.000025SinCityNotify.pbo::Scripts\4_World\SCNotifyServer.c:192

Includes 0.003 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.

ID_Vehicle_Skin_Sliver.pbo

  • ID_Vehicle_Skin_Sliver requiredVersion 0.1 — no requiredAddons

QuestTrader.pbo

  • QuestTrader requiredVersion 0.1 — requires DZ_Data, DZ_Scripts, DZM_VPPAdminToolsScripts

SinCityCarEvent.pbo

  • SinCityCarEvent requiredVersion 0.1 — requires DZ_Data, DZ_Scripts, JM_CF_Scripts, DZM_VPPAdminToolsScripts, DZ_Vehicles_Wheeled, DZ_Vehicles_Parts, DZ_Sounds_Effects

SinCityNotify.pbo

  • SinCityNotify requiredVersion 0.1 — requires DZ_Data, DZ_Scripts, LBmaster_Groups

SinFishing.pbo

  • SinFishing_Books requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Books
  • SinFishing requiredVersion 0.1 — requires DZ_Data, DZ_Scripts, QuestTrader
  • SinFishing_Fish requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Food, DZ_Gear_Cooking, DZ_Gear_Consumables
  • SinFishing_Fillets requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Cooking, DZ_Gear_Consumables, DZ_Gear_Food

SliverCollect.pbo

  • SliverCollectCoins requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Containers
  • sl_collectbox requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Containers
  • slivercollect requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Medical

SliverSpeedloader.pbo

  • SliverSpeedloader requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Containers, DZ_Weapons_Ammunition

SliverZMB.pbo

  • Sliver requiredVersion 0.1 — no requiredAddons
  • SliverZMB_Demon requiredVersion 0.1 — requires DZ_Characters_Zombies, SliverZMB_Fungus
  • SliverZMB_Demon_Sounds requiredVersion 0.1 — requires DZ_Data, DZ_Sounds_Effects
  • SliverZMB_Executioner requiredVersion 0.1 — requires DZ_Characters_Zombies, SliverZMB_Fungus
  • SliverZMB_executioner_Sounds requiredVersion 0.1 — requires DZ_Data, DZ_Sounds_Effects
  • SliverZMB_Femalesoldier requiredVersion 0.1 — requires DZ_Characters_Zombies
  • SliverZMB_Fungus requiredVersion 0.1 — requires DZ_Characters_Zombies
  • SliverZMB_Fungus_Sounds requiredVersion 0.1 — requires DZ_Data, DZ_Sounds_Effects
  • sl_zmb requiredVersion 0.1 — requires DZ_Animals
  • SliverZMB_Hellhound_Parts requiredVersion 0.1 — requires DZ_Data
  • SliverZMB_Necro requiredVersion 0.1 — requires DZ_Characters_Zombies, SliverZMB_Fungus
  • SliverZMB_Necro_Sounds requiredVersion 0.1 — requires DZ_Data, DZ_Sounds_Effects
  • SliverZMB_NightHunterZombie requiredVersion 0.1 — requires DZ_Characters_Zombies, SliverZMB_Fungus
  • SliverZMB_NightHunterZombie_Parts requiredVersion 0.1 — requires DZ_Data
  • sl_zmb_rottendog requiredVersion 0.1 — requires DZ_Animals, sl_zmb

Sliver_Mod.pbo

  • sl_sneakers requiredVersion 0.1 — requires DZ_Data, DZ_Characters
  • Sliver_Mods requiredVersion 0.1 — no requiredAddons
  • GoldenFishingRod requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Tools

census 1.1 · findings 1.1 · hash ca27999817e78033