← modperf · analyzed mods

Underground Bases

Take your DayZ survival to new depths with the Multi-Level Underground Bases Mod! This mod introduces a revolutionary concept, allowing you to build underground shelters with three distinct levels of upgrades. Three Levels of Upgrades: Journey underground to craft your covert underground base across three distinct levels. Each level serves a unique purpose, from additional storage area to living quarters and beyond!… (more)

Take your DayZ survival to new depths with the Multi-Level Underground Bases Mod! This mod introduces a revolutionary concept, allowing you to build underground shelters with three distinct levels of upgrades. Three Levels of Upgrades: Journey underground to craft your covert underground base across three distinct levels. Each level serves a unique purpose, from additional storage area to living quarters and beyond! Strategic Advantage: Exploit the tactical opportunities offered by your multi-level underground base for observation, ambushes, and secure gear storage. Personalization: Tailor each level to your preferences, whether it's for sleeping quarters, storage rooms, crafting areas, hatch camouflage, or even underground gardens. Enhanced Security: Fortify your multi-level fortress with a code lock or combination lock! How to build your Underground Base: Level 1: 1. Choose Location: Find a flat, hidden spot for your base entrance. 2. Dig an Entrance: Use the shovel to dig a hole for the entrance. 3. Attach 6 wooden logs, 99 nails, 40 planks. 4. Drag a hatchet to hands and build level 1 underground hatch. Level 2: 1. Drag a shovel to hands while inside your underground base, look at the floor/wall and "Upgrade Base". 2. Attach 6 wooden logs, 99 nails, 20 sheet metal, and 40 planks. 3. Put hatchet in your hands and "upgrade Base" to level 2. Level 3: 1. Drag a shovel to hands while inside your underground base, look at the floor/wall and "Upgrade Base". 2. Attach 6 wooden logs, 99 nails, 20 sheet metal, and 5 concrete blocks. 3. Put hatchet in your hands and "upgrade Base" to level 3. Thank you to DaemonForge, ChrisPBacon, Shelby, IceBlade, HunterzCZ, | RaG | Tyson, MDC, Gormirn, Lad, and BullsEyE for making this mod possible! Join our discord to see up coming changes and future plans for this mod! I do not authorize this to be re-packed, re-uploaded, or modified in any way. Underground Bases is allowed to be used on monetized servers as long as you follow the monetization agreement given by Bohemia Interactive and you have the permission to do so by Bohemia Interactive. If you like this mod and would like to support me, consider donating! Copyright 2026, DayZ Catalyst

Workshop 3029439021 · mod updated 2026-10-19 · analyzed 2026-10-20 00:36 UTC · history · 39 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
Chain-safe

Every server-visible override preserves its chain.

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

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

Event hooks · 1.5%
11 hooks · 0.0022 ms/s
Lifecycle hooks · <0.1%
1 hook · 0.000002 ms/s
98%Repeating timers · 98%
1 timer · 0.14 ms/s
Event hooksrun when something happens: an inventory move, a hit, an action 11 hooks 0.0022 ms/s 1.5% ActionBuildPart.ActionCondition, ActionDigWorms.ActionCondition, CodeLock.SetActions and 6 more
Lifecycle hooksrun when an entity is created, loaded or deleted 1 hook 0.000002 ms/s <0.1% MissionServer.OnInit
Repeating timersstay in the timer queue, which is walked every frame 1 timer 0.14 ms/s 98% every 1 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.

SetActions × 6 classes
per event
no I/O, timers or RPC
ActionCondition × 2 classes
per event
no I/O, timers or RPC super() on some paths
ActionCondition on ActionBuildPart
per event
no I/O, timers or RPC
OnRPC 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 28 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
ActionBuildPart.ActionCondition T2 yes conditional UnderGroundBases.pbo::scripts\4_World\TerritoryCompat.c:15
ActionBuildPart.ActionCondition T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\TerritoryCompat.c:45
ActionBuildPart.Can — yes ✓ UnderGroundBases.pbo::scripts\4_World\TerritoryCompat.c:68
ActionConstructor.RegisterActions — yes ✓ UnderGroundBases.pbo::scripts\4_World\Classes\ActionConstructor.c:2
ActionConstructor.RegisterActions — yes ✓ UnderGroundBases.pbo::scripts\4_World\Codelock\actionconstructor.c:3
ActionDigWorms.ActionCondition T2 yes conditional UnderGroundBases.pbo::scripts\4_World\Classes\ActionConstructor.c:68
ChemlightLight.OnFrameLightSource — yes ✓ UnderGroundBases.pbo::scripts\4_World\Entities\GasLampLight.c:29
CodeLock.SetActions T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\Codelock\CodeLock.c:4
DigitalCodeLock.IsPlayerOnBackside — yes conditional UnderGroundBases.pbo::scripts\4_World\Classes\ActionVanillaCodeLockOnHatch.c:242
DigitalCodeLock.CanDetachCodeLock — yes conditional UnderGroundBases.pbo::scripts\4_World\Classes\ActionVanillaCodeLockOnHatch.c:249
Environment.GetTemperatureHeightCorrection — yes conditional UnderGroundBases.pbo::scripts\4_World\Environment.c:3
FieldShovel.SetActions T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\Classes\ActionConstructor.c:39
Hacksaw.SetActions T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\Classes\ActionConstructor.c:79
Hacksaw.SetActions T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\Codelock\Hacksaw.c:4
Hammer.SetActions T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\Classes\ActionConstructor.c:48
HandEventDrop.CheckRequestEx — yes ✓ UnderGroundBases.pbo::scripts\3_Game\UGBDropFix.c:40
HandEventDrop.CanPerformEventEx — yes ✓ UnderGroundBases.pbo::scripts\3_Game\UGBDropFix.c:47
Hatchet.SetActions T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\Classes\ActionConstructor.c:58
Hologram.EvaluateCollision — yes conditional UnderGroundBases.pbo::scripts\4_World\Classes\Hologram.c:3
Hologram.GetProjectionEntityPosition — yes ✓ UnderGroundBases.pbo::scripts\4_World\Classes\Hologram.c:16
MissionServer.OnInit T3 yes ✓ UnderGroundBases.pbo::scripts\5_Mission\missionServer.c:3
MissionServer.OnEvent — yes ✓ UnderGroundBases.pbo::scripts\5_Mission\missionServer.c:9
PlayerBase.DropEntityImpl — yes ✓ UnderGroundBases.pbo::scripts\4_World\Entities\playerbase.c:6
PlayerBase.OnRPC T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\Entities\playerbase.c:87
PortableGasLampLight.OnFrameLightSource — yes ✓ UnderGroundBases.pbo::scripts\4_World\Entities\GasLampLight.c:18
Shovel.SetActions T2 yes ✓ UnderGroundBases.pbo::scripts\4_World\Classes\ActionConstructor.c:31
TorchLight.OnFrameLightSource — yes ✓ UnderGroundBases.pbo::scripts\4_World\Entities\GasLampLight.c:40
WorldData.GetBaseEnvTemperatureAtPosition — yes conditional UnderGroundBases.pbo::scripts\3_Game\worlddata.c:3
Dispatch surfaces and timers the grade prices
surfacetierrate (Hz)rate sourcems/s
Shovel.SetActionsT2 8.0placeholder0.0002
FieldShovel.SetActionsT2 8.0placeholder0.0002
Hammer.SetActionsT2 8.0placeholder0.0002
Hatchet.SetActionsT2 8.0placeholder0.0002
ActionDigWorms.ActionConditionT2 8.0placeholder0.0002
Hacksaw.SetActionsT2 8.0placeholder0.0002
CodeLock.SetActionsT2 8.0placeholder0.0002
Hacksaw.SetActionsT2 8.0placeholder0.0002
PlayerBase.OnRPCT2 8.0placeholder0.0002
ActionBuildPart.ActionConditionT2 8.0placeholder0.0002
ActionBuildPart.ActionConditionT2 8.0placeholder0.0002
MissionServer.OnInitT3 0.1placeholder0.0000

Repeating timers

period (ms)residency ms/sfiring ms/swhere
10000.1400 0.000025UnderGroundBases.pbo::scripts\4_World\UndergroundBase.c:30

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

UnderGroundBases.pbo

  • UndergroundBases requiredVersion 0.1 — requires DZ_Data, DZ_Gear_Nasdara_Camping, DZ_Scripts
  • UG_Sounds requiredVersion 0.1 — requires DZ_Data

census 1.1 · findings 1.1 · hash ba31df32e72c2073