You are viewing a potentially older version of this package. View all versions.
sighsorry-SecondaryAttacks-1.2.13 icon

SecondaryAttacks

Adds secondary attacks for bows, staves, bombs, melee weapons, and Blood Magic, with auto presets, per-prefab overrides, summon tools, cooldown HUD, localization, and optional quickstep for knives and fist weapons.

Date uploaded a week ago
Version 1.2.13
Download link sighsorry-SecondaryAttacks-1.2.13.zip
Downloads 687
Dependency string sighsorry-SecondaryAttacks-1.2.13

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2351 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.

Preferred version: 5.4.2351

README

SecondaryAttacks

Adds secondary attacks for bows, staves, bombs, melee weapons, and Blood Magic, with auto presets, per-prefab overrides, summon tools, cooldown HUD, and localization. Preserves loaded weapons, adds an optional quickstep for knives and fist weapons, and improves Sneak and Blood Magic progression.

Highlights

  • Adds new secondary attacks for ranged weapons, melee weapons, bombs, elemental staves, and Blood Magic staves.
  • Lets weapon groups use default presets from config while individual prefabs can be tuned through YAML.
  • Syncs YAML configuration through ServerSync for dedicated servers and multiplayer clients.
  • Supports cooldowns, durability cost, resource cost, ammo cost, skill gain, adrenaline gain, and HUD feedback.
  • Shares cooldowns by automatically recognized weapon family, with preset-based fallback for unrecognized weapons; Blood Magic summon and shield families remain independent.
  • Optionally replaces dodge with a fixed quickstep while a knife or Unarmed weapon is equipped.
  • Remembers the last equipped shield and automatically equips it alongside a one-handed weapon when the left hand is empty.
  • Includes compatibility support for MagicPlugin summon projectiles and the companion WarfareTweaks mod.

Ranged Presets

SecondaryAttacks.Ranged.yml controls bows, crossbows, thrown bombs, and projectile staves. Weapon groups can be assigned a default preset in config, then individual prefabs can override that behavior in YAML.

Sentinel

Press the secondary attack key to spawn temporary sentinels that hover near you, search for targets, and fire on their own.

Sentinel count, lifetime, hover position, orbit speed, detection range, attack delay, and firing interval can all be tuned.

Ranged Tuning

Swap ranged presets by weapon group in config, or use SecondaryAttacks.Ranged.yml for per-prefab overrides.

Change spacing, interval, projectile speed, spread, damage, cost, and other preset values to build very different attacks from the same weapon.

Spiral

Spiral fires a configurable burst along a rotating pattern. Multi-projectile presets scale skill and adrenaline rewards so high projectile counts do not over-reward a single attack.

Piercing

Piercing lets projectiles pass through enemies, with damage reduced after each character hit.

Meteor

Meteor calls projectiles down from above. Count, interval, impact radius, spawn height, projectile scale, and area size are configurable.

Volley

Volley drops aimed projectiles around a target point and can be especially strong against large enemies.

Scatter

Scatter splits after the first non-character hit, creating ricocheting projectiles that can catch nearby enemies.

Scattered projectiles lose speed and damage on each bounce through the ricochetDecay setting.

Melee Presets

SecondaryAttacks.Melee.yml controls melee skills, copied throws, bombs, and utility-style secondaries. Several presets can use copyFrom, letting one weapon borrow another weapon's projectile or secondary attack pattern before applying its own preset behavior.

Cleaving Thrust

Greatswords can turn their secondary attack into a wider thrust with increased reach and push force.

Rift Trail

One-handed swords can leave a damaging rift trail that ticks against enemies inside it.

Launch Slam

Maces can launch enemies into the air. When they land, nearby enemies take impact damage based on the falling target.

Sneak Ambush

Knives can charge an ambush while sneaking. Higher charge improves the aggro reset radius, non-aggro duration, and the next backstab window. Higher Sneak skill charges the attack faster.

Aftershock

Sledges can create forward-moving aftershocks with reduced damage and radius.

Set the travel distance low and increase the delay to create a more stationary aftershock style.

Knockback Chain

Unarmed kicks can apply heavy push force, causing launched enemies to damage other nearby enemies on collision.

Boomerang

One-handed axes can fly out in an arc, cut enemies or trees, then return to your hand.

Impact Burst

Battleaxes can be thrown into an area burst that damages and pushes enemies near the impact point.

Impact Burst can also be configured to affect destructibles such as trees.

Spear Rain

Mark a target with your spear throw, then call additional spears down from above.

Fracture Line

Pickaxe-style weapons can create a forward fracture that deals repeated damage to ore, rocks, and enemies along the line.

Spinning Sweep

Atgeirs can keep sweeping as long as you have enough stamina and durability to maintain the attack.

Harvest Sweep

Scythes can use a steerable harvesting sweep for faster crop gathering.

Sticky Detonator

Throw sticky bombs with the secondary attack key, then detonate active charges later with the block key.

Blob bombs can be set up as delayed traps and detonated when enemies move into position.

Overcharged Bomb

Overcharged Bomb greatly increases bomb damage and area size, at the cost of consuming multiple bombs at once.

Quickstep

Quickstep Enabled defaults to on in fresh configurations. It replaces dodge with a short dash while an equipped weapon uses the Knives or Unarmed skill; bare fists are excluded. Existing saved config values are retained.

Quickstep uses fixed behavior: 200 horizontal acceleration for 0.25 seconds, full-duration invincibility without a shield, 0.15 seconds of invincibility with a shield, and a 0.5-second cooldown. Quickstep consumes 60% of the current vanilla dodge stamina cost. Pressing dodge again during the dash hands off to a regular roll for another 60%; without enough stamina, the dash continues and the second input is consumed. During the quickstep cooldown, a standalone regular roll remains available at its full vanilla cost. If the standalone shudnal.Quickstep plugin is loaded, the integrated implementation disables itself to avoid competing dodge patches.

Last Equipped Shield

Auto Equip Last Shield is a client-only option that defaults to on. After a shield is successfully equipped, the mod remembers that exact item. Equipping a one-handed weapon later also equips the remembered shield when it is in the player inventory and the left hand is empty. Existing torches and other left-hand equipment are never replaced, and a missing or broken shield simply remains unequipped.

The remembered item survives inventory moves, storage, tombstones, and logout through namespaced item and player save data. If the standalone vapok.mods.shieldmebruh plugin is loaded, the integrated implementation disables itself to avoid competing equipment patches.

Blood Magic

SecondaryAttacks.BloodMagic.yml adds special support for Blood Magic staves.

Shield Convert

Shield Convert reads the active shield amount on you and nearby allies, then converts remaining shield into healing.

Summon Empower

Summon Empower buffs nearby summons with configurable duration, a factor for non-crouching movement, matching acceleration and turn speeds, and an attack speed factor. The remaining empowered time is shown in the HUD.

Blood Magic summon quality can scale in two ways: levelByQuality increases summon level by staff quality, while countByQuality increases the number of active summons.

Both presets use actual staff quality, including Idol upgrades, up to a fixed quality cap of 10. levelByQuality keeps one summon; countByQuality keeps summons at level 1. Normal crafting upgrade limits are preserved. The former YAML summon.maxQuality key is still accepted for compatibility but its value is ignored; existing YAML files do not need editing. This also means an old value of 4 no longer prevents Idol qualities above 4 from improving summons. The built-in star HUD supports up to level 10 (9 stars).

Tamed creatures newly summoned directly by a Blood Magic staff can also create friendly sub-summons through SpawnAbility. Their immediate child creatures are tamed and use the PlayerSpawned faction, with a fixed maximum of two living children per parent and no additional YAML or config options. Further creation is skipped until a child dies or is confirmed destroyed; the parent's attack animation, cooldown, and pre-spawn effects can still run. Existing vanilla spawn restrictions still apply. Parent/child tracking survives world saves and network ownership changes; an unloaded or not-yet-synchronized child is not treated as dead. A remote destruction confirmation may make capacity available on the next summon attempt.

This support starts with newly cast direct summons; resummon existing casters to enable it. Wild or unrelated tamed casters are unaffected, and support does not propagate to grandchildren or non-SpawnAbility spawning systems. Child levels, drops, lifetime and removal when their parent dies continue to follow the original creature behavior; the staff's quality/lifetime settings are not propagated to them.

Fresh configurations default Blood Magic summon lifetimes to 1200 seconds; existing saved config values are retained. Set Blood Magic Summon Lifetime Seconds in 2 - Blood Magic to a positive whole number to enable lifetime assignment, expiration, restoration, and HUD timers. A value of 0 disables the entire lifetime feature, including staff-specific YAML overrides. When enabled, a staff entry can set a positive integer summon.lifetimeSeconds in SecondaryAttacks.BloodMagic.yml to override the global base lifetime. Staff YAML takes precedence over the positive global value, and Blood Magic skill scaling is applied after the base lifetime is selected. Omitting the YAML value keeps the global fallback.

Configuration

The mod creates these files in BepInEx/config/SecondaryAttacks/:

  • SecondaryAttacks.Ranged.yml
  • SecondaryAttacks.Melee.yml
  • SecondaryAttacks.BloodMagic.yml
  • SecondaryAttacks_AnimationReferences.txt

Use SecondaryAttacks_AnimationReferences.txt when choosing values for YAML animation fields.

The generated .cfg options are grouped as 1 - General, 2 - Blood Magic, 3 - Ranged, and 4 - UI. General lists configuration locking first, followed by the client-only last-shield and admin cooldown conveniences, player movement, backstab, and Sneak adjustments. Auto Equip Last Shield defaults to on and is added as on when the key is absent from an existing configuration. Keep Crouching During Elemental Damage Over Time defaults to on in fresh configurations and preserves crouching through periodic Fire, Spirit, and Poison ticks while leaving direct, lethal, stagger, and knockback damage unchanged. Existing saved values for established keys are retained.

Hovering the Blood Magic or Sneak icon in the Skills tab shows a tooltip beside the Skills panel, following the hovered row. Descriptions are left-aligned, section headings are centered, and the vanilla text width is preserved with separate background padding. The localized SecondaryAttacks section describes enabled skill-related mechanics without replacing the vanilla skill description.

Sneak Visibility Skill Effect Factor and Sneak Movement Speed Skill Factor default to 2 in fresh configurations. These strengthen the skill-based visibility reduction and scale crouched movement speed up to twice vanilla at Sneak 100; existing saved values remain unchanged.

Ranged automatic assignment is controlled by the 3 - Ranged config options. Select Off for a weapon group to disable its automatic preset. Ranged Global blocks only define preset default values; prefab entries are used for exact per-prefab overrides.

One-Handed Elemental Weapon Preset is server-synced and defaults to Barrage. It covers one-handed ElementalMagic weapons whose primary attack fires an actual Projectile, taking precedence over animation-based staff groups. Automatic assignment preserves any existing native secondary attack; Aoe, summon and melee primary attacks are excluded. These weapons share a cooldown group. The existing Global.barrage values and the weapon's primary animation are reused, and explicit prefab YAML rules still take priority.

When Magic Supremacy or Wizardry is installed, its weapons that already have a native secondary attack keep that attack by default. Add an enabled prefab entry to SecondaryAttacks.Ranged.yml when you intentionally want SecondaryAttacks to replace it; preset: none restores and keeps the original mod's attack. Wizardry's Surtling and Golem summon staves have no native secondary attack and remain eligible for automatic Blood Magic presets. Neither mod is required.

MagicPlugin's Flame, Ice, Lightning and Poison Wands use the one-handed automatic group; its Flame, Ice and Lightning Scepters keep their native secondary attacks by default. When reverting a Scepter YAML override, the current MagicPlugin Stamina/Eitr source and secondary cost are restored along with its native attack. MagicPlugin's projectile tuning runs before SecondaryAttacks handles preset firing; preset-specific spread rules still apply. Existing totem cooldowns and summon quality/lifetime behavior are unchanged. MagicPlugin remains optional.

Hunter Legacy is optional and detected automatically. Its bows, crossbows, slingshots and wrist crossbows retain Hunter's own input, attacks, charge stages, ammunition and reload handling. SecondaryAttacks skips both automatic presets and explicit prefab YAML overrides for these weapons; an attempted override logs a warning once per prefab. preset: none remains a silent opt-out. Wrist crossbows are also excluded from last-shield auto equip, including previously remembered selections; saved item identities are retained. No additional config or YAML keys are needed.

This is native-weapon compatibility, reviewed against Hunter Legacy 1.1.4. Hunter Technique effects from armor (Phantom Arrow and Rapid Reload) are not yet integrated with SecondaryAttacks' custom projectile presets on vanilla or other mods' weapons. Hunter's normal attack paths remain unchanged. For 1.1.4, SecondaryAttacks also removes only its own preparation-only attack clones from Hunter's clone tracking; actual attack tracking is retained. If that private contract or version changes, this cleanup is disabled with a warning while native-weapon protection remains active.

Melee and Blood Magic presets use Global blocks for shared defaults and prefab entries for overrides. Use preset: none to opt out a specific prefab and keep its original secondary behavior. Disabled examples can remain in the YAML with enabled: false, so you can enable one sample at a time without rebuilding the whole entry.

Cleaving Thrust extends the original greatsword secondary's collision sweeps using actual character colliders, including contacts already overlapping the start of the thrust. It preserves the original attack angle, ray thickness, origin and aim; with the default rangeFactor: 3, vanilla greatswords extend from 3m to 9m. The nearest eligible character receives damage without the multi-target penalty; other characters and destructible objects keep the existing full target-count penalty, and knockback is unchanged. Environment obstruction checks still apply. The retained cleavingThrust.angle field does not override the weapon's native angle.

Misc

  • Preserves loaded weapon state for crossbows and other reload-based weapons, so secondary handling does not unnecessarily lose a loaded shot.
  • Replaces heavier MagicPlugin projectile compatibility work with lighter runtime hooks for ElementalMagic projectile tuning.
  • Adds General config tweaks for Sneak scaling, including sneak movement speed, visibility reduction, and backstab skill gain tuning.
  • Adds Blood Magic config tweaks for summon lifetime and health-cost behavior, including max-health based costs and Blood Magic skill gain from health-cost abilities.

Github

https://github.com/sighsorry1029?tab=repositories

CHANGELOG

Changelog

1.2.15

  • Added thrower ID metadata for recoverable copied throws, including throws that keep their native projectile visuals.
  • FearNoSpear 1.1.2 can carry this metadata to landed weapons and prevent other players from auto-picking them up. Manual pickup and boomerang returns remain unchanged; virtual follow-up projectiles are excluded.
  • Kept FearNoSpear optional, with no new settings, required dependencies, or duplicate auto-pickup patches. Use the updated versions on participating clients.

1.2.14

  • Fixed a SpawnAbility Harmony patch initialization failure when running alongside CombatMeter 0.12.0. The transpilers are ordered so CombatMeter retains its summon observer when SecondaryAttacks replaces the creation call.
  • Preserved CombatMeter's existing damage attribution and vanilla setup for successful spawns, while spawns denied by the two-child limit skip both. CombatMeter remains optional; no new config or YAML keys are required, and summon ownership, faction and saved tracking are unchanged.
  • Added isolated regression checks using the original CombatMeter transpiler and game IL, covering both patch registration orders, successful/denied creation and unsupported IL rejection. This does not expand CombatMeter's supported summon types or multiplayer modes.

1.2.13

  • Added automatic, optional Hunter Legacy compatibility, reviewed against 1.1.4. Its bows, crossbows, slingshots and wrist crossbows retain Hunter's native attacks and input handling; both automatic SecondaryAttacks presets and explicit prefab YAML overrides are skipped. Attempted overrides warn once per prefab, while preset: none remains silent. No new config or YAML keys are required.
  • Excluded Hunter wrist crossbows from last-shield auto equip, including previously remembered selections, while preserving saved identities and normal shield behavior.
  • Prevented SecondaryAttacks preparation-only attack clones from remaining in Hunter Legacy 1.1.4's tracking table. Actual attack tracking is preserved; unreviewed versions or changed private contracts disable only this cleanup with a warning.
  • Added isolated compatibility regressions and original/merged DLL contract checks. Hunter Technique effects (Phantom Arrow and Rapid Reload) are not yet integrated with SecondaryAttacks custom projectile presets on vanilla or other mods' weapons.
  • Updated the required BepInExPack dependency to 5.4.2351.

1.2.12

  • Fixed Cleaving Thrust missing close-range and grazing character hits by extending the greatsword secondary's native collision sweeps against actual colliders, while preserving its attack angle, ray thickness, origin, aim, and environment obstruction checks.
  • Removed the multi-target damage penalty for the nearest eligible character hit by Cleaving Thrust. Other characters and destructible objects retain the existing full target-count penalty, and knockback is unchanged.
  • Simplified attack cloning through the game's public shallow-copy method and removed obsolete copied-projectile visual wrappers, preserving existing configuration, saved data, and visual setup behavior.
  • Added isolated Cleaving Thrust regressions for collision geometry, duplicate colliders, crowded scenes, first-character damage, and knockback, plus an original-game contract check for the cached melee-direction accessor.

1.2.11

  • Added optional Wizardry compatibility so automatic assignment preserves its native secondary attacks. Explicit enabled prefab YAML rules can still replace them, and preset: none restores the original attack; Surtling and Golem staves without native secondary attacks remain eligible for automatic Blood Magic presets.
  • Added the server-synced One-Handed Elemental Weapon Preset option, defaulting to Barrage, for one-handed ElementalMagic weapons with primary Projectile attacks. Existing native secondary attacks are preserved, explicit prefab YAML takes priority, and Off disables this automatic group.
  • Added MagicPlugin compatibility: its four elemental Wands use the new automatic group, while its three Scepters retain their native secondary attacks. Reverting a Scepter YAML override restores the current MagicPlugin Stamina/Eitr cost settings, and MagicPlugin projectile tuning runs before SecondaryAttacks preset firing.
  • Preserved original empty secondary attacks across reused ObjectDB prefabs so automatic assignments do not become mistaken for native attacks after world changes. Added isolated regressions for optional-mod discovery, one-handed classification, native attack restoration, and live MagicPlugin cost settings.

1.2.10

  • Added Magic Supremacy compatibility so automatic ranged assignment preserves native secondary attacks on its weapons. Explicit enabled prefab rules can still replace them, and preset: none restores the native attack.
  • Detects Magic Supremacy weapon prefabs from its loaded asset bundle, with a 3.1.1 name fallback. Weapons without a usable native secondary attack remain eligible for automatic assignment.
  • Updated the original-game compatibility verifier to recognize Harmony constructor patch attributes.

1.2.9

  • Added automatic support for immediate child creatures created through SpawnAbility by tamed creatures newly summoned directly with a Blood Magic staff. Children are tamed and use the PlayerSpawned faction, without changing the original monster prefabs or adding config/YAML options.
  • Limited these children to two living creatures per parent. Further creation is skipped until a child dies or its destruction is confirmed; saved parent/child identifiers, rebuilt world-load references, and guarded server replies preserve tracking across reloads and network ownership changes.
  • Kept unrelated wild/tamed casters, grandchildren, and other spawning paths unchanged. Existing casters must be resummoned; child levels, drops, lifetime, and parent-death cleanup retain the original creature behavior.
  • Added production-code regressions for summon admission, save/load, missing network data, RPC authorization, and delayed replies, plus merged-DLL transpiler checks against original game IL.

1.2.8

  • Made Blood Magic summon quality presets follow actual staff quality, including Idol upgrades, up to a fixed level/count cap of 10, while preserving each item's normal crafting upgrade limit. Existing summon.maxQuality YAML keys remain accepted but are ignored.
  • Fixed repeated summon-limit enforcement removing multiple existing summons in one cast by excluding destroyed or pending-removal summons from subsequent counts, while retaining bounded retry behavior for delayed or failed network removal.
  • Added merged-DLL regression coverage for legacy Blood Magic YAML, quality boundaries, crafting-limit ownership, and local or delayed-network summon replacement sequences.

1.2.7

  • Gave the vanilla Club, which has no native secondary attack, a usable automatic launchSlam by borrowing MaceIron's one-handed club secondary attack when the slot remains empty.
  • Preserved existing Club secondary attacks supplied by the game or another mod, and documented the fallback in the default melee YAML.

1.2.6

  • Added the client-only Auto Equip Last Shield option, enabled by default. The exact most recently equipped shield is remembered and equipped alongside a one-handed weapon when the left hand is empty, without replacing torches or other left-hand equipment.
  • Persisted the selection through namespaced player and item save data, skipped ambiguous duplicate identities, and disabled the feature when ShieldMeBruh is loaded to avoid competing equipment patches.

1.2.5

  • Reused the world-applied secondary-attack template when rebinding inventory weapons, while preserving per-item attack instances, apply revisions, dynamic-original cooldown fallbacks, and the legacy build fallback for incomplete snapshots.
  • Removed a redundant per-frame cooldown expiration pass and reused the existing Creature Level & Loot Control level_<digits> compatibility predicate without changing HUD provider priority or ownership checks.
  • Co-located embedded default YAML loading with the YAML domain registry and removed stale publicized-assembly path settings; configuration keys, YAML resource names, dependencies, and runtime behavior remain unchanged.

1.2.4

  • Added Valheim 1.0.7 compatibility for the expanded ItemDrop.ItemData.GetTooltip signature, while preserving tooltip patch order and preventing duplicate secondary-attack descriptions in appended item tooltips.
  • Updated the bundled ServerSync build input for Valheim 1.0.7's constant ZRoutedRpc.Everybody contract. The guarded build step patches only the verified bundled binary copy before merging and leaves the vendored source DLL unchanged.
  • Preserved configured secondary-attack Eitr costs after Valheim 1.0.7 changed the private cost calculation to read the primary attack, and applied the new world durability-rate multiplier to secondary attacks that consume durability directly.
  • Excluded SP_BowDraugrFang from automatic ranged presets because its ArrowIron payload is an item prefab rather than a Projectile; existing local YAML remains user-controlled.
  • Rebased the three publicized compile references on the installed original game assemblies without modifying or packaging the game DLLs, and added client/server contract checks for direct references, Harmony targets, reflection members, and movement transpiler field loads.
  • Updated the required BepInExPack dependency to 5.4.2350.

1.2.3

  • Moved Blood Magic and Sneak skill tooltips beside the visible Skills panel, following the hovered row with an 8 UI-unit gap and screen-edge protection. Preserved the vanilla 250-unit text width, added separate background padding, and centered section headings while left-aligning descriptions.
  • Changed the fresh-configuration defaults for Sneak Visibility Skill Effect Factor and Sneak Movement Speed Skill Factor to 2; existing saved values remain unchanged.
  • Reduced duplicate summon HUD compatibility searches and simplified secondary-attack definition dispatch and per-weapon revision tracking while preserving preset selection and retry behavior.
  • Ensured temporary summon ability settings are restored even if registering newly spawned summons or enforcing summon limits throws an exception.
  • Added regression checks for skill tooltip layout, heading formatting, definition compilation, and weapon rebinding, plus explicit build options for local DLL deployment and verification without packaging.

1.2.2

  • Added localized SecondaryAttacks sections to the Blood Magic and Sneak skill-icon tooltips, preserving the vanilla description and other mods' appended text while showing only enabled skill-related mechanics.
  • Changed the fresh-configuration defaults for Quickstep Enabled and Keep Crouching During Elemental Damage Over Time to On; existing saved values remain unchanged.

1.2.1

  • Fixed Burst follow-up projectiles being deflected by movement after the player body turns toward the current aim, restoring the eye's world-space yaw and pitch before trigger and launch direction sampling.
  • Consolidated each Burst follow-up into one ordered execution path, applying recoil, self-damage, item consumption, and other trigger side effects only after a projectile shot succeeds while preserving delayed source bursts, per-shot costs, effects, reload cleanup, animations, and observer replication.

1.2.0

  • Allowed Blood Magic Summon Lifetime Seconds to disable lifetime assignment, restoration, expiration, and HUD timers with 0, while keeping 1200 seconds as the fresh-configuration default and retaining positive per-staff summon.lifetimeSeconds overrides.
  • Made ranged Burst attacks keep the player's body aligned with the current aim throughout attack animations and immediately before trigger effects and projectile spawning.
  • Fixed Burst follow-up shots on weapons with m_perBurstResourceUsage so each successful shot consumes its stamina, eitr, and health costs, while resource-starved shots stop before consuming ammo, durability, or presentation effects.
  • Simplified config reload, YAML normalization, generated-damage, targeting, projectile, effect, HUD, and Rift visual paths; unsupported legacy-shaped melee YAML options now warn explicitly instead of being silently ignored.

1.1.10

  • Added owner-authoritative lifetimes for player-cast Blood Magic summons, using a 1200-second server-synchronized base, linear Blood Magic skill scaling, a configurable skill-100 multiplier, and optional per-staff summon.lifetimeSeconds overrides; existing summons keep their assigned deadlines.
  • Added a synchronized summon countdown beside the health bar on the active star row, including CreatureManager, Creature Level & Loot Control, StarLevelSystem, and SecondaryAttacks star HUD layouts.
  • Replicated ranged Burst follow-up animations and local-only VFX/SFX to other clients, including dedicated-server observers, with bounded presentation traffic, network-effect filtering, and a 32-shot Burst limit.
  • Added the server-synchronized Keep Crouching During Elemental Damage Over Time option so nonlethal Fire, Spirit, and Poison ticks can preserve crouching without changing direct-hit, stagger, knockback, or lethal-damage behavior.
  • Reorganized generated config groups into 1 - General, 2 - Blood Magic, 3 - Ranged, and 4 - UI, moved the admin cooldown convenience into General, and intentionally omitted legacy migration; existing custom values under old groups must be entered again.

1.1.9

  • Fixed the final shot of the ranged Burst preset losing its weapon and attack trigger VFX/SFX, while preserving per-shot ammunition, durability, and post-trigger side effects.
  • Prevented delayed Burst animation events, zero-cooldown attacks, rapid-fire hold handling, and weapons with multiple native projectile bursts from starting duplicate Burst sequences.
  • Made ammoConsumption: -1 for Burst consume one item per repeated shot instead of scaling to the configured shot count for every shot, and safely consumed persisted reload state when a Burst is interrupted by switching weapons.

1.1.8

  • Changed secondary cooldown sharing to use automatically detected weapon families first, with independent Blood Magic summon and shield groups and per-preset fallback for unrecognized modded weapons.
  • Added localized preset descriptions to applied weapon tooltips with a client-side on/off option.
  • Hardened projectile secondary startup so cooldown, payload, resources, and the selected ammunition prefab are validated before ammo, durability, item, or reload side effects are committed.
  • Consolidated preset, weapon-family, cooldown, summon, key-hint, and weapon-trail runtime paths while preserving dynamic ObjectDB rebinding and server-synchronized admin access.

1.1.7

  • Added automatic summon-star HUD compatibility for CreatureManager, Creature Level & Loot Control, and StarLevelSystem, yielding to an active external star display while keeping SecondaryAttacks as the fallback when none is active.
  • Isolated SecondaryAttacks' extended-star objects from CLLC's level_N groups so provider changes and level updates no longer reuse or alter externally owned HUD objects.

1.1.6

  • Prevented transient TextMeshPro LiberationSans SDF warnings by keeping overhead Empower and Shield status text inactive until the Valheim HUD font has been assigned, without removing the status display.

1.1.5

  • Fixed Cleaving Thrust treating a placed training dummy's own piece collider as an environmental obstruction, allowing the special attack to damage piece_TrainingDummy while preserving real wall blocking.

1.1.4

  • Replaced the individual Quickstep tuning entries with one server-synchronized Quickstep Enabled option in General, using fixed 200 acceleration, 0.25-second duration, 0.15-second shield invincibility, 0.5-second cooldown, and 60% dodge stamina cost.
  • Made a second dodge input during Quickstep hand off to a regular roll for the same 60% cost, and added a concise localized Compendium guide for fist and knife weapons.
  • Kept quickstep state isolated from Sneak Ambush and custom crouch effects, restored vanilla player state on interruptions, and disabled the integration when the standalone Quickstep plugin is loaded.
  • Added owner-authoritative fixed-target homing to launched Sentinel projectiles, using a limited turn rate without mid-flight target searches, retargeting, or additional network messages.

1.1.3

  • Made Ranged, Melee, and Blood Magic YAML synchronization atomic through one strictly framed payload, rejecting malformed data and stale staged updates without replacing the last applied configuration.
  • Added compensating world rollback and narrowed original-state snapshots to actual mutations, preventing failed reloads from leaving mixed secondary-attack, summon-quality, or summon-prefab state.
  • Hardened StartAttack exception cleanup and direct-hit Harmony ordering so temporary cooldown/adrenaline state is restored and nested damage does not re-trigger direct-hit effects.
  • Removed the legacy generic effects pipeline, the unsupported cooldownFallback YAML field, ignored preset fields, and redundant compiler/runtime layers while preserving the active preset feature sets.

1.1.2

  • Moved the embedded MagicPlugin projectile-burst, teleport, and Character-registry compatibility fixes into the standalone InteropFixes mod, removing duplicate patch ownership from SecondaryAttacks.
  • Kept MagicPlugin as a soft integration and Harmony ordering target, so SecondaryAttacks' summon features still cooperate with it without making MagicPlugin or InteropFixes a hard dependency.

1.1.1

  • Fixed Harvest Sweep missing valid crops and foraging targets on the Default and Default_small layers, and expanded its collider search capacity for unusually dense planting areas.
  • Updated Groundwork compatibility to use Groundwork's native scythe-harvest eligibility and farming hooks, so cultivated pickables and range-pickup suppression behave consistently.

1.1.0

  • Added a localized in-game Compendium guide with icons and detailed descriptions for every ranged, melee, Blood Magic, and summon-quality preset, including skill-scaled cooldowns and Sneak Ambush scaling.
  • Consolidated cooldown and charge feedback into a dedicated HUD that supports dynamic rows and a stable top anchor, fixed its scale at 2, set its default horizontal position to 0.615, and removed the scale configuration.
  • Expanded Summon Empower to scale walking, running, flying, swimming, acceleration, turning, attack animations, weapon attack intervals, and the AI minimum attack interval.
  • Reworked live .cfg and YAML reloads with stable-file reads, bounded retries, watcher recovery, strict validation, atomic world application, and stale cooldown/effect cleanup.
  • Fixed Sticky Detonator charges following moving targets, stale Magic Summon Quality state after rules stop matching, and summon health restoration when overrides are removed.

1.0.11

  • Restored near-immediate live application for the six ranged presets and Magic Summon Quality without waiting for long-lived projectiles, summons, or other asynchronous secondary-attack work to finish.
  • Replaced leading-edge config and YAML reload throttling with a 250 ms trailing debounce, so burst save events reliably reload .cfg and Ranged/Melee/BloodMagic YAML changes while the last valid YAML snapshot remains active if compilation fails.

1.0.10

  • Rebuilt dedicated-server Cleaving Thrust extended-trail synchronization as a single owner-authoritative visual session with sequence and stale-payload validation.
  • Observers now scale the trail only at its sampling point and reliably restore local state, so other players can see the full extended two-handed sword secondary attack without layered hit or animation workarounds.

1.0.9

  • Fixed a 1.0.8 projectile-impact cleanup regression in the overcharged-bomb Harmony patch that could throw NullReferenceException when postfix/finalizer cleanup ran twice, including immediately before leaving dedicated servers.

1.0.8

  • Hardened secondary attack state cleanup so projectile, reload, skill-scaling, crouch, and copied-throw overrides are restored even when patched methods fail.
  • Consolidated configuration compilation, world application, projectile cascades, boomerang behavior, and cooldown fallbacks while removing redundant runtime and debug layers.

1.0.7

  • Fixed dedicated-server cleavingThrust observer trail length by applying its range scale at the exact MeleeWeaponTrail sampling point, preventing remote animation or equipment refreshes from restoring the normal-length arc.

1.0.6

  • Improved dedicated-server cleavingThrust observer trail scaling by refreshing the visual scale at the trigger timing and reapplying it when remote weapon visuals are created late.
  • Added MagicPlugin summon cleanup compatibility to remove stale destroyed summon references before MagicPlugin update spam can repeat.

1.0.5

  • Improved dedicated-server observer visuals for riftTrail by sending sampled weapon trail ribbons instead of only a fallback fan.
  • Added observer trail scaling for cleavingThrust so other players can see the enlarged attack arc.

1.0.4

  • Added spinningSweep damageFactor and pushFactor options, defaulting to 0.75 damage and 0.5 push per loop attack.

1.0.3

  • Kept vanilla Blood Magic skill gain active while adding optional health-cost based bonus skill gain.
  • Added owner-safe Sneak Ambush smoke/awareness handling for multiplayer.
  • Added visual-only observer RPCs for spinning sweep, harvest sweep, and riftTrail on dedicated servers.

1.0.2

  • Improved preset cooldown timing precision so the HUD counts down smoothly on dedicated servers instead of stepping in large intervals.

1.0.1

  • Added a client-side admin option that lets host or server-admin players use presets without preset cooldowns.
  • Cooldown HUD/status cleanup now clears stale cooldown displays while admin cooldown bypass is active.

1.0.0

  • Initial Release.