infusedclasses-0.5.0+1.21.11.jar
Curse Maven Snippet
What's new
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.5.0] - 2026-10-20
Fixed
- Class picks are gated by a server-issued, transient picker grant: a
select_classintent that arrives without the server having opened the picker is ignored, so a modified client can no longer switch class mid-fight and reset cooldowns. - Killing blows run the state-only melee plan: the hit that finishes a fight now grants Momentum, pays Onslaught's price, spends Impetus, moves Streak and plays the crit cue. The extra settle damage still drops on a kill.
- The settle bonus no longer scales with difficulty a second time (
scaling: never), so a Gladius Legionary pays x1.2 of the landed base on every difficulty. - Client HUD countdowns run on monotonic millis, so a system clock step cannot freeze or skip a countdown.
/class setreports success or rejection to the command source instead of leaving the admin guessing; the picker footer names theSelectbutton; and a press on a cooling Offload or Onslaught lane is silent even when the stack price is also short.- Damage mults scale what a hit actually landed on the victim: armor, resistance and enchantments the base hit paid for are not paid again by the bonus, so a x1.25 crit on an armored target lands as x1.25 of the health the hit took, exactly as the balance model always priced it. The bonus hurt rides its own damage type (
infusedclasses:settle, tagged to bypass armor, effects and shields, and to cost a player victim no second hunger exhaustion), and thelastHurtmemory is restored by what the bonus actually took off, so a rejected or fully eaten bonus no longer inflates the window. - Mod crits show their particle burst again: 1.21.11's own
Player.critis empty, soCritCuespawnsParticleTypes.CRITat the victim beside the crit sound. - Cooldowns, ability windows and passive grace run on a monotonic clock (
InfusedClasses.now(),System.nanoTimemillis) instead of wall time, so a clock step — a VM snapshot restore, an NTP correction — can no longer skip a cooldown or freeze one. The client HUD's countdowns stay client-local.
Changed
- Picker cards take their class's colours (ADR-0032): every card tone — body tint, divider,
tagline, class name, every item name (passive and active alike), checkpoint names, and the
plain/hover border pair — derives from the class accent in one pure
CardPalette. Hover brightens the border only: no wash over the body. Section headers stay white bold and descriptions of both sections share one subtle neutral (#8C8C8C, dim enough that accent names stay brightest); the backdrop deepens behind a subtle edge vignette. The card body left-aligns and a bar's checkpoint rows draw as indentedTIERlines, so they hang off their rules line instead of reading as standalone passives. The actives section header readsActives, parallel withPassives. The HUD, chat and wire keep their own colours. - The cast fanfare becomes the evoker's own cast spell (
entity.evoker.cast_spell) instead of the note-block pling: every fired ability still plays one shared sound, now one that reads as a cast, played at 1.6 volume so its low whoosh carries over combat; Rotate keeps announcing without a fanfare, and fizzles and rejects stay silent. - Player copy pass: Momentum's card line splits into its rules line plus one row per checkpoint
(
Steady at 15…), each still generated from the bar's own numbers, so the bar scans row by row; Burden's card line drops its flavour sentence, and weight wording leaves the reader-facing prose (module javadocs, GLOSSARY, project description). Ids andTier.weightare unchanged. - Ability firing, window auras and the status snapshot get their decisions beside their
constants (ADR-0029/0030/0031): the roster row carries its reused slot, its fanfare and its
pure fire, so
BindMorphis one slot walk andSlotPressesis one press; each window ability carries its own aura family andConditionalPassivecarries the rows its bar writes, so the applier is a loop; the snapshot composes the runtime's ownStateandBarReadreads and the tick's sequence is the namedTickPass. No player-visible rule changes: the wire order, the HUD rows, the cooldown boundaries and the attribute reconcile are unchanged. PROJECT_DESCRIPTION.mdcatches up with Beta: current kits (Momentum checkpoints with Offload and Onslaught), Crooked Dice at 15% and All In at x1.75 onV, and no alpha contract.ServerEventssplits at its two bulky seams:MeleeHookowns the AFTER_DAMAGE body andSlotPressesthe reused-bind presses (one press per slot, ADR-0029), leaving the file as lifecycle wiring and the one steady-state emission point, under the repo's ~150-line line. The settle's landed math is the newHitMitigation.- Jars carry the game version from
build.gradle(infusedclasses-0.5.0+1.21.11.jar), so a future 26.x jar slots onto the same project page with zero rename.
All Relations
- All Relations
- Embedded Library
- Optional Dependency
- Required Dependency
- Tool
- Incompatible
- Include
This mod has no related projects

