← modperf · analyzed mods

MuchCarKey

Mod Support ended with Version 1.26 Mod will work until it won't. Use it if you want but there won't be any more updates Repack is still not allowed. Use DayZ modding system to do fixes if you wish so. WARNING: Install this after a vehicle wipe. This will unlock any cars locked by expansion or trader keys or it could even wipe your cars. This mod will be updated at my convenience and by using it you're agreeing to… (more)

Mod Support ended with Version 1.26 Mod will work until it won't. Use it if you want but there won't be any more updates Repack is still not allowed. Use DayZ modding system to do fixes if you wish so. WARNING: Install this after a vehicle wipe. This will unlock any cars locked by expansion or trader keys or it could even wipe your cars. This mod will be updated at my convenience and by using it you're agreeing to this. If you don't like it, don't use it. This mod allows you to lock any car, spawned or from trader. The car keys come in several colours and they have a tag for easier organisation. You can sell the keys separately at trader, make them spawn with the car or findable in the world. FAQ Q:How it works? Take key in hand, look at car (must have all doors closed and all doors including trunk and hood in the slots). It will give you an option to assign key to car. After assiging key you can use it to lock,unlock the car. Q:How do you get more copies of a key? Server owner can place a MCK_Grinder at places where you can duplicate your key. You can only make duplicates if key was assigned. Your key takes damage each time you make a copy. e.g. 1 key gives you 2 keys before its ruined. then you can turn 2 keys into 4 and so on. You can craft a key by using a wrench at the grinder too. Q:Can an admin unlock cars? You have MCK_MasterKey and MCK_ResetKey. These are spawnable by admins. Master key will be able to unlock/lock any car, regardless if they have key assigned. Reset key will be able to reset a car's assigned key, only works if car unlocked. Q:Is there raiding available? Yes. You can change in the config to allow raiding aka lockpicking. You can choose in config the tool of your choice. In config you can also set if the lockpicking has 100% success rate or lower chance. Q:As an admin how can I place the grinder? MCK_Grinder is spawnable with VPP object builder, COM or DayZEditor. This won't show in regular item spawn for VPP and with COT you won't be able to choose position. Q:I don't have trader. How do I get keys spawned? You can try spawning them with the car or as regular item. That stuff is your server's choice. Q:Can I make trader give your key when buying a vehicle? No. Sell it as separate item. And put your vehicles as VNK to not give the trader key. Lifetime Maintenance How does lifetime maintenance work? In config there's 2 sets of lifetimes, MaxLifetime and MaxLifetimeWithoutAnyPlayerInteraction For MaxLifetimeWithoutAnyPlayerInteraction you should set a lower amount. e.g. if you spawn cars with CE and there's a single car in a very obscure place, you can use this to maintain their lifetime For MaxLifetime you should put maximum you ever want cars to be sitting around. If a player starts a car that doesn't have a key it will set lifetime to MaxLifetimeWithoutAnyPlayerInteraction If a player starts a car that had a key assigned, it will set the lifetime to MaxLifetime Opening doors, interacting with the car in any other ways other than the ones below won't count towards the lifetime reset What does reset lifetime? - Starting a car - Assigning a key - Locking the car - Unlocking the car Do we still need lifetimes in types set correctly? Yes you do. I'd recommend to put same amount or higher than MaxLifetime Why would we do this? You'd have 2 lifetimes to maintain cars in the world as cars spawned with CE will never despawn unless they are destroyed. This ensures cars will cycle spawns. I use 5 days without key, 2 weeks with key. This will ensure active people keep their cars and new ones will come into the world. Credits Dr. Jones - For allowing me to use parts of his car locking mechanism. Check out his trader mod -> https://steamcommunity.com/sharedfiles/filedetails/?id=1590841260 Wardog, DaOne and Jacob for helping me understand RPCs and NetVariables. Jest - for being my tester <3 and having this idea in first place Monetization You may run this on monetized servers as long no item or retexture of an item from this pack is monetized. Copyright Repack is not allowed. This item is not authorized for posting on Steam, except under the Steam account Helkhiana. Sponsors 🎮 Need a DayZ server? Rent yours here and get 25% OFF! Donations

Workshop 2049002856 · mod updated 2025-02-24 · analyzed 2026-10-03 09:41 UTC · history · 46 script files

EquipmentMechanicsVehicle 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 48% of 328 scripted mods analyzed.

less than 0.001% of each server frame at 100 players (0.003 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; 12 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
  • This mod
  • 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
  • 27 mods
    0.46 to 1 ms/s · grade A
  • 9 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

Event hooks carry 99% of this mod's structural load. 0.003 ms/s in all.

99%Event hooks · 99%
15 hooks · 0.003 ms/s
Lifecycle hooks · 0.7%
11 hooks · 0.000022 ms/s
Event hooksrun when something happens: an inventory move, a hit, an action 15 hooks 0.003 ms/s 99% ActionDetach.ActionCondition, ActionDetachFromTarget.ActionCondition, ActionGetInTransport.ActionCondition and 12 more
Lifecycle hooksrun when an entity is created, loaded or deleted 11 hooks 0.000022 ms/s 0.7% BoatScript.AfterStoreLoad, BoatScript.EEDelete, BoatScript.EEKilled and 8 more

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.

ActionCondition × 6 classes
per event
no I/O, timers or RPC super() on some paths
CanDisplayAttachmentSlot × 2 classes
per event
no I/O, timers or RPC
IsInventoryVisible × 2 classes
per event
no I/O, timers or RPC
OnVariablesSynchronized × 2 classes
per event
no I/O, timers or RPC
SetActions × 2 classes
per event
no I/O, timers or RPC
ActionCondition on ActionStartEngine
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 48 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 ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\ActionConstructor.c:3
ActionDetach.ActionCondition T2 yes conditional MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\ActionDetach.c:3
ActionDetach.OnExecuteServer — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\ActivityLogs\ActionDetach.c:4
ActionDetachFromTarget.ActionCondition T2 yes conditional MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\ActionDetachFromTarget.c:3
ActionGetInTransport.ActionCondition T2 yes conditional MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\ActionGetInTransport.c:3
ActionGetInTransport.OnEndServer — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\ActivityLogs\ActionGetInTransport.c:4
ActionGetOutTransport.OnEndServer — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\ActivityLogs\ActionGetOutTransport.c:4
ActionOpenCarDoors.ActionCondition T2 yes conditional MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\ActionOpenCarDoors.c:3
ActionOpenCarDoorsOutside.ActionCondition T2 yes conditional MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\ActionCarDoorsOutside.c:3
ActionPushObject.ActionCondition T2 yes conditional MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\ActionPushCar.c:3
ActionPushObject.OnEndServer — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\ActionPushCar.c:21
ActionStartEngine.ActionCondition T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Actions\Modded\actionstartengine.c:7
ActionStartEngine.OnEndServer — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\ActivityLogs\ActionStartEngine.c:4
ActionStopEngine.OnEndServer — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\ActivityLogs\ActionStopEngine.c:4
ActionSwitchSeats.Start — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\ActivityLogs\ActionSwitchSeats.c:4
BoatScript.OnVariablesSynchronized T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:74
BoatScript.OnEngineStart — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:84
BoatScript.EEKilled T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:91
BoatScript.EEDelete T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:100
BoatScript.DeferredInit — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:113
BoatScript.NameOverride — yes conditional MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:139
BoatScript.OnStoreSave T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:151
BoatScript.OnStoreLoad T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:165
BoatScript.AfterStoreLoad T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:190
BoatScript.EEOnCECreate — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:196
BoatScript.OnCEUpdate — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:202
BoatScript.CanDisplayAttachmentSlot T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:234
BoatScript.CanDisplayAttachmentCategory — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:242
BoatScript.IsInventoryVisible T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\BoatScript.c:250
CarScript.OnVariablesSynchronized T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:87
CarScript.OnEngineStart — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:96
CarScript.EEKilled T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:103
CarScript.EEDelete T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:115
CarScript.DeferredInit — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:128
CarScript.NameOverride — yes conditional MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:154
CarScript.OnStoreSave T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:166
CarScript.OnStoreLoad T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:178
CarScript.AfterStoreLoad T3 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:206
CarScript.EEOnCECreate — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:212
CarScript.OnCEUpdate — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:218
CarScript.CanDisplayAttachmentSlot T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:250
CarScript.CanDisplayAttachmentCategory — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:258
CarScript.IsInventoryVisible T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\CarScript.c:324
MissionServer.OnInit T3 yes ✓ MuchCarKey.pbo::scripts\5_Mission\MuchCarKey\MissionServer.c:10
ModItemRegisterCallbacks.RegisterOneHanded — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\AnimRegisterIK.c:3
PlayerBase.SetActions T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\PlayerBase.c:3
PluginManager.Init — yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Plugins\PluginManager.c:3
Wrench.SetActions T2 yes ✓ MuchCarKey.pbo::scripts\4_World\MuchCarKey\Modded\Wrench.c:3
Dispatch surfaces and timers the grade prices
surfacetierrate (Hz)rate sourcems/s
ActionOpenCarDoorsOutside.ActionConditionT2 8.0placeholder0.0002
ActionDetach.ActionConditionT2 8.0placeholder0.0002
ActionDetachFromTarget.ActionConditionT2 8.0placeholder0.0002
ActionGetInTransport.ActionConditionT2 8.0placeholder0.0002
ActionOpenCarDoors.ActionConditionT2 8.0placeholder0.0002
ActionPushObject.ActionConditionT2 8.0placeholder0.0002
ActionStartEngine.ActionConditionT2 8.0placeholder0.0002
BoatScript.OnVariablesSynchronizedT2 8.0placeholder0.0002
BoatScript.CanDisplayAttachmentSlotT2 8.0placeholder0.0002
BoatScript.IsInventoryVisibleT2 8.0placeholder0.0002
CarScript.OnVariablesSynchronizedT2 8.0placeholder0.0002
CarScript.CanDisplayAttachmentSlotT2 8.0placeholder0.0002
CarScript.IsInventoryVisibleT2 8.0placeholder0.0002
PlayerBase.SetActionsT2 8.0placeholder0.0002
Wrench.SetActionsT2 8.0placeholder0.0002
BoatScript.EEKilledT3 0.1placeholder0.0000
BoatScript.EEDeleteT3 0.1placeholder0.0000
BoatScript.OnStoreSaveT3 0.1placeholder0.0000
BoatScript.OnStoreLoadT3 0.1placeholder0.0000
BoatScript.AfterStoreLoadT3 0.1placeholder0.0000
CarScript.EEKilledT3 0.1placeholder0.0000
CarScript.EEDeleteT3 0.1placeholder0.0000
CarScript.OnStoreSaveT3 0.1placeholder0.0000
CarScript.OnStoreLoadT3 0.1placeholder0.0000
CarScript.AfterStoreLoadT3 0.1placeholder0.0000
MissionServer.OnInitT3 0.1placeholder0.0000

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.

MuchCarKey.pbo

  • MuchCarKey requiredVersion 0.1 — requires DZ_Data, UAPIBase
  • UAPIBase — no requiredAddons

MuchCarKeyDefines.pbo

  • MuchCarKeyDefines requiredVersion 0.1 — no requiredAddons

census 1.1 · findings 1.1 · hash 4fb4b86abc8ad908