Confirm with your password

GCOSoulsBlockBalance

Make Block Armor matter in GCO Souls-like blocking: configurable guard capacity, stamina efficiency and overload growth for shields and weapons, with server-controlled settings.

Changelog & versions

Stars
0
Downloads
21
Version
0.1.3
Updated
Author
LoIYver
Virus scan
✓ Scan successful
Runs on
Client & Server

Compatibility

Required 2

Install these too — Gale pulls them in for you.

Description

GCO Souls Block Balance

Make shield and weapon progression matter in Goo's Combat Overhaul's Souls-like blocking. GCOSoulsBlockBalance links stamina efficiency and guard capacity to the blocker's effective Block Armor, with configurable overload growth and a deterministic guard-break threshold.

Why use it?

In a stamina-driven block system, a weak early-game shield can hold very powerful hits if the player has enough stamina. GCO's original armor discount can also reach a zero-cost plateau at sufficiently high Block Armor. This mod gives blocker strength a clear role: stronger equipment spends stamina more efficiently and withstands more incoming pressure, while weaker equipment becomes costly to use against heavy attacks.

The same model follows all GCO Souls-enabled blocker categories, including tower shields, two-handed swords and weapons supplied by other mods. Eligibility comes from GCO's existing settings and weapon classification.

How it works

  • Capacity: 20 + 1.5 × effective Block Armor by default.
  • Stamina efficiency: higher effective Block Armor reduces the stamina multiplier.
  • Overload: once incoming pressure exceeds capacity, stamina cost rises. The overload exponent controls how quickly it rises.
  • Guard break: at 2.5 × capacity, an eligible Souls-break block fails even if stamina remains. Running out of stamina can cause failure earlier.

Incoming pressure (P) is GCO's stagger-damage input multiplied by the hit's stagger multiplier. The UI's blocked damage number is a different measurement. Effective Block Armor includes the bonuses GCO actually uses, such as skill, item quality and compatible equipment bonuses.

Capacity is evaluated for each hit. There is no accumulating guard bar, separate guard-recovery timer or random break chance. The mod replaces the cost in GCO's existing payment path; it adds no second stamina deduction.

Example with default settings

For P = 66, GCO tower-shield base rate B = 0.7 and threshold multiplier T = 1.65:

Effective Block Armor Capacity Original GCO stamina cost New stamina cost Forced break at P
12 38 13.52 94.06 95
80 140 10.80 14.00 350
200 320 6.00 8.00 800

These are requested costs for these specific inputs. Your GCO base rate, threshold tuning and incoming hit change the result. Stamina debt, world stamina rates and other mods can change the actual bar delta.

Requirements and installation

  • Valheim 1.0.16 and BepInExPack Valheim.
  • Goo's Combat Overhaul 2.2.1 for this package. The DLL also accepts the separately audited GCO 2.1.2 and 2.2.0.
  • ConditionalConfigSync 1.0.9, installed as its complete package.
  • Install this mod and its dependencies on the server and every client. Single-player worlds are supported.

Install with your mod manager, or copy plugins/GCOSoulsBlockBalance/GCOSoulsBlockBalance.dll from the ZIP into BepInEx/plugins/GCOSoulsBlockBalance/.

When updating, replace the DLL on the server and all clients and keep one copy per installation/profile. Version 0.1.3 is required on both sides. Existing config files can be retained; this package ships no preset that overwrites them.

Configuration

Start the game/server once to create:

BepInEx/config/LoIYver.GCOSoulsBlockBalance.cfg

Use F1 with a compatible BepInEx Configuration Manager, or edit the config while the game/server is stopped. Configuration Manager is optional. All settings have English tooltips.

Gameplay settings are server-controlled through ConditionalConfigSync. Server administrators can edit them through CCS admin controls; ordinary clients cannot submit gameplay changes even when the configuration lock is disabled. Debug logging is local to each installation.

Setting Default What it controls
Enabled true Enable this balance layer
Enable Stamina Scaling true Replace eligible Souls-block stamina costs
Enable Guard Capacity true Enable capacity-based forced guard failure
Guard Capacity Base 20 Constant capacity contribution
Guard Capacity Per Block Armor 1.5 Capacity gained per effective BA
Overcapacity Start Ratio 1 Pressure/capacity ratio where overload growth begins
Forced Guard Break Ratio 2.5 Pressure/capacity ratio for mandatory guard failure
Overload Exponent 2 Speed of cost growth beyond the start ratio
Reference Block Armor 80 Armor scale for stamina efficiency
Low Armor Stamina Penalty 2 Raw stamina multiplier at zero BA
Minimum Stamina Cost Multiplier 0.5 Lower multiplier limit
Maximum Stamina Cost Multiplier 8 Upper multiplier limit
Lock Configuration true CCS gameplay configuration lock
Enable Debug Logging false Local startup status, heartbeat and block logs

Raise Guard Capacity Base to help all blockers, especially weaker ones. Raise Guard Capacity Per Block Armor to give stronger equipment a larger capacity advantage. Raise Overload Exponent for a faster approach to exhaustion after capacity is exceeded, or lower it for a gentler rise. Changing the exponent leaves the forced-break threshold in place.

Forced Guard Break Ratio must exceed Overcapacity Start Ratio. Raising it allows more overload before mandatory failure and spreads cost growth over a wider range. The final stamina multiplier is capped at 8 by default.

Compatibility

GCO's Souls stamina and block-break switches are respected independently:

GCO Souls stamina GCO Souls block break Result
On On Scaled stamina cost and capacity-based guard failure
On Off Scaled stamina cost
Off On Original stamina behavior and capacity-based guard failure
Off Off Original behavior

This mod's own stamina and capacity switches also work independently. GCO category features must be enabled for the active blocker. The mod does not enable Souls modes for you.

GCO weapon classification, YAML profiles, base-rate and threshold tuning, parry settings and block angles remain in use. Warfare weapons must already be recognized by GCO through your existing profiles or compatibility mod. This plugin adds no competing weapon mapping. WeaponShieldSynergy and other equipment bonuses are reflected when they contribute to GCO's effective Block Armor; full combined mod stacks have not been exhaustively playtested.

GCO 2.1.2, 2.2.0 and 2.2.1 are the audited targets. The plugin checks the GCO version and integration layout at startup. Other versions require an updated audit; an unsupported target leaves this balance layer inactive and produces an initialization error.

Mods that replace the same block calculations, alter stamina after payment or suppress stagger animations may affect the result or its presentation. A capacity-based logical guard failure follows GCO's existing failure handling and disables its successful-block protection, even if another system suppresses the visible stagger animation.

Stamina debt and diagnostics

GCO's negative-stamina system remains in charge of debt. With the Goo preset, spending can reach −50, so a large requested cost can reduce 250 stamina to −50: a bar delta of 300, rather than the entire requested amount. This mod does not change the floor or regeneration. Recovery must first repay that debt before stamina becomes positive again.

To diagnose a block, enable 04 Diagnostics / Enable Debug Logging on the player's client. Check Ready=True, then inspect a BLOCK: line for BA, P, Capacity, FinalCost, ObservedSEManCost, NetStaminaLoss and ForcedFailure. Disable Debug after diagnosis. Formula details and log interpretation are available in the packaged FAQ.

Validation

Version 0.1.3 extends the audited version check to GCO 2.2.1 without changing the balance model. That model was confirmed in live 0.1.2 / GCO 2.2.0 wooden-tower-shield logs: the computed cost reached the stamina hook, exhaustion caused guard failure, and a higher-pressure hit set the capacity-based forced-failure flag. Both live examples also exhausted stamina; they do not isolate forced failure with ample stamina.

The 0.1.3 DLL passed automated formula, threshold, switch, scope-cleanup and four-patch integration checks on the supplied GCO 2.1.2 and 2.2.1 DLLs. GCO 2.2.0 retains its prior audit; the 15 related block/payment methods are identical across these three targets except for method addresses. Live gameplay on 0.1.3 / GCO 2.2.1 has not been tested here. Complete multiplayer synchronization and every blocker category have not been independently playtested. Detailed evidence and build instructions are supplied in the separate source kit.

Credits

LoIYver — author, balance direction and in-game testing. gnls — Goo's Combat Overhaul. shudnal — ConditionalConfigSync. Implementation, audit and documentation were assisted by AI. Dependencies remain separate projects; their binaries are not bundled here.

Changelog

0.1.3 Latest
  • Added audited GCO 2.2.1 support, fixing initialization rejection after updating GCO.
  • Retained audited GCO 2.1.2 and 2.2.0 compatibility and all integration-layout checks.
  • Verified the 15 related block/payment/helper methods are unchanged apart from addresses. All four patched method bodies passed validation and emission on GCO 2.2.1.
  • Updated the package dependency to GCO 2.2.1. Balance formulas, config keys/defaults, diagnostics and the icon are unchanged.
  • Update the server and all clients to 0.1.3. Existing configs can be retained.
0.1.2
  • Effective Block Armor now determines stamina efficiency and per-hit guard capacity for every GCO Souls-enabled blocker category.
  • Added configurable capacity, overload start, forced-break ratio and overload exponent, with independent stamina/capacity switches.
  • Preserved GCO's category settings, base-rate and threshold tuning, weapon classification and existing stamina-payment path.
  • Added capacity-driven logical guard failure through GCO's existing failure and cleanup handling.
  • Added server-controlled configuration through ConditionalConfigSync and optional local block diagnostics.
  • Audited GCO 2.2.0 integration; retained audited 2.1.2 compatibility and startup version/layout checks.
  • Confirmed live wooden-tower-shield cost application and guard-failure logs on GCO 2.2.0.
  • Prepared the Hexium package with the author's supplied 256×256 icon, release documentation and FAQ.

Version 0.1.2 uses the same DLL tested before publication. Install it on the server and every client. Existing config files can be retained.

0.1.1
  • Added initialization diagnostics, Debug acknowledgement, heartbeat and skipped-path block logs.
  • Added read-only cost-hook observations and before/after stamina measurements.
  • Supported the audited GCO 2.1.2 target.

1 older entry, full version history & downloads →

FAQ

Manual download
Just this mod One .zip — GCOSoulsBlockBalance 0.1.3
1 requirement can't be downloaded here. It is not on Hexium, so you will have to find it yourself: GoosCombatOverhaul 2.2.1
Files you'll get 2

Your browser may ask permission to download several files at once. How to install these manually

Manual installation instructions
1

Install BepInExPack Valheim

BepInExPack Valheim is required to run mods in Valheim.

Download BepInExPack Valheim 5.4.2351 · View mod page

Check out the mod page for detailed installation instructions.

2

Install GCOSoulsBlockBalance

This mod must be installed on both the client and the server.

Download GCOSoulsBlockBalance 0.1.3

Extract the ZIP and place the file(s) into the BepInEx/plugins/ folder inside your Valheim game folder.