← modperf · analyzed mods

zm workbench

🔧 ZM Workbench - Advanced Crafting System ⚠️ THIS MOD IS CURRENTLY IN BETA - Expect bugs and changes! 🤖 Disclaimer: AI has been heavily used in the development of this mod. Description ZM Workbench adds a comprehensive crafting system to DayZ with modular workbenches, advanced recipe management, and intuitive inventory tracking. Build, craft, and create with an immersive progression system! ✨ Features 🛠️ Two… (more)

🔧 ZM Workbench - Advanced Crafting System ⚠️ THIS MOD IS CURRENTLY IN BETA - Expect bugs and changes! 🤖 Disclaimer: AI has been heavily used in the development of this mod. Description ZM Workbench adds a comprehensive crafting system to DayZ with modular workbenches, advanced recipe management, and intuitive inventory tracking. Build, craft, and create with an immersive progression system! ✨ Features 🛠️ Two Workbench Types Public Workbench - All modules built-in, perfect for trader zones Modular Workbench - Requires module attachments for progression-based gameplay 🔩 Attachable Modules Unlock advanced crafting by attaching modules to your workbench: Drill Press - Metal working & drilling Grinder - Sharpening, cutting & grinding Vice - Holding items & bending metal Soldering Station - Electronics & wire work Welding - Metal joining & repairs Sewing Machine - Fabric & leather crafting 🐦‍🔥![alt text](image-1.png) ⚡ Advanced Systems Power System - Some recipes require power to craft Module Consumables - Drill bits, grinding discs, and welding wire wear out over time Material Ping System - Find nearby tracked materials with ease Recipe Tracking - Track ingredients across your inventory Craft Queue - Queue multiple crafts Recipe Variants - One recipe can produce different colors/styles 📋 Server Customization Fully configurable recipes via JSON Enable/disable individual features Set craft times, power requirements, and consumable chances Organize recipes by categories Inn game recipes refresh if you add your self as admin in WorkbenchSettings.json add custum logo in WorkbenchSettings.json 📦 Included Items Workbench Kit (for placing workbenches) Grinding Discs Drill Bits Welding Wire Soldering Tips Spray Cans (7 colors) 🛠️ Tools Other tools like handsaw, hammer or screwdriver can be used in recipes Tools must be stored inside the workbench to be used for crafting Tools take damage with each craft (configurable damage rates) Server admins can add custom tools via the config ⚠️ Beta Notice This mod is in active development. Please report any bugs or issues in the comments or on my Discord. Features may change, and recipes may be adjusted based on feedback. Known limitations: Some features may change in future updates � Server Installation Add CF and this mod to your server's mod list Configure recipes in $profile:WorkbenchMod/recipes.json Add workbenches/items to your trader or loot tables Restart your server 📝 Requirements DayZ Standalone CF (Community Framework) - Steam Workshop Link 💬 Feedback & Support Your feedback helps improve this mod! Please leave comments with: Bug reports Feature suggestions Balance feedback Thank you for testing the beta! 🙏 No repacks!

Workshop 3643931184 · mod updated 2026-07-05 · analyzed 2026-10-07 15:38 UTC · history · 74 script files

Mechanics Workshop tags, chosen by the author

Stall risks
None found

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

Compatibility
Chain-safe

Every server-visible override preserves its chain.

Structural footprint 1.1
A
clean
Heavier than 91% of 328 scripted mods analyzed.

0.0725% of each server frame at 100 players (0.725 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; 27 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
  • 26 mods
    0.22 to 0.46 ms/s · grade A
  • This mod
  • 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 97% of this mod's structural load. 0.725 ms/s in all.

Every-frame hooks · 3.4%
1 hook · 0.025 ms/s
Event hooks · <0.1%
1 hook · 0.0002 ms/s
Lifecycle hooks · <0.1%
2 hooks · 0.000004 ms/s
97%Repeating timers · 97%
5 timers · 0.7 ms/s
Every-frame hooksrun every server frame 1 hook 0.025 ms/s 3.4% MissionServer.OnUpdate
Event hooksrun when something happens: an inventory move, a hit, an action 1 hook 0.0002 ms/s <0.1% PlayerBase.SetActions
Lifecycle hooksrun when an entity is created, loaded or deleted 2 hooks 0.000004 ms/s <0.1% MissionServer.OnInit, MissionServer.OnMissionFinish
Repeating timersstay in the timer queue, which is walked every frame 5 timers 0.7 ms/s 97% 4 × every 1 s, every 3 s

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.

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 MissionServer
every server frame
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 32 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
ActionConstructor.RegisterActions — yes ✓ WorkbenchMod.pbo::Scripts\4_World\Classes\UserActionsComponent\ActionConstructor.c:4
ActionTargetsCursor.GetItemDesc — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:638
ActionTargetsCursor.SetItemDesc — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:673
ActionTargetsCursor.Update — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:737
ExpansionMarketMenuItem.OnSetView — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\ExpansionMarketMenuItem_Workbench.c:13
ExpansionMarketMenuItem.UpdateView — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\ExpansionMarketMenuItem_Workbench.c:92
Hologram.GetProjectionName — yes conditional WorkbenchMod.pbo::Scripts\4_World\Entities\Hologram\zm_WorkbenchHologram.c:15
Hologram.UpdateHologram — yes ✓ WorkbenchMod.pbo::Scripts\4_World\Entities\Hologram\zm_WorkbenchHologram.c:84
Hologram.RefreshVisual — yes conditional WorkbenchMod.pbo::Scripts\4_World\Entities\Hologram\zm_WorkbenchHologram.c:113
Hologram.EvaluateCollision — yes conditional WorkbenchMod.pbo::Scripts\4_World\Entities\Hologram\zm_WorkbenchHologram.c:124
Hologram.EvaluateCollision — yes ✓ WorkbenchMod.pbo::Scripts\4_World\System\Hologram.c:5
Hologram.GetProjectionRadius — yes ✓ WorkbenchMod.pbo::Scripts\4_World\System\Hologram.c:22
Icon.Refresh — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:515
Icon.UpdateInterval — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:520
Icon.HideOwnedTooltip — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:527
InspectMenuNew.SetItem — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:501
InventoryMenu.OnHide — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:771
ItemManager.ShowTooltip — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:781
ItemManager.HideTooltip — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:791
MissionGameplay.OnMissionStart T3 yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\mission\MissionGameplay.c:9
MissionGameplay.OnKeyPress — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\mission\MissionGameplay.c:296
MissionGameplay.OnUpdate T0 yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\mission\MissionGameplay.c:362
MissionGameplay.CreateScriptedMenu — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\mission\MissionGameplay.c:522
MissionServer.OnInit T3 yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\mission\MissionServer.c:8
MissionServer.OnMissionFinish T3 yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\mission\MissionServer.c:423
MissionServer.OnUpdate T0 yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\mission\MissionServer.c:461
ModItemRegisterCallbacks.RegisterHeavy — yes ✓ WorkbenchMod.pbo::Scripts\4_World\ModItemRegisterCallbacks.c:5
PlayerBase.SetActions T2 yes ✓ WorkbenchMod.pbo::Scripts\4_World\Entities\ManBase\PlayerBase.c:7
PluginRecipesManager.RegisterRecipies — yes ✓ WorkbenchMod.pbo::Scripts\4_World\Classes\Recipes\PluginRecipesManagerBase.c:5
SlotsIcon.Refresh — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:568
SlotsIcon.UpdateInterval — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:573
SlotsIcon.HideOwnedTooltip — yes ✓ WorkbenchMod.pbo::Scripts\5_Mission\GUI\TrackedInventoryMod.c:578
Dispatch surfaces and timers the grade prices
surfacetierrate (Hz)rate sourcems/s
MissionServer.OnUpdateT0 1000.0measured0.0248
PlayerBase.SetActionsT2 8.0placeholder0.0002
MissionServer.OnInitT3 0.1placeholder0.0000
MissionServer.OnMissionFinishT3 0.1placeholder0.0000

Repeating timers

period (ms)residency ms/sfiring ms/swhere
10000.1400 0.000025WorkbenchMod.pbo::Scripts\4_World\Entities\zm_WorkbenchBase.c:551
10000.1400 0.000025WorkbenchMod.pbo::Scripts\4_World\Entities\zm_WorkbenchBase.c:571
10000.1400 0.000025WorkbenchMod.pbo::Scripts\4_World\Entities\zm_WorkbenchBase.c:4428
10000.1400 0.000025WorkbenchMod.pbo::Scripts\4_World\Entities\zm_WorkbenchBase.c:4498
30000.1400 0.000008WorkbenchMod.pbo::Scripts\5_Mission\GUI\WorkbenchMenu.c:2013

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.

WorkbenchMod.pbo

  • WorkbenchMod requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Camping, DZ_Gear_Tools, JM_CF_Scripts
  • zm_DrillPress requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • zm_Grinder requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • zm_Kit requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • zm_Sewing requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • zm_Soldering requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • zm_SprayCans requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • WB_VehicleMarker requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • zm_Vice requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • zm_Welding requiredVersion 0.1 — requires DZ_Data, DZ_scripts
  • zm_Workbench requiredVersion 0.1 — requires DZ_Data, DZ_scripts

zmw_extrawb.pbo

  • CustomWorkbench_Mod requiredVersion 0.1 — requires DZ_Data, DZ_Scripts, zm_Workbench

census 1.1 · findings 1.1 · hash 17c6bbe837895835