promotional bannermobile promotional banner

Infused Classes

Infused Classes gives every player a class choice that shapes abilities and passives.
Back to Files

infusedclasses-0.5.0+1.21.11.jar

File nameinfusedclasses-0.5.0+1.21.11.jar
Uploader
Hunter1712Hunter1712
Uploaded
Oct 21, 2026
Downloads
4
Size
184.4 KB
Mod Loaders
Fabric
File ID
9279941
Type
R
Release
Supported game versions
  • 1.21.11

Curse Maven Snippet

Fabric

modImplementation "curse.maven:infused-classes-1758151:9279941"

Learn more about Curse Maven

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_class intent 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 set reports success or rejection to the command source instead of leaving the admin guessing; the picker footer names the Select button; 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 the lastHurt memory 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.crit is empty, so CritCue spawns ParticleTypes.CRIT at the victim beside the crit sound.
  • Cooldowns, ability windows and passive grace run on a monotonic clock (InfusedClasses.now(), System.nanoTime millis) 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 indented TIER lines, so they hang off their rules line instead of reading as standalone passives. The actives section header reads Actives, parallel with Passives. 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 and Tier.weight are 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 BindMorph is one slot walk and SlotPresses is one press; each window ability carries its own aura family and ConditionalPassive carries the rows its bar writes, so the applier is a loop; the snapshot composes the runtime's own State and BarRead reads and the tick's sequence is the named TickPass. No player-visible rule changes: the wire order, the HUD rows, the cooldown boundaries and the attribute reconcile are unchanged.
  • PROJECT_DESCRIPTION.md catches up with Beta: current kits (Momentum checkpoints with Offload and Onslaught), Crooked Dice at 15% and All In at x1.75 on V, and no alpha contract.
  • ServerEvents splits at its two bulky seams: MeleeHook owns the AFTER_DAMAGE body and SlotPresses the 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 new HitMitigation.
  • 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.

This mod has no additional files