Testosterone Tweaks
A thin mixin-only addon for Create: Testosterone (Fabric), the Create Mod addon that introduces Testosterone Pills and the Man Power effect. This mod doesn't add any of its own blocks, items, or effects. It requires the real Create: Testosterone mod to be installed and just makes some of its mechanics configurable, plus fixes a couple of things the base mod leaves half-done.
[!NOTE] This is a personal balance/config addon, not a replacement for Create: Testosterone. All original assets, mechanics, and design concepts belong to the original author, mifort.
Features
- Configurable Man Power invincibility: toggle whether the Man Power effect cancels incoming damage, and whether wearing a Tie caps accumulated damage or protects against void deaths.
- Configurable Tie knockback resistance: set a percentage instead of the base mod's hardcoded full knockback immunity.
- Configurable buff strength and duration: control how strong and how long the Man Power buff lasts from the Testosterone Shot/Trenbolone Shot, Testosterone Pill/Protein Bar, and Testosterone Potion, plus the Beer Mug's Resistance buff.
- Completed Afterlife totem/corpse mechanic: the base mod ships the Totem of Afterlife item and effect with the actual resurrection logic commented out. This addon implements it (currently disabled by default, see the changelog).
All of the above are server config options, so a server admin can tune or disable them without needing a different mod version.
Requirements
- Minecraft 1.20.1, Fabric
- Create: Testosterone (the base mod, required)
- Create Fabric, Trinkets, Cloth Config, Forge Config API Port
License
Distributed under the GNU General Public License (GPL) Version 3, matching the original license of Create: Testosterone by mifort. See LICENSE for details.
[!WARNING] Disclaimer: We do not promote or condone the use of anabolic steroids as performance enhancers. This mod is for entertainment and gameplay purposes only.
All Versions
+ Add Version## [1.0.0] - 2026-09-03
### Changed
- Rebuilt as a thin mixin-only addon**: The mod no longer re-registers its own copies of the base Create: Testosterone mod's blocks, items, entities, effects, fluids, recipes, and datagen/compat. It now depends on the real published mod and only ships the original balance tweaks (configurable Man Power cooldown/invincibility, Tie knockback resistance, and the completed Afterlife totem/corpse mechanic).
- Renamed the mod**: Mod id changed from
testosteronetotestosterone_tweaks(packagenet.mervyn.testosteronetweaks) so it no longer collides with the real mod's id when both are installed. Build output renamed totestosterone-tweaks, and versioning reset to1.0.0to reflect the new addon identity.
### Added
- Configurable shot/pill/potion/beer buff strength and duration**: Added server config options controlling how strong and how long the Man Power buff lasts from the Testosterone Shot/Trenbolone Shot, Testosterone Pill/Protein Bar, and Testosterone Potion, plus the Beer Mug's Resistance buff.
### Fixed
- Tie Knockback Resistance doing nothing below full immunity**: The base mod's own Tie mixin unconditionally cancels all knockback for Tie wearers, which silently defeated this addon's
Tie_Knockback_Resistancesetting for any value below1.0. It now replicates vanilla's knockback math directly and applies it before the base mod's cancel can run, so partial resistance values actually take effect. - Launch crash from a broken mixin injection point**: The food-effect mixin hooked into a vanilla method that other mods in large packs also modify, and would fail to find its target once one of those mods changed that method's bytecode, crashing on launch. Reworked it to hook a safer point instead, and fixed the same underlying mistake (wrong injection point type on constructor calls) in the beer mug, potion, and shot item mixins before it caused them the same problem.
### Removed
- Dynamic fluid recipe scaling**: No longer needed after the mixin-only rebuild.
### Fixed
- Dedicated server crash on fall damage with Man Power**: Taking fall damage while under the Man Power (Testosterone) effect with an active damage-block cooldown would crash dedicated servers. This is now fixed, along with a related crash risk tied to checking a player's Man Power/Roid Rage status.
### Fixed
- Stupid Rat boost not working**: Right-clicking with Cheese on a Stick now actually activates the speed boost while riding the Stupid Rat.
### Added
- Configurable Tie Damage Cap**: Added
Enable_Tie_Damage_Capserver config option (defaults totrue) to toggle whether wearing a tie (any tie, not just one named[matej]) caps accumulated Man Power damage for cooldown purposes. Disabling it makes the Tie purely cosmetic for this mechanic.
### Fixed
- Tie damage cap inconsistency**: The in-window damage accumulation cap for tie-wearers was hardcoded to
100instead of using theDamage_Limit/TESTOSTERONE_MAX_DAMAGEconfig value already used by the equivalent cap elsewhere in the same method, silently shortening Man Power cooldowns for anyone wearing a tie regardless of configuredDamage_Limit.
### Fixed
- Afterlife resurrection progress chat spam**: Replaced a per-tick
sendSystemMessagecall inafterlifeEffect.java(fired every tick while standing near your corpse during the Afterlife window) with a client-side action bar message, so the resurrection progress no longer floods the chat log.
### Added
- Configurable Man Power Invincibility**: Added
Enable_Man_Power_Invincibilityserver config option (defaults totrue) to toggle whether the Man Power effect (from the Testosterone Pill) cancels incoming damage. - Configurable Afterlife Invulnerability**: Added
Enable_Afterlife_Invulnerabilityserver config option (defaults totrue) to toggle whether the Afterlife effect grants full invulnerability, andAfterlife_Duration(defaults to1200ticks) to configure the length of that window.
### Added
- Configurable Roid Rage Trample Damage**: Added
Enable_Trample_Damageserver config option (defaults totrue) to toggle whether sprinting into entities under Roid Rage deals trample damage. - Configurable Tie Knockback Resistance**: Replaced binary Tie knockback immunity with
Tie_Knockback_Resistanceserver config option (defaults to1.0/ 100%), allowing server admins to configure fractional knockback reduction for the Tie accessory. - Configurable Tie Void Protection**: Added
Enable_Tie_Void_Immunityserver config option (defaults totrue) to toggle whether wearing a tie named[matej]protects against void fall damage death.
### Fixed
- EMI build dependency**: Replaced a broken local-file EMI dependency reference in
build.gradle(pointing to a machine-local sibling directory absent on CI) with the propercurse.maven:emi-580555:8081374coordinate, fixingcompileJavafailures on GitHub Actions. - Trail particle startup crash**: Deferred baking the shared
PlayerModelinrunParticle.Factoryfrom the constructor to first use, avoiding anIllegalArgumentException: No model for layer minecraft:player#maincrash caused by baking the model beforeEntityModelLoaderhad registered it during client init.
## [1.1.1] - 2026-05-30
### Fixed
- Afterlife corpse lifecycle**: Centralized
cleanupCorpseto discard the ArmorStand and clear stored corpse/progress keys on effect removal, natural expiry, and pre-respawn; register disconnect cleanup so logging out mid-afterlife no longer leaves orphan stands in the world. - John rock cluster cache**: Replaced the global static
BlockPosset (shared across dimensions and retained between ticks) with a per-level, per-tick deduplication set passed through cluster propagation. - Roid rage trail particles**: Reuse a single baked
PlayerModelinrunParticle.Factoryinstead of allocating and baking a new model for every trail particle.
## [1.1.0] - 2026-05-28
### Added
- EMI Compatibility**: Implemented direct EMI recipe viewer support inside the main mod.
- Registered the custom
testosterone:decantationrecipe category. - Configured the Decanter Centrifuge block as the workstation catalyst for the category.
- Created
DecantationEmiRecipedisplaying fluid inputs, fluid outputs, and a decorative Decanter Centrifuge block icon in the recipe GUI. - Declared the client-side EMI plugin entrypoint (
TestosteroneEmiPlugin) infabric.mod.json.
## [1.0.1] - 2026-05-27
### Added
- Dynamic Fluid Recipe Scaling**: Added
RecipeManagerMixinto interceptRecipeManager.fromJsonloading of all recipes under thetestosteronenamespace, dynamically multiplying fluidamountfields by81to convert standard millibuckets (mB) to droplets. - Centrifuge Processing Feedback**: Added brewing stand sound effects (
SoundEvents.BREWING_STAND_BREW) and bubble particles (ParticleTypes.BUBBLE) during decantation ticks insidedecanterCentrifugeBlockEntity. - Centrifuge Block Updates**: Added
setChanged()andsendData()calls indecanterCentrifugeBlockEntityupon matching recipes to enforce server-client synchronization.
### Fixed
- Centrifuge Double Scaling**: Modified
decantation.javaprocessing math to match recipes using the already-scaled droplet inputs, removing redundant scaling math. - Tipped Arrow Potion Keys**: Corrected potion reference keys in
testosterone_tipped_arrow.jsonandtrenbolone_tipped_arrow.jsonrecipes to map to registered potion IDs (man_power_potionandroid_rage_potion). - Fragile Copycat rendering**: Configured cutout render layers (
BlockRenderLayerMap) and added.noOcclusion()block behavior properties to fragile copycat blocks to prevent occlusion and rendering glitches. - Fragile Copycat parent model**: Restructured
fragile_copycat_block.jsonto point to the correct parent asset pathtestosterone:block/fragile_copycat/0.