Heroes And Bandits
Working with 1.11 Heroes and Bandits Humanity Mod This mod add humanity to Dayz in a very expandable way, allowing for server owners and mod creators to dictate almost everything including the ability to create customized Levels and Actions, as well as the ability to create customized zones for exclusive use based on the players humanity GitHub Readme Player Commands "/humanity" in direct chat will tell you you're… (more)
Working with 1.11 Heroes and Bandits Humanity Mod This mod add humanity to Dayz in a very expandable way, allowing for server owners and mod creators to dictate almost everything including the ability to create customized Levels and Actions, as well as the ability to create customized zones for exclusive use based on the players humanity GitHub Readme Player Commands "/humanity" in direct chat will tell you you're humanity "/stat ActionName" in direct chat will give you how many times you have done a certain action eg. /stat ZombieKill "/stat Kills" in direct chat will give you how many player Kills you have made "J" Opens the simple GUI Config File Details Click Here for the WIKI Default configs Infromation To Follow Helper Functions for init.c There are helper function to help you provide custom loadouts or skins to players based on their Affinity, Level, Humanity, or Stats Click Here to learn More Add On Mods There are add on mods that allow players to gain and lose humanity based on their actions from other mods Click here to learn more Supported Languages - English - French - Russian - Thanks @NeonMurder - German - Thanks @ServerAtze - Polish - Thanks @Kirlen - Portuguese - Thanks @Wwillers (If you want your language supported please contact me) Open Sourced and Expandable Click Here to learn more To Do List - Add custom skins for Hero's and Bandits so they are more easily identifiable - Create a export function for server leaderboards and a basic web app to view - Change Icon location settings to be client side so that way players can choose where to show it Have Question or Need Help Join our Discord - and Choose the appropriate role If you are intreseted in repacking please click here for rules about repacking How to Support Me If you are interested in donating to help support the mod or just buy me a beer to keep me motivated you can do so Sponsor Me On Github Donate via Paypal
Patterns that can stall a single frame regardless of the load figure — see below.
Every server-visible override preserves its chain.
0.000563% of each server frame at 100 players (0.006 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; 9 others share it. Ranked list.
Event hooks carry 99% of this mod's structural load. 0.006 ms/s in all.
13 hooks · 0.0056 ms/s
10 hooks · 0.00002 ms/s
| Event hooksrun when something happens: an inventory move, a hit, an action | 13 hooks | 0.0056 ms/s | 99% | PlayerBase.EEItemDetached, ActionTrade.ActionCondition, AnimalBase.EEHitBy and 10 more |
| Lifecycle hooksrun when an entity is created, loaded or deleted | 10 hooks | 0.00002 ms/s | 0.4% | AnimalBase.EEKilled, Dogtag_Base.OnStoreLoad, Dogtag_Base.OnStoreSave and 7 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.
Other findings
super() only on some paths · 4 · info
- ActionTrade.ActionCondition vetoes early (returns false) on some paths and defers to super.ActionCondition() otherwise — composes safely with vanilla's and earlier mods' conditions.
HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Interact\ActionTrade.c:4 - PlayerBase.CanReceiveAttachment vetoes early (returns false) on some paths and defers to super.CanReceiveAttachment() otherwise — composes safely with vanilla's and earlier mods' conditions.
HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:1129 - PlayerBase.CanReceiveItemIntoHands vetoes early (returns false) on some paths and defers to super.CanReceiveItemIntoHands() otherwise — composes safely with vanilla's and earlier mods' conditions.
HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:933 - PlayerBase.CanReleaseAttachment vetoes early (returns false) on some paths and defers to super.CanReleaseAttachment() otherwise — composes safely with vanilla's and earlier mods' conditions.
HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:957
- ActionTrade.ActionCondition vetoes early (returns false) on some paths and defers to super.ActionCondition() otherwise — composes safely with vanilla's and earlier mods' conditions.
Timers created inside event paths · 4 · heuristic
- AnimalBase.EEHitBy (T2) registers timers inside a per-event path (CallLater). If these are not cleaned up, each live timer costs ~140 ns/frame of queue residency and the count grows with player activity — verify the cleanup path by reading the code.
HeroesAndBandits.pbo::scripts\4_World\Entities\Creatures\Animals\AnimalBase.c:44 - PlayerBase.EEHitBy (T2) registers timers inside a per-event path (CallLater). If these are not cleaned up, each live timer costs ~140 ns/frame of queue residency and the count grows with player activity — verify the cleanup path by reading the code.
HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:684 - PlayerBase.EEItemDetached (T2) registers timers inside a per-event path (CallLater). If these are not cleaned up, each live timer costs ~140 ns/frame of queue residency and the count grows with player activity — verify the cleanup path by reading the code.
HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:1049 - ZombieBase.EEHitBy (T2) registers timers inside a per-event path (CallLater). If these are not cleaned up, each live timer costs ~140 ns/frame of queue residency and the count grows with player activity — verify the cleanup path by reading the code.
HeroesAndBandits.pbo::scripts\4_World\Entities\Creatures\Infected\ZombieBase.c:42
- AnimalBase.EEHitBy (T2) registers timers inside a per-event path (CallLater). If these are not cleaned up, each live timer costs ~140 ns/frame of queue residency and the count grows with player activity — verify the cleanup path by reading the code.
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.
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 55 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 |
|---|---|---|---|---|
ActionBandageBase.ApplyBandage |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionBandageBase.c:3 |
ActionBandageTarget.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionBandageTarget.c:3 |
ActionBurnSewTarget.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionBurnSewTarget.c:3 |
ActionCPR.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionCPR.c:3 |
ActionDeployObject.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\ActionDeployObject.c:4 |
ActionDestroyCombinationLock.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\ActionDestroyCombinationLock.c:3 |
ActionDestroyPart.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\ActionDestoryPart.c:3 |
ActionFeedCharcoalTablets.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionFeedMedication.c:26 |
ActionFeedPainkillerTablets.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionFeedMedication.c:14 |
ActionFeedTetracyclineAntibiotics.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionFeedMedication.c:3 |
ActionFeedVitaminBottle.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionFeedMedication.c:37 |
ActionGiveBloodTarget.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionGiveBloodTarget.c:3 |
ActionGiveSalineTarget.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionGiveSalineTarget.c:3 |
ActionSplintTarget.OnFinishProgressServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Continuous\Medical\ActionSplintTarget.c:3 |
ActionTrade.ActionCondition |
T2 | yes | conditional | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\Interact\ActionTrade.c:4 |
ActionUnpin.OnStartServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\UserActionsComponent\Actions\SingleUse\ActionUnpin.c:3 |
AnimalBase.EEKilled |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Creatures\Animals\AnimalBase.c:3 |
AnimalBase.EEHitBy |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Creatures\Animals\AnimalBase.c:44 |
BaseBuildingBase.OnPartDestroyedServer |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\BaseBuildingBase.c:39 |
BaseBuildingBase.EEHitBy |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\BaseBuildingBase.c:59 |
BuildingBase.Explode |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Game\Super\Building.c:4 |
DayZPlayerImplement.SetSuicide |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\PlayerImplement.c:3 |
Dogtag_Base.DescriptionOverride |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\DogTags.c:16 |
Dogtag_Base.OnStoreSave |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\DogTags.c:37 |
Dogtag_Base.OnStoreLoad |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\DogTags.c:45 |
Dogtag_Base.OnRPCRead |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\DogTags.c:61 |
Dogtag_Base.OnRPCWrite |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\DogTags.c:67 |
DogtagReplaceLambda.OnCopyProperties |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\DogtagReplaceLambda.c:5 |
ExpansionBaseBuilding.EEKilled |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Expansion\ExpansionBaseBuilding.c:4 |
ExpansionExplosive.TriggerExplosion |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Expansion\ExpansionExplosive.c:23 |
ExpansionSafeBase.EEHitBy |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Expansion\ExpansionSafes.c:7 |
ExpansionSafeBase.EEKilled |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Expansion\ExpansionSafes.c:50 |
ExpansionStatic.LoadFlagTextures |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\3_Game\ExpansionStatic.c:4 |
Fence.EEHitBy |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\BaseBuildingBase\Fence.c:3 |
IngameHud.ShowPlayerTag |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\5_Mission\GUI\ExpansionPlayerTags.c:30 |
ItemBase.Explode |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase.c:4 |
MissionBase.CreateScriptedMenu |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\5_Mission\mission\MissionBase.c:4 |
MissionGameplay.OnEvent |
— | yes | conditional | HeroesAndBandits.pbo::scripts\5_Mission\mission\MissionGameplay.c:128 |
MissionGameplay.OnUpdate |
T0 | yes | ✓ | HeroesAndBandits.pbo::scripts\5_Mission\mission\MissionGameplay.c:247 |
MissionServer.OnInit |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\5_Mission\mission\MissionServer.c:10 |
MissionServer.InvokeOnConnect |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\5_Mission\mission\MissionServer.c:38 |
MissionServer.InvokeOnDisconnect |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\5_Mission\mission\MissionServer.c:53 |
PlayerBase.Init |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:49 |
PlayerBase.OnPlayerLoaded |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:75 |
PlayerBase.OnVariablesSynchronized |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:436 |
PlayerBase.EEKilled |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:533 |
PlayerBase.EEHitBy |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:684 |
PlayerBase.CanReceiveItemIntoHands |
T2 | yes | conditional | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:933 |
PlayerBase.CanReleaseAttachment |
T2 | yes | conditional | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:957 |
PlayerBase.EEItemDetached |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:1049 |
PlayerBase.CanReceiveAttachment |
T2 | yes | conditional | HeroesAndBandits.pbo::scripts\4_World\Entities\ManBase\PlayerBase.c:1129 |
Watchtower.EEHitBy |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\ItemBase\BaseBuildingBase\Watchtower.c:3 |
WeaponManager.Fire |
— | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Classes\WeaponManager.c:3 |
ZombieBase.EEKilled |
T3 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Creatures\Infected\ZombieBase.c:3 |
ZombieBase.EEHitBy |
T2 | yes | ✓ | HeroesAndBandits.pbo::scripts\4_World\Entities\Creatures\Infected\ZombieBase.c:42 |
Dispatch surfaces and timers the grade prices
| surface | tier | rate (Hz) | rate source | ms/s |
|---|---|---|---|---|
PlayerBase.EEItemDetached | T2 | 130.0 | measured | 0.0032 |
ActionTrade.ActionCondition | T2 | 8.0 | placeholder | 0.0002 |
AnimalBase.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
ZombieBase.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
ExpansionSafeBase.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
BaseBuildingBase.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
Fence.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
Watchtower.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
PlayerBase.OnVariablesSynchronized | T2 | 8.0 | placeholder | 0.0002 |
PlayerBase.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
PlayerBase.CanReceiveItemIntoHands | T2 | 8.0 | placeholder | 0.0002 |
PlayerBase.CanReleaseAttachment | T2 | 8.0 | placeholder | 0.0002 |
PlayerBase.CanReceiveAttachment | T2 | 8.0 | placeholder | 0.0002 |
AnimalBase.EEKilled | T3 | 0.1 | placeholder | 0.0000 |
ZombieBase.EEKilled | T3 | 0.1 | placeholder | 0.0000 |
ExpansionBaseBuilding.EEKilled | T3 | 0.1 | placeholder | 0.0000 |
ExpansionSafeBase.EEKilled | T3 | 0.1 | placeholder | 0.0000 |
Dogtag_Base.OnStoreSave | T3 | 0.1 | placeholder | 0.0000 |
Dogtag_Base.OnStoreLoad | T3 | 0.1 | placeholder | 0.0000 |
PlayerBase.EEKilled | T3 | 0.1 | placeholder | 0.0000 |
MissionServer.OnInit | T3 | 0.1 | placeholder | 0.0000 |
MissionServer.InvokeOnConnect | T3 | 0.1 | placeholder | 0.0000 |
MissionServer.InvokeOnDisconnect | T3 | 0.1 | placeholder | 0.0000 |
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.
HABDefines.pbo
HABDefinesrequiredVersion 0.1 — no requiredAddons
HeroesAndBandits.pbo
HeroesAndBanditsrequiredVersion 0.1 — requiresHABDefines,JM_CF_Scripts
census 1.1 · findings 1.1 · hash f345d4d138a8ec61