← modperf

Stack composer

Started from Last-Resort.net - Chernarus - Hardcore PVE Survival: the 12 mods it publishes to the Steam server browser (as of 2026-10-21), put back into load order — servers publish the list last-loaded first. Mods loaded with -servermod= are never published, so they are not here; add them if you know them.

Your stack in load order, earliest first. Drag a row, or use the arrows, to reorder.

  1. 1 Last Resort - Addons not analyzed
  2. 2 Last Resort - Server Pack not analyzed
  3. 3 Survivor Animations
  4. 4 Ear-Plugs
  5. 5 WindstridesClothingPack
  6. 6 Uncuepas Civilian Clothing
  7. 7 BeautifulPotato_BagZ not analyzed
  8. 8 Admirals Diving Mod
  9. 9 More Cassettes not analyzed
  10. 10 More Cassettes World Tour not analyzed
  11. 11 RadioCassettes not analyzed
  12. 12 Ambient Animals Pack
Edit as text

One Workshop id or URL per line, in load order. Up to 250 mods.

6 of 12 mods not analyzed yet — left out of the composition below. Open a mod's page to request its analysis.
Stall risks

File I/O on hot paths, timers created per event, and per-player-per-frame hooks across the stack. These can stall a frame regardless of the load figure. See all 3 below.

Mods silencing mods
None

Across 8 server-side methods hooked by two or more mods.

Structural load
0.03% of a frame at 100 players

0.262 ms per second, all 6 mods combined. Hook dispatch and timers only — not what the hooks do inside. Methodology.

Who silences whom#

A later-loaded mod overrides a method without super(), so the earlier mod's code on that method — and vanilla's — never runs. Whether that is a bug or the whole point of the mod is the author's call; this shows the structure, not intent.

✓ No server-side conflicts: every method two or more of these mods hook preserves super() end to end.

Hot hooks shared across the stack#

The engine calls the last-loaded mod first; each super() hands on to the mod before it, ending at vanilla. Badges show what each mod's override calls inside — that body work, not the chain itself, is what costs frame time.

PlayerBase.EEItemAttached
every inventory move
Admirals Diving Mod then WindstridesClothingPack then vanilla
PlayerBase.EEItemDetached
every inventory move
Admirals Diving Mod then WindstridesClothingPack then vanilla
PlayerBase.SetActions
per event
WindstridesClothingPack then Survivor Animations then vanilla

Stall risks#

3 places where one mod's code can hold up a frame by itself, whatever the load figure says. Each is a pattern found in the code, not a measurement: how much it costs depends on what the hook does inside. Most severe first, then in load order.

Survivor Animations
PlayerBase.CommandHandler
about 30× per player per second
Per-player, per-frame hook warning
SurvivorAnims.pbo::Scripts\4_World\PlayerBase.c:115
Admirals Diving Mod
PlayerBase.EOnSimulate
about 30× per player per second
Per-player, per-frame hook warning
AdmiralsDivingMod.pbo::Scripts\4_world\Modded\PlayerBase.c:590
Admirals Diving Mod
PlayerBase.OnScheduledTick
about 30× per player per second
Per-player, per-frame hook warning
AdmiralsDivingMod.pbo::Scripts\4_world\Modded\PlayerBase.c:463

Everything else#

All 8 server-side methods hooked by two or more mods

vanilla → earliest mod → … → latest mod (dispatch enters at the latest). struck = suppressed by a later chain break; ✂ = no super(); "(cond)" = super() only on some paths.

methodtierchain (load order)
ActionConstructor.RegisterActions — vanilla → Survivor Animations → WindstridesClothingPack → Admirals Diving Mod
ModItemRegisterCallbacks.RegisterOneHanded — vanilla → WindstridesClothingPack → Admirals Diving Mod → Ambient Animals Pack
ModItemRegisterCallbacks.RegisterTwoHanded — vanilla → WindstridesClothingPack → Admirals Diving Mod
PlayerBase.EEItemAttached T2 vanilla → WindstridesClothingPack → Admirals Diving Mod
PlayerBase.EEItemDetached T2 vanilla → WindstridesClothingPack → Admirals Diving Mod
PlayerBase.Init — vanilla → Survivor Animations → Admirals Diving Mod
PlayerBase.SetActions T2 vanilla → Survivor Animations → WindstridesClothingPack
PluginRecipesManagerBase.RegisterRecipies — vanilla → WindstridesClothingPack → Ambient Animals Pack
55 methods hooked by only one of these mods

No cross-mod interaction is possible here; a ✂ still means vanilla's behaviour on that method is replaced.

methodtiermod
ActionManagerBase.ActionPossibilityCheck — Admirals Diving Mod (cond)
ActionSkinning.OnFinishProgressServer — WindstridesClothingPack
ActionTurnOffWhileInHands.CanBeUsedSwimming — Admirals Diving Mod ✂
ActionTurnOnWhileInHands.CanBeUsedSwimming — Admirals Diving Mod ✂
ChernarusPlusData.InitYieldBank — Ambient Animals Pack
DayZAnimalCommandDeathModdable.PreAnimUpdate — Ambient Animals Pack (cond)
DayZAnimalCommandLookAtModdable.PreAnimUpdate — Ambient Animals Pack
DayZAnimalCommandMoveModdable.PreAnimUpdate — Ambient Animals Pack
DayZPlayerImplement.ModCommandHandlerInside — Admirals Diving Mod
DayZPlayerImplementFallDamage.HandleFallDamage — Admirals Diving Mod (cond)
DayZPlayerImplementJumpClimb.Climb — Admirals Diving Mod
DayZPlayerImplementSwimming.CheckSwimmingStart — Admirals Diving Mod (cond)
DrowningMdfr.CheckIsDrowning — Admirals Diving Mod ✂
DrowningMdfr.OnTick — Admirals Diving Mod (cond)
EmoteCB.OnAnimationEvent — Survivor Animations (cond)
EmoteConstructor.RegisterEmotes — Survivor Animations
EmoteManager.CreateEmoteCallback — Survivor Animations
EmoteManager.PlayEmote — Survivor Animations (cond)
EnochData.InitYieldBank — Ambient Animals Pack
Environment.CheckWaterContact — Admirals Diving Mod
GesturesMenu.GetGestureItems — Survivor Animations
GesturesMenu.OnMenuRelease — Survivor Animations
Hologram.EvaluateCollision — Ambient Animals Pack (cond)
Magnum_Base.InitStateMachine — Survivor Animations ✂
Magnum_Base.SetActions T2 Survivor Animations
MaskBase.CanPutAsAttachment — WindstridesClothingPack
MissionServer.OnInit T3 Admirals Diving Mod
MissionServer.OnUpdate T0 Survivor Animations
ModItemRegisterCallbacks.RegisterHeavy — Admirals Diving Mod
Pistol_Base.GetInventoryHandAnimation — WindstridesClothingPack (cond)
PlayerBase.CanClimb — Admirals Diving Mod (cond)
PlayerBase.CanJump — Admirals Diving Mod (cond)
PlayerBase.CanManipulateInventory — Admirals Diving Mod (cond)
PlayerBase.CanReceiveItemIntoCargo T2 Admirals Diving Mod (cond)
PlayerBase.CanReceiveItemIntoHands T2 Admirals Diving Mod (cond)
PlayerBase.CanReleaseCargo — Admirals Diving Mod (cond)
PlayerBase.CanReleaseFromHands — Admirals Diving Mod (cond)
PlayerBase.CanSprint — Admirals Diving Mod (cond)
PlayerBase.CanSwapItemInCargo — Admirals Diving Mod (cond)
PlayerBase.CheckDeath — Ear-Plugs
PlayerBase.CommandHandler T1 Survivor Animations
PlayerBase.EEHitBy T2 Ambient Animals Pack
PlayerBase.EOnSimulate T1 Admirals Diving Mod ✂
PlayerBase.IsSwimming — Admirals Diving Mod (cond)
PlayerBase.ModCommandHandlerAfter — Survivor Animations
PlayerBase.OnCommandUnconsciousFinish — Ear-Plugs
PlayerBase.OnCommandUnconsciousStart — Ear-Plugs
PlayerBase.OnParticleEvent — Survivor Animations
PlayerBase.OnPlayerLoaded — Admirals Diving Mod
PlayerBase.OnScheduledTick T1 Admirals Diving Mod
PlayerBase.OnVariablesSynchronized T2 Admirals Diving Mod
PlayerBase.ProcessFeetDamageServer — Admirals Diving Mod (cond)
SakhalData.InitYieldBank — Ambient Animals Pack
StaminaHandler.Update — Admirals Diving Mod
Weapon_Base.LiftWeaponRaycastResultCheck — Admirals Diving Mod (cond)

4 methods on client-only classes are not shown: a dedicated server never runs them.

Reading this page.

A conflict shows that code is skipped, not that an author made a mistake — overhaul mods replace systems on purpose. Long chains are cheap: one link costs about 25 ns per dispatch. What costs frame time is the work inside each hook, which is why the badges are there. Everything here comes from the mods' code alone; nothing was measured on a server. Methodology.