Details

Last Updated
14 hours ago
First Uploaded
14 hours ago
Downloads
20K
Likes
5
Size
64KB
Dependency string
ZenDragon-ZenCombat-0.3.13
Dependants

ZenCombat

Adjustments to bring more fun and balance to the combat system.

NOTE: Pair with the ZenTargeting mod for target lock!

  • Dedicated dodge button for keyboard and gamepad.
  • Your mounts can attack and jump (configurable).
    • Optional rolling dismount for quick stylish dismounts from your steed.
    • Pair with ZenPlayer for even more control over your mount's stamina and regen stats under the "Riding" section. Also an option to push your mounts beyond exhaustion to drive them farther and faster.
  • Parrying a ranged attack does not stun the attacker.
  • Show damage numbers only for yourself, not everyone.
  • Adjust pushback force
  • Equip last used shield automatically when drawing 1h weapon.
  • Auto equip your lantern or torch and keep your weapon drawn.
  • Game Setting: "Attack towards look dir" now also works with block.
  • Bows aim at the crosshair, not under it.
  • Option to turn off wooden arrows, overpowered, too cheap.
  • Restrict movement when drawing a bow.
  • Melee correctly on slopes.
  • Red screen flash is reduced when taking damage so that it is less blinding.

Known Bugs

Sometimes when you first log in, you may find that you are rolling and dodging without pressing the dodge button. This is a known bug. It's easy to correct: Tap the dodge button once (Left Alt by default). Your character will return to normal. The exact cause is still being investigated.

Client / Server Requirements

NOTE: Technically it is not required on the server. However, if it is installed on the server then it will force all clients to have it installed as well. This is to enable two modes of usage:

  1. Dedicated server admins can put the mod on the server to enforce all clients to have the mod installed and sync admin configs.
  2. Trusted friends can agree to run the same mods and connect through a vanilla dedicated server with no enforcement but with locked admin configs.

Client Only

This mod operates entirely client side. That means you can connect to any vanilla server with this mod installed. Other players do not need to have the mod installed.

NOTE: If you host a game session with this mod installed then it will be considered to be installed on the server since your session is the server. Therefor, all clients will be required to have it. If you don't want to require all players to have this mod then you will need to host your game in a dedicated server. You can easily download and run the Valheim Dedicated Server from Steam or host one in the cloud.

Extend Functionality with Additional ZenMods

  • ZenTargeting: Target lock is awesome! :)
  • ZenRedecorate: Move chests around without destroying them.
  • ZenItemStand: Item Stands and Armor Stands behave like containers. Quickly swap your gear.

Improve Your Experience

CORE MODS

The full collection of all Zen MODS:

  • Radically improved QoL
  • Incredible performance
  • Pre-configured
  • 100% Gamepad support
  • Spectacularly immersive

Enjoy!

Sample Config File

## Settings file was created by plugin ZenCombat v0.3.8
## Plugin GUID: ZenDragon.ZenCombat

[AutoShield]

## Automatically equip the recent shield when equipping main 1h weapon.
## Plus extra logic to make the torch behave nicely with auto shield.
## Intuitivly toggle weapons and shields and torches without needing to think about it to much.
# Setting type: Boolean
# Default value: true
Autoequip Recent Shield = true

[Bows]

## [Admin] Allow wood arrows?  They are a bit OP because they are so cheap and lethal.
## When enabled it does not make firing an arrow a risky proposition and they 
## undermine any reason to invest in more expensive ammunition.
## [restart required]
# Setting type: Boolean
# Default value: false
Enable WoodArrow = false

## [Admin] How much damage should wood arrows do if they are enabled?
## They are very OP by default for being a basic crude arrow. (Vanilla: 22)
## [restart required]
# Setting type: Single
# Default value: 1
# Acceptable value range: From 0.1 to 22
WoodArrow Damage = 1

## [Admin] Angle that the projectile is launched at.  To offset the default undershot in Vanilla. (Vanilla: 0)
# Setting type: Single
# Default value: -2
# Acceptable value range: From -10 to 10
Projectile Launch Angle = -2

## [Admin] Percent of normal movement speed when bow is drawn, 0.5 = 50%, move half speed when drawing bow. (Vanilla: 1)
## NOTE: If CombatOverhaulRewrite is installed it is recommended to set this to 1 otherwise the two mods will compound this value.
# Setting type: Single
# Default value: 0.5
# Acceptable value range: From 0 to 1
Movement Speed = 0.5

## [Admin] Adjust bow draw speed to a percent of vanilla bow draw speed at high levels. 0.5 = half of vanilla speed. (Vanilla: 1)
## This affects how fast the bow can be drawn at higher levels and is especailly influential when Bow skill level is maxed.
## Reducing this value will make the bow draw slower, increasing it will make it draw faster.
# Setting type: Single
# Default value: 0.5
# Acceptable value range: From 0 to 1
Bow Draw Speed = 0.5

[Dodge]

## Dodge becomes a separate button from jump, you no longer need to hold block to dodge.
## Keyboard: Define the custom key using the config option below.
## Gamepad: Interact (Use) is moved to X on classic controller layout to make room.
## Note: When using gamepad you need to restart the game for all control mapping to take effect.
# Setting type: Boolean
# Default value: true
Separate Jump/Dodge Buttons = true

## Keyboard: Dedicated dodge button for keyboard.
# Setting type: KeyCode
# Default value: LeftAlt
# Acceptable values: None, Backspace, Tab, Clear, Return, Pause, Escape, Space, Exclaim, DoubleQuote, Hash, Dollar, Percent, Ampersand, Quote, LeftParen, RightParen, Asterisk, Plus, Comma, Minus, Period, Slash, Alpha0, Alpha1, Alpha2, Alpha3, Alpha4, Alpha5, Alpha6, Alpha7, Alpha8, Alpha9, Colon, Semicolon, Less, Equals, Greater, Question, At, LeftBracket, Backslash, RightBracket, Caret, Underscore, BackQuote, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, LeftCurlyBracket, Pipe, RightCurlyBracket, Tilde, Delete, Keypad0, Keypad1, Keypad2, Keypad3, Keypad4, Keypad5, Keypad6, Keypad7, Keypad8, Keypad9, KeypadPeriod, KeypadDivide, KeypadMultiply, KeypadMinus, KeypadPlus, KeypadEnter, KeypadEquals, UpArrow, DownArrow, RightArrow, LeftArrow, Insert, Home, End, PageUp, PageDown, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, Numlock, CapsLock, ScrollLock, RightShift, LeftShift, RightControl, LeftControl, RightAlt, LeftAlt, RightMeta, RightCommand, RightApple, LeftMeta, LeftCommand, LeftApple, LeftWindows, RightWindows, AltGr, Help, Print, SysReq, Break, Menu, Mouse0, Mouse1, Mouse2, Mouse3, Mouse4, Mouse5, Mouse6, JoystickButton0, JoystickButton1, JoystickButton2, JoystickButton3, JoystickButton4, JoystickButton5, JoystickButton6, JoystickButton7, JoystickButton8, JoystickButton9, JoystickButton10, JoystickButton11, JoystickButton12, JoystickButton13, JoystickButton14, JoystickButton15, JoystickButton16, JoystickButton17, JoystickButton18, JoystickButton19, Joystick1Button0, Joystick1Button1, Joystick1Button2, Joystick1Button3, Joystick1Button4, Joystick1Button5, Joystick1Button6, Joystick1Button7, Joystick1Button8, Joystick1Button9, Joystick1Button10, Joystick1Button11, Joystick1Button12, Joystick1Button13, Joystick1Button14, Joystick1Button15, Joystick1Button16, Joystick1Button17, Joystick1Button18, Joystick1Button19, Joystick2Button0, Joystick2Button1, Joystick2Button2, Joystick2Button3, Joystick2Button4, Joystick2Button5, Joystick2Button6, Joystick2Button7, Joystick2Button8, Joystick2Button9, Joystick2Button10, Joystick2Button11, Joystick2Button12, Joystick2Button13, Joystick2Button14, Joystick2Button15, Joystick2Button16, Joystick2Button17, Joystick2Button18, Joystick2Button19, Joystick3Button0, Joystick3Button1, Joystick3Button2, Joystick3Button3, Joystick3Button4, Joystick3Button5, Joystick3Button6, Joystick3Button7, Joystick3Button8, Joystick3Button9, Joystick3Button10, Joystick3Button11, Joystick3Button12, Joystick3Button13, Joystick3Button14, Joystick3Button15, Joystick3Button16, Joystick3Button17, Joystick3Button18, Joystick3Button19, Joystick4Button0, Joystick4Button1, Joystick4Button2, Joystick4Button3, Joystick4Button4, Joystick4Button5, Joystick4Button6, Joystick4Button7, Joystick4Button8, Joystick4Button9, Joystick4Button10, Joystick4Button11, Joystick4Button12, Joystick4Button13, Joystick4Button14, Joystick4Button15, Joystick4Button16, Joystick4Button17, Joystick4Button18, Joystick4Button19, Joystick5Button0, Joystick5Button1, Joystick5Button2, Joystick5Button3, Joystick5Button4, Joystick5Button5, Joystick5Button6, Joystick5Button7, Joystick5Button8, Joystick5Button9, Joystick5Button10, Joystick5Button11, Joystick5Button12, Joystick5Button13, Joystick5Button14, Joystick5Button15, Joystick5Button16, Joystick5Button17, Joystick5Button18, Joystick5Button19, Joystick6Button0, Joystick6Button1, Joystick6Button2, Joystick6Button3, Joystick6Button4, Joystick6Button5, Joystick6Button6, Joystick6Button7, Joystick6Button8, Joystick6Button9, Joystick6Button10, Joystick6Button11, Joystick6Button12, Joystick6Button13, Joystick6Button14, Joystick6Button15, Joystick6Button16, Joystick6Button17, Joystick6Button18, Joystick6Button19, Joystick7Button0, Joystick7Button1, Joystick7Button2, Joystick7Button3, Joystick7Button4, Joystick7Button5, Joystick7Button6, Joystick7Button7, Joystick7Button8, Joystick7Button9, Joystick7Button10, Joystick7Button11, Joystick7Button12, Joystick7Button13, Joystick7Button14, Joystick7Button15, Joystick7Button16, Joystick7Button17, Joystick7Button18, Joystick7Button19, Joystick8Button0, Joystick8Button1, Joystick8Button2, Joystick8Button3, Joystick8Button4, Joystick8Button5, Joystick8Button6, Joystick8Button7, Joystick8Button8, Joystick8Button9, Joystick8Button10, Joystick8Button11, Joystick8Button12, Joystick8Button13, Joystick8Button14, Joystick8Button15, Joystick8Button16, Joystick8Button17, Joystick8Button18, Joystick8Button19
Keyboard Dodge Button = LeftAlt

[Knockback]

## [Admin] The percent of vanilla pushback force to apply for melee attacks (Vanilla: 100%)
## Melee attacks are defined as horizontal and vertical attacks.
## By default this is set to lower than 100% to make it feel weighty.
## Otherwise things get flinged around far to easily and feels weightless.
## NOTE: This is applied to both player and monster attacks.
# Setting type: Single
# Default value: 0.4
# Acceptable value range: From 0 to 2
Melee Attack = 0.4

## [Admin] The percent of vanilla pushback force to apply with Area attacks (Vanilla: 100%)
## By default this is set to lower than 100% to make it feel weighty.
## Otherwise things get flinged around far to easily and feels weightless.
## NOTE: This is applied to both player and monster attacks.
# Setting type: Single
# Default value: 0.5
# Acceptable value range: From 0 to 2
Area Attack = 0.5

## [Admin] The percent of vanilla pushback force to apply with ranged attacks (Vanilla: 100%)
## By default this is set to lower than 100% to make it feel weighty.
## Otherwise things get flinged around far to easily and feels weightless.
## NOTE: This is applied to both player and monster attacks.
# Setting type: Single
# Default value: 0.5
# Acceptable value range: From 0 to 2
Ranged Attack = 0.5

## [Admin] Comma separated list of animation names and the percent of pushback to apply for that animation.
## If defined this will override the attack type specified from the other configs in this section.
## You can view the animation names of different attacks by turning on debug mode in this mod's config options.
## When you attack you will see the animation name on the screen and in the log.
# Setting type: StringList
# Default value: atgeir_secondary:1.0
Animation = atgeir_secondary:1.0

## [Admin] The recoil strength of certain weapons. (Vanilla: 100%)
# Setting type: Single
# Default value: 1
# Acceptable value range: From 0 to 2
Recoil = 1

[Melee]

## [Admin] Parrying a ranged attack does not stun the attacker. That's just silly. (Vanilla : false)
# Setting type: Boolean
# Default value: true
Parry Ranged Attacker - No Stun = true

## [Admin] Attack targets on slopes above or below you.
# Setting type: Boolean
# Default value: true
Enable Slope Combat = true

## When the vanilla setting 'Attack towards look direction' is enabled this makes it also apply those rules for blocking. (Vanilla : false)
# Setting type: Boolean
# Default value: true
Block Towards Look Direction = true

[Mounts]

## [Admin] Stamina drain of mounts when they perform their primary attack.
# Setting type: Single
# Default value: 10
# Acceptable value range: From 0 to 250
Stamina Drain - Primary Attack = 10

## [Admin] Stamina drain of mounts when they perform their secondary attack.
# Setting type: Single
# Default value: 25
# Acceptable value range: From 0 to 250
Stamina Drain - Secondary Attack = 25

## [Admin] When enabled the player can directly control the mount's jump (Vanilla: false)
## Note: The mount must be sprinting before they can jump. 
## The vanilla animations are not designed for jumping mounts, they look odd.
## I think it looks bad and it breaks the gameplay somewhat, so it's disabled by default.
# Setting type: Condition
# Default value: NotAllowed
# Acceptable values: NotAllowed, NotEncumbered, Allowed
Can Jump = NotAllowed

## [Admin] When enabled the player can directly control the mount's attack (Vanilla: false)
## Controls:
## - Main Attack: Primary attack (if mount has an attack)
## - Secondary Attack:(if mount has 2 attacks)
## - Third Attack: Attack + Hold Block (if mount has 3 attacks)
## NOTE: Third attack stamina cost is the average of primary + secondary attacks
# Setting type: Condition
# Default value: Allowed
# Acceptable values: NotAllowed, NotEncumbered, Allowed
Can Attack = Allowed

## Press and hold in a direction while pressing the dismount key/button to do a rolling dismount.
## Hold the dismount button without pressing in a direction to dismount without rolling.
# Setting type: Boolean
# Default value: true
Dismount Roll = true

## Dedicated dismount button so that you can always dismount easily and intentionally when using other mods.
## Gamepad is assigned FaceButtonB
## NOTE: Set to None to disable this button and use vanilla behavior.
## [restart required for changes to take effect]
# Setting type: KeyCode
# Default value: LeftAlt
# Acceptable values: None, Backspace, Tab, Clear, Return, Pause, Escape, Space, Exclaim, DoubleQuote, Hash, Dollar, Percent, Ampersand, Quote, LeftParen, RightParen, Asterisk, Plus, Comma, Minus, Period, Slash, Alpha0, Alpha1, Alpha2, Alpha3, Alpha4, Alpha5, Alpha6, Alpha7, Alpha8, Alpha9, Colon, Semicolon, Less, Equals, Greater, Question, At, LeftBracket, Backslash, RightBracket, Caret, Underscore, BackQuote, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, LeftCurlyBracket, Pipe, RightCurlyBracket, Tilde, Delete, Keypad0, Keypad1, Keypad2, Keypad3, Keypad4, Keypad5, Keypad6, Keypad7, Keypad8, Keypad9, KeypadPeriod, KeypadDivide, KeypadMultiply, KeypadMinus, KeypadPlus, KeypadEnter, KeypadEquals, UpArrow, DownArrow, RightArrow, LeftArrow, Insert, Home, End, PageUp, PageDown, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, Numlock, CapsLock, ScrollLock, RightShift, LeftShift, RightControl, LeftControl, RightAlt, LeftAlt, RightMeta, RightCommand, RightApple, LeftMeta, LeftCommand, LeftApple, LeftWindows, RightWindows, AltGr, Help, Print, SysReq, Break, Menu, Mouse0, Mouse1, Mouse2, Mouse3, Mouse4, Mouse5, Mouse6, JoystickButton0, JoystickButton1, JoystickButton2, JoystickButton3, JoystickButton4, JoystickButton5, JoystickButton6, JoystickButton7, JoystickButton8, JoystickButton9, JoystickButton10, JoystickButton11, JoystickButton12, JoystickButton13, JoystickButton14, JoystickButton15, JoystickButton16, JoystickButton17, JoystickButton18, JoystickButton19, Joystick1Button0, Joystick1Button1, Joystick1Button2, Joystick1Button3, Joystick1Button4, Joystick1Button5, Joystick1Button6, Joystick1Button7, Joystick1Button8, Joystick1Button9, Joystick1Button10, Joystick1Button11, Joystick1Button12, Joystick1Button13, Joystick1Button14, Joystick1Button15, Joystick1Button16, Joystick1Button17, Joystick1Button18, Joystick1Button19, Joystick2Button0, Joystick2Button1, Joystick2Button2, Joystick2Button3, Joystick2Button4, Joystick2Button5, Joystick2Button6, Joystick2Button7, Joystick2Button8, Joystick2Button9, Joystick2Button10, Joystick2Button11, Joystick2Button12, Joystick2Button13, Joystick2Button14, Joystick2Button15, Joystick2Button16, Joystick2Button17, Joystick2Button18, Joystick2Button19, Joystick3Button0, Joystick3Button1, Joystick3Button2, Joystick3Button3, Joystick3Button4, Joystick3Button5, Joystick3Button6, Joystick3Button7, Joystick3Button8, Joystick3Button9, Joystick3Button10, Joystick3Button11, Joystick3Button12, Joystick3Button13, Joystick3Button14, Joystick3Button15, Joystick3Button16, Joystick3Button17, Joystick3Button18, Joystick3Button19, Joystick4Button0, Joystick4Button1, Joystick4Button2, Joystick4Button3, Joystick4Button4, Joystick4Button5, Joystick4Button6, Joystick4Button7, Joystick4Button8, Joystick4Button9, Joystick4Button10, Joystick4Button11, Joystick4Button12, Joystick4Button13, Joystick4Button14, Joystick4Button15, Joystick4Button16, Joystick4Button17, Joystick4Button18, Joystick4Button19, Joystick5Button0, Joystick5Button1, Joystick5Button2, Joystick5Button3, Joystick5Button4, Joystick5Button5, Joystick5Button6, Joystick5Button7, Joystick5Button8, Joystick5Button9, Joystick5Button10, Joystick5Button11, Joystick5Button12, Joystick5Button13, Joystick5Button14, Joystick5Button15, Joystick5Button16, Joystick5Button17, Joystick5Button18, Joystick5Button19, Joystick6Button0, Joystick6Button1, Joystick6Button2, Joystick6Button3, Joystick6Button4, Joystick6Button5, Joystick6Button6, Joystick6Button7, Joystick6Button8, Joystick6Button9, Joystick6Button10, Joystick6Button11, Joystick6Button12, Joystick6Button13, Joystick6Button14, Joystick6Button15, Joystick6Button16, Joystick6Button17, Joystick6Button18, Joystick6Button19, Joystick7Button0, Joystick7Button1, Joystick7Button2, Joystick7Button3, Joystick7Button4, Joystick7Button5, Joystick7Button6, Joystick7Button7, Joystick7Button8, Joystick7Button9, Joystick7Button10, Joystick7Button11, Joystick7Button12, Joystick7Button13, Joystick7Button14, Joystick7Button15, Joystick7Button16, Joystick7Button17, Joystick7Button18, Joystick7Button19, Joystick8Button0, Joystick8Button1, Joystick8Button2, Joystick8Button3, Joystick8Button4, Joystick8Button5, Joystick8Button6, Joystick8Button7, Joystick8Button8, Joystick8Button9, Joystick8Button10, Joystick8Button11, Joystick8Button12, Joystick8Button13, Joystick8Button14, Joystick8Button15, Joystick8Button16, Joystick8Button17, Joystick8Button18, Joystick8Button19
Dismount Key = LeftAlt

[UI]

## [Admin] Override the vanilla red screen damage flash with a softer less blinding style.
# Setting type: Boolean
# Default value: true
Softer Damage Screen Flash = true

## [Admin] Hide damage text when it is just 0 (Vanilla: false)
# Setting type: Boolean
# Default value: true
Hide Damage Text 0 = true

## [Admin] In multiplayer, damage text visibility mode: (Vanilla: All)
## All - View all damage numbers and info text from everyone.
## Self - Only show your own damage numbers + Info texts.
## Info - Only show info texts, no damage numbers.
## None - Hide all texts, show nothing.
# Setting type: DamageTextVisibilityMode
# Default value: Self
# Acceptable values: All, Self, Info, None
Damage Text Visibility = Self


Like My Mods? Donations Welcome

Bitcoin

Donation QR
Thunderstore development is made possible with ads. Please consider making an exception to your adblock.
Thunderstore development is made possible with ads. Please consider making an exception to your adblock.
Thunderstore development is made possible with ads. Please consider making an exception to your adblock.