Combat+ Core
This is the core library mod and compatibility layer that allows the Combat+ series to function with an extremely high level of inter-mod compatibility.
View the collection on Modrinth here.
API Information
The library adds a number of utility methods and interfaces that make it easier to add unique weapons and enchantments to the game.
Any mod that makes use of these will be compatible with the Combat+ series.
Interfaces
- Melee Weapon
- Used for any melee weapon.
- Provides callbacks that trigger for fully charged attacks, critical attacks, and killing.
- Must implement a damage value.
- Dual Weapon
- Inherit from Melee Weapon, used for weapons which could be wielded in either hand and may support game-changing offhand enchantments.
- Additionally contains a method for offhand damage.
- CPCEnchantment
- Offers hooks for enchantments to perform actions for fully charged hits, critical hits, and killing.
- Offers a more advanced version of damage, where an enchantment of any slot can contribute to the damage bonus.
Enchantment Types
An item can only have one enchantment of each category (not including offhand enchantments).
- Additional Damage
- A more advanced version of vanilla damage enchantments.
- Any enchantment technically can increase damage, but this should mostly be done by Additional Damage enchantments unless there is a special circumstance.
- Additionally incompatible with vanilla's Damage Enchantments.
- Weapon Utility
- Enchantments that add some additional utility function to a weapon, or otherwise enhance its existing effects.
- Sweeping Edge would be a Weapon Utility.
- Aspect
- Enchantments that modify the state of the user or the target on hit.
- Fire Aspect would (obviously) be an Aspect.
- Offhand
- A misc group that is intended to apply to offhanded weapons.
- Largely incompatible with the other groups.
Datapack Information
To improve compatibility with mods outside of the Combat+ ecosystem, a series of datapack tags are available.
These tags are considered in various features of Combat+, such as eligibility for enchantments.
Item Tags
combat-plus:melee_weapon
- These items are considered unimplemented Melee Weapons and will be eligible for enchantments that target Melee Weapons.
combat-plus:dual_weapon
- This tag is included in the melee weapon tag.
- These items will be considered unimplemented dual weapons and will be eligble for relevant enchantments.
combat-plus:breaks_shields
- These items can break shields.
Enchantment Tags
There is a corresponding tag for each enchantment type. This can be used by other modders or modpack makers to categorise other enchantments into the four groups.
Combat+ enchantments will be incompatible with enchantments that are in the same tag as their group.
For example a Weapon Utility enchantment is incompatible with any enchantment in the combat-plus:weapon_utility
tag.
Game Rules
Combat+ Core adds two additional gamerules to modify vanilla weapon mechanics.
keepLoyaltyTridents
- When true, loyalty tridents will not leave the inventory when thrown, nor can they be picked up or return to the thrower. Instead tridents will go on cooldown. Higher levels of loyalty will decrease the cooldown.
sweepingRequiresEnchantment
- When true, the sweeping effect of a sword will only occur if the sword has the Sweeping Edge enchantment. This allows the player to decide whether sweeping should be considered a native property of the sword, or the product of an enchantment.
pvpEnchantmentModifier
- Damaging enchantments can use the
combat-plus:gamerule_damage
component instead of vanilla's damage component. Damage of this type will be multiplied by this gamerule's value when dealt against players. This is for PvP balancing.
- Damaging enchantments can use the
lethalPoison
- When true, poison will be able to kill players and mobs instead of leaving them on half a heart.