

This mod is a port of Mojang's Combat Test 8c to modern versions of MC, with an aim to be as accurate as possible without compromising any usability for the user.
This mod completely overhauls the current combat system in favor of CTS, with customizability for servers and clients so that you can get the best experience possible.
As well, we aim for a great deal of mod support (as much as can be reasonably expected) to give plenty of options to the end user.

Attacks and Basic Combat Changes
-
Attack speed, reach, damage are different for different weapons
-
Attack damage of the fist increased to 2
-
Now possible to attack through non-solid blocks without breaking them
-
Attack speed alterations
- Charged hits (200%) give 1 extra block of reach
- You won't get the reach bonus while sneaking
- Missing only puts a 4 tick delay until the next attack regardless of weapon.
- Invulnerability time is 10 ticks unless the attacker's weapon's attack speed is faster
- The attack timer only resets by performing an attack, no longer affected by switching items
- Charged hits (200%) give 1 extra block of reach
-
Added "Auto-Attack" performed by holding left click
- Auto attacks are 1 tick slower from optimal fast-hit timing
-
Added "Grace Period", grants leeway in attack timing by providing a window (80% - 100%) where the attack is queued
- Attacks can no longer be triggered before 100% intentionally
- Grace Period hits will be delayed until a tick slower than optimal fast-hit timing
-
Reintroduced upwards knockback when hitting players in the air
-
Removed attack reach increase in Creative Mode
-
Changed the swing animation to emphasize the rhythm of the attacks
-
Critical Hit alterations
- Players can now crit and sprint hit at the same time
- Weapon enchantments are now included in the base damage when calculating crits and potion effects
-
If an entity's largest dimension for their hitbox (width or height) is less than the minimum hitbox size, it gets expanded by enough to turn the largest dimension into that size
-
Sweeping-Edge alterations
- Sweep-attacks exist with sweeping enchantment only
- Nerfed Sweeping-Edge enchantment to 25/33/37.5% percent (was 50/66/75%)
-
Shield alterations
- Shields protect up to 5 damage for melee attacks, 100% against projectiles
- Bannered shields protect up to 10 damage for melee attacks
- Axes disable shields for 1.6 seconds by default
- Shields activate when sneaking, and you can hit opponents while sneak shielding
- Option to disable the use-shield-on-crouch in accessibility menu
- Shields protective arc decreased to 130 degrees
- Shields now add a 50% knockback resistance when active, 80% for bannered
- Shields protect against 100% explosion damage
- Shields are now instant
-
New axe-exclusive enchantment: Cleaving
- Cleaving enchantment disables shields for 0.5 more seconds per level, maximum level 3
- Cleaving enchantment gives axes (+2/+3/+4) extra damage
- Axes now get Cleaving instead of Sharpness from enchantment table
-
Axes now take 1 durability for attacking
-
Strength I/II now adds +20%/+40% (was +3/+6 damage) (Matched for Weakness)
-
Tridents with impaling now deal enchantment damage to all mobs that are in water or rain
Projectiles
-
Projectiles don't trigger invulnerability ticks
-
Arrow uncertainty value decreased from 1.0 to 0.25
-
Added bow fatigue
- Bow Fatigue increases the uncertainty over time starting once you hold it for over 3 seconds
- This is shown via the item shaking more aggressively in the player's hand
-
Changed how the user's momentum is passed onto projectiles
- Now ignores the vertical momentum of the player entirely
-
Instantaneous effects on tipped arrows are now scaled by 1/8, just like the duration of other effects
-
Trident alterations
- Tridents can be shot from dispensers
- Tridents with Loyalty which fall into the void will return to their owner
-
Snowball alterations
- Snowballs now stack to 64
- Snowballs and eggs have a 4-tick cooldown
- Made it possible to hit players with snowballs
Hunger
-
Eating gets reset when you get hit
-
Natural healing is faster (every 2 seconds, was 8)
-
Starvation is faster (every 2 seconds, was 8)
-
Natural healing works down to 6 food points, previously 18
-
Natural healing now drains food points directly with a 50% chance to not consume a food point. Saturation is not used when healing damage, and is only relevant as a "pause" until food drains (as originally intended)
-
Saturation is no longer added by food; if current saturation is higher than the amount for the food, nothing happens, otherwise, your saturation is set to the amount for the food.
-
Liquid food (stews, honey, milk, potions) can now be consumed in 20 ticks
-
Healing potions heal 6 points per level, and harming potions harm 6 points per level (4 previously)

-
Sword Blocking: Config option that defines whether swords should be able to block.
-
Midair KB: Config option that defines if you should be able to knock opponents further into the air.
-
Fishing Rod KB: Config option that brings back the 1.8 Fishing Rods in a revised form.
-
Healing Mode: Controls how healing is implemented.
-
Fast Healing: Config option that restores the 1.9 Saturation Fast Healing.
-
Mobs Can Guard: Allows mobs to use a shield in their off-hand under certain conditions. Also provides spawning with a shield for supported mobs.
-
Mobs Can Sprint: Lets certain mobs begin to sprint based on distance and other factors. Designed for melee mobs.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
- Immense technical changes
- Updated to Defaulted 1.3.x, min ver is 1.3.4
- All vanilla enchantment modification is done using enchantment patches now
- 1.4.1 will be main version once all supported versions are ported, this is a sub-release for 26.1 and 26.2 Fabric
- Nothing to see here
- Fixed looting and knockback not being able to be put on spears in enchantment table
- Immense technical changes
- Updated to Defaulted 1.3.x, min ver is 1.3.4
- All vanilla enchantment modification is done using enchantment patches now
- 1.4.1 will be main version once all supported versions are ported, this is a sub-release for 26.1 and 26.2 Fabric
- Nothing to see here
- Fixed looting and knockback not being able to be put on spears in enchantment table
- Immense technical changes
- Updated to Defaulted 1.3.x, min ver is 1.3.4
- All vanilla enchantment modification is done using enchantment patches now
- 1.4.1 will be main version once all supported versions are ported, this is a sub-release for 26.1 and 26.2 Fabric
- Nothing to see here
- Fixed looting and knockback not being able to be put on spears in enchantment table
- Immense technical changes
- Updated to Defaulted 1.3.x, min ver is 1.3.4
- All vanilla enchantment modification is done using enchantment patches now
- 1.4.1 will be main version once all supported versions are ported, this is a sub-release for 26.1 and 26.2 Fabric
- Nothing to see here
- Fixed looting and knockback not being able to be put on spears in enchantment table
- Port to 26.1 ([#120](https://github.com/Alexandra-Myers/Combatify/pull/120))
- Tiered Shields have been redesigned, with some notable changes:
- Iron, Gold, and Diamond Shields now take Blocks of Coal, Blackstone, and Obsidian respectively to craft
- Iron, Gold, and Diamond Shields now provide 0.5 Shield Strength
- Copper Shields now take 1.1x disable time
- Iron, Gold, and Copper Shields now have higher base durability
- Golden Shields now take half the durability and have 0.8x disable time
combatify:extended_blocking_datacomponent had its fieldconsiders_bannerreplaced withbanner_damage_reductions- Has the same format as the damage reductions on
minecraft:blocks_attacks, however will be applied in addition when the shield has a banner - On 1.21.1,
combatify:blockerhas been altered to suit the new necessary functionalities for the tiered shields - Added the field
item_damage, matching the equivalent on theminecraft:blocks_attackscomponent in vanilla - Added the field
disable_cooldown_scale, scales the amount of disable time this blocking item will take
- Nothing to see here
- Fixed pack format for built-in datapacks (no longer shows unsupported)
- Fixed creative block breaking being slow on 1.21.11
- Fixed durability taken by shields having an improper threshold
- Fixed shield banner recipe for tiered shields
- Tiered Shields have been redesigned, with some notable changes:
- Iron, Gold, and Diamond Shields now take Blocks of Coal, Blackstone, and Obsidian respectively to craft
- Iron, Gold, and Diamond Shields now provide 0.5 Shield Strength
- Copper Shields now take 1.1x disable time
- Iron, Gold, and Copper Shields now have higher base durability
- Golden Shields now take half the durability and have 0.8x disable time
combatify:extended_blocking_datacomponent had its fieldconsiders_bannerreplaced withbanner_damage_reductions- Has the same format as the damage reductions on
minecraft:blocks_attacks, however will be applied in addition when the shield has a banner - On 1.21.1,
combatify:blockerhas been altered to suit the new necessary functionalities for the tiered shields - Added the field
item_damage, matching the equivalent on theminecraft:blocks_attackscomponent in vanilla - Added the field
disable_cooldown_scale, scales the amount of disable time this blocking item will take
- Nothing to see here
- Fixed pack format for built-in datapacks (no longer shows unsupported)
- Fixed creative block breaking being slow on 1.21.11
- Fixed durability taken by shields having an improper threshold
- Fixed shield banner recipe for tiered shields
- Tiered Shields have been redesigned, with some notable changes:
- Iron, Gold, and Diamond Shields now take Blocks of Coal, Blackstone, and Obsidian respectively to craft
- Iron, Gold, and Diamond Shields now provide 0.5 Shield Strength
- Copper Shields now take 1.1x disable time
- Iron, Gold, and Copper Shields now have higher base durability
- Golden Shields now take half the durability and have 0.8x disable time
combatify:extended_blocking_datacomponent had its fieldconsiders_bannerreplaced withbanner_damage_reductions- Has the same format as the damage reductions on
minecraft:blocks_attacks, however will be applied in addition when the shield has a banner - On 1.21.1,
combatify:blockerhas been altered to suit the new necessary functionalities for the tiered shields - Added the field
item_damage, matching the equivalent on theminecraft:blocks_attackscomponent in vanilla - Added the field
disable_cooldown_scale, scales the amount of disable time this blocking item will take
- Nothing to see here
- Fixed pack format for built-in datapacks (no longer shows unsupported)
- Fixed creative block breaking being slow on 1.21.11
- Fixed durability taken by shields having an improper threshold
- Tiered Shields have been redesigned, with some notable changes:
- Iron, Gold, and Diamond Shields now take Blocks of Coal, Blackstone, and Obsidian respectively to craft
- Iron, Gold, and Diamond Shields now provide 0.5 Shield Strength
- Copper Shields now take 1.1x disable time
- Iron, Gold, and Copper Shields now have higher base durability
- Golden Shields now take half the durability and have 0.8x disable time
combatify:extended_blocking_datacomponent had its fieldconsiders_bannerreplaced withbanner_damage_reductions- Has the same format as the damage reductions on
minecraft:blocks_attacks, however will be applied in addition when the shield has a banner - On 1.21.1,
combatify:blockerhas been altered to suit the new necessary functionalities for the tiered shields - Added the field
item_damage, matching the equivalent on theminecraft:blocks_attackscomponent in vanilla - Added the field
disable_cooldown_scale, scales the amount of disable time this blocking item will take
- Nothing to see here
- Fixed pack format for built-in datapacks (no longer shows unsupported)
- Fixed creative block breaking being slow on 1.21.11
- Fixed durability taken by shields having an improper threshold
- Tiered Shields have been redesigned, with some notable changes:
- Iron, Gold, and Diamond Shields now take Blocks of Coal, Blackstone, and Obsidian respectively to craft
- Iron, Gold, and Diamond Shields now provide 0.5 Shield Strength
- Copper Shields now take 1.1x disable time
- Iron, Gold, and Copper Shields now have higher base durability
- Golden Shields now take half the durability and have 0.8x disable time
combatify:extended_blocking_datacomponent had its fieldconsiders_bannerreplaced withbanner_damage_reductions- Has the same format as the damage reductions on
minecraft:blocks_attacks, however will be applied in addition when the shield has a banner - On 1.21.1,
combatify:blockerhas been altered to suit the new necessary functionalities for the tiered shields - Added the field
item_damage, matching the equivalent on theminecraft:blocks_attackscomponent in vanilla - Added the field
disable_cooldown_scale, scales the amount of disable time this blocking item will take
- Nothing to see here
- Fixed pack format for built-in datapacks (no longer shows unsupported)
- Fixed creative block breaking being slow on 1.21.11
- Fixed durability taken by shields having an improper threshold
- Tiered Shields have been redesigned, with some notable changes:
- Iron, Gold, and Diamond Shields now take Blocks of Coal, Blackstone, and Obsidian respectively to craft
- Iron, Gold, and Diamond Shields now provide 0.5 Shield Strength
- Copper Shields now take 1.1x disable time
- Iron, Gold, and Copper Shields now have higher base durability
- Golden Shields now take half the durability and have 0.8x disable time
combatify:extended_blocking_datacomponent had its fieldconsiders_bannerreplaced withbanner_damage_reductions- Has the same format as the damage reductions on
minecraft:blocks_attacks, however will be applied in addition when the shield has a banner - On 1.21.1,
combatify:blockerhas been altered to suit the new necessary functionalities for the tiered shields - Added the field
item_damage, matching the equivalent on theminecraft:blocks_attackscomponent in vanilla - Added the field
disable_cooldown_scale, scales the amount of disable time this blocking item will take
- Nothing to see here
- Fixed pack format for built-in datapacks (no longer shows unsupported)
- Fixed creative block breaking being slow on 1.21.11
- Fixed durability taken by shields having an improper threshold
- Tiered Shields have been redesigned, with some notable changes:
- Iron, Gold, and Diamond Shields now take Blocks of Coal, Blackstone, and Obsidian respectively to craft
- Iron, Gold, and Diamond Shields now provide 0.5 Shield Strength
- Copper Shields now take 1.1x disable time
- Iron, Gold, and Copper Shields now have higher base durability
- Golden Shields now take half the durability and have 0.8x disable time
combatify:extended_blocking_datacomponent had its fieldconsiders_bannerreplaced withbanner_damage_reductions- Has the same format as the damage reductions on
minecraft:blocks_attacks, however will be applied in addition when the shield has a banner - On 1.21.1,
combatify:blockerhas been altered to suit the new necessary functionalities for the tiered shields - Added the field
item_damage, matching the equivalent on theminecraft:blocks_attackscomponent in vanilla - Added the field
disable_cooldown_scale, scales the amount of disable time this blocking item will take
- Nothing to see here
- Fixed pack format for built-in datapacks (no longer shows unsupported)
- Fixed creative block breaking being slow on 1.21.11
- Fixed durability taken by shields having an improper threshold
- Updated to Atlas Core 1.1.3.
- Added builtin datapack
combatify:weapon_tweaks, provides a Trident recipe, changes Cleaving to match Sharpness's damage in exchange for better disable time, buffs base disable time for the axe, makes spear work more like a normal cts weapon, and adjusts the mace to have less base damage. - Removed builtin JS food & crit impls.
- Resorted config categories away from file type to instead properly categorise them.
- This will not affect existing configs, as the new Atlas Core update allows for this to be an easy transition.
foodImpl's format has been changed, now being an object with multiple fields.type: One ofminecraft:combat_test_8c,combatify:combat_test_9a, andminecraft:javascript.- For
minecraft:combat_test_8conly: cts_saturation_cap: booleancts_healing: boolean- For
minecraft:combat_test_8candcombatify:combat_test_9a: minimum_sprint_level: int range 0-20minimum_healing_level: int range 0-20minimum_fast_healing_level: int range 0-21, 21 will be interpreted as no fast healingfast_heal_seconds: non-negative floatheal_seconds: non-negative floatstarvation_seconds: non-negative float- For
minecraft:javascriptonly: script: string filename (no extension)critImpl's format has been changed, now being an object with multiple fields.type: One ofminecraft:combat_test_8c,combatify:charged_crits, andminecraft:javascript.- For
minecraft:combat_test_8candcombatify:charged_crits: allows_sprint: boolean- For
minecraft:combat_test_8conly: minimum_charge: float range -1-2, if negative will be inferred as not applicablecrit_multiplier: non-negative float- For
combatify:charged_critsonly: minimum_base_charge: float range -1-2, if negative will be inferred as not applicableminimum_full_charge: float range -1-2, if negative will be inferred as not applicablecrit_multiplier: non-negative floatcharged_crit_multiplier: non-negative float- For
minecraft:javascriptonly: script: string filename (no extension)
- Nothing to see here.
- Updated Sodium support
- New item tags:
combatify:base_shieldsandcombatify:defined_shields, defining shields which are effectively "wooden" and are modified by Combatify, respectively combatify:tiered_shieldstag no longer includesminecraft:shield
- Added
attributeSwappingFix, fixes [MC-28289](https://mojira.dev/MC-28289)
- Fixed bug causing modded shields to not be usable
- Fixed bug causing damage enchantments to not increase damage
- Fixed bug where the shield indicator did not work on the crosshair
- Fixed errored spear jab animation
- Support pre4 and above
- Updated to 1.21.11 Pre Release 1
- Mobs will now block properly when they are within spear attack range
- Mobs now have 2.5 reach by default, though their reach is halved for producing their attack bounding box
- 1.8 knockback now is accurate to 1.8 for sprint hits/knockback hits
- Combatify state stays intact across restarts
- Updated to Defaulted 1.2
- Tiered Shields' item json now provides their texture to the special model generator rather than their tier
- Improved JSON readability and functionality for
combatify:weapon_types/hoeandcombatify:weapon_types/spear - JavaScript now supports defining variables before functions,
EntityWrapper<E>now providesgetUUID(),resetAttackStrengthTicker(boolean hit)moved down toLivingEntityWrapper<LE>, which now providesresetAttackStrengthTicker(boolean hit, boolean force),swingInHand(String hand), andswingInHand(String hand, boolean force),PlayerWrapper<P>now providesisAttackAvailable(float baseTime),isAttackAvailable(float baseTime, ItemStackWrapper stack),stabAttack(String slot, EntityWrapper<?> entityWrapper, float damage, boolean dealDamage, boolean dealKnockback, boolean dismountTarget), andlungeForwardMaybe()
- Nothing to see here
- No longer registers unnecessary entity model layers
- Updated to Defaulted 1.2
- Tiered Shields' item json now provides their texture to the special model generator rather than their tier
- Improved JSON readability and functionality for
combatify:weapon_types/hoeandcombatify:weapon_types/spear - JavaScript now supports defining variables before functions,
EntityWrapper<E>now providesgetUUID(),resetAttackStrengthTicker(boolean hit)moved down toLivingEntityWrapper<LE>, which now providesresetAttackStrengthTicker(boolean hit, boolean force),swingInHand(String hand), andswingInHand(String hand, boolean force),PlayerWrapper<P>now providesisAttackAvailable(float baseTime),isAttackAvailable(float baseTime, ItemStackWrapper stack),stabAttack(String slot, EntityWrapper<?> entityWrapper, float damage, boolean dealDamage, boolean dealKnockback, boolean dismountTarget), andlungeForwardMaybe()
- Nothing to see here
- No longer registers unnecessary entity model layers
- Updated to Defaulted 1.2
- Tiered Shields' item json now provides their texture to the special model generator rather than their tier
- Improved JSON readability and functionality for
combatify:weapon_types/hoeandcombatify:weapon_types/spear - JavaScript now supports defining variables before functions,
EntityWrapper<E>now providesgetUUID(),resetAttackStrengthTicker(boolean hit)moved down toLivingEntityWrapper<LE>, which now providesresetAttackStrengthTicker(boolean hit, boolean force),swingInHand(String hand), andswingInHand(String hand, boolean force),PlayerWrapper<P>now providesisAttackAvailable(float baseTime),isAttackAvailable(float baseTime, ItemStackWrapper stack),stabAttack(String slot, EntityWrapper<?> entityWrapper, float damage, boolean dealDamage, boolean dealKnockback, boolean dismountTarget), andlungeForwardMaybe()
- Nothing to see here
- No longer registers unnecessary entity model layers
- Updated to Defaulted 1.2
- Tiered Shields' item json now provides their texture to the special model generator rather than their tier
- Improved JSON readability and functionality for
combatify:weapon_types/hoeandcombatify:weapon_types/spear - JavaScript now supports defining variables before functions,
EntityWrapper<E>now providesgetUUID(),resetAttackStrengthTicker(boolean hit)moved down toLivingEntityWrapper<LE>, which now providesresetAttackStrengthTicker(boolean hit, boolean force),swingInHand(String hand), andswingInHand(String hand, boolean force),PlayerWrapper<P>now providesisAttackAvailable(float baseTime),isAttackAvailable(float baseTime, ItemStackWrapper stack),stabAttack(String slot, EntityWrapper<?> entityWrapper, float damage, boolean dealDamage, boolean dealKnockback, boolean dismountTarget), andlungeForwardMaybe()
- Nothing to see here
- No longer registers unnecessary entity model layers
- Updated to Defaulted 1.2
- Tiered Shields' item json now provides their texture to the special model generator rather than their tier
- Improved JSON readability and functionality for
combatify:weapon_types/hoeandcombatify:weapon_types/spear - JavaScript now supports defining variables before functions,
EntityWrapper<E>now providesgetUUID(),resetAttackStrengthTicker(boolean hit)moved down toLivingEntityWrapper<LE>, which now providesresetAttackStrengthTicker(boolean hit, boolean force),swingInHand(String hand), andswingInHand(String hand, boolean force),PlayerWrapper<P>now providesisAttackAvailable(float baseTime),isAttackAvailable(float baseTime, ItemStackWrapper stack),stabAttack(String slot, EntityWrapper<?> entityWrapper, float damage, boolean dealDamage, boolean dealKnockback, boolean dismountTarget), andlungeForwardMaybe()
- Nothing to see here
- No longer registers unnecessary entity model layers
- Updated to Defaulted 1.2
- Tiered Shields' item json now provides their texture to the special model generator rather than their tier
- Improved JSON readability and functionality for
combatify:weapon_types/hoeandcombatify:weapon_types/spear - JavaScript now supports defining variables before functions,
EntityWrapper<E>now providesgetUUID(),resetAttackStrengthTicker(boolean hit)moved down toLivingEntityWrapper<LE>, which now providesresetAttackStrengthTicker(boolean hit, boolean force),swingInHand(String hand), andswingInHand(String hand, boolean force),PlayerWrapper<P>now providesisAttackAvailable(float baseTime),isAttackAvailable(float baseTime, ItemStackWrapper stack),stabAttack(String slot, EntityWrapper<?> entityWrapper, float damage, boolean dealDamage, boolean dealKnockback, boolean dismountTarget), andlungeForwardMaybe()
- Nothing to see here
- No longer registers unnecessary entity model layers
- Updated to Defaulted 1.2
- Tiered Shields' item json now provides their texture to the special model generator rather than their tier
- Improved JSON readability and functionality for
combatify:weapon_types/hoeandcombatify:weapon_types/spear - JavaScript now supports defining variables before functions,
EntityWrapper<E>now providesgetUUID(),resetAttackStrengthTicker(boolean hit)moved down toLivingEntityWrapper<LE>, which now providesresetAttackStrengthTicker(boolean hit, boolean force),swingInHand(String hand), andswingInHand(String hand, boolean force),PlayerWrapper<P>now providesisAttackAvailable(float baseTime),isAttackAvailable(float baseTime, ItemStackWrapper stack),stabAttack(String slot, EntityWrapper<?> entityWrapper, float damage, boolean dealDamage, boolean dealKnockback, boolean dismountTarget), andlungeForwardMaybe()
- Nothing to see here
- No longer registers unnecessary entity model layers
- Fixed the mod not running
- Hotfix for
protection_factoraccidentally being ignored
- Tiered Shields and Knives now use their modern stats
- Defender now applies +1 Shield Strength to all blocking types rather than applying additional percentage protection to
new_shieldandsword - Decoupled blocking protection from blocking type (more or less), items config now has
base_protectionwhich controls the flat damage protected by the blocking type, andprotection_factor, an additional percentage of damage to protect.
- Tiered Shields and Knives now use their modern stats
- Defender now applies +1 Shield Strength to all blocking types rather than applying additional percentage protection to
new_shieldandsword - Decoupled blocking protection from blocking type (more or less), items config now has
base_protectionwhich controls the flat damage protected by the blocking type, andprotection_factor, an additional percentage of damage to protect. - Several fixes from past Forge version, please retest to see if bugs are still present
- Hotfixes here and there (and a hotfix for your hotfixes)
- Removed Wooden Shield, regular shield now replaces it
- Fix Polymer support
- Native NeoForge port (though using FFAPI)

