Gun Scaling Mod
A Fabric mod that bridges Soulslike Weaponry and Ranged Weapon API to allow gun damage to scale with player attributes.
Features
- Attribute Scaling: Gun damage (Silver Bullets) scales based on the
ranged_weapon:damageattribute. - Configurable: Choose between Additive or Multiplicative scaling modes.
- Custom Multiplier: Fine-tune damage values via configuration.
All Versions
+ Add Version## [2.1.0]
### Added
- Power enchantment scaling for the Create Potato Launcher, matching the gun scaling math formula.
- Fetch logic to check the player's main hand or off-hand for the
PotatoCannonItemto determine the Power enchantment level before a potato hits an entity. - Reflection logic to dynamically fetch the
power_enchantment_multiplier_per_levelconfig value from ArchersMod (net.archers.ArchersMod). This gracefully defaults to an0.08value if the mod is not installed. - Configuration for
accelerationCardScale(defaulting to 12.5% or0.125f) insideGunScalingConfigunder thematterCannonsection. - Mixin functionality in
MatterCannonItemMixin.javato count and apply the number ofSPEED_CARD(Acceleration Cards) installed in a player's Matter Cannon.
### Changed
- Refactored
PotatoProjectileMixin.javato inject damage modifiers beforeEntity.damage(...)is successfully executed. - Reworked the final damage formula for the Potato Launcher so that the Power calculation compounds multiplicatively:
Final Damage = True Base Damage × Power Term × Attribute Multiplier. - Updated the Matter Cannon damage calculation to retrieve raw base damage by isolating AE2's built-in penetration.
- Applied custom scaling formula for Matter Cannons:
Current_Damage = Raw_Base_Dmg * (1 + attr / scaling) * (1 + Acceleration_Card_Multiplier * Acceleration_Card_Number).
### Fixed
- Built-in Create Mod power scaling logic. The
PotatoProjectileEntitynatively scales damage upwards by1 + (Power Level * 0.2)internally before passing the value to theonEntityHitmethod. The mixin now intercepts this damage and mathematically reverses this 20% calculation by dividing the original damage by(1 + powerLevel * 0.2f)to return the true raw base damage before applying the custom scaling.
### Added
- Update to 2.0.1 to include gun compat datapack
### Added
- Implemented compatibility between guns and the Power enchantment.
- Dynamic extraction of power bonuses applied by enchantments or other mods (
ShootSilverBulletMixin.java). - Added import and type resolution compilation errors in
MatterCannonItemMixin.javaandPotatoProjectileMixin.java.
### Added
- Migrated configuration system to [TinyConfig](https://github.com/ZsoltMolnarrr/TinyConfig) for better handling and versioning.
- Created
GunTooltipMixinto replace "Infinity" enchant text with "Bullet Infinity" on guns. - Added
GunAmmoMixinto enforce zero ammo cost for guns with Infinity enchantment.
- Fixed an issue where Unicode characters were being escaped into unreadable sequences in the config file.