A-6 Secure Containers
Description Hello! A-6 Secure Containers is a mod I had requested to be created for my community when I running it. I figured this mod should be available for all to use! It functions exactly like Tarkov's Secure Containers. The Secure Container attaches to your character, and whatever goes inside of it, stays with your character even through death. Secure Containers that are not attached to the secure container… (more)
Description Hello! A-6 Secure Containers is a mod I had requested to be created for my community when I running it. I figured this mod should be available for all to use! It functions exactly like Tarkov's Secure Containers. The Secure Container attaches to your character, and whatever goes inside of it, stays with your character even through death. Secure Containers that are not attached to the secure container slot will not carry over death. Setting up Starter Secure Containers Locate the Types Folder in the mod files, in that folder will be “SecureContainer_types.xml”. Setup how you would like to spawn them if you want to spawn them like regular loot on the map. Setup the lifetime as you normally would. There is fail safe JSON lifetime setting that is used for when the player dies, but whenever a player detaches the container from their slot it will default back to the lifetime you have set in your types. Next, open the "SecureContainersSettings.json" file located in your Server Profiles folder. This should automatically generate for you. "StarterSecureContainerType" is set to "A6_SecureContainer_Alpha" by default. If you wish to not use a Starter Secure Container, just leave the type empty. "SecureContainerLifetime" is used when a player dies, the Secure Container will be set to this lifetime while it is waiting to be returned to the player it's owned to. By Default, this is set to 604800 seconds ( 7 Days ). This only applies with player death, all other secure containers use the types lifetime if defined. Setting up Blacklisting / Whitelisting Open the "SecureContainersSettings.json" file located in your Server Profiles folder. This ItemList can be flipped between Blacklisting and Whitelisting with "ItemListMode", by default, ItemListMode will be set to "1". ItemList Modes are "1" for Blacklisting and "2" for Whitelisting. Example of file below: { "FileUpdateEnable": "1", "StarterSecureContainerType": "A6_SecureContainer_Alpha", "SecureContainerLifetime": 604800, "ItemListMode": 1, "ItemList": [ "Clothing", "Weapon_Base" ] } By default Weapons & Clothing are blocked from being put in the Secure Containers. I advise you don't allow clothing or weapons to be put in, because if any mod uses ClearInventory or RemoveAllItems, clothing items and weapons inside the container will yeet. This a current limitation with scripting and conflicts with other mods to make this work properly, I have to search player inventory and then clear all clothes and then weapons, instead of clearing all Items. If you switch to Whitelisting mode, remove "Weapon_Base" and "Clothing" from the list, as whitelisting will only allow the items in "ItemList" to go into the container. Dogtags Mod Compatibilty Open the mod folder & inside is a CompatibilityMods Folder. In there is the pbo called "A6_SecureContainers_Dogtag_Compatibility". You will need to pack this mod in your server pack if you run Dogtags by Wardog. This is because of some functions in Dogtags are conflicting with this mod. ClassNames - A6_SecureContainer_Alpha ( 2x2 Inventory ) - A6_SecureContainer_Beta ( 3x2 Inventory ) - A6_SecureContainer_Epsilon ( 4x2 Inventory ) - A6_SecureContainer_Gamma ( 4x3 Inventory ) - A6_SecureContainer_Kappa ( 4x4 Inventory ) Join my Discord! CLICK ME!!! PERMISSION IS NOT GRANTED FOR THIS MOD TO BE INCLUDED IN A "SERVER PACK" or "MOD PACK". Monetization while using this mod is approved.
No file I/O on hot paths, no timers created per event, no per-player-per-frame hooks.
2 chain breaks on base classes or persisted data.
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; 6 others share it. Ranked list.
Lifecycle hooks carry 81% of this mod's structural load. 0.000 ms/s in all.
2 hooks · 0.000004 ms/s
| Lifecycle hooksrun when an entity is created, loaded or deleted | 2 hooks | 0.000004 ms/s | 81% | DayZPlayerImplement.EEKilled, 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.
Chain breaks, by consequence
2 overrides 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.
PlayerBase.ClearInventory
Vanilla's work on this method, and any earlier-loaded mod's, never runs for any PlayerBase.
A6_SecureContainers.pbo::Scripts\4_world\Entities\ManBase\PlayerBase.c:50PlayerBase.RemoveAllItems
Vanilla's work on this method, and any earlier-loaded mod's, never runs for any PlayerBase.
A6_SecureContainers.pbo::Scripts\4_world\Entities\ManBase\PlayerBase.c:40Which 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 7 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 |
|---|---|---|---|---|
DayZPlayerImplement.EEKilled |
T3 | yes | ✓ | A6_SecureContainers.pbo::Scripts\4_world\Entities\ManBase\DayZPlayerImplement.c:2 |
MissionGameplay.OnMissionStart |
T3 | yes | ✓ | A6_SecureContainers.pbo::Scripts\5_mission\mission\MissionGameplay.c:5 |
MissionServer.OnInit |
T3 | yes | ✓ | A6_SecureContainers.pbo::Scripts\5_mission\mission\MissionServer.c:2 |
ModItemRegisterCallbacks.RegisterOneHanded |
— | yes | ✓ | A6_SecureContainers.pbo::Scripts\4_world\Entities\ManBase\DayZPlayer\DayZPlayerCfgBase.c:2 |
PlayerBase.OnSelectPlayer |
— | yes | ✓ | A6_SecureContainers.pbo::Scripts\4_world\Entities\ManBase\PlayerBase.c:6 |
PlayerBase.RemoveAllItems |
— | yes | ✗ none | A6_SecureContainers.pbo::Scripts\4_world\Entities\ManBase\PlayerBase.c:40 |
PlayerBase.ClearInventory |
— | yes | ✗ none | A6_SecureContainers.pbo::Scripts\4_world\Entities\ManBase\PlayerBase.c:50 |
Dispatch surfaces and timers the grade prices
| surface | tier | rate (Hz) | rate source | ms/s |
|---|---|---|---|---|
DayZPlayerImplement.EEKilled | T3 | 0.1 | placeholder | 0.0000 |
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.
A6_SecureContainers.pbo
A6_SecureContainersrequiredVersion 0.1 — requiresDZ_Data,DZ_Gear_ContainersA6_SecureContainers— requiresDZ_Data,DZ_Scripts
census 1.1 · findings 1.1 · hash 7d2417076d922e68