Valheim
Install with App

Details

Latest version
1.2.12
Last Updated
First Uploaded
Downloads
11.4K
Likes
12
Size
553KB
Dependants
ADDatHost Valheim hosting
€1

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.

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

DatHost — Valheim server hosting, first month for one euro
DatHost — Valheim server hosting, first month for one euro
DatHost — Valheim server hosting, first month for one euro
DatHost — Valheim server hosting, first month for one euro
DatHost — Valheim server hosting, first month for one euro