Easy, spectacular and fun melee combat system from Minecraft Dungeons.
☕️ Support me on Ko-Fi, if you like my project
⚠️ This mod does not work on Vanilla Minecraft servers.
🗡 Features
Fancy attack animations
This mod includes several one-handed, two-handed and dual wielded attack animation resources.
Accurate weapon collision detection
No more pixel hunting with your cursor, you can now just swing your weapon and hit whatever is in the way. Enjoy playing in third person view. :)
Natural look and feel
Attacks have an upswing phase before the hit is actually performed, like in real life.
Weapon combos
Some weapons have a sequence of different attacks.
Dual wield any combination
Dual wield any set of one handed weapons! Use the attack hotkey to alternately attack with main-hand and off-hand.
Two-handed weapons
Weapons marked as such, fully disable offhand slot, when held.
Hold to attack
Hold the attack hotkey to spam attacks on cooldown (configurable).
Swing thru grass
Attack instead of mining zero hardness blocks (configurable).
Support any item from any mod (with data files)
Automatic compatibility with most mods (weapons without attribute file, will be automatically assigned a matching weapon preset, based on item id).
Super easy to add dedicated compatibility, support via Discord for partnering modders.
🔨 Add compatibility to any weapon
Add uniquely created or out of the box behaviour to any weapon from any mod, by just creating JSON data files.
Check out our integration guide here.
🔧 Configuration
Client side settings can be accessed via the Mod Menu.
Server side config can be found at:
General properties: config/bettercombat/server.json5
Fallback compatibility: config/bettercombat/fallback_compatibility.json
Automatically created with default values, upon loading any game world for the first time.
⛓ Compatibility
With an open source and modular mindset, this project is aiming for maximal compatibility. However, mods trying to change the same mechanics will never be compatible (such as dual wielding mods).
🤝 Partnerships
These mods have dedicated compatibility with Better Combat, to fully utilise the all different attack styles:
Epic Knights - Fabric & Forge
Marium's Soulslike Weaponry - Fabric
MC Dungeons Weapons - Fabric
MCDoom - Fabric & Forge
MedievalWeapons - Fabric
Mythic Metals - Fabric
Simply Swords - Fabric & Forge
Spectrum - Fabric
👀 Check out my other projects
🧶 Ever wanted to roll/dodge/dash in Minecraft? Here is your chance!
☠️ Increase the difficulty and get matching rewards
the only thing this needs is the ability to parry with shield
there should be a blacklist option in the config so that you can blacklist a weapon you dont want to be used as well a weapon
I suggest adding an option to the server-side config to enable or disable jumping while attacking. I've set the "movement_speed_while_attacking" to "0.0", which actually works, but I can still move around pretty quickly while attacking by spam jumping (holding spacebar). I truly think this feature should be heavily considered since I've found "Combat Roll" to be redundant if combined with "Better Combat". You can still easily and quickly dodge enemy assaults without compromising your fully committed attacks just with "Better Combat" alone simply by jump spamming.
Overall, I think it's a little imbalanced and there should be an option to disable jumping while attacking. Other than that, this is a fantastic mod. Keep up the amazing work! I hope this suggestion will help with the further development of this mod.
Currently getting an error whenever I try to load the 1.19.2 forge version:
-- Head ---- Head --Thread: Render threadStacktrace: at net.bettercombat.BetterCombat.loadFallbackConfig(BetterCombat.java:56) ~[bettercombat-forge-1.6.2+1.19.jar%23306!/:?] {re:mixin,re:classloading}-- MOD bettercombat --Details: Caused by 0: java.lang.reflect.InvocationTargetException at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?] {} at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?] {} at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?] {} at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:68) ~[javafmllanguage-1.19.2-43.2.8.jar%23441!/:?] {} at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$10(ModContainer.java:121) ~[fmlcore-1.19.2-43.2.8.jar%23440!/:?] {} at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804) ~[?:?] {} at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1796) ~[?:?] {} at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?] {} at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?] {} at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?] {re:computing_frames} at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?] {re:computing_frames} at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?] {}
Mod File: /C:/Users/Andre/AppData/Roaming/.minecraft/mods/bettercombat-forge-1.6.2+1.19.jar Failure message: Better Combat (bettercombat) has failed to load correctly java.lang.reflect.InvocationTargetException: null Mod Version: 1.6.2+1.19 Mod Issue URL: NOT PROVIDED Exception message: java.lang.NullPointerException: Cannot read field "schema_version" because "net.bettercombat.BetterCombat.fallbackConfig.value" is nullStacktrace: at net.bettercombat.BetterCombat.loadFallbackConfig(BetterCombat.java:56) ~[bettercombat-forge-1.6.2+1.19.jar%23306!/:?] {re:mixin,re:classloading} at net.bettercombat.BetterCombat.onInitialize(BetterCombat.java:37) ~[bettercombat-forge-1.6.2+1.19.jar%23306!/:?] {re:mixin,re:classloading} at net.bettercombat.forge.BetterCombatForge.<init>(BetterCombatForge.java:22) ~[bettercombat-forge-1.6.2+1.19.jar%23306!/:?] {re:classloading} at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?] {} at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?] {} at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?] {} at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:68) ~[javafmllanguage-1.19.2-43.2.8.jar%23441!/:?] {} at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$10(ModContainer.java:121) ~[fmlcore-1.19.2-43.2.8.jar%23440!/:?] {} at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804) ~[?:?] {} at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1796) ~[?:?] {} at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?] {} at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?] {} at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?] {re:computing_frames} at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?] {re:computing_frames} at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?] {}
can i increase my weapon reach range that of vanilla?? bc with this mod it feels like my weapons are just daggers and i have to get extremely close to enemies (which is bad in a modpack with lots of difficult enemy mods)
Is there an existing compatibility with Tinker's Construct or does one need to make a behavior pack?
Here's an idea....Compat for gun mods like MrCrayfish's? Pistol (or any one handed gun added to the mod) and a melee weapon on the offhand. For the Bloodborne, Dishonored or just even a pirate gameplay.
please add 1.16.5 support
when I try playing with this mod it tells me to install player animator but as soon as I put player animator the game can no longer start and crashes as soon as it launches
In reply to eclipsis101:
Try an older version of one of the mods
I see there is a preset for "fist". Any mod recommendations out there for forge (preferably 1.18.2) that add fist weapons? Would be cool to have something to punch monsters with.
How would I go about adding compatability with Tinker's Construct weaponry for the forge 1.18 version?
NICE 1.19.3!!!! FORGE WOW!
Is there a way to disable this entirely client-side? My friend doesn't like using it, but I'd like to add it to the server for myself.
Is there possibilities for 1.18.2 Compatibility with RPG-Hud? (From testing, it just sways the camera and has some issues when it comes to it when I pick blocks up.) I just think these two mods would be awesome together although it doesn't crash the game. (Or if there is a fix for this, please let me know!)
I wasn't sure on both ends which one was at fault since the animation seems to move the Hud by scaling it in then back out when i pick the blocks up. But it also moves with the Hud when I do animations
I have all of the required mods installed (newest versions of 1.19.2 releases), and I'm getting this error code after world generation. Any ideas how to fix? Reinstalling required mods hasn't helped.
The game crashed whilst unexpected error
Error: java.lang.NoClassDefFoundError: net/bettercombat/api/animation/FirstPersonAnimation
In reply to ShumShumSchlippetyDoop:
Update PlayerAnimator
Is there anyway to disable the animation following the head direction and act as if the player was just looking forward? Trying to make it work better with First-person Model.
In reply to Op_MastrPancake:
BUMP, in first person the head model keeps glitching and appearing infront of the camera... Entirely blocking the view of what is actually infront of you.
In reply to Op_MastrPancake:
Update Better Combat